欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

打印系統(tǒng)、打印數(shù)據(jù)提供裝置、其控制方法及程序的制作方法

文檔序號(hào):87362閱讀:192來源:國知局
專利名稱:打印系統(tǒng)、打印數(shù)據(jù)提供裝置、其控制方法及程序的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及打印系統(tǒng)、打印數(shù)據(jù)提供裝置、打印數(shù)據(jù)提供裝置的控制方法及程序。
背景技術(shù)
通常已知的打印系統(tǒng),是使打印機(jī)打印輸出由應(yīng)用程序生成的圖像。例如,已知使打印機(jī)打印輸出由POS(Point Of Sales)應(yīng)用程序生成的收據(jù)圖像的打印系統(tǒng)。

發(fā)明內(nèi)容上述打印系統(tǒng)中,在將打印機(jī)更換為其他打印機(jī)的情況下,由于更換前的打印機(jī)和更換后的打印機(jī)之間的規(guī)格參數(shù)等的不同,存在更換前的打印機(jī)的打印輸出和更換后的打印機(jī)的打印輸出之間產(chǎn)生差異的情況。在這種情況下,為了得到與更換前的打印機(jī)的打印輸出同樣的打印輸出,必須考慮應(yīng)用程序側(cè)的規(guī)格參數(shù)或設(shè)定、和更換后的打印機(jī)的規(guī)格參數(shù)等進(jìn)行變更。
本發(fā)明是鑒于上述課題完成的,其目的在于提供一種在根據(jù)內(nèi)部打印數(shù)據(jù)生成打印數(shù)據(jù)、提供給打印機(jī)的打印系統(tǒng)中,能夠按照內(nèi)部打印數(shù)據(jù),改變用于根據(jù)內(nèi)部打印數(shù)據(jù)生成打印數(shù)據(jù)的處理內(nèi)容的打印系統(tǒng)、打印數(shù)據(jù)提供裝置、打印數(shù)據(jù)提供裝置的控制方法以及程序。
為了解決上述課題,本發(fā)明涉及的打印系統(tǒng),其包含打印機(jī)和打印數(shù)據(jù)提供裝置,該打印數(shù)據(jù)提供裝置包含打印數(shù)據(jù)生成單元,其根據(jù)作為數(shù)據(jù)處理結(jié)果而輸出的內(nèi)部打印數(shù)據(jù),執(zhí)行打印數(shù)據(jù)生成處理,生成打印數(shù)據(jù);以及打印數(shù)據(jù)提供單元,其將由前述打印數(shù)據(jù)生成單元生成的打印數(shù)據(jù)提供給前述打印機(jī),其特征在于,前述打印數(shù)據(jù)提供裝置具有內(nèi)部打印數(shù)據(jù)條件存儲(chǔ)單元,其與多個(gè)前述打印數(shù)據(jù)生成處理分別對(duì)應(yīng),存儲(chǔ)作為與前述內(nèi)部打印數(shù)據(jù)相關(guān)的條件的內(nèi)部打印數(shù)據(jù)條件;以及判定單元,其判定前述內(nèi)部打印數(shù)據(jù)是否滿足與前述打印數(shù)據(jù)生成處理相對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件,前述打印數(shù)據(jù)生成單元根據(jù)由前述判定單元得出的判定結(jié)果,執(zhí)行前述多個(gè)打印數(shù)據(jù)生成處理中的某一個(gè),生成前述打印數(shù)據(jù)。
另外,本發(fā)明涉及的打印數(shù)據(jù)提供裝置,包含打印數(shù)據(jù)生成單元,其根據(jù)作為數(shù)據(jù)處理結(jié)果而輸出的內(nèi)部打印數(shù)據(jù),執(zhí)行打印數(shù)據(jù)生成處理,生成打印數(shù)據(jù);以及打印數(shù)據(jù)提供單元,其將由前述打印數(shù)據(jù)生成單元生成的打印數(shù)據(jù)提供給打印機(jī),其特征在于,具有內(nèi)部打印數(shù)據(jù)條件存儲(chǔ)單元,其與多個(gè)前述打印數(shù)據(jù)生成處理分別對(duì)應(yīng),存儲(chǔ)作為與前述內(nèi)部打印數(shù)據(jù)相關(guān)的條件的內(nèi)部打印數(shù)據(jù)條件;以及判定單元,其判定前述內(nèi)部打印數(shù)據(jù)是否滿足與前述打印數(shù)據(jù)生成處理相對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件,前述打印數(shù)據(jù)生成單元根據(jù)由前述判定單元得出的判定結(jié)果,執(zhí)行前述多個(gè)打印數(shù)據(jù)生成處理中的某一個(gè),生成前述打印數(shù)據(jù)。
另外,本發(fā)明涉及的打印數(shù)據(jù)提供裝置的控制方法,包含打印數(shù)據(jù)生成步驟,該步驟用于根據(jù)作為數(shù)據(jù)處理結(jié)果而輸出的內(nèi)部打印數(shù)據(jù),執(zhí)行打印數(shù)據(jù)生成處理,生成打印數(shù)據(jù);以及打印數(shù)據(jù)提供步驟,該步驟用于將由前述打印數(shù)據(jù)生成步驟生成的打印數(shù)據(jù)提供給打印機(jī),其特征在于,包含判定步驟,該步驟用于讀出內(nèi)部打印數(shù)據(jù)條件存儲(chǔ)單元的存儲(chǔ)內(nèi)容,判定前述內(nèi)部打印數(shù)據(jù)是否滿足與前述打印數(shù)據(jù)生成處理對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件,所述內(nèi)部打印數(shù)據(jù)條件存儲(chǔ)單元與多個(gè)前述打印數(shù)據(jù)生成處理分別對(duì)應(yīng),存儲(chǔ)作為與前述內(nèi)部打印數(shù)據(jù)相關(guān)的條件的內(nèi)部打印數(shù)據(jù)條件,前述打印數(shù)據(jù)生成步驟根據(jù)由前述判定步驟得出的判定結(jié)果,執(zhí)行前述多個(gè)打印數(shù)據(jù)生成處理中的某一個(gè),生成前述打印數(shù)據(jù)。
另外,本發(fā)明涉及的程序,其用于使計(jì)算機(jī)實(shí)現(xiàn)作為打印數(shù)據(jù)提供裝置的功能,該打印數(shù)據(jù)提供裝置包含打印數(shù)據(jù)生成單元,其根據(jù)作為數(shù)據(jù)處理結(jié)果而輸出的內(nèi)部打印數(shù)據(jù),執(zhí)行打印數(shù)據(jù)生成處理,生成打印數(shù)據(jù);以及打印數(shù)據(jù)提供單元,其將由前述打印數(shù)據(jù)生成單元生成的打印數(shù)據(jù)提供給打印機(jī),其特征在于,使計(jì)算機(jī)實(shí)現(xiàn)下述單元的功能內(nèi)部打印數(shù)據(jù)條件存儲(chǔ)單元,其與多個(gè)前述打印數(shù)據(jù)生成處理分別對(duì)應(yīng),存儲(chǔ)作為與前述內(nèi)部打印數(shù)據(jù)相關(guān)的條件的內(nèi)部打印數(shù)據(jù)條件;以及判定單元,其判定前述內(nèi)部打印數(shù)據(jù)是否滿足與前述打印數(shù)據(jù)生成處理相對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件,前述打印數(shù)據(jù)生成單元根據(jù)由前述判定單元得出的判定結(jié)果,執(zhí)行前述多個(gè)打印數(shù)據(jù)生成處理中的某一個(gè),生成前述打印數(shù)據(jù)。
另外,本發(fā)明涉及的信息存儲(chǔ)介質(zhì)是存儲(chǔ)了上述程序的計(jì)算機(jī)可讀取的信息存儲(chǔ)介質(zhì)。
本發(fā)明涉及一種打印系統(tǒng),其包含打印機(jī)和打印數(shù)據(jù)提供裝置,該打印數(shù)據(jù)提供裝置根據(jù)作為數(shù)據(jù)處理結(jié)果而輸出的內(nèi)部打印數(shù)據(jù),執(zhí)行打印數(shù)據(jù)生成處理,由此生成打印數(shù)據(jù),并提供給打印機(jī)。打印數(shù)據(jù)提供裝置中,與多個(gè)打印數(shù)據(jù)生成處理分別對(duì)應(yīng),存儲(chǔ)作為與內(nèi)部打印數(shù)據(jù)相關(guān)的條件的內(nèi)部打印數(shù)據(jù)條件。另外,打印數(shù)據(jù)提供裝置中,判定內(nèi)部打印數(shù)據(jù)是否滿足與打印數(shù)據(jù)生成處理相對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件。而且,打印數(shù)據(jù)提供裝置中,打印數(shù)據(jù)生成單元根據(jù)由判定單元得出的判定結(jié)果,執(zhí)行多個(gè)打印數(shù)據(jù)生成處理中的某一個(gè),生成打印數(shù)據(jù)。根據(jù)本發(fā)明,能夠使用于根據(jù)內(nèi)部打印數(shù)據(jù)來生成打印數(shù)據(jù)的處理的內(nèi)容按照內(nèi)部打印數(shù)據(jù)進(jìn)行變化。
另外,本發(fā)明的一種方式中,前述內(nèi)部打印數(shù)據(jù)條件,包括與前述內(nèi)部打印數(shù)據(jù)的屬性信息相關(guān)的條件,前述判定單元判定前述內(nèi)部打印數(shù)據(jù)的屬性信息是否滿足與前述打印數(shù)據(jù)生成處理對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件。在這里,內(nèi)部打印數(shù)據(jù)的屬性信息是例如內(nèi)部打印數(shù)據(jù)名稱等。這樣,能夠使得用于根據(jù)內(nèi)部打印數(shù)據(jù)來生成打印數(shù)據(jù)的處理內(nèi)容,按照內(nèi)部打印數(shù)據(jù)的屬性信息進(jìn)行變化。
另外,本發(fā)明的一種方式中,前述內(nèi)部打印數(shù)據(jù)條件,包括與前述數(shù)據(jù)處理相關(guān)的條件,前述判定單元,判定在前述內(nèi)部打印數(shù)據(jù)的輸出中使用的前述數(shù)據(jù)處理,是否滿足與前述打印數(shù)據(jù)生成處理對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件。由此,能夠使得用于根據(jù)內(nèi)部打印數(shù)據(jù)來生成內(nèi)部打印數(shù)據(jù)的處理的內(nèi)容,按照內(nèi)部打印數(shù)據(jù)的輸出中使用的數(shù)據(jù)處理的內(nèi)容進(jìn)行變化。
另外,本發(fā)明的一種方式中,在判定前述內(nèi)部打印數(shù)據(jù)滿足與前述多個(gè)打印數(shù)據(jù)生成處理分別對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件中的某一個(gè)的情況下,前述打印數(shù)據(jù)生成單元執(zhí)行與該內(nèi)部打印數(shù)據(jù)條件對(duì)應(yīng)的打印數(shù)據(jù)生成處理,在判定前述內(nèi)部打印數(shù)據(jù)不滿足與前述多個(gè)打印數(shù)據(jù)生成處理分別對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件中的任意一個(gè)的情況下,前述打印數(shù)據(jù)生成單元執(zhí)行規(guī)定的打印數(shù)據(jù)生成處理。由此,即使在內(nèi)部打印數(shù)據(jù)不滿足與各個(gè)打印數(shù)據(jù)生成處理對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件中的任何一個(gè)的情況下,也能夠確保打印數(shù)據(jù)生成的進(jìn)行。
圖1是表示本發(fā)明的實(shí)施方式涉及的打印系統(tǒng)的整體結(jié)構(gòu)的圖。
圖2是表示收據(jù)圖像的一個(gè)例子的圖。
圖3是用于說明主計(jì)算機(jī)的打印處理的圖。
圖4是表示內(nèi)部打印數(shù)據(jù)分配設(shè)定數(shù)據(jù)的一個(gè)例子的圖。
圖5是本發(fā)明的實(shí)施方式涉及的主計(jì)算機(jī)的功能模塊圖。
圖6是表示主計(jì)算機(jī)中執(zhí)行的處理的流程圖。
圖7是表示主計(jì)算機(jī)中執(zhí)行的處理的流程圖。
具體實(shí)施方式下面,根據(jù)附圖對(duì)于本發(fā)明的實(shí)施方式的一個(gè)例子進(jìn)行詳細(xì)說明。
圖1是表示本發(fā)明的實(shí)施方式涉及的打印系統(tǒng)的整體結(jié)構(gòu)的圖。如該圖所示,本實(shí)施方式涉及的打印系統(tǒng)1構(gòu)成為包括主計(jì)算機(jī)10(打印數(shù)據(jù)提供裝置)和打印機(jī)20。
如圖1所示,主計(jì)算機(jī)10是構(gòu)成為包括控制部11、存儲(chǔ)部12、輸入部13、顯示部14、接口(I/F)15以及光盤讀取部16的計(jì)算機(jī)。
控制部11按照存儲(chǔ)在存儲(chǔ)部12中的操作系統(tǒng)以及其他程序進(jìn)行工作,執(zhí)行各種信息處理。另外,存儲(chǔ)部12由計(jì)算機(jī)可讀取的信息存儲(chǔ)介質(zhì)構(gòu)成。例如,存儲(chǔ)部12構(gòu)成為包括ROM(Read OnlyMemory)、RAM(Random Access Memory)以硬盤裝置。在存儲(chǔ)部12中存儲(chǔ)由控制部11執(zhí)行的程序。另外,存儲(chǔ)部12還作為存儲(chǔ)在控制部11的處理過程中必需的各種數(shù)據(jù)的工作存儲(chǔ)器。
輸入部13是例如鍵盤或鼠標(biāo)等,將與用戶的操作輸入對(duì)應(yīng)的數(shù)據(jù)輸入至控制部11。顯示部14為例如顯示器等,根據(jù)由控制部11輸入的指令進(jìn)行信息的顯示。光盤讀取部16根據(jù)來自控制部11的指令,讀取存儲(chǔ)在例如DVD-ROM等光盤(信息存儲(chǔ)介質(zhì))中的程序或數(shù)據(jù)。
接口15是用于將各種外圍設(shè)備或信息存儲(chǔ)介質(zhì)(存儲(chǔ)卡等)與主計(jì)算機(jī)10連接的接口。接口15將從外圍設(shè)備等輸入的數(shù)據(jù)輸出給控制部11。另外,接口15根據(jù)由控制部11輸入的指令,將各種數(shù)據(jù)輸出給外圍設(shè)備等。在主計(jì)算機(jī)10上設(shè)有例如符合USB(UniversalSerial Bus)接口規(guī)格的接口(以下稱為USB端口)。
在本實(shí)施方式的情況下,在主計(jì)算機(jī)10中安裝微軟公司的Windows(注冊(cè)商標(biāo))作為操作系統(tǒng)。另外,在主計(jì)算機(jī)10中安裝POS應(yīng)用程序。POS應(yīng)用程序具有用于生成例如圖2所示的收據(jù)圖像的功能,以及用于開始進(jìn)行該收據(jù)圖像的打印處理的功能。
在主計(jì)算機(jī)10上通過接口15連接有能夠相互傳輸數(shù)據(jù)的打印機(jī)20。如圖1所示,打印機(jī)20構(gòu)成為包括控制部21、存儲(chǔ)部22、圖像形成部23和接口(I/F)24。
控制部21進(jìn)行打印機(jī)20的整體控制。存儲(chǔ)部22構(gòu)成為包括ROM或RAM,存儲(chǔ)為了執(zhí)行打印所必需的各種程序或數(shù)據(jù)。接口24接收由主計(jì)算機(jī)10發(fā)送的數(shù)據(jù),輸出給控制部21。在打印機(jī)20上設(shè)有例如USB端口作為接口24。圖像形成部23在打印紙等的圖像記錄介質(zhì)上,形成基于由控制部21輸入的數(shù)據(jù)的圖像。
打印機(jī)20從主計(jì)算機(jī)10接收規(guī)定的指令體系的指令數(shù)據(jù)(打印數(shù)據(jù)),根據(jù)該指令數(shù)據(jù)在圖像記錄介質(zhì)上形成圖像。在本實(shí)施方式的情況下,打印機(jī)20從主計(jì)算機(jī)10接收表示構(gòu)成圖像的各個(gè)像素的著色信息的指令數(shù)據(jù),根據(jù)該指令數(shù)據(jù)在圖像記錄介質(zhì)上形成圖像。另外,打印機(jī)20從主計(jì)算機(jī)10接收表示各種機(jī)構(gòu)的控制內(nèi)容的指令數(shù)據(jù),進(jìn)行按照該指令數(shù)據(jù)的機(jī)構(gòu)控制。例如,打印機(jī)20具有自動(dòng)分割機(jī)構(gòu),在從主計(jì)算機(jī)10接收到指示分割圖像存儲(chǔ)介質(zhì)的指令數(shù)據(jù)的情況下,在規(guī)定的位置以規(guī)定的方式分割圖像記錄介質(zhì)。此外,在這里,打印機(jī)20接收的指令數(shù)據(jù)是“指令體系1”的指令數(shù)據(jù)。
下面,對(duì)在指示打印收據(jù)圖像的情況下,由主計(jì)算機(jī)10執(zhí)行的處理進(jìn)行說明。圖3是用于說明由主計(jì)算機(jī)10執(zhí)行的處理的一個(gè)例子的圖。此外,在該圖中,說明了POS應(yīng)用程序30a和POS應(yīng)用程序30b,但主計(jì)算機(jī)10中至少安裝這二者中的一個(gè)。
首先,對(duì)由使用POS應(yīng)用程序30a指示打印收據(jù)圖像的情況進(jìn)行說明。
如果由POS應(yīng)用程序30a指示打印收據(jù)圖像,則適當(dāng)?shù)卣{(diào)出圖形設(shè)備接口(Graphic Device InterfaceGDI)31的各種函數(shù)。此外,GDI 31是用于進(jìn)行圖像描繪的函數(shù)組,由操作系統(tǒng)提供。
該情況下,首先開始打印任務(wù),然后,生成記錄了用于打印收據(jù)圖像的GDI指令組的中間數(shù)據(jù)。該中間數(shù)據(jù)是獨(dú)立于設(shè)備的數(shù)據(jù)。
此外,在打印任務(wù)開始的情況下,打印任務(wù)的名稱由POS應(yīng)用程序30a指定。打印任務(wù)名稱可以根據(jù)應(yīng)用程序指定固定的名稱,也可以根據(jù)打印對(duì)象的圖像數(shù)據(jù)指定不同的名稱。在本實(shí)施方式的情況下,POS應(yīng)用程序30a中保存固定的打印任務(wù)名稱“A”,在進(jìn)行POS應(yīng)用程序30a的收據(jù)圖像打印的情況下,無論收據(jù)圖像種類如何,均指定該打印任務(wù)名稱“A”。由POS應(yīng)用程序30a指定的打印任務(wù)名稱與由POS應(yīng)用程序30a開始的打印任務(wù)相關(guān)聯(lián)而保存。
由GDI 31生成的中間數(shù)據(jù)提供給與打印機(jī)20相關(guān)聯(lián)的打印機(jī)驅(qū)動(dòng)34a。打印機(jī)驅(qū)動(dòng)34a根據(jù)在中間數(shù)據(jù)中記錄的GDI指令組,生成內(nèi)部打印數(shù)據(jù)(RAW數(shù)據(jù))。此處生成的內(nèi)部打印數(shù)據(jù),是表示例如每一行打印內(nèi)容的指令數(shù)據(jù)和表示字體類型的指令數(shù)據(jù)等,不限于打印機(jī)20可以解釋的指令體系的指令數(shù)據(jù),也可以是打印機(jī)20不能解釋的指令體系的指令數(shù)據(jù)。此外,此處由打印機(jī)驅(qū)動(dòng)34a生成與“指令體系1”不同的“指令體系2”的指令數(shù)據(jù)作為內(nèi)部打印數(shù)據(jù)。
由打印機(jī)驅(qū)動(dòng)34a生成的內(nèi)部打印數(shù)據(jù)提供給緩沖器(spooler)35。緩沖器35一邊監(jiān)視打印機(jī)20的狀態(tài),一邊向端口驅(qū)動(dòng)40輸出內(nèi)部打印數(shù)據(jù)。
如上所述,在由POS應(yīng)用程序30a指示打印收據(jù)圖像的情況下,內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40的輸出經(jīng)由GDI 31、打印機(jī)驅(qū)動(dòng)34a以及緩沖器35進(jìn)行。
下面,對(duì)由POS應(yīng)用程序30b指示打印收據(jù)圖像的情況進(jìn)行說明。該情況下,內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40的輸出有下述情況1)經(jīng)由GDI 31、打印機(jī)驅(qū)動(dòng)34a以及緩沖器35進(jìn)行的情況;2)經(jīng)由內(nèi)部打印數(shù)據(jù)輸出程序34b、緩沖器API(Application Program Interface)32以及緩沖器35進(jìn)行的情況;以及3)經(jīng)由內(nèi)部打印數(shù)據(jù)生成程序34c以及端口輸出API 33進(jìn)行的情況。
上述情況中,在內(nèi)部打印數(shù)據(jù)的向端口驅(qū)動(dòng)40輸出經(jīng)由GDI31、打印機(jī)驅(qū)動(dòng)34a以及緩沖器35進(jìn)行的情況下,因?yàn)榕c由POS應(yīng)用程序30a指示打印收據(jù)圖像的情況相同,所以省略說明。此外,在本實(shí)施方式的情況下,由POS應(yīng)用程序30b保存固定的打印任務(wù)名稱“B”,在由POS應(yīng)用程序30b開始打印任務(wù)的情況下,無論收據(jù)圖像種類如何,均指定該打印任務(wù)名稱“B”。
首先,對(duì)內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40的輸出經(jīng)由內(nèi)部打印數(shù)據(jù)生成程序34b、緩沖器API 32以及緩沖器35進(jìn)行的情況進(jìn)行說明。
該情況下,要求內(nèi)部打印數(shù)據(jù)生成程序34b生成內(nèi)部打印數(shù)據(jù),內(nèi)部打印數(shù)據(jù)生成程序34b生成內(nèi)部打印數(shù)據(jù)(RAW數(shù)據(jù))。此外,內(nèi)部打印數(shù)據(jù)生成程序34b可以與POS應(yīng)用程序30b一體地提供,也可以與POS應(yīng)用程序30b分別提供。另外,此處生成的內(nèi)部打印數(shù)據(jù)是例如表示每一行打印內(nèi)容的指令數(shù)據(jù)和表示字體類型的指令數(shù)據(jù)等,與由打印機(jī)驅(qū)動(dòng)34a生成的內(nèi)部打印數(shù)據(jù)同樣地,不限于打印機(jī)20能夠解釋的指令體系的指令數(shù)據(jù),也可以是打印機(jī)20不能解釋的指令體系的指令數(shù)據(jù)。而且,此處由打印機(jī)驅(qū)動(dòng)34b生成“指令體系2”的指令數(shù)據(jù)作為內(nèi)部打印數(shù)據(jù)。
如果由內(nèi)部打印數(shù)據(jù)生成程序34b生成內(nèi)部打印數(shù)據(jù),則適當(dāng)?shù)卣{(diào)出緩沖器API 32的各種函數(shù)。此外,緩沖器API 32是用于不通過打印機(jī)驅(qū)動(dòng)34a而直接將內(nèi)部打印數(shù)據(jù)提供給緩沖器35的函數(shù)組,由操作系統(tǒng)提供。
該情況下,首先開始打印任務(wù),然后內(nèi)部打印數(shù)據(jù)提供給緩沖器35。緩沖器35一邊監(jiān)視打印機(jī)20的狀態(tài),一邊向端口驅(qū)動(dòng)40提供內(nèi)部打印數(shù)據(jù)。
此外,在要求內(nèi)部打印數(shù)據(jù)生成程序34b生成內(nèi)部打印數(shù)據(jù)的情況下,由POS應(yīng)用程序30b指定打印任務(wù)名稱。由POS應(yīng)用程序30b指定的打印任務(wù)名稱,與由POS應(yīng)用程序30b開始的打印任務(wù)相關(guān)聯(lián)而保存。如上所述,在本實(shí)施方式的情況下,由POS應(yīng)用程序30b保存固定的打印任務(wù)名稱“B”,在開始打印任務(wù)的情況下,無論數(shù)據(jù)圖像種類如何,均指定該打印任務(wù)名稱“B”。
下面,對(duì)內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40的輸出經(jīng)由內(nèi)部打印數(shù)據(jù)生成程序34c以及端口輸出API 33進(jìn)行的情況進(jìn)行說明。
該情況下,要求內(nèi)部打印數(shù)據(jù)生成程序34c生成內(nèi)部打印數(shù)據(jù),內(nèi)部打印數(shù)據(jù)生成程序34c生成內(nèi)部打印數(shù)據(jù)(RAW數(shù)據(jù))。此外,內(nèi)部打印數(shù)據(jù)生成程序34c可以與POS應(yīng)用程序30b一體地提供,也可以與POS應(yīng)用程序30b分別提供。另外,此處生成的內(nèi)部打印數(shù)據(jù)是例如表示每一行打印內(nèi)容的指令數(shù)據(jù)和表示字體種類的指令數(shù)據(jù)等,與由打印機(jī)驅(qū)動(dòng)34a以及內(nèi)部打印數(shù)據(jù)生成程序34b生成的內(nèi)部打印數(shù)據(jù)同樣地,不限于打印機(jī)20能夠解釋的指令體系的數(shù)據(jù),也可以是打印機(jī)20不能解釋的指令體系的數(shù)據(jù)。在這里,由內(nèi)部打印數(shù)據(jù)程序34c生成與“指令體系1”以及“指令體系2”不同的“指令體系3”的指令數(shù)據(jù)作為內(nèi)部打印數(shù)據(jù)。
此外,在要求內(nèi)部打印數(shù)據(jù)生成程序34c生成內(nèi)部打印數(shù)據(jù)的情況下,由POS應(yīng)用程序30b指定其內(nèi)部打印數(shù)據(jù)名稱。如上所述,在本實(shí)施方式情況下,由POS應(yīng)用程序30b保存固定的內(nèi)部打印數(shù)據(jù)名稱(打印任務(wù)名稱)“B”,在生成內(nèi)部打印數(shù)據(jù)名稱的情況下,無論收據(jù)圖像種類如何,均指定該內(nèi)部打印數(shù)據(jù)名稱“B”。該內(nèi)部打印數(shù)據(jù)名稱與內(nèi)部打印數(shù)據(jù)相關(guān)聯(lián)而保存。
如果由內(nèi)部打印數(shù)據(jù)生成程序34c生成內(nèi)部打印數(shù)據(jù),則適當(dāng)?shù)卣{(diào)出端口輸出API 33的各種函數(shù)。端口輸出API 33是用于不通過緩沖器35而直接將內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40輸出的函數(shù)組,由例如POS應(yīng)用程序30b的供應(yīng)商或打印機(jī)20的供應(yīng)商等提供。通過適當(dāng)?shù)卣{(diào)出端口輸出API 33的各種函數(shù),內(nèi)部打印數(shù)據(jù)提供給端口驅(qū)動(dòng)40。
語言監(jiān)控程序36監(jiān)視內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40的提供。語言監(jiān)控程序36在檢測(cè)出內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40的提供的情況下,抑止其提供。此外,語言監(jiān)控程序36將該內(nèi)部打印數(shù)據(jù)提供給打印數(shù)據(jù)生成程序A39a、打印數(shù)據(jù)生成程序B39b或打印數(shù)據(jù)生成程序C39c中的某一個(gè)。并且,語言監(jiān)控程序36還用于通過端口驅(qū)動(dòng)40從打印機(jī)20接受狀態(tài)信息,將其提供給規(guī)定的程序(例如狀態(tài)參考程序等)。
在語言監(jiān)控程序36中包括內(nèi)部打印數(shù)據(jù)分配程序37。內(nèi)部打印數(shù)據(jù)分配程序37根據(jù)內(nèi)部打印數(shù)據(jù)分配設(shè)定數(shù)據(jù)38,選擇內(nèi)部打印數(shù)據(jù)提供目標(biāo)的打印數(shù)據(jù)生成程序。
圖4是表示內(nèi)部打印數(shù)據(jù)分配設(shè)定數(shù)據(jù)38的一個(gè)例子的圖。在該圖所示的例子中,使內(nèi)部打印數(shù)據(jù)的輸出流程種類和內(nèi)部打印數(shù)據(jù)名稱的組合、與打印數(shù)據(jù)生成程序相對(duì)應(yīng)。在該圖中,所謂內(nèi)部打印數(shù)據(jù)的輸出流程種類,是指內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40(語言監(jiān)控程序36)的輸出通過哪個(gè)程序來進(jìn)行。在這里,輸出流程種類“1”表示內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40(語言監(jiān)控程序36)的輸出,通過GDI 31、打印機(jī)驅(qū)動(dòng)34a以及緩沖器35進(jìn)行的情況。另外,輸出流程類別“2”表示內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40(語言監(jiān)控程序36)的輸出,通過內(nèi)部打印數(shù)據(jù)輸出程序34b、緩沖器API 32以及緩沖器35進(jìn)行的情況。另外,輸出流程類別“3”表示內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40(語言監(jiān)控程序36)的輸出,通過內(nèi)部打印數(shù)據(jù)生成程序34c以及端口輸出API 33進(jìn)行的情況。該內(nèi)部打印數(shù)據(jù)分配設(shè)定數(shù)據(jù)38作為例如文本文件或XML(eXtensible Markup Language)文件存儲(chǔ)在主計(jì)算機(jī)10中。另外,內(nèi)部打印數(shù)據(jù)分配設(shè)定數(shù)據(jù)38的內(nèi)容,例如通過直接編輯該文本文件或XML文件進(jìn)行編輯?;蛘呃缤ㄟ^規(guī)定的設(shè)定編輯界面(未圖示)編輯。
內(nèi)部打印數(shù)據(jù)分配程序37,在向語言監(jiān)控程序36提供了內(nèi)部打印數(shù)據(jù)的情況下,指定該內(nèi)部打印數(shù)據(jù)的輸出流程類別,同時(shí),獲得該內(nèi)部打印數(shù)據(jù)的內(nèi)部打印數(shù)據(jù)名稱。此外,在內(nèi)部打印數(shù)據(jù)輸出流程類別為“1”或“2”的情況下,內(nèi)部打印數(shù)據(jù)分配程序37取得打印任務(wù)名稱作為內(nèi)部打印數(shù)據(jù)名稱。而且,內(nèi)部打印數(shù)據(jù)分配程序37根據(jù)內(nèi)部打印數(shù)據(jù)分配設(shè)定數(shù)據(jù)38,指定打印數(shù)據(jù)生成程序A39a、打印數(shù)據(jù)生成程序B39b以及打印數(shù)據(jù)生成程序C39c中的、與內(nèi)部打印數(shù)據(jù)的輸出流程類別以及內(nèi)部打印數(shù)據(jù)名稱的組合對(duì)應(yīng)的打印數(shù)據(jù)生成程序,執(zhí)行該打印數(shù)據(jù)生成程序。
打印數(shù)據(jù)生成程序通過將內(nèi)部打印數(shù)據(jù)(某個(gè)指令體系的指令數(shù)據(jù))轉(zhuǎn)換為打印機(jī)20能夠解釋的指令體系的指令數(shù)據(jù),生成用于使收據(jù)圖像由打印機(jī)20打印輸出的打印數(shù)據(jù)。更具體地說,打印數(shù)據(jù)生成程序根據(jù)存儲(chǔ)在存儲(chǔ)部12中的用于解釋各種指令體系的指令數(shù)據(jù)的數(shù)據(jù)、和在各種指令體系的指令數(shù)據(jù)中指定的字體的字體數(shù)據(jù),解釋內(nèi)部打印數(shù)據(jù),生成收據(jù)圖像的最終圖像數(shù)據(jù)。打印數(shù)據(jù)生成程序如果生成了最終圖像數(shù)據(jù),則生成用于將該最終圖像數(shù)據(jù)由打印機(jī)20打印輸出的打印數(shù)據(jù)(“指令體系1”的指令數(shù)據(jù))。
另外,打印數(shù)據(jù)生成程序?qū)κ論?jù)圖像進(jìn)行各種加工處理。例如,打印數(shù)據(jù)生成程序在生成最終圖像數(shù)據(jù)時(shí),將收據(jù)圖像的字體種類更換為其他字體種類。又例如,打印數(shù)據(jù)生成程序在收據(jù)圖像中含有特定關(guān)鍵字的情況下,在收據(jù)圖像的末尾附加與該關(guān)鍵字對(duì)應(yīng)的廣告圖像或贈(zèng)卷圖像。該情況下,根據(jù)內(nèi)部打印數(shù)據(jù)判斷收據(jù)圖像中是否含有關(guān)鍵字,對(duì)最終圖像數(shù)據(jù)附加廣告圖像或贈(zèng)卷圖像。又例如,打印數(shù)據(jù)生成程序在收據(jù)圖像背景中附加規(guī)定的背景圖像。該情況下,對(duì)最終圖像數(shù)據(jù)附加背景圖像。
而且,此處如圖4所示,打印數(shù)據(jù)生成程序A39a執(zhí)行解釋“指令體系2”的內(nèi)部打印數(shù)據(jù),生成“指令體系1”的打印數(shù)據(jù)的處理。另外,打印數(shù)據(jù)生成程序B39b執(zhí)行解釋“指令體系2”的內(nèi)部打印數(shù)據(jù),對(duì)收據(jù)圖像進(jìn)行規(guī)定的加工,并生成“指令體系1”的打印數(shù)據(jù)的處理。另外,打印數(shù)據(jù)生成程序C39c執(zhí)行解釋“指令體系3”的內(nèi)部打印數(shù)據(jù),生成“指令體系1”的打印數(shù)據(jù)的處理。
由打印數(shù)據(jù)生成程序A39a、打印數(shù)據(jù)生成程序B39b或打印數(shù)據(jù)生成程序C39c生成的打印數(shù)據(jù),通過端口驅(qū)動(dòng)40,從打印機(jī)20連接的端口輸出,提供給打印機(jī)20。
如上所述,打印系統(tǒng)1中,根據(jù)由打印機(jī)驅(qū)動(dòng)34a或內(nèi)部打印數(shù)據(jù)生成程序34b、34c生成的內(nèi)部打印數(shù)據(jù),執(zhí)行打印數(shù)據(jù)生成程序(打印數(shù)據(jù)生成程序A39a、打印數(shù)據(jù)生成程序B39b以及打印數(shù)據(jù)生成程序C39c),由此,暫時(shí)生成打印對(duì)象圖像的最終圖像數(shù)據(jù),然后,生成用于將該最終圖像數(shù)據(jù)由打印機(jī)20打印輸出的打印數(shù)據(jù),提供給打印機(jī)20。其結(jié)果,打印系統(tǒng)1中,即使在將打印機(jī)更換為其他打印機(jī)的情況下,也通過由打印機(jī)驅(qū)動(dòng)34a、內(nèi)部打印數(shù)據(jù)生成程序34b、34c生成適于更換前打印機(jī)的打印數(shù)據(jù)(RAW數(shù)據(jù))作為內(nèi)部打印數(shù)據(jù),即使不改變應(yīng)用程序側(cè)的規(guī)格參數(shù)或設(shè)定,也能夠由更換后的打印機(jī)獲得與更換前的打印機(jī)相同的打印輸出。
另外,打印系統(tǒng)1中,根據(jù)由打印機(jī)驅(qū)動(dòng)34a、內(nèi)部打印數(shù)據(jù)生成程序34b、34c生成的內(nèi)部打印數(shù)據(jù),執(zhí)行打印數(shù)據(jù)生成程序(打印數(shù)據(jù)生成程序A39a、B39b、C39c),由此進(jìn)行用戶所期望的加工,生成打印對(duì)象圖像的最終圖像數(shù)據(jù),然后,生成用于將該最終圖像數(shù)據(jù)由打印機(jī)20打印輸出的打印數(shù)據(jù),提供給打印機(jī)20。其結(jié)果,打印系統(tǒng)1中,即使不改變應(yīng)用程序側(cè)的規(guī)格參數(shù)或設(shè)定,也能夠在打印輸出的過程中,對(duì)打印對(duì)象圖像進(jìn)行用戶所期望的加工并進(jìn)行打印輸出。
特別地,打印系統(tǒng)1中,能夠使打印數(shù)據(jù)生成程序根據(jù)每個(gè)內(nèi)部打印數(shù)據(jù)名稱而各不相同,該打印數(shù)據(jù)生成程序用于根據(jù)內(nèi)部打印數(shù)據(jù)而生成打印數(shù)據(jù)。
例如,打印系統(tǒng)1中,如果如POS應(yīng)用程序30a以及30b這樣,因POS應(yīng)用程序不同而使得內(nèi)部打印數(shù)據(jù)名稱不同,則其結(jié)果,能夠?qū)?yīng)內(nèi)部打印數(shù)據(jù)名稱切換打印數(shù)據(jù)生成程序,以能夠?qū)?yīng)POS應(yīng)用程序切換打印數(shù)據(jù)生成程序。同樣地,如果對(duì)應(yīng)每個(gè)打印對(duì)象的收據(jù)圖像的種類而使得內(nèi)部打印數(shù)據(jù)名稱不同,則能夠?qū)?yīng)打印對(duì)象的收據(jù)圖像的種類切換打印數(shù)據(jù)生成程序。
而且,為了對(duì)每個(gè)POS應(yīng)用程序或收據(jù)圖像的種類切換打印數(shù)據(jù)生成程序,還可以考慮登錄多個(gè)與打印機(jī)20對(duì)應(yīng)的打印隊(duì)列,同時(shí)使不同的打印數(shù)據(jù)生成程序與各個(gè)打印隊(duì)列相對(duì)應(yīng),使得在收據(jù)圖像打印中使用的打印隊(duì)列因POS應(yīng)用程序或收據(jù)圖像的種類而各不相同。但是,該情況下,必須登錄多個(gè)打印隊(duì)列。另外,在對(duì)應(yīng)于各個(gè)收據(jù)圖像種類而切換打印收據(jù)生成程序的情況下,必須在POS應(yīng)用程序側(cè)設(shè)定對(duì)于每個(gè)收據(jù)圖像種類使用哪個(gè)打印隊(duì)列。這一點(diǎn),在打印系統(tǒng)1中,則不需要登錄多個(gè)打印隊(duì)列,另外,即使在對(duì)應(yīng)于各個(gè)收據(jù)圖像種類而切換打印收據(jù)生成程序的情況下,也不需要在POS應(yīng)用程序側(cè)特別進(jìn)行設(shè)定。
另外,打印系統(tǒng)1中,能夠使在根據(jù)內(nèi)部打印數(shù)據(jù)生成打印數(shù)據(jù)中使用的打印數(shù)據(jù)生成程序,因內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40(語言監(jiān)控程序36)的輸出通過哪個(gè)程序來進(jìn)行而有所不同。
例如,打印系統(tǒng)1中,如輸出流程類別為“1”以及“3”這樣,如果因內(nèi)部打印數(shù)據(jù)的輸出流程類別不同,而使內(nèi)部打印數(shù)據(jù)的指令體系不同,則能夠?qū)?yīng)內(nèi)部打印數(shù)據(jù)的輸出流程類別,切換打印數(shù)據(jù)輸出程序,其結(jié)果,能夠按照內(nèi)部打印數(shù)據(jù)的指令體系切換打印數(shù)據(jù)生成程序。
此外,為了按照內(nèi)部打印數(shù)據(jù)的指令體系切換打印數(shù)據(jù)生成程序,可以考慮通過參考內(nèi)部打印數(shù)據(jù)的內(nèi)容,指定該內(nèi)部打印數(shù)據(jù)是哪個(gè)指令體系的指令數(shù)據(jù),執(zhí)行與該指令體系對(duì)應(yīng)的打印數(shù)據(jù)生成程序。但是,在存在相互類似的指令體系的情況下,有時(shí)必須由內(nèi)部打印數(shù)據(jù)的內(nèi)容,對(duì)內(nèi)部打印數(shù)據(jù)的內(nèi)容進(jìn)行復(fù)雜的處理,以確定該內(nèi)部打印數(shù)據(jù)是哪個(gè)指令體系的指令數(shù)據(jù)。此外,有時(shí)候最開始確定內(nèi)部打印數(shù)據(jù)是哪個(gè)指令體系的指令數(shù)據(jù)有困難。對(duì)于這一點(diǎn),在打印系統(tǒng)1中,即使在存在相互類似的指令體系的情況下,如果這些指令體系的內(nèi)部打印數(shù)據(jù)通過不同的程序輸出給端口驅(qū)動(dòng)40(語言監(jiān)控程序36),則能夠?qū)?yīng)內(nèi)部打印數(shù)據(jù)的指令體系,通過比較簡(jiǎn)單的處理,實(shí)現(xiàn)打印數(shù)據(jù)生成程序的切換。
下面,對(duì)主計(jì)算機(jī)10的功能結(jié)構(gòu)進(jìn)行說明。圖5是表示在主計(jì)算機(jī)10中實(shí)現(xiàn)的功能模塊中,主要與本發(fā)明相關(guān)的功能的模塊圖。如該圖所示,主計(jì)算機(jī)10包括內(nèi)部打印數(shù)據(jù)生成部50、內(nèi)部打印數(shù)據(jù)條件存儲(chǔ)部51、判定部52、打印數(shù)據(jù)生成部53以及打印數(shù)據(jù)提供部54。
〔內(nèi)部打印數(shù)據(jù)生成部〕內(nèi)部打印數(shù)據(jù)生成部50通過執(zhí)行數(shù)據(jù)處理,生成內(nèi)部打印數(shù)據(jù),輸出給判定部52。內(nèi)部打印數(shù)據(jù)生成部50例如通過執(zhí)行GDI 31、打印機(jī)驅(qū)動(dòng)34a以及緩沖器35來實(shí)現(xiàn)。此外,例如通過執(zhí)行內(nèi)部打印數(shù)據(jù)生成程序34b、緩沖器API 32以及緩沖器35來實(shí)現(xiàn)?;蛘?,例如通過執(zhí)行內(nèi)部打印數(shù)據(jù)生成程序34c以及端口輸出API 33來實(shí)現(xiàn)。
〔內(nèi)部打印數(shù)據(jù)條件存儲(chǔ)部〕內(nèi)部打印數(shù)據(jù)條件存儲(chǔ)部51以存儲(chǔ)部12為主來實(shí)現(xiàn)。內(nèi)部打印數(shù)據(jù)條件存儲(chǔ)部51與多個(gè)打印數(shù)據(jù)生成程序(打印數(shù)據(jù)生成處理)分別對(duì)應(yīng),存儲(chǔ)作為與內(nèi)部打印數(shù)據(jù)相關(guān)的條件的內(nèi)部打印數(shù)據(jù)條件。內(nèi)部打印數(shù)據(jù)條件中含有例如與內(nèi)部打印數(shù)據(jù)的屬性信息相關(guān)的條件。更具體地說,含有例如與內(nèi)部打印數(shù)據(jù)名稱相關(guān)的條件。另外,在內(nèi)部打印數(shù)據(jù)條件中,含有例如與內(nèi)部打印數(shù)據(jù)的輸出中使用的輸出處理相關(guān)的條件。更具體地說,含有例如在內(nèi)部打印數(shù)據(jù)的輸出中使用的數(shù)據(jù)處理中是否含有特定的處理(例如,與GDI 31相關(guān)聯(lián)的處理或與緩沖器API 32相關(guān)聯(lián)的處理等)的條件。在本實(shí)施方式的情況下,在內(nèi)部打印數(shù)據(jù)條件存儲(chǔ)部51中存儲(chǔ)例如圖4所示的內(nèi)部打印數(shù)據(jù)分配設(shè)定數(shù)據(jù)。
〔判定部〕判定部52通過由控制部11執(zhí)行內(nèi)部打印數(shù)據(jù)分配程序37來實(shí)現(xiàn)。判定部52判定由內(nèi)部打印數(shù)據(jù)生成部50提供的內(nèi)部打印數(shù)據(jù),是否滿足與打印數(shù)據(jù)生成程序?qū)?yīng)而存儲(chǔ)在內(nèi)部打印數(shù)據(jù)條件存儲(chǔ)部51中的內(nèi)部打印數(shù)據(jù)條件。例如,判定部52獲取由內(nèi)部打印數(shù)據(jù)生成部50提供的內(nèi)部打印數(shù)據(jù)的屬性信息,判定該屬性信息是否滿足與打印數(shù)據(jù)生成程序相對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件。又例如,判定部52判定內(nèi)部打印數(shù)據(jù)的輸出中使用的數(shù)據(jù)處理,是否滿足與打印數(shù)據(jù)生成程序相對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件。關(guān)于具體內(nèi)容如后所述(參考圖6以及圖7)。
〔打印數(shù)據(jù)生成部〕打印數(shù)據(jù)生成部53以控制部11為主來實(shí)現(xiàn)。打印數(shù)據(jù)生成部53根據(jù)由判定部52得出的判定結(jié)果,選擇多個(gè)打印數(shù)據(jù)生成程序中的某一個(gè)。也就是說,打印數(shù)據(jù)生成部53選擇多個(gè)打印數(shù)據(jù)生成程序中、與由判定部52判定為滿足的內(nèi)部打印數(shù)據(jù)條件對(duì)應(yīng)的打印數(shù)據(jù)生成程序。然后,打印數(shù)據(jù)生成部53根據(jù)由內(nèi)部打印數(shù)據(jù)生成部50生成的內(nèi)部打印數(shù)據(jù),執(zhí)行所選擇的打印數(shù)據(jù)生成程序,由此生成打印數(shù)據(jù)。
在這里,對(duì)以判定部52以及打印數(shù)據(jù)生成部53為主執(zhí)行的處理進(jìn)行說明。圖6以及圖7是表示以判定部52以及打印數(shù)據(jù)生成部53為主執(zhí)行的處理的流程圖。該圖所示的處理,通過由控制部11執(zhí)行經(jīng)由信息存儲(chǔ)介質(zhì)或通信網(wǎng)絡(luò)提供給存儲(chǔ)部12的程序來實(shí)現(xiàn)。
如圖6所示,首先判定部52判定由內(nèi)部打印數(shù)據(jù)生成部50提供的內(nèi)部打印數(shù)據(jù)的輸出流程類別是否為“1”(S101)。也就是說,判定內(nèi)部打印數(shù)據(jù)的生成以及向端口驅(qū)動(dòng)40(語言監(jiān)控程序36)的提供,是否通過GDI 31、打印機(jī)驅(qū)動(dòng)34a以及緩沖器35進(jìn)行。
該判定例如通過使用操作系統(tǒng)的功能來進(jìn)行。例如,在微軟公司的Windows(注冊(cè)商標(biāo))中,在內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40(語言監(jiān)控程序36)的輸出的過程中調(diào)出的函數(shù)名稱,與內(nèi)部打印數(shù)據(jù)(打印任務(wù))相關(guān)聯(lián)而保存。由此,判定部52利用該功能,判定在內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40(語言監(jiān)控程序36)的輸出的過程中,是否調(diào)出例如GDI 31的函數(shù)。然后,在調(diào)出了GDI 31的函數(shù)的情況下,判定部52判定內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40(語言監(jiān)控程序36)的輸出,是通過GDI 31、打印機(jī)驅(qū)動(dòng)34a以及緩沖器35進(jìn)行的。也就是說,判定內(nèi)部打印數(shù)據(jù)的輸出流程類別為“1”。
判定部52在判定內(nèi)部打印數(shù)據(jù)輸出流程類別為“1”的情況下,判定內(nèi)部打印數(shù)據(jù)名稱是否與對(duì)應(yīng)于輸出流程類別“1”的內(nèi)部打印數(shù)據(jù)名稱中的某一個(gè)相一致(S102)。該情況下,判定部52取得打印任務(wù)名稱作為內(nèi)部打印數(shù)據(jù)名稱。此外,在內(nèi)部打印數(shù)據(jù)名稱與對(duì)應(yīng)于輸出流程類別“1”的內(nèi)部打印數(shù)據(jù)名稱中的某一個(gè)一致的情況下,打印數(shù)據(jù)生成部53執(zhí)行與該內(nèi)部打印數(shù)據(jù)名稱對(duì)應(yīng)的打印數(shù)據(jù)生成程序,生成打印數(shù)據(jù)(S103)。另一方面,在內(nèi)部打印數(shù)據(jù)名稱與對(duì)應(yīng)于輸出流程類別“1”的內(nèi)部打印數(shù)據(jù)名稱中的任何一個(gè)都不一致的情況下,打印數(shù)據(jù)生成部53執(zhí)行規(guī)定的打印數(shù)據(jù)生成程序,生成打印數(shù)據(jù)(S104)。本實(shí)施方式中,對(duì)各個(gè)輸出流程類別,預(yù)先設(shè)定標(biāo)準(zhǔn)的打印數(shù)據(jù)生成程序,在該步驟中,執(zhí)行與輸出流程類別“1”對(duì)應(yīng)的標(biāo)準(zhǔn)的打印數(shù)據(jù)輸出程序。由此,本實(shí)施方式中,在內(nèi)部打印數(shù)據(jù)的輸出流程類別為“1”的情況下,即使該內(nèi)部打印數(shù)據(jù)的內(nèi)部打印數(shù)據(jù)名稱,與對(duì)應(yīng)于輸出流程類別“1”的內(nèi)部打印數(shù)據(jù)名稱中的任何一個(gè)都不一致,也能夠保證打印數(shù)據(jù)的生成不會(huì)中止。此外,對(duì)于內(nèi)部打印數(shù)據(jù)輸出類別為“2”或“3”的情況也是同樣的(參考S108以及S112)。
另一方面,判定部52在判定內(nèi)部打印數(shù)據(jù)的輸出流程類別不為“1”的情況下(S101的否),判定內(nèi)部打印數(shù)據(jù)的輸出流程類別是否為“2”(S105)。也就是說,判定內(nèi)部打印數(shù)據(jù)的生成以及向端口驅(qū)動(dòng)40(語言監(jiān)控程序36)的提供,是否通過內(nèi)部打印數(shù)據(jù)生成程序34b、緩沖器API 32以及緩沖器35進(jìn)行。該判定是通過例如在內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40(語言監(jiān)控程序36)的輸出的過程中,判定是否調(diào)出緩沖器API 32的函數(shù)來進(jìn)行。
判定部52,在判定內(nèi)部打印數(shù)據(jù)的輸出流程類別為“2”的情況下,判定內(nèi)部打印數(shù)據(jù)名稱是否與對(duì)應(yīng)于輸出流程類別“2”的內(nèi)部打印數(shù)據(jù)名稱的某一個(gè)一致(S106)。該情況下,判定部52取得打印任務(wù)名稱作為內(nèi)部打印數(shù)據(jù)名稱。此外,在內(nèi)部打印數(shù)據(jù)名稱與對(duì)應(yīng)于輸出流程類別“2”的內(nèi)部打印數(shù)據(jù)名稱中的某一個(gè)一致的情況下,打印數(shù)據(jù)生成部53執(zhí)行與該內(nèi)部打印數(shù)據(jù)名稱對(duì)應(yīng)的打印數(shù)據(jù)生成程序,生成打印數(shù)據(jù)(S107)。另一方面,在內(nèi)部打印數(shù)據(jù)名稱與對(duì)應(yīng)于輸出流程類別“2”的內(nèi)部打印數(shù)據(jù)名稱中的任何一個(gè)都不一致的情況下,打印數(shù)據(jù)生成部53執(zhí)行規(guī)定的打印數(shù)據(jù)輸出程序,生成打印數(shù)據(jù)(S108)。也就是說,執(zhí)行與輸出流程類別“2”對(duì)應(yīng)的標(biāo)準(zhǔn)的打印數(shù)據(jù)輸出程序。
另一方面,判定部52在判定內(nèi)部打印數(shù)據(jù)的輸出流程類別不是“2”的情況下(S105的否),判定內(nèi)部打印數(shù)據(jù)輸出流程類別是否為“3”(S109)。也即是說,判定內(nèi)部打印數(shù)據(jù)的輸出以及向端口驅(qū)動(dòng)40(語言監(jiān)控程序36)的提供,是否通過內(nèi)部打印數(shù)據(jù)輸出程序34c以及端口輸出API 33進(jìn)行。該判定通過在例如內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40(語言監(jiān)控程序36)輸出的過程中,判定是否調(diào)出端口輸出API 33的函數(shù)來進(jìn)行。又例如,也可以在端口輸出API 33向?yàn)閁SB端口虛擬分配的虛擬COM(串行)端口提供內(nèi)部打印數(shù)據(jù)的情況下,通過判定內(nèi)部打印數(shù)據(jù)的提供目標(biāo)是否是虛擬的COM端口,來判定內(nèi)部打印數(shù)據(jù)的輸出流程類別是否為“3”。
判定部52在判定內(nèi)部打印數(shù)據(jù)的輸出流程類別為“3”的情況下,判定內(nèi)部打印數(shù)據(jù)名稱是否與對(duì)應(yīng)于輸出流程類別“3”的內(nèi)部打印數(shù)據(jù)名稱中的某一個(gè)一致(S110)。然后,在內(nèi)部打印數(shù)據(jù)名稱與對(duì)應(yīng)于輸出流程類別“3”對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)名稱中的某一個(gè)一致的情況下,打印數(shù)據(jù)生成部53執(zhí)行與該內(nèi)部打印數(shù)據(jù)名稱對(duì)應(yīng)的打印數(shù)據(jù)生成程序,生成打印數(shù)據(jù)(S111)。另一方面,在內(nèi)部打印數(shù)據(jù)名稱與對(duì)應(yīng)于輸出流程類別“3”的內(nèi)部打印數(shù)據(jù)名稱中的任何一個(gè)都不一致的情況下,打印數(shù)據(jù)生成部53執(zhí)行規(guī)定的打印數(shù)據(jù)輸出程序,輸出打印數(shù)據(jù)(S112)。也就是說,執(zhí)行與生成流程類別“3”對(duì)應(yīng)的標(biāo)準(zhǔn)的打印數(shù)據(jù)輸出程序。
另一方面,在S109中,在判定內(nèi)部打印數(shù)據(jù)的輸出流程類別不是“3”的情況下(S109的否),打印數(shù)據(jù)生成部53執(zhí)行規(guī)定的打印數(shù)據(jù)生成程序,生成打印數(shù)據(jù)(S113)。在本實(shí)施方式中,預(yù)先設(shè)定打印系統(tǒng)1的標(biāo)準(zhǔn)打印數(shù)據(jù)生成程序,在該步驟中,執(zhí)行該打印數(shù)據(jù)生成程序。由此,在本實(shí)施方式中,即使在與內(nèi)部打印數(shù)據(jù)輸出流程類別“1”、“2”或“3”中的任何一個(gè)都不匹配的情況下,也能夠確保打印數(shù)據(jù)的生成不會(huì)中止。
〔打印數(shù)據(jù)提供部〕打印數(shù)據(jù)提供部54以控制部11為主來實(shí)現(xiàn)。打印數(shù)據(jù)提供部54將由打印數(shù)據(jù)生成部53生成的打印數(shù)據(jù)提供給打印機(jī)20。
打印機(jī)20中,接收由打印數(shù)據(jù)提供部54提供的打印數(shù)據(jù),根據(jù)這些打印數(shù)據(jù),進(jìn)行收據(jù)圖像在圖像記錄介質(zhì)上的形成或圖像記錄介質(zhì)的分割等。
如上所述,根據(jù)打印系統(tǒng)1,即使在將打印機(jī)更換為其他打印機(jī)的情況下,由于通過打印機(jī)驅(qū)動(dòng)34a、內(nèi)部打印數(shù)據(jù)生成程序34b、34c,生成適于更換前打印機(jī)的打印數(shù)據(jù)(RAW數(shù)據(jù))作為內(nèi)部打印數(shù)據(jù),由此即使不改變應(yīng)用程序側(cè)的規(guī)格參數(shù)或設(shè)定,也能夠由更換后的打印機(jī)得到與更換前的打印機(jī)相同的打印輸出。另外,根據(jù)打印系統(tǒng)1,即使不改變應(yīng)用程序側(cè)的規(guī)格參數(shù)或設(shè)定,也能夠在打印輸出過程中,對(duì)打印對(duì)象圖像進(jìn)行用戶所期望的加工并進(jìn)行打印輸出。
特別地,根據(jù)打印系統(tǒng)1,能夠使得用于根據(jù)內(nèi)部打印數(shù)據(jù)生成打印數(shù)據(jù)的打印數(shù)據(jù)生成程序(即打印數(shù)據(jù)生成處理的內(nèi)容),隨各個(gè)內(nèi)部打印數(shù)據(jù)而各不相同。另外,根據(jù)打印系統(tǒng)1,能夠使得用于生成打印數(shù)據(jù)的打印數(shù)據(jù)生成程序,根據(jù)內(nèi)部打印數(shù)據(jù)向端口驅(qū)動(dòng)40(語言監(jiān)控程序36)的輸出使用哪個(gè)程序來進(jìn)行而各不相同。其結(jié)果,根據(jù)打印系統(tǒng)1,例如,能夠以比較簡(jiǎn)單的結(jié)構(gòu),實(shí)現(xiàn)使得打印數(shù)據(jù)生成程序?qū)?yīng)POS應(yīng)用程序或收據(jù)圖像的種類而各不相同,或使得打印數(shù)據(jù)生成程序?qū)?yīng)內(nèi)部打印數(shù)據(jù)的指令體系而各不相同。
而且,本發(fā)明不限于以上說明的實(shí)施方式。
例如,由主計(jì)算機(jī)10執(zhí)行的操作系統(tǒng)不限于微軟公司的Windows(注冊(cè)商標(biāo))。另外,由主計(jì)算機(jī)10執(zhí)行的應(yīng)用程序不限于POS應(yīng)用程序30a、30b。也就是說,打印機(jī)20中的打印對(duì)象不限于由POS應(yīng)用程序30a、30b生成的收據(jù)圖像,也可以是其他應(yīng)用程序生成的文檔或圖像等。
另外,例如以上說明了主計(jì)算機(jī)10和打印機(jī)20通過USB線連接的情況,但主計(jì)算機(jī)10和打印機(jī)20也可以通過LAN(Local AreaNetwork)等通信網(wǎng)絡(luò)進(jìn)行通信連接。該情況下,接口15以及24由用于與通信網(wǎng)絡(luò)連接的通信端口構(gòu)成即可。
另外,例如也可以取代語言監(jiān)控程序36,使用除了“語言監(jiān)控程序”以外的名稱命名的程序(例如“端口模擬器”等)。
權(quán)利要求
1.一種打印系統(tǒng),其包含打印機(jī)和打印數(shù)據(jù)提供裝置,該打印數(shù)據(jù)提供裝置包含打印數(shù)據(jù)生成單元,其根據(jù)作為數(shù)據(jù)處理結(jié)果而輸出的內(nèi)部打印數(shù)據(jù),執(zhí)行打印數(shù)據(jù)生成處理,生成打印數(shù)據(jù);以及打印數(shù)據(jù)提供單元,其將由前述打印數(shù)據(jù)生成單元生成的打印數(shù)據(jù)提供給前述打印機(jī),其特征在于,前述打印數(shù)據(jù)提供裝置具有內(nèi)部打印數(shù)據(jù)條件存儲(chǔ)單元,其與多個(gè)前述打印數(shù)據(jù)生成處理分別對(duì)應(yīng),存儲(chǔ)作為與前述內(nèi)部打印數(shù)據(jù)相關(guān)的條件的內(nèi)部打印數(shù)據(jù)條件;以及判定單元,其判定前述內(nèi)部打印數(shù)據(jù)是否滿足與前述打印數(shù)據(jù)生成處理相對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件,前述打印數(shù)據(jù)生成單元根據(jù)由前述判定單元得出的判定結(jié)果,執(zhí)行前述多個(gè)打印數(shù)據(jù)生成處理中的某一個(gè),生成前述打印數(shù)據(jù)。
2.如權(quán)利要求
1所述的打印系統(tǒng),其特征在于,前述內(nèi)部打印數(shù)據(jù)條件,包括與前述內(nèi)部打印數(shù)據(jù)的屬性信息相關(guān)的條件,前述判定單元判定前述內(nèi)部打印數(shù)據(jù)的屬性信息是否滿足與前述打印數(shù)據(jù)生成處理對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件。
3.如權(quán)利要求
1所述的打印系統(tǒng),其特征在于前述內(nèi)部打印數(shù)據(jù)條件,包括與前述數(shù)據(jù)處理相關(guān)的條件,前述判定單元,判定在前述內(nèi)部打印數(shù)據(jù)的輸出中使用的前述數(shù)據(jù)處理,是否滿足與前述打印數(shù)據(jù)生成處理對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件。
4.如權(quán)利要求
2所述的打印系統(tǒng),其特征在于前述內(nèi)部打印數(shù)據(jù)條件,包括與前述數(shù)據(jù)處理相關(guān)的條件,前述判定單元,判定在前述內(nèi)部打印數(shù)據(jù)的輸出中使用的前述數(shù)據(jù)處理,是否滿足與前述打印數(shù)據(jù)生成處理對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件。
5.如權(quán)利要求
1至4中任意一項(xiàng)所述的打印系統(tǒng),其特征在于,在判定前述內(nèi)部打印數(shù)據(jù)滿足與前述多個(gè)打印數(shù)據(jù)生成處理分別對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件中的某一個(gè)的情況下,前述打印數(shù)據(jù)生成單元執(zhí)行與該內(nèi)部打印數(shù)據(jù)條件對(duì)應(yīng)的打印數(shù)據(jù)生成處理,在判定前述內(nèi)部打印數(shù)據(jù)不滿足與前述多個(gè)打印數(shù)據(jù)生成處理分別對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件中的任意一個(gè)的情況下,前述打印數(shù)據(jù)生成單元執(zhí)行規(guī)定的打印數(shù)據(jù)生成處理。
6.一種打印數(shù)據(jù)提供裝置,包含打印數(shù)據(jù)生成單元,其根據(jù)作為數(shù)據(jù)處理結(jié)果而輸出的內(nèi)部打印數(shù)據(jù),執(zhí)行打印數(shù)據(jù)生成處理,生成打印數(shù)據(jù);以及打印數(shù)據(jù)提供單元,其將由前述打印數(shù)據(jù)生成單元生成的打印數(shù)據(jù)提供給打印機(jī),其特征在于,具有內(nèi)部打印數(shù)據(jù)條件存儲(chǔ)單元,其與多個(gè)前述打印數(shù)據(jù)生成處理分別對(duì)應(yīng),存儲(chǔ)作為與前述內(nèi)部打印數(shù)據(jù)相關(guān)的條件的內(nèi)部打印數(shù)據(jù)條件;以及判定單元,其判定前述內(nèi)部打印數(shù)據(jù)是否滿足與前述打印數(shù)據(jù)生成處理相對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件,前述打印數(shù)據(jù)生成單元根據(jù)由前述判定單元得出的判定結(jié)果,執(zhí)行前述多個(gè)打印數(shù)據(jù)生成處理中的某一個(gè),生成前述打印數(shù)據(jù)。
7.一種將打印數(shù)據(jù)提供給打印機(jī)的方法,該方法包含以下步驟與多個(gè)打印數(shù)據(jù)生成處理操作中的每一個(gè)分別對(duì)應(yīng),存儲(chǔ)多個(gè)與前述內(nèi)部打印數(shù)據(jù)相關(guān)的內(nèi)部打印數(shù)據(jù)條件;判定前述內(nèi)部打印數(shù)據(jù)是否滿足前述內(nèi)部打印數(shù)據(jù)條件中的任一個(gè),根據(jù)作為數(shù)據(jù)處理操作結(jié)果而輸出的內(nèi)部打印數(shù)據(jù)、和由前述判定步驟得出的判定結(jié)果,執(zhí)行前述打印數(shù)據(jù)生成處理操作中的某一個(gè),生成前述打印數(shù)據(jù);以及將所生成的打印數(shù)據(jù)提供給打印機(jī)。
8.一種計(jì)算機(jī)可讀程序產(chǎn)品,其用于使系統(tǒng)執(zhí)行將打印數(shù)據(jù)提供給打印機(jī)的操作,該操作包含以下步驟與多個(gè)打印數(shù)據(jù)生成處理操作中的每一個(gè)分別對(duì)應(yīng),存儲(chǔ)多個(gè)與前述內(nèi)部打印數(shù)據(jù)相關(guān)的內(nèi)部打印數(shù)據(jù)條件;判定前述內(nèi)部打印數(shù)據(jù)是否滿足前述內(nèi)部打印數(shù)據(jù)條件中的任一個(gè),根據(jù)作為數(shù)據(jù)處理操作結(jié)果而輸出的內(nèi)部打印數(shù)據(jù)、和由前述判定步驟得出的判定結(jié)果,執(zhí)行前述打印數(shù)據(jù)生成處理操作中的某一個(gè),生成前述打印數(shù)據(jù);以及將所生成的打印數(shù)據(jù)提供給打印機(jī)。
專利摘要
本發(fā)明提供一種根據(jù)內(nèi)部打印數(shù)據(jù)生成打印數(shù)據(jù),并提供給打印機(jī)的打印系統(tǒng),其能夠使得用于根據(jù)內(nèi)部打印數(shù)據(jù)來生成打印數(shù)據(jù)的處理內(nèi)容按照內(nèi)部打印數(shù)據(jù)進(jìn)行變化。內(nèi)部打印數(shù)據(jù)生成部(50)輸出內(nèi)部打印數(shù)據(jù)作為數(shù)據(jù)處理結(jié)果。內(nèi)部打印數(shù)據(jù)條件存儲(chǔ)部(51)與多個(gè)打印數(shù)據(jù)生成處理分別對(duì)應(yīng),存儲(chǔ)作為與內(nèi)部打印數(shù)據(jù)相關(guān)的條件的內(nèi)部打印數(shù)據(jù)條件。判定部(52)判斷內(nèi)部打印數(shù)據(jù)是否滿足與打印數(shù)據(jù)生成處理對(duì)應(yīng)的內(nèi)部打印數(shù)據(jù)條件。打印數(shù)據(jù)生成部(53)根據(jù)該判斷結(jié)果,執(zhí)行多個(gè)打印數(shù)據(jù)生成處理中的某一個(gè),生成打印數(shù)據(jù)。打印數(shù)據(jù)提供部(54)將生成的打印數(shù)據(jù)提供給打印機(jī)。
文檔編號(hào)G06F3/12GK1991740SQ200610170307
公開日2007年7月4日 申請(qǐng)日期2006年12月28日
發(fā)明者艾伯特·肯尼斯, 五味健一 申請(qǐng)人:星精密株式會(huì)社導(dǎo)出引文BiBTeX, EndNote, RefMan
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
清河县| 高雄市| 南开区| 仁寿县| 登封市| 兴宁市| 即墨市| 玛多县| 广西| 香港 | 黔西县| 荔波县| 温泉县| 徐汇区| 绍兴市| 宁河县| 江门市| 长兴县| 永兴县| 静海县| 嫩江县| 金溪县| 湖南省| 进贤县| 北碚区| 安顺市| 凤凰县| 建瓯市| 庆元县| 隆化县| 嘉禾县| 宜昌市| 额尔古纳市| 内丘县| 肥东县| 灵宝市| 荆门市| 湘潭县| 梅河口市| 绍兴县| 山东|