打印機(jī)驅(qū)動(dòng)器的印刷功能的追加方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及打印機(jī)驅(qū)動(dòng)器的印刷功能的追加方法,特別涉及在Windows (視窗)(注冊(cè)商標(biāo),以下省略)的操作系統(tǒng)(OS Operating System)上動(dòng)作的版本4的打印機(jī)驅(qū)動(dòng)器的印刷功能的追加方法。
【背景技術(shù)】
[0002]關(guān)于在WindowsOS上動(dòng)作的打印機(jī)驅(qū)動(dòng)器,從Microsoft (注冊(cè)商標(biāo),以下省略)公司示出了面向硬件制造商的方針,硬件制造商按照該方針來(lái)提供假定了 WindOws2000?Windows7的版本3的打印機(jī)驅(qū)動(dòng)器。
[0003]此后,Windows8和 Server2012 作為 WindowsOS 而上市,尤其在 Windows8 中,UI (User Interface,用戶界面)被變更為瓷磚狀的用戶界面即Metro風(fēng)格,因而硬件制造商正在推進(jìn)采用了新的打印機(jī)驅(qū)動(dòng)器架構(gòu)的版本4的打印機(jī)驅(qū)動(dòng)器的開(kāi)發(fā)。
[0004]若將該版本4的打印機(jī)驅(qū)動(dòng)器模型進(jìn)行大致區(qū)分,則由打印機(jī)驅(qū)動(dòng)器核心(Printer Driver core)部和印刷設(shè)定UI部的兩個(gè)層構(gòu)成。這兩個(gè)層實(shí)現(xiàn)了進(jìn)程分離,能夠單獨(dú)進(jìn)行提供。
[0005]打印機(jī)驅(qū)動(dòng)器核心部是提供印刷功能的應(yīng)用,由定義各印刷功能的GPD(GenericPrinter Descript1n,通用打印機(jī)說(shuō)明)/PPD (PostScript Printer Descript1n,PostScript打印機(jī)說(shuō)明)>XML(Extensible Markup Language,可擴(kuò)展標(biāo)記語(yǔ)言)、定義各印刷功能的多個(gè)語(yǔ)言的顯示字符串的本地化資源DLL (Dynamic Link Library,動(dòng)態(tài)鏈接庫(kù))等的構(gòu)成文件、在繪制時(shí)進(jìn)行描繪命令的編輯的印刷過(guò)濾器、處理印刷功能的設(shè)定競(jìng)爭(zhēng)的禁則JavaScript (注冊(cè)商標(biāo),以下省略)部等的模塊構(gòu)成。
[0006]此外,印刷設(shè)定UI部是與打印機(jī)驅(qū)動(dòng)器核心部獨(dú)立的應(yīng)用,基于從打印機(jī)驅(qū)動(dòng)器核心部提供的被稱為PrintCapabilities的印刷功能信息、和被稱為PrintTicket (打印票)的印刷設(shè)定信息來(lái)提供印刷設(shè)定畫面。
[0007]PrintCapabilities以XML形式記述,進(jìn)行了各印刷功能的定義。具體地說(shuō),PrintCapabilities在單一選擇的功能(從多個(gè)選項(xiàng)中選擇一個(gè)的功能)的情況下,記述Feature (功能)、Opt1n (選項(xiàng))、功能或選項(xiàng)的顯示字符串,在進(jìn)行字符串輸入的功能的情況下,記述Parameter (參數(shù))、最大字符數(shù)或最小字符數(shù)等的屬性、參數(shù)名的顯示字符串坐寸ο
[0008]PrintTicket以XML形式記述,保持印刷設(shè)定信息。PrintTicket的形式(XML的元素)在打印機(jī)驅(qū)動(dòng)器核心部中被定義。并且,基于在GPD/Pro文件中定義的信息,OS自動(dòng)地追加X(jué)ML元素,或者通過(guò)禁則JavaScript部?jī)?nèi)的函數(shù)來(lái)追加X(jué)ML元素。此外,PrintTicket的內(nèi)容在打印機(jī)驅(qū)動(dòng)器核心部中變換成被稱為DEVM0DE構(gòu)造體的數(shù)據(jù)構(gòu)造體。
[0009]作為與這樣的版本4的打印機(jī)驅(qū)動(dòng)器模型有關(guān)的技術(shù),例如,在下述專利文獻(xiàn)I中公開(kāi)了一種經(jīng)由通信網(wǎng)絡(luò)與外部裝置連接的信息處理裝置,其具有:接收部件,從其他的信息處理裝置接收請(qǐng)求,該請(qǐng)求一并指定了表示在該其他的信息處理裝置中所設(shè)定的顯示程序的顯示形式的信息和表示狀態(tài)的類別的信息;狀態(tài)取得部件,基于在所述請(qǐng)求中包含的表示狀態(tài)的類別的信息,從所述外部裝置取得與該類別對(duì)應(yīng)的狀態(tài)的值;資源取得部件,取得與在所述請(qǐng)求中包含的表示顯示程序的顯示形式的信息對(duì)應(yīng)的資源信息;以及發(fā)送部件,作為通過(guò)所述接收部件接收到的請(qǐng)求的響應(yīng),將遵循通過(guò)所述資源取得部件取得的資源信息和對(duì)應(yīng)于所述類別的狀態(tài)的值的狀態(tài)信息發(fā)送到所述其他的信息處理裝置。
[0010][專利文獻(xiàn)I](日本)特開(kāi)2011-023019號(hào)公報(bào)
[0011]如上所述,在版本4的打印機(jī)驅(qū)動(dòng)器中打印機(jī)驅(qū)動(dòng)器核心部和印刷設(shè)定UI部獨(dú)立,因此在新追加印刷功能的情況下,需要修正打印機(jī)驅(qū)動(dòng)器核心部和印刷設(shè)定UI部的雙方而實(shí)現(xiàn)匹配,存在無(wú)法簡(jiǎn)便地追加印刷功能的問(wèn)題。
[0012]S卩,如上所述,PrintTicket的形式在打印機(jī)驅(qū)動(dòng)器核心部中被定義,因此即便在印刷設(shè)定UI部中進(jìn)行了 PrintTicket的編輯而追加了新的印刷功能,所追加的印刷功能在打印機(jī)驅(qū)動(dòng)器核心部中也不會(huì)被識(shí)別,導(dǎo)致在打印機(jī)驅(qū)動(dòng)器核心部中將PrintTicket的內(nèi)容變換為DEVM0DE構(gòu)造體時(shí)被丟棄。
[0013]從而,追加印刷功能需要打印機(jī)驅(qū)動(dòng)器核心部的修正(以C語(yǔ)言等記述的程序主體的修正等),而為了修正打印機(jī)驅(qū)動(dòng)器核心部,需要WHCK (Windows HardwareCertificat1n Kit, Windows硬件認(rèn)證工具包)的日志獲取等,產(chǎn)生非常大的工時(shí)。
【發(fā)明內(nèi)容】
[0014]本發(fā)明鑒于上述問(wèn)題點(diǎn)而完成,其主要目的在于提供一種能夠簡(jiǎn)便地追加新的印刷功能的打印機(jī)驅(qū)動(dòng)器的印刷功能的追加方法。
[0015]本發(fā)明的一個(gè)側(cè)面是,一種打印機(jī)驅(qū)動(dòng)器的印刷功能的追加方法,該打印機(jī)驅(qū)動(dòng)器在對(duì)印刷裝置指示印刷的計(jì)算機(jī)裝置中進(jìn)行動(dòng)作,其特征在于,所述追加方法執(zhí)行以下步驟:第I步驟,生成記述了與印刷功能有關(guān)的信息的PrintTicket ;第2步驟,對(duì)所述PrintTicket定義用于保存信息的區(qū)域而生成第一 PrintTicket ;第3步驟,基于所述第一PrintTicket而生成印刷設(shè)定畫面,并使該印刷設(shè)定畫面顯示到顯示部?’第4步驟,生成記述了在所述印刷設(shè)定畫面中輸入的與其他的印刷功能有關(guān)的信息的PrintTicket,并將該P(yáng)rintTicket編入所述第一 PrintTicket的所述區(qū)域而生成第二 PrintTicket ;以及第5步驟,將所述第二 PrintTicket變換為所述印刷裝置能夠解釋的第三PrintTicket。
[0016]本發(fā)明的另一側(cè)面是,一種打印機(jī)驅(qū)動(dòng)器的印刷功能的追加方法,該打印機(jī)驅(qū)動(dòng)器在對(duì)印刷裝置指示印刷的計(jì)算機(jī)裝置中進(jìn)行動(dòng)作,其特征在于,所述追加方法執(zhí)行以下步驟:第I步驟,生成定義印刷功能的PrintTicket ;第2步驟,對(duì)所述PrintTicket定義用于保存信息的區(qū)域而生成第一 PrintTicket ;第3步驟,基于所述第一 PrintTicket而生成印刷設(shè)定畫面,并使該印刷設(shè)定畫面顯示到顯示部;第4步驟,生成記述了在所述印刷設(shè)定畫面中輸入的與其他的印刷功能有關(guān)的信息的P幾命令,并將該P(yáng)幾命令編入所述第一 PrintTicket的所述區(qū)域而生成第二 PrintTicket ;以及第5步驟,將所述第二PrintTicket變換為所述印刷裝置能夠解釋的第三PrintTicket。
[0017]本發(fā)明的又一側(cè)面是,一種打印機(jī)驅(qū)動(dòng)器的印刷功能的追加方法,該打印機(jī)驅(qū)動(dòng)器在對(duì)印刷裝置指示印刷的計(jì)算機(jī)裝置中進(jìn)行動(dòng)作,其特征在于,所述追加方法執(zhí)行以下步驟:第I步驟,生成定義印刷功能的PrintTicket ;第2步驟,對(duì)所述PrintTicket定義用于保存信息的區(qū)域而生成第一 PrintTicket ;第3步驟,基于所述第一 PrintTicket而生成印刷設(shè)定畫面,并使該印刷設(shè)定畫面顯示到顯示部;第4步驟,生成記述了在所述印刷設(shè)定畫面中輸入的與其他的印刷功能有關(guān)的信息的第一 PJL命令,并將該第一 PJL命令編入所述第一 PrintTicket的所述區(qū)域而生成第二 PrintTicket ;以及第5步驟,將所述第二PrintTicket變換為所述印刷裝置能夠解釋的第二 PJL命令。
[0018]根據(jù)本發(fā)明的打印機(jī)驅(qū)動(dòng)器的印刷功能的追加方法,能夠簡(jiǎn)便地追加新的印刷功倉(cāng)泛。
[0019]其理由是,在利用具備打印機(jī)驅(qū)動(dòng)器核心部和印刷設(shè)定Π部的打印機(jī)驅(qū)動(dòng)器來(lái)追加新的印刷功能時(shí),進(jìn)行如下控制:打印機(jī)驅(qū)動(dòng)器核心部生成定義了用于追加印刷功能的區(qū)域的第一 PrintTicket而傳送到印刷設(shè)定UI部,印刷設(shè)定UI部生成記述了與新的印刷功能有關(guān)的信息的PrintTicket,并將該P(yáng)rintTicket編入第一 PrintTicket的已定義的區(qū)域而生成第二 PrintTicket后傳送到打印機(jī)驅(qū)動(dòng)器核心部,打印機(jī)驅(qū)動(dòng)器核心部將第二PrintTicket變換為在印刷裝置中能夠解釋的第三PrintTicket。
[0020]此外,因?yàn)檫M(jìn)行以下控制:打印機(jī)驅(qū)動(dòng)器核心部生成定義了用于追加印刷功能的區(qū)域的第一 PrintTicket而傳送到印刷設(shè)定UI部,印刷設(shè)定UI部生成記述了與新的印刷功能有關(guān)的信息的PJL(Printer Job Language ;打印機(jī)作業(yè)語(yǔ)言)命令,并將該P(yáng)JL命令編入第一 PrintTicket的已定義的區(qū)域而生成第二 PrintTicket后傳送到打印機(jī)驅(qū)動(dòng)器核心部,打印機(jī)驅(qū)動(dòng)器核心部將第二 PrintTicket變換為在印刷裝置中能夠解釋的PrintTicket。
[0021]此外,因?yàn)檫M(jìn)行以下控制:打印機(jī)驅(qū)動(dòng)器核心部生成定義了用于追加印刷功能的區(qū)域的第一 PrintTicket而傳送到印刷設(shè)定UI部,印刷設(shè)定UI部生成記述了與新的印刷功能有關(guān)的信息的第一 PJL命令,并將該第一 PJL命令編入第一 PrintTicket的已定義的區(qū)域而生成第二 PrintTicket后傳送到打印機(jī)驅(qū)動(dòng)器核心部,打印機(jī)驅(qū)動(dòng)器核心部將第二PrintTicket變換為在印刷裝置中能夠解釋的第二 PJL命令。
【附圖說(shuō)明】
[00