Linux列印介紹 轉貼

2021-09-08 14:23:43 字數 3083 閱讀 4063

在具體講述如何安裝印表機之前,先來看一下對於列印的一些比較關鍵的問題。

綜上所屬,要在linux上使用一台印表機,首先必須確定它被支援,然後需要選擇乙個列印管理程式並配置好列印驅動。最後,能否產生正確漂亮的列印結果,則要看應用程式能否生成正確的postscript檔案。過去,有很多程式不能正確的列印中文,主要就是因為它們不能正確的處理中文的字符集或者中文字型。下面,我會介紹在debian上安裝配置cups並進行列印的過程,並不包括foomatic。

common unix printing system(cups)是乙個出現的比較晚的列印管理程式,也正是如此,它的功能很現代,介面也非常友好。出現的晚,並不代表功能少和支援不廣泛,cups擁有豐富的功能,支援各種各樣的印表機,且被各種應用程式廣泛地支援。

debian上的cups被分散在幾個軟體包中,包括庫、伺服器、客戶端等等。連線了印表機的機器需要安裝伺服器,而要提交列印任務的機器,則必須安裝客戶端。伺服器的包是cupsys,客戶端的包是cupsys-client和cupsys-bsd,前者是cups自己的客戶端,後者是用來替換bsd的lp命令的,這樣可以讓一些比較古老的應用程式繼續通過lp命令進行列印。

通過apt-get命令分別安裝印表機和伺服器:

# apt-get install cupsys foomatic-filters

# apt-get install cupsys-client cupsys-bsd

foomatic-filters這個軟體包對於cups系統來說是非常必要的,千萬別忘了。

這裡我們所說的驅動程式,包含以下三個方面:

ghostscript驅動:ghostscript有幾個版本,其中debian預設使用的是gs-esp。這個版本的ghostscript已經將各種free的驅動編譯到其中。

其它程式:如果是用hp系列的印表機,通常會需要hpijs。不同的廠商還會提供一些用於管理其印表機的程式,譬如檢查墨盒容量等等,可根據自己的需要安裝。

安裝好列印驅動之後,下一步的工作就是把已經完成的裝置新增到cups的列印裝置列表裡面。這一步可以有很多種方式,但最簡單的,就是用cups自己的web管理介面。在安裝了cups伺服器的計算機上,訪問http://localhost:631/就可以了。當新增印表機時,使用者需要輸入賬號密碼,此時可以用root賬號,但只要使用者在lpadmin這個組中,就可以管理印表機了。

新增的第一步是選擇印表機的名稱、位置、描述等,名稱是比較重要的,以後都會用到。在選擇完製造商後,就可以看到上述ppd檔案所描述的印表機資訊了,如果你找不到,可能是忘了重新啟動cupsys服務。

通過web介面,可以完成全部管理印表機的操作,包括開啟、關閉印表機,取消列印作業等等。如果要列印乙個檔案,就需要借助應用程式或者是cups的客戶端了。

openoffice

openoffice有自己的列印配置程式,但如果你使用了cups,完全沒有必要再去配置什麼,openoffice可以自動識別到cups系統中新增的印表機。

mozilla firefox

mozilla firefox在使用印表機前,需要進行簡單的設定。編輯檔案/usr/lib/mozilla-firefox/defaults/pref/unix.js,並加入如下兩行:

pref("font.freetype2.enable", true);

pref("font.directory.truetype.1","/var/lib/defoma/x-ttcidfont-conf.d/dirs/truetype/");

在firefox的軟體包中,上述檔案並不存在,不用擔心,加上就可以了。

acrobat reader

用acrobat reader使用印表機時,在其列印對話方塊中有command選項,其預設值為/usr/bin/lpr,因此使用者必須安裝cupsys-bsd軟體包才行。如果列印時並非使用預設的印表機和選項,則需要在這裡進行自己設定。

gedit

在gnome 2.8中,其列印組建gnomeprint已經比較成熟了。如果你現在仍然使用gnome 2.8以前的版本,我建議你更新一下,這樣gedit就可以正常地列印了。

命令列cups的命令列程式有lplpstatcancel,對應的bsd列印命令列工具是lprlpqlprm。這些命令列程式都有很多引數,在cups的使用者手冊中有詳細的描述,在此就不贅述了。需要說明的是,當傳遞給lp的檔案不是postscript或者pdf格式時,cups都要選擇乙個程式來將其轉換為這個格式,其列印效果也就不得而知了。因此,建議使用者首先想辦法生成乙個ps/pdf檔案,然後再列印。

gtklp

要記住lp的每乙個選項還是一件挺麻煩的事情,gtklp是乙個允許使用者在圖形介面下選擇列印選項的工具。它支援所有的cups選項,只要點點滑鼠就可以列印啦。使用者選擇完畢後,它會自動呼叫lp命令的。gtklp軟體包中還有乙個gtklpq程式,通過它,可以檢視和修改列印佇列。

共享印表機給linux使用者對於cups來說非常簡單,只需要修改/etc/cups/cupsd.conf檔案,允許其它使用者訪問/printer資源就可以了。我不知道windows是否支援ipp協議,如果支援,也可以用這種方式列印。

為何xx程式不能列印中文?

如上所屬,能不能列印中文,關鍵在於負責生成postscript的程式是否能夠支援中文,很多老的命令列工具都是無法支援中文的,即便是新的軟體,也不見得能夠支援地很好。

顯示時的中文粗體為何列印的時候沒有?

現在很多用xft/fontconfig的朋友都打了firefly的粗體補丁,但這個補丁僅僅是用在顯示上的。當列印時,往往是直接從字型檔中提取字形資訊,並嵌入到postscript檔案中的,字型檔裡面是什麼樣子,列印出來就是什麼樣子。

我的印表機,linux支援的不是很好,怎麼辦?

我有一台mac,還有一套正版的windows,我打**給微軟客服,但它們卻告訴我如果你要使用windows,就一定要選擇跟windows相容的計算機。如果你要用linux,買硬體之前就一定要做一些簡單的調查研究,對於那些技術很差根本不懂得如何支援linux的硬體廠商的產品,就千萬不要買。上可以查到各種印表機和linux的相容情況,查一下,除了相容性之外,還能知道有些印表機為什麼會便易,而另一些為什麼貴。

Debian列印介紹

列印對於linux unix類系統來說,曾經沒有一點問題,但那是很久以前的事情了。隨著各種新型印表機的出現,特別是很多不支援postscript 功能的廉價印表機,曾一度使在linux上的列印變得非常困難。但現在,情況已經完全不同了,在linux上列印已經越來越方便,用linux作為列印伺服器,已經...

轉貼 印表機語言PostScript和PCL的比較

postscript語言 postscript是一種與裝置無關的印表機語言,即在定義影象時可以根本不考慮輸出裝置的特性 如印表機的解析度 紙張大小等 而且它對文字 和圖形實行同樣的處理過程,這就給處理字型帶來了極大的靈活性。由於postscript的裝置無關特性,在輸出到特定輸出裝置,譬如對解析度 ...

轉貼 linux解壓 tar 命令

在下載 linux kernel 時 看到有分成兩種壓縮格式 本來想看看到底這兩種壓縮格式有什麼不同 先把指令打上 免得到時候又忘記了 解壓縮 tar.gz tar zxvf filename.tar.gz 壓縮 tar.gz tar zcvf filename.tar.gz folder 解壓縮 ...