Q1. 打印時如何消除“台階”現象?
A1. 有些打印機得每行給結束符,否則就會出現打印的台階現象。 打印機預期的結束符是回車/新行符(DOS 系統),而 UNIX 系統在結束一行時只加一個新行符。 解決這個問題的最簡便辦法是檢查是否可用某種開關控制打印機,使其能在這兩種打印之間轉換, 有時可用一個 DIP 開關,或可在打印前先發送一個換碼信號。如要採用第二種辦法, 得先設立一個過濾器(見 Q2)。
最快的解決辦法是在指令行使用過濾器。例如:
$ cat thesis.txt | todos | lpr
Q2. 什麼是過濾器?
A2. 過濾器是一套軟件,它可從標準輸入(stdin)讀入資料,然後對讀入的資料進行動作, 再以標準輸出(stdout)寫出。過濾器的用處佷多,包括可用于文本處理。
Q3. 什麼是魔術過濾器(magic filter)?
A3. 魔術過濾器是一種根據文檔的種類採取行動的過濾器。例如,如果文檔是沒有排版格式的文本文檔時, 則利用一般打印方式打印。如果文檔是 PostScript 文檔或其他格式文檔,則用其他方式打印 ( ghostscript )。常用的魔術過濾器有 magicfilter 和 APSfilter。使用這類過濾器的一項要點是在安裝過濾器之前必需先安裝應用軟件。
需要注意這項要點的理由是在安裝 magicfilter 時,這個魔術過濾器會查詢系統中裝有何種打印程序 (例如 ghostscript,如果找到 ghostscript,則 magicfilter 就知道它能處理 PostScript 格式的文檔),然後根據找到的打印程序作出相應的設定。如果系統要處理所有打印文檔, 可能至少得安裝下列程序:
Q4. 何謂 Windows 打印系統(WPS)?Linux 能用這個打印系統嗎?
A4. 也許。只接受 WPS 指令的打印機無法用于 Linux 系統。接受 WPS 指令和其他打印指令的打印機 (如 Canon BJC 610 打印機)就可使用,只要將其設置成 WPS 格式以外的格式即可。其他打印機, 例如有些 HP DeskJet 820Cxi/Cse 打印機就*無法*用于 Linux。不過,儘管如此, Linux 可作為 Win95 機器的打印伺服器(見 Samba),因為 Win95 有這些打印機的驅動程序。
Q5. 這個系統怎麼這麼爛?只能打印 6 頁,超過 6 頁就顯示“file too large (文檔太長)”。
A5. 在 /etc/printcap 檔中有一個參數與打印的文檔長度有關。默認值是 1000 盤區(約 500 k)。 對 PostScript 這類文檔而言,這大約是 7-8 頁左右的長度。因此務必在打印機的設定中加入下列內容:
mx=0
附加這個指令的主要原因是不使用假脫機。另一個完成這項工作的方法是用 lpr
在假脫機目錄內對打印的文檔生成軟連接。務必記得每次均需在 lpr 指令中使用 -s
選項。