CUPS學習三:CUPS主要模組介紹。
CUPS是以客戶機、伺服器為基礎工作的。客戶機和伺服器通常位於同一臺機器上。當列印檔案時,此機器(或應用程式)就是客戶機。伺服器就是在後臺執行的、用以列印檔案的CUPS程式。
圖1-1
1. 作業:
提交列印的一個檔案或一組檔案稱為“作業”。作業有從1開始計數的唯一數字標誌,並制定給特定的目的地(通常是印表機)。作業還可以包含相關選項,例如紙張大小、份數、優先順序等。
2.類:
CUPS支援印表機的集合,此集合稱為“類”。傳送給類的作業被轉發給類中下一個可用印表機。這使你能夠將列印作業傳送給一組類似(或完全相同)的印表機,並可在第一個空閒的印表機上列印,而不是等待所選印表機上其他人的作業完成後才打印(參見圖1-2)。
圖1-2
3.過濾器:
即使印表機不支援檔案的格式,使用者或應用程式也可以通過過濾器列印檔案。在傳送給印表機之前,傳送給CUPS伺服器的列印作業要先經過過濾器處理。過濾器將作業檔案轉換為印表機可以識別的格式。有些過濾器則執行頁面選擇和排序任務。
CUPS提供了很多種過濾器,用以列印多種型別的影象檔案、HP-GL/2檔案、PDF檔案和文字檔案。CUPS還提供PostScript和影象檔案柵格影象處理程式(RIP)過濾器。這種過濾器可將PostScript或影象檔案轉換為可傳送給柵格印表機驅動驅動程式的點陣圖檔案(參見圖1-3)。
圖1-3
4.印表機驅動程式:
印表機驅動程式由印表機特有的一個或多個過濾器組成。每個過濾器都可將一般的檔案格式(如點陣圖)轉換為印表機格式(如HP-PCL)除了過濾器程式外,每個驅動程式還包括PostScript印表機說明檔案(PPD為字尾的檔案)。這種檔案說明了印表機的特性、選項和功能。
CUPS含有EPSON、Hewlett-Packard和Okidata印表機的示例印表機驅動程式(見表1-1)。這些驅動程式支援製造商的各種印表機。所造成的結果是,這些驅動程式不能為每種型號的印表機提供優化的輸出。
表1-1 CUPS的印記驅動程式
來源 | URL | 類別 | 說明 |
Easy software Products | http://www.easysw.com/printpro | 商業軟體 | 支援大多數列印機制造商的數千種印表機驅動程式 |
GIMP-print project | http://gimp-print.sourceforge.net | 免費軟體 | GIME、Ghostscript和CUPS的印表機驅動程式。包括HP、EPSON、Lexmark和Canon印表機的驅動程式 |
CUPS-o-matic | http://www.linuxprinting.org | 免費軟體 | Ghostscript的封裝驅動程式。為Ghostscript印表機驅動程式提供CUPS介面 |
EPSON | http://www.ercipd.com/isv/linux/index.htm | 免費軟體 | CUPS的EPSON印表機驅動程式 |
後臺程式用來執行最重要的一項任務:後臺程式將過濾後的列印資料傳送給印表機(參見圖1-4)。每個後臺程式都會和印表機通訊,從而將過濾後的列印資料(或原始列印檔案)複製到印表機中,並將來自印表機的任何狀態資訊轉發給CUPS伺服器。後臺程式一般不會過濾或轉換列印資料。
CUPS提供多種後臺程式,以通過並口、串列埠和USB埠進行列印,或者通過IPP、JetDirect(AppSocket)和逐行印表機守護程式(LPD)協議進行網路列印。
網路服務軟體包還提供了另外一些後臺程式,例如SAMBA軟體包中所含的SMB後臺程式。
後臺程式還提供了可用裝置的列表。在啟動時,每個後臺程式都要求提供它所支援的裝置列表以及可用的任何資訊。例如,並行後臺程式可以告訴CUPS,EPSON Stylus Color 600印表機已連線到並口1。
未完待續。。。。