當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式軟件
[導(dǎo)讀] Windows CE 2.0及其以上版本包括對(duì)打印機(jī)的支持。Windows CE操作系統(tǒng)使用的打印模型是為基于Windows CE的桌面平臺(tái)定義的打印模型的子集。只有少量為打印機(jī)驅(qū)動(dòng)程序定義的

 Windows CE 2.0及其以上版本包括對(duì)打印機(jī)的支持。Windows CE操作系統(tǒng)使用的打印模型是為基于Windows CE的桌面平臺(tái)定義的打印模型的子集。只有少量為打印機(jī)驅(qū)動(dòng)程序定義的圖形驅(qū)動(dòng)程序函數(shù)是Windows CE的打印機(jī)驅(qū)動(dòng)程序所需要的。

Windows CE的圖形顯示接口(GDI)和顯示驅(qū)動(dòng)程序完成與打印有關(guān)的大部分工作。在打印處理的開(kāi)始,GDI生成帶屬性的設(shè)備背景deviec context,這些屬性是在調(diào)用DrvEnablePDEV函數(shù)時(shí)從打印機(jī)驅(qū)動(dòng)程序得到的。顯示驅(qū)動(dòng)程序用于提交(render)隨后的繪圖指令,該指令是由應(yīng)用程序發(fā)向DC的:打印機(jī)驅(qū)動(dòng)程序并不提交(render)這個(gè)文檔。然后,GDI把結(jié)果點(diǎn)陣圖發(fā)送給打印機(jī)驅(qū)動(dòng)程序,這樣打印機(jī)驅(qū)動(dòng)程序才能格式化點(diǎn)陣圖并把它發(fā)送給打印機(jī)。為了節(jié)省內(nèi)存,GDI以批處理方式提交文檔,也就是頁(yè)面的水平不分:然后GDI多次調(diào)用打印機(jī)驅(qū)動(dòng)程序把提交的文檔發(fā)送給打印機(jī)。

基于Windows CE的打印機(jī)驅(qū)動(dòng)程序只能實(shí)現(xiàn)些圖形驅(qū)動(dòng)程序函數(shù),這些函數(shù)是在搜集打印機(jī)度量標(biāo)準(zhǔn)、設(shè)置打印機(jī)、開(kāi)始和結(jié)束打印任務(wù)和準(zhǔn)備提交的打印內(nèi)容時(shí)所必需的。中間過(guò)程中,打印機(jī)驅(qū)動(dòng)程序還把點(diǎn)陣圖數(shù)據(jù)從GDI bitmap格式轉(zhuǎn)換為打印機(jī)所要求的格式。其中的操作包括把顏色簡(jiǎn)化到打印機(jī)的顏色空間、數(shù)據(jù)壓縮、把數(shù)據(jù)轉(zhuǎn)換成有時(shí)被稱作打印機(jī)描述語(yǔ)言的打印機(jī)使用格式等。最后,打印機(jī)驅(qū)動(dòng)程序調(diào)用監(jiān)視器把提交的打印內(nèi)容發(fā)送給打印機(jī)。

基于Windows CE的打印機(jī)驅(qū)動(dòng)程序被編譯為(.DLL)因此它必須輸出DrvEnableDriver函數(shù)。

下面是打印機(jī)驅(qū)動(dòng)程序必須實(shí)現(xiàn)的函數(shù):

1.DrvCopyBits 由GDI調(diào)用用于把已提交的批次拷貝到打印機(jī)驅(qū)動(dòng)程序。在調(diào)用函數(shù)DrvDisablePDEV時(shí),打印機(jī)驅(qū)動(dòng)程序指定在調(diào)用這個(gè)函數(shù)時(shí)要用到的點(diǎn)陣圖格式

2.DrvDisbalePDEV用于在打印機(jī)設(shè)備環(huán)境不再需要時(shí)釋放驅(qū)動(dòng)程序使用的內(nèi)存和資源

3.DrvDisableSurfacd由GDI調(diào)用用來(lái)通知打印機(jī)驅(qū)動(dòng)程序?yàn)楫?dāng)前打印設(shè)備環(huán)境而生成的外表(Windws CE)不再支持

4.DrvEnableDriver從GDI接受兩個(gè)回調(diào)函數(shù)的指針,并且為打印機(jī)驅(qū)動(dòng)程序?qū)崿F(xiàn)的其它的入口點(diǎn)返回GDI函數(shù)指針

5.DrvEnablePdev由GDI使用,用來(lái)為目標(biāo)打印機(jī)收集打印機(jī)度量標(biāo)準(zhǔn)。打印機(jī)驅(qū)動(dòng)程序返回在GDINFO結(jié)構(gòu)中指定的設(shè)備

6. DrvEndDoc由GDI調(diào)用來(lái)結(jié)束或中途停止一個(gè)打印工作

7. DrvGetModes把打印機(jī)驅(qū)動(dòng)程序支持的確省打印模式信息返回給GDI。打印機(jī)驅(qū)動(dòng)程序返回在DEVMODE結(jié)構(gòu)中的卻省配置

8. DrvStartDoc由GDI調(diào)用,來(lái)開(kāi)始一個(gè)打印工作

9. DrvStartPage由GDI調(diào)用來(lái)開(kāi)始一個(gè)打印工作的下一頁(yè)

Windows CE使用注冊(cè)健來(lái)存儲(chǔ)設(shè)備的全局打印機(jī)設(shè)置和單個(gè)打印機(jī)驅(qū)動(dòng)程序的配置信息。鍵值存儲(chǔ)在注冊(cè)表的KEY_LOCAL_MACHINE\Printers\下。

1. 全局打印機(jī)設(shè)置

存儲(chǔ)在注冊(cè)表中的全局打印機(jī)設(shè)置列舉了打印使用的輸入輸入(I/O)口,提供了全局超時(shí)值以及存儲(chǔ)了所選擇的卻省狀態(tài)下的打印機(jī)驅(qū)動(dòng)程序。卻省打印機(jī)驅(qū)動(dòng)程序存儲(chǔ)為DefaultPrinter的值。打印機(jī)的接口存儲(chǔ)為\Ports子健的值。 下面的注冊(cè)文件摘錄定義了5個(gè)打印機(jī)口,兩個(gè)超時(shí)和卻省的打印機(jī)驅(qū)動(dòng)程序。

(HKEY_LOCAL_MACHINE\Printers\Ports)“Port1”=”COM1:9600”“Port2”=”COM1:57600”“Port3”=”IRDA”“Port4”=”LPT:”“Port5”=”NET0:”(HKEY_LOCAL_MACHINE\Printers\Settings)“TimeOut”=dword:1E(HKEY_LOCAL_MACHINE\PrinterSettings)“TimeOut”=dword:2D(HKEY_LOCAL_MACHINE\Printers)DefaultPrinter”=”PCL Laster”

值分別為9600波特和57,600波特的串口、一個(gè)紅外口、一個(gè)并行口和一個(gè)網(wǎng)絡(luò)打印機(jī)接口。對(duì)兩個(gè)COM1:口,分別指定了相應(yīng)的波特。接口監(jiān)視器分析了要提取的波特值和設(shè)備文件名。在Windows CE2.0中,COM3:口設(shè)定為紅外。然而在2.10和以后的版本中心文件名“IRDA”與留為紅外口,而COM3:用于額外的串行口。在為打印分配紅外口時(shí),接口的鍵值必須是字符串”IRDA”,盡管該值并不是指定設(shè)備文件名的標(biāo)準(zhǔn)格式。名稱”LPT1:”和”NET0:”分別預(yù)留為并行口和網(wǎng)絡(luò)打印口,盡管這些名稱中設(shè)備文件名索引可以是任何合法值。

Windows CE 2.02及其以后版本都使用了TimeOut鍵。該值是用秒測(cè)量的16進(jìn)制數(shù);例子是一個(gè)30秒的超時(shí)。在超時(shí)期間后,打印機(jī)驅(qū)動(dòng)程序可以顯示一個(gè)對(duì)話框讓用戶選擇重試或取消。在這個(gè)例子中,卻省打印機(jī)驅(qū)動(dòng)程序,“PCL Laser”,是KEY_LOCAL_MACHINE\Priners\中一個(gè)子健的名稱。在KEY_LOCAL_MACHINE\Priners\中Windows CE可以找到打印機(jī)控制語(yǔ)言(PCL)激光打印機(jī)驅(qū)動(dòng)程序的配置。

對(duì)不使用并行口的打印機(jī)來(lái)說(shuō),如紅外打印機(jī)或串行口打印機(jī),讓W(xué)indows CE決定打印機(jī)是否接受所有的打印數(shù)據(jù)是非常困難的。因此,超時(shí)參數(shù)用來(lái)在打印機(jī)不能發(fā)出任何其仍在活動(dòng)的信號(hào)時(shí)偵測(cè)和報(bào)告打印錯(cuò)誤。超市值存儲(chǔ)在PrintSetting\TimeOut鍵中。卻省值是45秒。 在DefaultPrinter鍵中存儲(chǔ)的值是應(yīng)用程序在通用打印對(duì)話框中顯示給用戶,讓用戶預(yù)選的打印機(jī)。

2. 打印機(jī)驅(qū)動(dòng)程序設(shè)置

單個(gè)打印機(jī)驅(qū)動(dòng)程序的設(shè)置存儲(chǔ)在KEY_LOCAL_MACHINE\Printers鍵的在鍵中。打印機(jī)驅(qū)動(dòng)程序的注冊(cè)健應(yīng)該定義為4個(gè)鍵:Driver、High Quality、Draft Quality 和Color。其中Driver值列舉過(guò)程包含打印機(jī)驅(qū)動(dòng)程序的DLL。如果打印機(jī)支持的話,Hight Quality和Draft Quality的值存儲(chǔ)高質(zhì)量和繪圖質(zhì)量模式的分辨率。但并不是所有的打印機(jī)都支持繪圖質(zhì)量模式,因此Draft Quality鍵可以忽略。High Quality鍵必須提供,它對(duì)應(yīng)于打印機(jī)的最高質(zhì)量模式。Color值定義打印機(jī)是彩色的還是單色的。如果支持彩色的話,該鍵值必須設(shè)置為字符”Color“

下面是PCL機(jī)關(guān)打印機(jī)和PCL噴墨打印機(jī)驅(qū)動(dòng)程序的設(shè)置例子:

(HEKY_LOCAL_MACHINE\Peinters\PCI Laser)“Driver”=”pc1.Dll”“High Quality”=”300”“Draft Quality”=”150”“Color”=Monochrome”“Version”=”0x200”[!--empirenews.page--]

(HKEY_LOCAL_MACHINE\Peinters\PCl Inkjet)“Driver”=”pcl.dll”“High Quality”=”300”“Draft Quality”=”150”“Color”=”Monochrome”另外Version鍵可以用于支持打印機(jī)驅(qū)動(dòng)程序服務(wù)多個(gè)打印機(jī)!

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉