系統(tǒng)之家 - 系統(tǒng)光盤下載網(wǎng)站!

ImagePrinter(虛擬打印機(jī)) V2.1 最新版

  • 大小:920.13 KB
  • 語言:英文軟件
  • 授權(quán):免費軟件
  • 星級評價 :
  • 軟件分類:打印工具
  • 更新:2022-03-09
  • 支持系統(tǒng):Win8,Win7,WinXP,Win2003,Win2000
  • 安全檢測: 360安全衛(wèi)士 360殺毒 電腦管家
  • 標(biāo)簽 : 打印機(jī)
  • 軟件介紹
  • 相關(guān)專題
  • 相關(guān)教程
  • 下載地址
  • 特色推薦
  • 網(wǎng)友評論

  ImagePrinter(虛擬打印機(jī)) 可以將文檔“打。ㄌ摂M打。”成BMP、PNG、JPG、PDF等格式的文件,安裝后會成為系統(tǒng)的默認(rèn)打印機(jī)。ImagePrinter的體積只有900多KB,讓低版本的office支持將文檔打印成圖片的工具。

ImagePrinter(虛擬打印機(jī))

軟件特色

  輸出文件支持BMP、PNG、JPG、PDF等格式。

  軟件體積小巧,總共只有900多KB大小。

  向下兼容,支持各種低版本Office軟件。

  安裝之后可以設(shè)置為系統(tǒng)的默認(rèn)打印機(jī)。

使用說明

  ImagePrinter是在Port監(jiān)視器端的虛擬打印機(jī)。

  (1)在系統(tǒng)開機(jī)時,順序調(diào)用以下函數(shù):DllMain---》InitializePrintMonitor---》iEnumPorts(2次,后一次參數(shù)都是NULL)---》iOpenPort;

 。2)在打印文檔時,順序調(diào)用以下函數(shù):iStartDocPort---》iWritePort(很多次)---》iEndDocPort。

  以下是DDK的翻譯(根據(jù)對代碼的理解,有刪減):

 。1)初始化打印監(jiān)視器

  當(dāng)spooler調(diào)用LoadLibrary來加載的打印監(jiān)視器DLL,系統(tǒng)立即調(diào)用DLL的DllEntryPoint函數(shù)?梢栽诖藭rLisableThreadLibraryCalls,這樣創(chuàng)建和刪除線程時,不必非得這個通知DLL。

  每一個DLL都導(dǎo)出一個初始化函數(shù),可以供spooler在調(diào)用LoadLibrary后調(diào)用。Language monitor DLL和port monitor server DLL導(dǎo)出InitializePrintMonitor2函數(shù)。port monitor UI DLL的導(dǎo)出InitializePrintMonitorUI函數(shù)。(總共有3中Monitor)。

  這兩個初始化函數(shù)的作用是返回其他函數(shù)(EnumPorts,OpenPort,StartDocPort等所有以下用的函數(shù))的指針,這樣spooler就可以調(diào)用它們了。初始化函數(shù)也可以執(zhí)行l(wèi)oad time的初始化操作。

  InitializePrintMonitor2函數(shù)返回一個監(jiān)視器實例句柄。monitor應(yīng)分配本地內(nèi)存來存儲自定義的一些信息,并以此句柄為標(biāo)識來分配內(nèi)存。

  當(dāng)spooler第一次啟動時(一般是開機(jī)時,如果你開機(jī)啟動了spooler服務(wù)的話),它會載入所有已安裝的monitor DLL的。所有Monitor的初始化函數(shù)調(diào)用后,打印后臺處理程序調(diào)用每個port monitor的EnumPorts函數(shù),其中列舉了monitor支持的端口。monitor支持一個端口,如果端口已被添加到monitor的數(shù)據(jù)庫。然后打開每個支持的端口。

  (2)打開和關(guān)閉端口

  spooler 通過調(diào)用language monitor的OpenPortEx函數(shù)打開端口;相對應(yīng)的Port monitor調(diào)用OpenPort函數(shù),language monitor只返回從Port monitor的OpenPort獲得的句柄。如果沒有l(wèi)anguage monitor,就直接調(diào)Port monitor的OpenPort函數(shù)。打開一個端口后不關(guān)閉的話,不能再打開。

  端口一經(jīng)打開,打印后臺處理程序就可以調(diào)用其他函數(shù)來打印作業(yè)了。這些函數(shù)使用OpenPort返回的句柄作為輸入。什么時候端口關(guān)閉呢:系統(tǒng)關(guān)機(jī),沒打印任務(wù)。..。

 。3)打印打印作業(yè)

  每個打印作業(yè)以StartDocPort開始,以EndDocPort結(jié)束。當(dāng)print processor 調(diào)用的spooler的StartDocPrinter EndDocPrinter的函數(shù)時,這兩個函數(shù)被調(diào)用。在這兩個函數(shù)調(diào)用中間,不定量的WritePort, ReadPort, and GetPrinterDataFromPort函數(shù)被調(diào)用。

  這些函數(shù)都需要用到OpenPortEx(或OpenPort)返回的句柄( port handle)作為輸入?yún)?shù)。

  當(dāng)spooler調(diào)用language monitor 的WritePort函數(shù),以將數(shù)據(jù)流發(fā)送到端口時,這些函數(shù)一般只增加一些特定的語言信息到接收到的數(shù)據(jù)流上,如PJL命令然后將它傳遞給相關(guān)的port monitor的WritePort功能。

  ReadPort函數(shù)是用于獲取雙向打印機(jī)硬件的狀態(tài)信息。Language monitor 通過調(diào)用SetPort將信息發(fā)送到spooler,獲得狀態(tài)信息。spooler不能調(diào)用ReadPort的函數(shù)。

  如果打印硬件是雙向的,language monitor和port monitor 都應(yīng)該實現(xiàn)GetPrinterDataFromPort函數(shù)。language monitor的GetPrinterDataFromPort函數(shù)以注冊表值的名稱為輸入,獲得該名稱的值(通常由調(diào)用相關(guān)的端口監(jiān)視器的WritePort和ReadPort功能),并返回值給調(diào)用者。port monitor 的GetPrinterDataFromPort函數(shù)應(yīng)該接受一個I / O控制代碼作為輸入,調(diào)用DeviceIoControl返回控制代碼給port driver,并返回結(jié)果。


相關(guān)專題

  • pdf虛擬打印機(jī)
pdf虛擬打印機(jī)_pdf虛擬打印機(jī)破解版_虛擬打印機(jī)下載大全

pdf虛擬打印機(jī) 更多+

虛擬打印機(jī)軟件就是你沒有打印機(jī),但讓電腦模擬打印機(jī)的行為,做出同樣的效果,可以生成打印成pdf、word等文件讓你提前預(yù)覽你打印的效果,小編整理了幾款最好用的虛擬打印機(jī)、pdf虛擬打印機(jī)供大家免費下載。

下載地址

  • PC版

特色推薦

廠商其他下載

  • 電腦版
  • 安卓版
  • iOS版

發(fā)表評論

0

沒有更多評論了

評論就這些咯,讓大家也知道你的獨特見解

立即評論

以上留言僅代表用戶個人觀點,不代表系統(tǒng)之家立場

其他版本

更多+

最新軟件

熱門系統(tǒng)推薦

官方交流群 軟件收錄

ImagePrinter(虛擬打印機(jī))正在下載,用戶還下載了

關(guān)閉