專利名稱:打印系統(tǒng)以及打印裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及打印系統(tǒng)以及打印裝置,更詳細(xì)地講,涉及即使向打印機(jī)發(fā)送出大量的打印命令,也能夠以很少的存儲器保證高速而且正常打印的打印系統(tǒng)以及打印裝置。
在主計(jì)算機(jī)2000側(cè),文字處理器或者表計(jì)算那樣的應(yīng)用軟件201(以下,稱為「應(yīng)用」)在Windows(美國微軟公司的注冊商標(biāo))那樣的所謂基本軟件的基礎(chǔ)上進(jìn)行動(dòng)作。在該應(yīng)用中進(jìn)行打印的情況下,從其程序內(nèi),使用基本軟件提供的若干個(gè)子系統(tǒng)中的圖形子系統(tǒng)的功能來進(jìn)行。該圖形子系統(tǒng)例如在Windows(注冊商標(biāo))中,稱為GDI2002(圖形設(shè)備接口),進(jìn)行對于顯示器或者打印機(jī)的圖像信息的處理。
該GDI2002為了吸收對于顯示器或者打印機(jī)這樣的每種設(shè)備的相關(guān)性,動(dòng)態(tài)地連接稱為設(shè)備驅(qū)動(dòng)器的模塊,進(jìn)行對于各個(gè)設(shè)備的輸出處理。對于打印機(jī)的該模塊稱為打印機(jī)驅(qū)動(dòng)器2003。在該打印機(jī)驅(qū)動(dòng)器2003中,需要根據(jù)其能力或者功能等,預(yù)先決定安裝在設(shè)備驅(qū)動(dòng)器中的DDI(設(shè)備驅(qū)動(dòng)接口)的函數(shù)群。GDI2002對應(yīng)用的API(應(yīng)用程序接口)調(diào)用進(jìn)行數(shù)據(jù)變換,變換為設(shè)備驅(qū)動(dòng)器用的,該DDI函數(shù)群適宜地由GDI2002調(diào)用,來執(zhí)行預(yù)定的打印處理。
在GDI2002中,這樣經(jīng)過打印機(jī)驅(qū)動(dòng)器序列地處理來自應(yīng)用的打印請求。打印機(jī)驅(qū)動(dòng)器大致分為,在打印機(jī)驅(qū)動(dòng)器內(nèi)進(jìn)行描繪直到輸出時(shí)的圖像數(shù)據(jù)形式為止的圖像模式,和作為面向能夠進(jìn)行描繪處理的打印機(jī)的指令的PDL(打印機(jī)描述語言)模式。
這里,對于PDL模式系列的打印機(jī)驅(qū)動(dòng)器進(jìn)行說明。打印機(jī)驅(qū)動(dòng)器2003成為按照每個(gè)DDI函數(shù)生成PDL指令的結(jié)構(gòu),生成的打印命令經(jīng)過GDI2002,I/F2004,發(fā)送到打印裝置2100。
打印命令暫時(shí)保存在接收緩沖器2103中,由指令分析單元2107進(jìn)行分析處理,分析的結(jié)果,生成能夠用打印機(jī)高速處理的中間語言數(shù)據(jù),保存在頁存儲器2106的中間語言數(shù)據(jù)保存區(qū)域中。中間語言數(shù)據(jù)以條(band)單位生成中間語言數(shù)據(jù),如果在頁存儲器2106中存儲了1頁的量,則做成與處理單位的條區(qū)域相對應(yīng)的列表構(gòu)造。把這樣做成的列表結(jié)構(gòu)稱為條列表。
根據(jù)與條列表相關(guān)聯(lián)的中間語言數(shù)據(jù),對于利用硬件或者軟件準(zhǔn)備的頁存儲器2106內(nèi)的條列表區(qū)進(jìn)行描繪處理,所生成的條存儲器上的圖像數(shù)據(jù)與引擎旋轉(zhuǎn)相同步變換為視頻信號(運(yùn)送(shipping)處理)。準(zhǔn)備2個(gè)這樣的條存儲器,通過反復(fù)使用,能夠以很少的存儲器空間,與引擎同步地進(jìn)行描繪處理和運(yùn)送處理。
但是,在這樣以往的方法中,還存在以下說明的問題。即,在PDL模式系統(tǒng)處理中,把從DDI函數(shù)接收的數(shù)據(jù)全部變換為描繪指令在性質(zhì)上、理論上,不存在打印大小、個(gè)數(shù)的上限。因此,在打印裝置2100內(nèi)部,當(dāng)中間語言數(shù)據(jù)的大小超過中間語言數(shù)據(jù)存儲區(qū)域時(shí),不能夠進(jìn)行1頁的量的中間語言數(shù)據(jù)的生成,不能夠進(jìn)行上述的條處理。另外,從打印機(jī)驅(qū)動(dòng)器向一部分位置發(fā)出復(fù)雜的或者大量的描繪指令的情況下,在打印裝置2100中,由于對于某個(gè)條的描繪時(shí)間比對于打印機(jī)引擎的運(yùn)送處理時(shí)間大,發(fā)生打印在中途中斷的打印溢出錯(cuò)誤,因此將產(chǎn)生不能夠進(jìn)行同步條再現(xiàn)處理的問題。
對于這樣的問題,頁打印機(jī)把以下的方法組合起來予以解決。
其中之一是子閉合(sub closing)方式,如果依據(jù)該方法,則作為第1步驟,在中間語言數(shù)據(jù)不能全部放進(jìn)頁存儲器內(nèi)時(shí),使用展開用的條存儲器,把以前所保存的中間語言數(shù)據(jù)進(jìn)行描繪·壓縮(PackBits,Run Length,JBIG壓縮等),把所生成的壓縮圖像數(shù)據(jù)保持為中間語言數(shù)據(jù),作為第2步驟,通過清除已描繪結(jié)束的保持好的中間語言數(shù)據(jù),來增加頁存儲器的空區(qū)域,作為第3步驟,在空出的區(qū)域中保存沒有輸入的中間語言數(shù)據(jù),如果放進(jìn)了整頁,則在第1步驟中,通過把再次登錄了的壓縮圖像數(shù)據(jù)處理為中間語言數(shù)據(jù),能夠進(jìn)行同步條再現(xiàn),作為第4步驟,在即使進(jìn)行了這些處理也沒有放進(jìn)1頁的量時(shí),再次反復(fù)實(shí)施第1步驟的處理。另外,最初描繪已經(jīng)登錄的壓縮圖像數(shù)據(jù),在其上面描繪處理新的中間語言數(shù)據(jù),此后再次壓縮整個(gè)條。
另一個(gè)是預(yù)條(pre-banding)方式,在該方式中,如果中間語言數(shù)據(jù)集中存在于一個(gè)條內(nèi),則有時(shí)描繪處理跟不上引擎速度。從而,在判斷為這樣的條區(qū)域中,在打印機(jī)內(nèi)部登錄中間語言數(shù)據(jù)時(shí),在起動(dòng)引擎之前準(zhǔn)備的條存儲器上預(yù)先實(shí)施描繪處理。
在這些方式中,在子閉合方式中,由于為了節(jié)省存儲器把展開了的圖像進(jìn)行壓縮保持,因此在反復(fù)多次的情況下,在壓縮·擴(kuò)展方面需要花費(fèi)時(shí)間,因此如果發(fā)生子閉合處理,則存在生產(chǎn)量大幅度下降的問題。
另外,在預(yù)條方式中,如果在多個(gè)條中發(fā)生預(yù)條處理,則存在著不能夠在預(yù)條中確保所需要的存儲區(qū),易于成為轉(zhuǎn)移到子閉合方式的處理的原因這樣的問題。
這樣,以往的方式可以說在能夠進(jìn)行同步條帶(banding)處理的情況下是節(jié)省存儲器而且高速的打印系統(tǒng),但是,在大量發(fā)生不能夠進(jìn)行同步條帶處理的情況下,存在著加長處理所需要的時(shí)間這樣的問題。
本發(fā)明為了達(dá)到上述目的,本發(fā)明提供一種打印系統(tǒng),該打印系統(tǒng)把具備打機(jī)驅(qū)動(dòng)器的計(jì)算機(jī)與打印裝置相連接,并且上述打印裝置響應(yīng)由上述打印機(jī)驅(qū)動(dòng)器生成的打印命令數(shù)據(jù)進(jìn)行描繪處理,其特征在于上述打印機(jī)驅(qū)動(dòng)器包括把描繪命令變換為能夠在上述打印裝置內(nèi)部高速處理的中間語言數(shù)據(jù)形式的數(shù)據(jù)變換裝置;存儲1頁的量的該被數(shù)據(jù)變換了的中間語言數(shù)據(jù)的數(shù)據(jù)保持裝置;收集存儲在該數(shù)據(jù)保持裝置中的中間語言數(shù)據(jù)的屬性信息的數(shù)據(jù)信息收集裝置;生成由1頁的量的中間語言數(shù)據(jù)和中間語言數(shù)據(jù)信息構(gòu)成的打印數(shù)據(jù)的打印數(shù)據(jù)生成裝置;上述打印裝置包括解釋來自上述打印機(jī)驅(qū)動(dòng)器的打印命令,抽取出中間語言數(shù)據(jù)和中間語言數(shù)據(jù)信息的數(shù)據(jù)抽取裝置;保存1頁的量的該中間語言數(shù)據(jù)的頁數(shù)據(jù)保持裝置;根據(jù)從該打印命令抽取出的中間語言數(shù)據(jù)信息,決定打印模式的打印模式?jīng)Q定裝置;根據(jù)由該打印模式?jīng)Q定裝置決定了的打印模式執(zhí)行基于1頁的量的中間語言數(shù)據(jù)的描繪處理的描繪裝置;其中,上述打印機(jī)驅(qū)動(dòng)器的打印命令數(shù)據(jù)生成裝置,如果在上述數(shù)據(jù)保持裝置中保存了1頁的量的中間語言數(shù)據(jù),則作為打印數(shù)據(jù)生成把存儲在上述數(shù)據(jù)信息保持裝置中的中間語言數(shù)據(jù)信息添加在頁頭的中間語言數(shù)據(jù);上述打印裝置的打印模式?jīng)Q定裝置判斷在通常的打印模式下把上述打印數(shù)據(jù)變換了時(shí)的中間語言數(shù)據(jù)大小是否能夠存儲在上述頁數(shù)據(jù)保持裝置中,在能夠存儲的情況下,使上述打印模式?jīng)Q定裝置選擇通常打印模式,在不能夠存儲的情況下,使上述打印模式?jīng)Q定裝置選擇壓縮打印模式。
另外,本發(fā)明提供一種打印系統(tǒng),其中具備打印機(jī)驅(qū)動(dòng)器的計(jì)算機(jī)與打印裝置相連接,并且上述打印裝置響應(yīng)由上述打印機(jī)驅(qū)動(dòng)器生成的打印命令數(shù)據(jù)進(jìn)行描繪處理,其特征在于,上述打印機(jī)驅(qū)動(dòng)器包括把描繪命令變換為能夠在上述打印裝置內(nèi)高速處理的中間語言數(shù)據(jù)形式的數(shù)據(jù)變換裝置;存儲1頁的量的該被數(shù)據(jù)變換了的中間語言數(shù)據(jù)的數(shù)據(jù)保持裝置;把上述中間語言數(shù)據(jù)登錄在與在上述打印裝置內(nèi)部進(jìn)行的條處理一致的條列表中的數(shù)據(jù)登錄裝置;收集由上述數(shù)據(jù)登錄裝置登錄的每個(gè)上述條列表中的中間語言數(shù)據(jù)信息的數(shù)據(jù)信息收集裝置;隨著存儲在上述數(shù)據(jù)保持裝置中的中間語言數(shù)據(jù)聚集了1頁的量,把包括上述收集的全部條信息的頁信息作為起始,從登錄在條列表的上層條中的中間語言數(shù)據(jù)開始把1頁的量的中間語言數(shù)據(jù)變換為打印命令數(shù)據(jù)的打印命令數(shù)據(jù)生成裝置;上述打印裝置包括解釋來自上述打印機(jī)驅(qū)動(dòng)器的打印命令數(shù)據(jù),生成中間語言數(shù)據(jù)的數(shù)據(jù)生成裝置;存儲1頁的量的該中間語言數(shù)據(jù)的頁數(shù)據(jù)保持裝置;分析存儲在該頁打印數(shù)據(jù)保持裝置中的頁信息,判斷是進(jìn)行與引擎同步的描繪處理還是進(jìn)行與引擎不同步的描繪處理的同步非同步判斷裝置;引擎同步描繪處理裝置;引擎非同步描繪處理裝置。
另外,本發(fā)明提供一種打印裝置,其特征在于,包括解釋來自打印機(jī)驅(qū)動(dòng)器的打印命令數(shù)據(jù),生成中間語言數(shù)據(jù)的數(shù)據(jù)生成裝置;存儲1頁的量的該中間語言數(shù)據(jù)的頁數(shù)據(jù)保持裝置;分析存儲在該打印數(shù)據(jù)保持裝置中的頁頭的中間語言數(shù)據(jù),預(yù)測打印數(shù)據(jù)大小,與該預(yù)測結(jié)果相對應(yīng)決定打印模式的打印模式?jīng)Q定裝置;以及根據(jù)由該打印模式?jīng)Q定裝置決定了的打印模式描繪1頁的量的中間語言數(shù)據(jù)的描繪裝置;其中,上述打印模式?jīng)Q定裝置判斷在通常打印模式下變換了上述打印命令數(shù)據(jù)時(shí)的中間語言數(shù)據(jù)大小是否能夠存儲在上述打印數(shù)據(jù)保持裝置中,在能夠存儲的情況下,使上述打印模式?jīng)Q定裝置選擇通常打印模式,在不能夠存儲的情況下,使上述打印模式?jīng)Q定裝置選擇壓縮打印模式。
本發(fā)明的其他特征和優(yōu)點(diǎn)將通過下面的結(jié)合附圖的說明弄明白。其中,在全部附圖中,相同的參考標(biāo)號表示相同或者相似的部分。
圖2是用于說明本發(fā)明的打印裝置中具備的格式化控制單元的結(jié)構(gòu)的圖。
圖3是用于說明構(gòu)成本發(fā)明的打印系統(tǒng)的計(jì)算機(jī)中具備的打印機(jī)驅(qū)動(dòng)器的動(dòng)作的圖。
圖4A表示中間語言數(shù)據(jù)的構(gòu)造例,圖4B表示條列表的構(gòu)造例。
圖5是用于說明打印命令的內(nèi)容的圖。
圖6A表示打印機(jī)內(nèi)部的同步再現(xiàn)的控制器內(nèi)處理,圖6B表示非同步再現(xiàn)的控制器內(nèi)處理。
圖7是用于說明打印機(jī)驅(qū)動(dòng)器內(nèi)的處理的流程圖。
圖8是用于說明控制器內(nèi)的處理例的流程圖。
圖9是用于說明控制器內(nèi)的其他處理的流程圖。
圖10A表示本發(fā)明的打印裝置的同步再現(xiàn)時(shí)的存儲器的狀況,圖10B表示本發(fā)明的打印裝置的非同步再現(xiàn)時(shí)的存儲器的狀況,進(jìn)而,圖10C表示以往的打印裝置的存儲器的狀況。
圖11是用于說明在本發(fā)明的打印裝置上所連接的打印機(jī)內(nèi)部,壓縮彩色多值圖像中間語言數(shù)據(jù)的狀況的圖。
圖12是用于說明以往的打印系統(tǒng)中的打印控制方法以及打印處理的流程圖。
圖1是用于說明構(gòu)成本發(fā)明的打印系統(tǒng)的打印裝置的結(jié)構(gòu)例的圖,該打印裝置以彩色激光束打印機(jī)(以下,稱為「彩色LBP」)進(jìn)行說明。
該彩色LBP具有600/英寸(dpi)的分辨率,各個(gè)顏色成分的各個(gè)像素根據(jù)用8比特表現(xiàn)的多值數(shù)據(jù)進(jìn)行圖像記錄。在該圖中,100是彩色LBP主體,是存儲從連接到外部的主計(jì)算機(jī)等供給的由打印數(shù)據(jù)(文字代碼或者圖像數(shù)據(jù)等)以及控制代碼構(gòu)成的打印信息,同時(shí),根據(jù)這些信息生成相對應(yīng)的文字圖形或者圖像等,在作為記錄媒體的記錄紙上形成圖像的裝置。
110是分析從主計(jì)算機(jī)供給的打印信息,進(jìn)行打印圖像的生成處理,并進(jìn)行彩色LBP主體100的控制的格式化控制單元。另外,格式化控制單元110與配置了用戶進(jìn)行操作以及用于對于用戶的狀態(tài)通知的開關(guān)以及LED顯示器等的操作面板單元120相連接,其面板部分配置成彩色LBP主體100的外部設(shè)備的一部分。
在格式化控制單元110中生成的最終的打印圖像作為視頻信號發(fā)送到輸出控制單元130,輸出控制單元130控制來自彩色LBP主體100的未圖示的各種傳感器的狀態(tài)輸入,并對于光學(xué)單元140以及各種驅(qū)動(dòng)系統(tǒng)機(jī)構(gòu)部分輸出控制信號,控制作為彩色LBP主體100的打印處理。
在圖1所示的打印裝置中,從供紙盒161供給的打印紙P由抓紙器154f夾住其前端,保持在轉(zhuǎn)印鼓154的外周。由光學(xué)單元140在感光鼓151上形成的各種顏色的潛像由黃(Y),品紅(M),青(C)、黑(B)的各色顯影器Dy,Dm,Dc,Db顯像,在轉(zhuǎn)印鼓外周的打印紙上轉(zhuǎn)印多次,形成多色圖像。
然后,從轉(zhuǎn)印鼓154分離打印紙P,用定影單元155定影,由排紙單元159排出動(dòng)排紙盤160。這里,各色顯影器Dy,Dm,Dc,Db在其兩端具有旋轉(zhuǎn)支軸,每一個(gè)都能夠以其軸為中心旋轉(zhuǎn)那樣保持在顯影器選擇機(jī)構(gòu)單元152上。由此,各顯影器Dy,Dc,Db,Dn如圖1所示,采用為了進(jìn)行顯影器選擇,即使顯影器選擇機(jī)構(gòu)單元152以旋轉(zhuǎn)軸152a為中心旋轉(zhuǎn),也能夠使其姿勢維持為恒定的結(jié)構(gòu)。
構(gòu)成為使被選擇了的顯影器移動(dòng)到顯像位置以后,顯影器選擇機(jī)構(gòu)單元152與顯影器成為一體,以支點(diǎn)153b為中心,選擇機(jī)構(gòu)保持架153由螺線管153a拉向感光鼓151方向,向感光鼓151方向移動(dòng)進(jìn)行顯像處理。
然后,由帶電器156使感光鼓151按預(yù)定的極性均勻帶電。在格式化控制單元110中作為設(shè)備相關(guān)位圖展開了的打印信息變換為對應(yīng)的圖案的視頻信號,輸出到激光器驅(qū)動(dòng)器,驅(qū)動(dòng)半導(dǎo)體激光器141。根據(jù)輸入的視頻信號通斷控制從半導(dǎo)體激光器141發(fā)射的激光,進(jìn)而,在由掃描電機(jī)143高速旋轉(zhuǎn)的光學(xué)多面體142中沿左右方向振動(dòng),經(jīng)過光學(xué)多面體134,反光鏡144在感光鼓151上掃描曝光。由此,在感光鼓151上形成圖像圖案的靜電潛像。
然后,例如M(品紅)色的靜電潛像由M(品紅)色的顯影器Dm顯像,在感光鼓151上形成M(品紅)色的第1調(diào)色劑圖像。另一方面,以預(yù)定的定時(shí)供給打印紙P,在轉(zhuǎn)印鼓154上施加與調(diào)色劑相反極性(例如正極性)的轉(zhuǎn)印偏壓,感光鼓151上的第1調(diào)色劑圖像轉(zhuǎn)印到打印紙P上的同時(shí),打印紙P被靜電吸附到轉(zhuǎn)印鼓154的表面。然后,感光鼓151由清掃器157清除殘留的M(品紅)色調(diào)色劑,準(zhǔn)備下一個(gè)顏色的潛像形成以及顯像行程。以下通過相同的程序,按照C(青),Y(黃),Bk(黑)的順序,進(jìn)行第2,3,4顏色的調(diào)色劑圖像的轉(zhuǎn)印。其中,在各個(gè)顏色轉(zhuǎn)印時(shí),不同點(diǎn)是在轉(zhuǎn)印鼓154上施加比前一次高的偏壓。
如果重疊轉(zhuǎn)印了4色調(diào)色劑圖像的打印紙P的前端部分接近分離位置,則分離爪158接近,其前端接觸轉(zhuǎn)印鼓1 54的表面,使得打印紙P從轉(zhuǎn)印鼓154分離。分離了的打印紙P傳送到定影單元155,在這里定影打印紙上的調(diào)色劑圖像,然后排出到排紙盤160上。
本實(shí)施例的彩色LBP經(jīng)過以上那樣的圖像形成過程,以600點(diǎn)/英寸(dpi)的分辨率進(jìn)行圖像輸出。另外,能夠應(yīng)用本發(fā)明的打印裝置結(jié)構(gòu)的打印機(jī)不限定于彩色LBP,也可以是噴墨打印機(jī)或者熱敏打印機(jī)等其他打印方式的彩色打印機(jī)。
其次,說明格式化控制單元的結(jié)構(gòu)。
圖2是用于說明本發(fā)明的打印裝置所具備的格式化控制單元的結(jié)構(gòu)的圖,打印裝置3100具備的格式化控制單元3102是通常也被稱為PDL控制器等的部分,由作為與主計(jì)算機(jī)300的連接裝置的接口(I/F)單元3101,用于暫時(shí)保持管理接收數(shù)據(jù)等的接收緩沖器3103,用于暫時(shí)保持管理發(fā)送數(shù)據(jù)等的友送緩沖器3104,進(jìn)行打印數(shù)據(jù)分析的指令分析單元3107,打印控制處理執(zhí)行單元3109,描繪處理執(zhí)行單元3105和頁存儲器3106等構(gòu)成。
接口(I/F)3101是進(jìn)行與主計(jì)算機(jī)300的打印數(shù)據(jù)的收發(fā)的通信裝置,作為通信協(xié)議能夠進(jìn)行依照IEEE-1284的通信。而在本發(fā)明中,并不限定于該通信裝置,也可以是經(jīng)過網(wǎng)絡(luò)基于各種協(xié)議的連接,還可以是依照IEEE-1394的通信裝置。通過該接口3101接收的打印數(shù)據(jù)順序存儲在作為暫時(shí)保持該數(shù)據(jù)的存儲裝置的接收緩沖器3103中,根據(jù)需要,由指令分析單元3107或者描繪處理執(zhí)行單元3105讀出進(jìn)行處理。
指令分析單元3107由依照打印命令體系或者打印任務(wù)控制語言的控制程序構(gòu)成,與文字打印,圖形,圖像的描繪有關(guān)的打印數(shù)據(jù)的分析結(jié)果按照1頁的量保存在頁存儲器3106內(nèi)的中間語言保存區(qū)中,如果結(jié)束1頁的量的保存,則打印控制處理執(zhí)行單元3109向描繪處理執(zhí)行單元3105發(fā)出命令,在頁存儲器內(nèi)的條存儲器中把保存在頁存儲器內(nèi)的中間語言保存區(qū)中的文字或者圖像的中間語言實(shí)施順序展開。另外,向打印控制處理執(zhí)行單元3109發(fā)出供紙選擇或者復(fù)位命令等描繪以外的命令,進(jìn)行處理。
描繪處理執(zhí)行單元3105,是把文字或者圖形的各個(gè)描繪對象在頁存儲器3106內(nèi)的條存儲器中順序展開的再現(xiàn)器,對于圖1說明的彩色LBP,需要按照MCYK的畫面順序發(fā)送設(shè)備相關(guān)位圖數(shù)據(jù),但在標(biāo)準(zhǔn)狀態(tài)下,不是確保為此所需要的全部存儲器,而是作為1個(gè)平面(1,2或者4bit/pixel)的一小部分的條區(qū)域,確保在頁存儲器3106內(nèi)的條存儲器中,隨意使用該條區(qū)域與引擎速度相同步地處理圖像。
通常像這樣,由再現(xiàn)器進(jìn)行的展開處理和向打印機(jī)引擎的視頻信號的運(yùn)送的交替即條帶控制,來管理頁存儲器3106,而在具有充分的存儲器的情況下,也可以確保能夠展開1頁的量的區(qū)域。另外,一般,格式化控制單元3102由使用了中央運(yùn)算處理裝置(CPU),只讀存儲器(ROM),隨機(jī)存取存儲器(RAM)等的計(jì)算機(jī)系統(tǒng)構(gòu)成。另外,各部分的處理也可以是在多任務(wù)監(jiān)視器(實(shí)時(shí)OS)下分時(shí)處理的結(jié)構(gòu),還可以是按照各個(gè)功能準(zhǔn)備專用的控制器硬件進(jìn)行獨(dú)立處理的結(jié)構(gòu)。
操作面板3120如上所述,用于設(shè)定·顯示打印裝置的各種狀態(tài)。輸出控制單元3108用于把頁存儲器3106的內(nèi)容變換處理為視頻信號,向打印機(jī)引擎單元3110進(jìn)行數(shù)據(jù)傳送,打印機(jī)引擎單元3110是用于把接收的視頻信號在記錄紙上形成永久可視圖像的打印機(jī)構(gòu)單元。
以上,說明了打印裝置3100,下面,對于包括主計(jì)算機(jī)300的本實(shí)施例的打印系統(tǒng)的總體結(jié)構(gòu)進(jìn)行說明。
圖2中,300是主計(jì)算機(jī),把由打印數(shù)據(jù)以及控制代碼構(gòu)成的打印信息輸出到打印裝置3100。主計(jì)算機(jī)300構(gòu)成為把作為輸入設(shè)備的鍵盤310或者作為指示設(shè)備的鼠標(biāo)311與作為顯示設(shè)備的顯示器·監(jiān)視器320組合起來的一個(gè)計(jì)算機(jī)系統(tǒng)。設(shè)主計(jì)算機(jī)300能夠根據(jù)Windows(注冊商標(biāo))2000,Windows(注冊商標(biāo))Me的基本OS進(jìn)行工作。
關(guān)于主計(jì)算機(jī)300側(cè),如果僅關(guān)注與本發(fā)明有關(guān)的功能部分,把基本OS上的功能大致分類,則大致分為應(yīng)用軟件301,圖形子系統(tǒng)302,包括打印信息保存裝置以及與打印裝置的通信裝置的假脫機(jī)·子系統(tǒng)303。
應(yīng)用軟件301是指例如在文字處理器或者表計(jì)算等的基本軟件上工作的應(yīng)用軟件。圖形子系統(tǒng)302由作為基本OS的描繪功能的一部分的圖形設(shè)備接口3021(以下,稱為「GDI」)和從該GDI3021動(dòng)態(tài)連接的作為設(shè)備驅(qū)動(dòng)器的打印機(jī)驅(qū)動(dòng)器3022構(gòu)成。應(yīng)用軟件301對于GDI,使用稱為GDI函數(shù)的接口進(jìn)行描繪信息的輸出。GDI3021把從應(yīng)用軟件301接收的GDI函數(shù)變換為打印機(jī)驅(qū)動(dòng)器3022能夠解釋的DDI函數(shù)。
從GDI經(jīng)過稱為DDI(設(shè)備驅(qū)動(dòng)器接口)的接口調(diào)用打印機(jī)驅(qū)動(dòng)器3022,按照每個(gè)描繪對象進(jìn)行依照設(shè)備的處理。在本系統(tǒng)中,把由DDI函數(shù)傳送來的信息變換為能夠用打印機(jī)高速處理的數(shù)據(jù)形式,以頁單位作為中間語言數(shù)據(jù)3031下載到文件中(假脫機(jī)處理)。假脫機(jī)·子系統(tǒng)303是位于圖形子系統(tǒng)302的后一級的打印機(jī)設(shè)備中特有的子系統(tǒng),把讀出中間語言數(shù)據(jù)3031進(jìn)行處理的模塊稱為去假脫機(jī)程序(despooler)3032。
該去假脫機(jī)程序3032生成與用打印機(jī)進(jìn)行描繪處理的單位的條相對應(yīng)的條列表,與依照描繪位置的條指針相聯(lián)系,進(jìn)行在存儲器上位圖化了的中間語言數(shù)據(jù)的登錄。這時(shí),去假脫機(jī)程序3032進(jìn)行按照每個(gè)條登錄了的中間語言數(shù)據(jù)的種類,數(shù)據(jù)大小,個(gè)數(shù)這樣的屬性信息的匯集,在預(yù)定的存儲區(qū)域中保持匯集的屬性信息。
如果在條列表中登錄了1頁的量的中間語言數(shù)據(jù),則根據(jù)保存在每個(gè)條中的匯集信息,計(jì)算包含在頁中的中間語言數(shù)據(jù)總體的大小,包含在各個(gè)條中的中間語言數(shù)據(jù)的種類、個(gè)數(shù)、大小,把這樣求出的頁數(shù)據(jù)(包括每個(gè)條的信息)作為起始,通過從與上層條相連接的中間語言數(shù)據(jù)開始順序進(jìn)行排列,作為打印命令。
這樣,去假脫機(jī)程序3032讀入假脫機(jī)數(shù)據(jù)生成打印命令,經(jīng)過GDI3033,I/F3034向打印機(jī)發(fā)送數(shù)據(jù)。
根據(jù)基本OS,上述這些名稱或者功能的框架有時(shí)有若干不同,但是只要是能夠?qū)崿F(xiàn)本發(fā)明中敘述的技術(shù)裝置的模塊,則這些名稱或者框架對于本發(fā)明就不是多大的問題。例如,稱為假脫機(jī)程序或者假脫機(jī)文件的部分在其他的OS中,通過在稱為打印隊(duì)列的模塊中加入處理也能夠?qū)崿F(xiàn)。另外,一般,包括這些各功能模塊的主計(jì)算機(jī)300在中央運(yùn)算處理裝置(CPU),只讀存儲器(ROM),隨機(jī)選取存儲器(RAM),硬盤驅(qū)動(dòng)器(HDD),各個(gè)輸入輸出控制單元(I/O)等硬件下,由稱為基本軟件的軟件進(jìn)行其控制,根據(jù)該基本軟件,各個(gè)應(yīng)用軟件,子系統(tǒng)處理器作為功能塊進(jìn)行工作。
以下,說明本發(fā)明的打印裝置中具備的打印機(jī)驅(qū)動(dòng)器的理想實(shí)施形式。
圖3是用于說明本發(fā)明的打印裝置具備的打印機(jī)驅(qū)動(dòng)器的動(dòng)作的圖,該打機(jī)驅(qū)動(dòng)器在打印使用一般的文本生成應(yīng)用軟件生成的、作為包括圖形、文字、圖像的文本的「披亞拉(Paella)的制作方法」4001時(shí),對于裝載到OS中的打印機(jī)驅(qū)動(dòng)器,經(jīng)由OS傳送描繪命令4002。描繪命令依取決于OS或者打印機(jī)驅(qū)動(dòng)器的構(gòu)造而不同,在該描繪命令4002中包括多角形或者文字這樣的抽象的內(nèi)容。
打印機(jī)驅(qū)動(dòng)器對于每個(gè)描繪命令進(jìn)行處理變換為能夠在打印機(jī)中高速處理的數(shù)據(jù)形式,生成1頁的量的中間語言數(shù)據(jù)4004后進(jìn)行假脫機(jī)。
圖4A表示中間語言數(shù)據(jù)的構(gòu)造例,圖4B表示條列表構(gòu)造例。
如圖4A所示,構(gòu)成中間語言數(shù)據(jù)900的數(shù)據(jù)要素,通過采用把表示數(shù)據(jù)種類的DataType901,表示該數(shù)據(jù)大小的DataSize902,用外接矩形坐標(biāo)(leftx,rightx,bottomy,topy)表示描繪數(shù)據(jù)的區(qū)域的RectL903,保存數(shù)據(jù)主體的Data904作為1組的形態(tài),能夠容易地僅參照首標(biāo)部分901~903,在與圖3中的打印機(jī)的條方向相一致的條列表4005中高速地建立鏈接結(jié)構(gòu)。
1頁的量的假脫機(jī)結(jié)束以后,去假脫機(jī)程序生成與打印機(jī)進(jìn)行的條帶方向相吻合的條列表4005。條列表由條列表管理表4006和數(shù)據(jù)管理構(gòu)造體4007構(gòu)成,是對每個(gè)條按照處理與各個(gè)條的描繪有關(guān)的中間語言數(shù)據(jù)的順序進(jìn)行鏈接的表。在與表進(jìn)行鏈接時(shí),在表內(nèi)累積每個(gè)條的中間語言數(shù)據(jù)的個(gè)數(shù)、大小、點(diǎn)數(shù)這樣的信息。這時(shí),中間語言數(shù)據(jù)由于被變換為能夠在打印機(jī)內(nèi)部高速描繪處理的數(shù)據(jù),因此在這里求出的數(shù)據(jù)大小、點(diǎn)數(shù)等可以說是在打印機(jī)內(nèi)部的保存數(shù)據(jù)大小。
使用圖4B再稍詳細(xì)地對于條列表4005進(jìn)行說明。條列表4005由條列表管理表905和數(shù)據(jù)管理構(gòu)造體911構(gòu)成。條列表管理表905把表示頁內(nèi)的條數(shù)的bandcnt906作為起始,由表示登錄數(shù)據(jù)數(shù)的datacnt907,表示對于鏈接到條上的最初的數(shù)據(jù)管理構(gòu)造體的指針nextpoint908,表示對于鏈接構(gòu)造的最后的數(shù)據(jù)管理構(gòu)造體的指針的endpoint909,保持鏈接的中間語言數(shù)據(jù)的信息(數(shù)據(jù)種類、大小、點(diǎn)數(shù)等)的BandInfo910構(gòu)成。這些表示登錄數(shù)據(jù)數(shù)的datacnt907,表示對于連接到條上的最初的數(shù)據(jù)管理構(gòu)造體的指針的nextpoint908,表示對于鏈接構(gòu)造的最后的數(shù)據(jù)管理構(gòu)造體的指針的endpoint909,保持鏈接的中間語言數(shù)據(jù)的信息(數(shù)據(jù)種類、大小、點(diǎn)數(shù)等)的BandInfo910成為連續(xù)了條數(shù)量的構(gòu)造。
數(shù)據(jù)管理構(gòu)造體911 由保存對于數(shù)據(jù)主體的指針的DataPoint912,保存對于下一個(gè)數(shù)據(jù)管理構(gòu)造體的指針NextPoint913,用最外輪廓矩形表示了描繪區(qū)域的RectL914,作為中間數(shù)據(jù)語言905的主體的Data915構(gòu)成,在生成了條列表4005以后,根據(jù)條信息和中間語言數(shù)據(jù)生成打印數(shù)據(jù)4008,發(fā)送到打印機(jī)4009。
圖5用于說明打印指令的內(nèi)容,打印數(shù)據(jù)5001由語言的版本,用于進(jìn)行設(shè)備控制等的指令首標(biāo)部分5002,作為頁信息的PageInfo5003,中間語言數(shù)據(jù)主體5004,表示條的劃分BandEnd5005構(gòu)成。
PageInfo5003由作為包括在頁總體中的中間語言數(shù)據(jù)的總體大小的pagedataSize5008,作為所包括的條的數(shù)量的bandcnt5009,作為每個(gè)條的信息的bandinf5010構(gòu)成,存在條的數(shù)量的bandinf5010。
該bandinf5010由用外接矩形表示了條的位置信息的Bandrect5011,作為包含在條內(nèi)的中間語言數(shù)據(jù)大小的總體大小的BandDataSize5012,作為包含在條內(nèi)的每個(gè)中間語言數(shù)據(jù)的信息的bitmapInf5013構(gòu)成,在該bitmapInf5013中,包括位圖數(shù)據(jù)的每個(gè)種類的大小或者個(gè)數(shù)等的信息5015。
中間語言數(shù)據(jù)主體5004被變換為能夠在打印機(jī)中高速描繪處理的數(shù)據(jù)形式,為了減小數(shù)據(jù)大小,分割跨越條的數(shù)據(jù),加工成各個(gè)條用的數(shù)據(jù)。
中間語言數(shù)據(jù)的一個(gè)彩色圖像數(shù)據(jù)為了與在打印機(jī)內(nèi)部動(dòng)態(tài)變化的濃度調(diào)整處理(濃度校準(zhǔn))相對應(yīng),在打印機(jī)驅(qū)動(dòng)器中,用亮度空間(RGB)或者設(shè)備彩色空間(YMCK)的精細(xì)灰階(各色8比特)生成中間語言數(shù)據(jù),作為打印命令。
在bitmapInf5013中,計(jì)算并保持作為用精細(xì)灰階生成了中間語言數(shù)據(jù)時(shí)的圖像數(shù)據(jù)大小合計(jì)值的RealSize5016,生成了在打印裝置內(nèi)展開為輸出色調(diào)數(shù)的中間語言數(shù)據(jù)時(shí)的大小總計(jì)值的RenderSize5017。另外,pagedataSize5008使用RealSize5016進(jìn)行計(jì)算。
BandEnd5005是明確地示出條的劃分,用于計(jì)算機(jī)容易地檢測條劃分的指令,但是由于如果進(jìn)行了bandinf5010的BandDataSize5012顯示現(xiàn)實(shí)的數(shù)據(jù)大小的設(shè)定就能夠進(jìn)行計(jì)算,故不是必需的指令。
其次,說明本發(fā)明的打印裝置的動(dòng)作,打印裝置3100在接收緩沖器3103中最低限度保存PageInfo5003,在指令分析單元3107中,進(jìn)行pagedataSize5008是否小于頁存儲器3106的中間語言數(shù)據(jù)保存區(qū)域(以下,稱為「判斷A」),以及從bandinf5010的各個(gè)中間語言的信息計(jì)算出的描繪花費(fèi)的時(shí)間是否在引擎所要求的時(shí)間以內(nèi)(以下,稱為「判斷B」)這兩個(gè)判斷處理。
在判斷A以及判斷B都滿足了判斷條件時(shí),通過在進(jìn)行與引擎運(yùn)送處理同步的描繪處理的同步再現(xiàn)模式下進(jìn)行動(dòng)作,能夠高速打印,但是在判斷A的結(jié)果是不可能的情況下,表示中間語言數(shù)據(jù)沒有收容在打印機(jī)內(nèi)部,在具有判斷B的結(jié)果不可能的條的情況下,不能夠進(jìn)行使用條存儲器同時(shí)進(jìn)行描繪處理和運(yùn)送處理的同步再現(xiàn)處理,兩者都不能夠進(jìn)行高速模式下的打印。
從而,在本發(fā)明的打印裝置中,在滿足了判斷A以及判斷B的兩個(gè)判斷條件時(shí),作為使用條存儲器同時(shí)進(jìn)行描繪處理和運(yùn)送處理的同步再現(xiàn)模式,采用在沒有滿足某個(gè)判斷條件的情況下,以頁單位決定了在接收時(shí)進(jìn)行的非同步再現(xiàn)模式下進(jìn)行動(dòng)作以后,處理描繪處理。由此,能夠不增加搭載的存儲器大小地增加可以同步再現(xiàn)的情況。
圖6A示出同步再現(xiàn)的控制器內(nèi)的處理,圖6B示出非同步再現(xiàn)的控制器內(nèi)的處理。
如圖6A所示,在同步再現(xiàn)的控制器600內(nèi),由接收緩沖器601接收的打印數(shù)據(jù)進(jìn)行變換處理,在頁存儲器內(nèi)的中間語言數(shù)據(jù)保存區(qū)602中構(gòu)筑與在打印機(jī)驅(qū)動(dòng)器內(nèi)生成的同樣的條列表,條列表生成以后,使用硬件或者軟件描繪處理執(zhí)行單元,從上層條開始對于頁存儲器內(nèi)的條存儲器區(qū)603進(jìn)行描繪處理。通過具有2個(gè)以上該條存儲器,能夠添加并進(jìn)行「把視頻信號發(fā)送到引擎中的處理」和「對于條存儲器的描繪處理」,實(shí)現(xiàn)節(jié)省存儲器。
另一方面,在非同步再現(xiàn)的控制器604內(nèi),如圖6B所示,在接收緩沖器605中接收的中間語言部分直接用硬件或者軟件對于頁存儲器內(nèi)的條存儲器區(qū)606進(jìn)行描繪處理。在結(jié)束了描繪處理的條存儲器區(qū)606上的圖像數(shù)據(jù)中加入壓縮(PackBits,Run Length,或者JBIG等),保存在頁存儲器內(nèi)的壓縮數(shù)據(jù)保存區(qū)607中。如果具備了全部條部分的壓縮圖像數(shù)據(jù),則通過把該運(yùn)送中的頁的壓縮條608和描繪中的頁的壓縮條609進(jìn)行實(shí)時(shí)擴(kuò)展,把視頻信號發(fā)送到引擎。
其次,說明主計(jì)算機(jī)300中的打印控制模塊的處理的流程。該打印控制模塊包括打印機(jī)驅(qū)動(dòng)器3022,去假脫機(jī)程序3032。
圖7是用于說明打印控制模塊內(nèi)的處理的流程圖,首先,把從OS接收的描繪命令變換為能夠在打印裝置中高速描繪處理的數(shù)據(jù)形式的中間語言數(shù)據(jù),以頁單位進(jìn)行登錄(S701)。接著,生成與打印裝置的條處理單位相吻合的條列表,與在步驟701中登錄了的中間語言數(shù)據(jù)建立連接(S702),通過從條列表和中間語言數(shù)據(jù)生成打印數(shù)據(jù)輸出到GDI3033,發(fā)送到打印裝置(S703),判斷是否具有下一個(gè)頁數(shù)據(jù)(S704)。根據(jù)該判斷,在判斷為具有下一頁的情況下(S704No)返回到步驟701,反復(fù)進(jìn)行以后的步驟,在判斷為沒有下一頁的情況下(S704Yes)結(jié)束處理。
其次,說明打印裝置內(nèi)的每個(gè)邏輯頁的按照處理系統(tǒng)決定的流程。
圖8是用于說明控制器內(nèi)的處理例的流程圖,首先,進(jìn)行PageInfo分析(S801),判斷PageDataSize是否小于中間語言保存區(qū)大小(S802)。該判斷的結(jié)果,在PageDataSize小于中間語言保存區(qū)大小的情況下(S802Yes)進(jìn)入到步驟S803,在PageDataSize不小于中間語言保存區(qū)大小的情況下(S802No)進(jìn)入到步驟S805。
在步驟S803中,分析bandInf,預(yù)測各個(gè)條的描繪處理時(shí)間,如果全部的條能夠同步再現(xiàn)(S803Yes)則進(jìn)入到步驟S804,如果全部的條不能夠同步再現(xiàn)(S803No)則進(jìn)入到步驟S805。
在步驟S804中,把1頁的量的中間語言數(shù)據(jù)保存在頁存儲器中,進(jìn)而,進(jìn)入到步驟S806,在生成了條列表以后執(zhí)行同步再現(xiàn),進(jìn)入到步驟S807。另一方面,在步驟S805中,執(zhí)行非同步再現(xiàn)處理,進(jìn)入到步驟S807。
在步驟S807中,判斷是否結(jié)束了全部的數(shù)據(jù)處理,在判斷為沒有結(jié)束全部的數(shù)據(jù)處理的情況下(S807No),返回到步驟S801,反復(fù)進(jìn)行以后的步驟,在判斷為結(jié)束了全部的數(shù)據(jù)處理的情況下(S807Yes)結(jié)束處理。
圖9是用于說明控制器內(nèi)的其他處理的流程圖,在該處理中,首先,進(jìn)行PageInfo分析(S901),判斷PageDataSize是否小于中間語言保存區(qū)大小(S902)。該判斷的結(jié)果,在PageDataSize小于中間語言保存區(qū)大小的情況下(S902Yes),進(jìn)入到步驟S905,在PageDataSize不小于中間語言保存區(qū)大小的情況下(S902No),進(jìn)入到步驟S903。
在步驟S905中,分析bandInf,預(yù)測各個(gè)條的描繪處理時(shí)間,如果所有的條能夠同步再現(xiàn)(S905Yes)則進(jìn)入到步驟S906,如果全部的條不能夠同步再現(xiàn)(S905No)則進(jìn)入到步驟S908。
另一方面,在步驟S903中,檢查bandInf內(nèi)的能夠壓縮的數(shù)據(jù)的信息,計(jì)算生成壓縮了各個(gè)條的數(shù)據(jù)的中間語言數(shù)據(jù)時(shí)的大小,匯集所有條的信息,重新計(jì)算包含在頁總體中的中間語言數(shù)據(jù)大小。其結(jié)果,如果包含在頁總體中的中間語言數(shù)據(jù)大小的值小于中間語言數(shù)據(jù)保存區(qū)大小(S903Yes)則進(jìn)入到步驟S904,如果大于(S903No)則進(jìn)入到步驟S908。
在步驟S904中,決定使該頁在中間語言數(shù)據(jù)壓縮模式下進(jìn)行動(dòng)作,然后進(jìn)入到步驟S905。
在步驟S906中,把1頁的量的中間語言數(shù)據(jù)保存在頁存儲器中,進(jìn)而,進(jìn)入到步驟S907,在生成條列表以后,執(zhí)行同步再現(xiàn),進(jìn)入到步驟S909。另一方面,在步驟S908中,執(zhí)行非同步再現(xiàn)處理,進(jìn)入到步驟S909。
在步驟S909中,判斷是否結(jié)束了全部的數(shù)據(jù)處理,在判斷為沒有結(jié)束全部的數(shù)據(jù)處理的情況下(S909No),返回到步驟S901,反復(fù)進(jìn)行以后的步驟,在判斷為結(jié)束了全部的數(shù)據(jù)處理的情況下(S909Yes)結(jié)束處理。
其次,說明本發(fā)明的打印裝置的節(jié)省存儲器的效果。
圖10A示出本發(fā)明的打印裝置的同步再現(xiàn)時(shí)的存儲器的狀況,圖10B示出本發(fā)明的打印裝置的非同步再現(xiàn)時(shí)的存儲器的狀況,進(jìn)而,圖10C示出以往的打印裝置的存儲器的狀況。
如圖10A所示,在同步再現(xiàn)1005時(shí),在大小A的中間語言數(shù)據(jù)保存區(qū)1006中保存能夠用硬件高速再現(xiàn)的中間語言數(shù)據(jù),準(zhǔn)備2個(gè)同步條帶用的條存儲區(qū)1007使得成為大小2B。
在非同步再現(xiàn)1008時(shí),條存儲器區(qū)1009為了并行進(jìn)行壓縮處理和再現(xiàn)處理,取為大小2B,壓縮圖像數(shù)據(jù)保存區(qū)1010壓縮并保存1頁的量的展開的圖像,該大小取為與以往的打印裝置的子閉合時(shí)所需要的區(qū)域相同大小的大小C。
這樣,本發(fā)明的打印裝置的存儲器大小在同步再現(xiàn)1005時(shí)成為A+2B,在非同步再現(xiàn)1008時(shí)成為C+2B。
與此不同,以往的打印裝置的存儲器如圖10C所示,在同步再現(xiàn)和子閉合1001時(shí),保存能夠用硬件高速再現(xiàn)的中間語言數(shù)據(jù)的中間語言保存區(qū)1002的大小是A,作為同步條帶的2個(gè)必要的條存儲器區(qū)1003的大小是2B,在子閉合或者預(yù)條中使用的子閉合圖像數(shù)據(jù)保存區(qū)1004的大小是C,其總計(jì)大小成為A+2B+C。
這樣,本發(fā)明的打印裝置與以往結(jié)構(gòu)的打印裝置相比較,就能夠理解起到節(jié)省存儲器的效果。另外,通過設(shè)定成不同時(shí)使用大小A和大小C的存儲器,則能夠得到進(jìn)一步的節(jié)省存儲器的效果。
另外,在本發(fā)明的打印裝置中,具有以下的性能效果。即,在簡單的數(shù)據(jù)處理時(shí),由于用同步再現(xiàn)模式進(jìn)行動(dòng)作,因此在主機(jī)內(nèi)部進(jìn)行以往的打印裝置中在打印機(jī)內(nèi)部進(jìn)行的中間語言數(shù)據(jù)生成處理。因而,主機(jī)中的處理時(shí)間比以往的打印裝置的PDL模式時(shí)加長,而打印機(jī)一側(cè)的處理時(shí)間縮短與其相應(yīng)的部分。該差值雖然依賴于使用環(huán)境而增大,但是如果考慮是簡單的數(shù)據(jù),因此可以說沒有很大的差值。
另一方面,在「指令大小大的情況下」或者「存在大量來不及處理的條的情況下」,可以得到很大的優(yōu)點(diǎn)。即,在以往的打印裝置中,由于反復(fù)進(jìn)行子閉合處理,因此反復(fù)進(jìn)行壓縮·擴(kuò)展處理的時(shí)間成為延遲的主要原因,而與此不同,在本發(fā)明的打印裝置中,由于在非同步再現(xiàn)模式下進(jìn)行動(dòng)作,因此不發(fā)生條描繪處理過程中的壓縮處理。為此,打印機(jī)內(nèi)部的處理時(shí)間縮短成只是壓縮·非壓縮處理時(shí)間×次數(shù)。
其次,說明在打印機(jī)內(nèi)部壓縮了彩色多值圖像中間語言數(shù)據(jù)的狀況。
圖11用于說明在本發(fā)明的打印裝置上連接的打印機(jī)內(nèi)部壓縮了彩色多值圖像中間語言數(shù)據(jù)和狀況,把用1101所示例1的作為中間語言數(shù)據(jù)之一的彩色精細(xì)灰階圖像數(shù)據(jù)1102(YMCK各顏色8比特=32bit/pixel)像1103那樣在打印機(jī)內(nèi)部描繪處理時(shí)進(jìn)行放大的情況下,在輸出色調(diào)數(shù)是各顏色2比特的情況下,如果縱×橫是8以上的放大率,則32bit/pixel的源數(shù)據(jù)直接生成中間語言數(shù)據(jù)時(shí)的數(shù)據(jù)尺小減小。
另一方面,在1104所示例2的等倍率(縮小)的情況下或者1107所示例3的加大放大率的情況下,在加入修剪(clipping)1110,描繪區(qū)域大小較小時(shí),把加入了縮放處理,修剪處理以及中間色調(diào)處理的(YMCK各色2比特=8bit/pixel)作為中間語言數(shù)據(jù)的中間語言數(shù)據(jù)大小減小。但是,在考慮到處理總體的處理時(shí)間時(shí),與引擎同步在硬件中高速地進(jìn)行放大處理和中間色調(diào)處理是有效的。
因此,在本發(fā)明的打印裝置連接的打印機(jī)中,在中間語言數(shù)據(jù)保存時(shí)如果全部加入上述處理則由于花費(fèi)數(shù)據(jù)的生成時(shí)間,因此僅抽取出適于該條件的精細(xì)灰階圖像數(shù)據(jù)生成中間圖像數(shù)據(jù)。該方法在圖像數(shù)據(jù)方面很有效,如果再現(xiàn)器適用能夠?qū)崟r(shí)擴(kuò)展的壓縮方式,則能夠進(jìn)一步有效地利用中間語言數(shù)據(jù)大小區(qū)域。
此外,本發(fā)明的打印裝置也可以適用于由多個(gè)設(shè)備(例如主機(jī)、接口設(shè)備、閱讀器、打印機(jī)等)構(gòu)成的系統(tǒng),也可以適用于由單個(gè)設(shè)備形成的裝置(例如,復(fù)印機(jī),傳真裝置等)。
另外無需贅言,本發(fā)明的目的也是可以這樣達(dá)到的,就是通過將記錄了實(shí)現(xiàn)上述實(shí)施形式的功能的軟件程序代碼的存儲介質(zhì)提供給計(jì)算機(jī)系統(tǒng)或者裝置(例如,個(gè)人計(jì)算機(jī)),該系統(tǒng)或者裝置,使用CPU或者M(jìn)PU讀出并執(zhí)行保存在存儲介質(zhì)中的程序代碼。在此情況下,就成了從存儲介質(zhì)讀出的程序代碼自身將實(shí)現(xiàn)上述的實(shí)施形式的功能,存儲該程序代碼的存儲媒體就構(gòu)成了本發(fā)明。
另外,為了提供程序代碼,可以使用例如,軟盤(注冊商標(biāo))、硬盤、光盤、磁光盤、CD-ROM、CD-R、磁帶、非易失性存儲卡和ROM等的存儲介質(zhì),或者LAN和WAN等的計(jì)算機(jī)網(wǎng)絡(luò)。
另外無需贅言,不僅包含通過執(zhí)行計(jì)算機(jī)所讀出的程序代碼,上述的實(shí)施形式的功能得以實(shí)現(xiàn)的情況,也包含根據(jù)該程序代碼的指示,在計(jì)算機(jī)上運(yùn)行的操作系統(tǒng)(OS)等進(jìn)行實(shí)際處理的一部分或者全部,通過該處理前面所說的實(shí)施形式的功能得以實(shí)現(xiàn)的情況。
進(jìn)而無需贅言,也包含當(dāng)從存儲媒體讀出的程序代碼,被寫入到插入計(jì)算機(jī)的功能擴(kuò)張卡和/或連接到計(jì)算機(jī)的功能擴(kuò)張單元上所具備的存儲器以后,根據(jù)該程序代碼的指示,該功能擴(kuò)張卡和/或功能擴(kuò)張單元上所具備的CPU等進(jìn)行實(shí)際處理的一部分或者全部,通過該處理前面所說的實(shí)施形式的功能得以實(shí)現(xiàn)的情況。
在本發(fā)明適用于上述存儲媒體的情況下,與先前說明了流程圖相對應(yīng)的程序代碼就保存在該存儲介質(zhì)中。
由于在不超出本發(fā)明的精神和范圍內(nèi),能夠進(jìn)行實(shí)施形式的廣泛變形,因此可知本發(fā)明除去在附加的權(quán)利要求書中規(guī)定的以外,不限定于特殊的具體實(shí)施方式
。
如以上說明的那樣,如果依據(jù)本發(fā)明,則在打印裝置中采用具備打印模式?jīng)Q定單元的結(jié)構(gòu),打印模式?jīng)Q定單元判斷在通常打印模式下變換了打印命令數(shù)據(jù)時(shí)的中間語言數(shù)據(jù)大小能否存儲在頁存儲器中,在能夠存儲的情況下,使打印模式?jīng)Q定單元選擇通常打印模式,在不能夠存儲的情況下,選擇壓縮打印模式。進(jìn)而,在打印模式?jīng)Q定單元中具備數(shù)據(jù)再處理裝置,在選擇了壓縮打印模式的情況下,由于通過進(jìn)行壓/擴(kuò)處理,輸出色調(diào)變換處理,修剪處理,可逆壓縮處理的某一個(gè),對在縮小了與通常打印模式的精細(xì)灰階圖像數(shù)據(jù)相對應(yīng)的中間語言數(shù)據(jù)中數(shù)據(jù)大小的中間語言數(shù)據(jù),進(jìn)行相應(yīng)的處理后再次保存在頁存儲器中,因此能夠提供即使向打印機(jī)發(fā)送大量的打印命令,也能夠以很少的存儲器保證高速而且正常打印的打印系統(tǒng)以及打印裝置。
權(quán)利要求
1.一種打印系統(tǒng),該打印系統(tǒng)把具備打機(jī)驅(qū)動(dòng)器的計(jì)算機(jī)與打印裝置相連接,并且上述打印裝置響應(yīng)由上述打印機(jī)驅(qū)動(dòng)器生成的打印命令數(shù)據(jù)進(jìn)行描繪處理,其特征在于上述打印機(jī)驅(qū)動(dòng)器包括把描繪命令變換為能夠在上述打印裝置內(nèi)部高速處理的中間語言數(shù)據(jù)形式的數(shù)據(jù)變換裝置;存儲1頁的量的該被數(shù)據(jù)變換了的中間語言數(shù)據(jù)的數(shù)據(jù)保持裝置;收集存儲在該數(shù)據(jù)保持裝置中的中間語言數(shù)據(jù)的屬性信息的數(shù)據(jù)信息收集裝置;生成由1頁的量的中間語言數(shù)據(jù)和中間語言數(shù)據(jù)信息構(gòu)成的打印數(shù)據(jù)的打印數(shù)據(jù)生成裝置;上述打印裝置包括解釋來自上述打印機(jī)驅(qū)動(dòng)器的打印命令,抽取出中間語言數(shù)據(jù)和中間語言數(shù)據(jù)信息的數(shù)據(jù)抽取裝置;保存1頁的量的該中間語言數(shù)據(jù)的頁數(shù)據(jù)保持裝置;根據(jù)從該打印命令抽取出的中間語言數(shù)據(jù)信息,決定打印模式的打印模式?jīng)Q定裝置;根據(jù)由該打印模式?jīng)Q定裝置決定了的打印模式執(zhí)行基于1頁的量的中間語言數(shù)據(jù)的描繪處理的描繪裝置;上述打印機(jī)驅(qū)動(dòng)器的打印命令數(shù)據(jù)生成裝置,如果在上述數(shù)據(jù)保持裝置中保存了1頁的量的中間語言數(shù)據(jù),則作為打印數(shù)據(jù)生成把存儲在上述數(shù)據(jù)信息保持裝置中的中間語言數(shù)據(jù)信息添加在頁頭的中間語言數(shù)據(jù),上述打印裝置的打印模式?jīng)Q定裝置判斷在通常的打印模式下把上述打印數(shù)據(jù)變換了時(shí)的中間語言數(shù)據(jù)大小是否能夠存儲在上述頁數(shù)據(jù)保持裝置中,在能夠存儲的情況下,使上述打印模式?jīng)Q定裝置選擇通常打印模式,在不能夠存儲的情況下,使上述打印模式?jīng)Q定裝置選擇壓縮打印模式。
2.根據(jù)權(quán)利要求1所述的打印系統(tǒng),其特征在于上述打印模式?jīng)Q定裝置包括數(shù)據(jù)再處理裝置,該數(shù)據(jù)再處理裝置在選擇了壓縮打印模式的情況下,在與通常打印模式的精細(xì)灰階圖像數(shù)據(jù)相對應(yīng)的中間語言數(shù)據(jù)中,通過進(jìn)行壓/擴(kuò)處理,輸出色調(diào)變換處理,修剪處理,可逆壓縮處理的某一種,進(jìn)行縮小了數(shù)據(jù)大小的與中間語言數(shù)據(jù)相當(dāng)?shù)纳鲜鎏幚砗笤俅伪4嬖谏鲜龃蛴?shù)據(jù)保持裝置中。
3.根據(jù)權(quán)利要求1所述的打印系統(tǒng);其特征在于上述打印機(jī)驅(qū)動(dòng)器還包括在與上述打印裝置內(nèi)部執(zhí)行的條處理一致的條列表上登錄上述中間語言數(shù)據(jù)的數(shù)據(jù)登錄裝置,上述數(shù)據(jù)信息收集裝置收集由該數(shù)據(jù)登錄裝置登錄了的每個(gè)上述條列表中的中間語言數(shù)據(jù)信息。
4.根據(jù)權(quán)利要求3所述的打印系統(tǒng),其特征在于上述打印裝置的打印模式?jīng)Q定裝置決定是進(jìn)行與引擎同步的描繪處理的同步描繪模式還是進(jìn)行與引擎非同步的描繪處理的非同步描繪模式。
5.根據(jù)權(quán)利要求4所述的打印系統(tǒng),其特征在于上述打印裝置的打印模式?jīng)Q定裝置根據(jù)頁信息判斷包含在頁中的中間語言數(shù)據(jù)大小,并且與上述頁數(shù)據(jù)保持裝置的存儲器大小進(jìn)行比較,預(yù)測每條中基于中間語言數(shù)據(jù)的描繪處理時(shí)間,判斷是否在引擎速度內(nèi),在該描繪處理時(shí)間處于引擎速度內(nèi)的情況下選擇同步描繪模式,在處于引擎速度外的情況下選擇非同步描繪模式。
6.根據(jù)權(quán)利要求5所述的打印系統(tǒng),其特征在于在上述非同步描繪模式中,上述打印裝置對于描繪用條存儲器,直接描繪處理保存在接收緩沖器中的中間語言數(shù)據(jù),壓縮并保持結(jié)束了描繪處理的條,在匯集了1頁的量的壓縮條的時(shí)刻起動(dòng)引擎,從上層條開始順序地在條存儲器中擴(kuò)展被壓縮了的條圖像數(shù)據(jù),與引擎相同步變換為視頻信號。
7.根據(jù)權(quán)利要求5所述的打印系統(tǒng),其特征在于在上述同步描繪模式中,上述打印裝置把以條單位發(fā)送來的打印命令數(shù)據(jù)順序地作為中間語言數(shù)據(jù)登錄在上述打印裝置的條列表中,在生成了1頁的量的條列表的時(shí)刻起動(dòng)引擎,從登錄在上層條列表中的中間語言數(shù)據(jù)開始順序地在條存儲器中執(zhí)行描繪處理,與引擎相同步,把結(jié)束了描繪處理的條存儲器上的圖像數(shù)據(jù)變換為視頻信號。
8.一種打印裝置,包括解釋來自打印機(jī)驅(qū)動(dòng)器的打印數(shù)據(jù),抽取中間語言數(shù)據(jù)和中間語言數(shù)據(jù)信息的數(shù)據(jù)抽取裝置;存儲1頁的量的該中間語言數(shù)據(jù)的頁數(shù)據(jù)保持裝置;從該被抽取出的中間語言數(shù)據(jù)信息預(yù)測打印數(shù)據(jù)大小,與該預(yù)測結(jié)果相對應(yīng)決定打印模式的打印模式?jīng)Q定裝置;以及根據(jù)由該打印模式?jīng)Q定裝置決定了的打印模式描繪1頁的量的中間語言數(shù)據(jù)的描繪裝置;上述打印模式?jīng)Q定裝置判斷在通常打印模式下變換了上述打印數(shù)據(jù)時(shí)的中間語言數(shù)據(jù)大小是否能夠存儲在上述打印數(shù)據(jù)保持裝置中,在能夠存儲的情況下,使上述打印模式?jīng)Q定裝置選擇通常打印模式,在不能夠存儲的情況下,使上述打印模式?jīng)Q定裝置選擇壓縮打印模式。
9.根據(jù)權(quán)利要求8所述的打印裝置,其特征在于上述打印模式?jīng)Q定裝置包括數(shù)據(jù)再處理裝置,該數(shù)據(jù)再處理裝置在選擇了壓縮打印模式的情況下,在與通常打印模式的精細(xì)灰階圖像數(shù)據(jù)相對應(yīng)的中間語言數(shù)據(jù)中,通過執(zhí)行壓/擴(kuò)處理,輸出色調(diào)變換處理,修剪處理,可逆壓縮處理的某一種,進(jìn)行縮小了數(shù)據(jù)大小的與中間語言數(shù)據(jù)相當(dāng)?shù)纳鲜鎏幚硪院笤俅伪4嬖谏鲜鲰摂?shù)據(jù)保存裝置中。
10.一種打印裝置,包括解釋來自打印機(jī)驅(qū)動(dòng)器的印裝數(shù)據(jù),抽取中間語言數(shù)據(jù)和中間語言數(shù)據(jù)信息的數(shù)據(jù)抽取裝置;存儲1頁的量的該中間語言數(shù)據(jù)的打印數(shù)據(jù)保持裝置;分析該被抽取出的中間語言數(shù)據(jù),判斷是進(jìn)行與引擎同步的描繪處理還是進(jìn)行與引擎非同步的描繪處理的同步非同步判斷裝置;引擎同步描繪處理裝置;以及引擎非同步描繪處理裝置。
11.根據(jù)權(quán)利要求10所述的打印裝置,其特征在于上述打印裝置的同步非同步判斷裝置根據(jù)頁信息判斷包含在頁中的中間語言數(shù)據(jù)大小,與上述打印數(shù)據(jù)保持裝置的存儲器大小進(jìn)行比較,按照每個(gè)條預(yù)測基于中間語言數(shù)據(jù)的描繪處理時(shí)間,判斷是否在引擎速度內(nèi),在該描繪處理時(shí)間處于引擎速度內(nèi)的情況下選擇引擎同步描繪裝置,在處于引擎速度外的情況下選擇引擎非同步描繪裝置。
12.根據(jù)權(quán)利要求11所述的打印裝置,其特征在于上述引擎非同步描繪裝置對于描繪用條存儲器直接描繪處理保存在接收緩沖區(qū)中的中間語言數(shù)據(jù),壓縮并保持結(jié)束了描繪處理的條,在匯集了1頁的量的壓縮條的時(shí)刻起動(dòng)引擎,把壓縮保持了的條圖像數(shù)據(jù)從上層條開始時(shí)在條存儲器中順序擴(kuò)展,與引擎相同步變換為視頻信號。
13.根據(jù)權(quán)利要求11所述的打印裝置,其特征在于上述引擎同步描繪裝置作為中間語言數(shù)據(jù),把以條單位發(fā)送來的打印命令數(shù)據(jù)順序地登錄在上述打印裝置的條列表中,在生成了1頁的量的條列表的時(shí)刻起動(dòng)引擎,從登錄在上層條列表中的中間語言數(shù)據(jù)開始在條存儲器中順序地執(zhí)行描繪處理,與引擎相同步,把結(jié)束了描繪處理的條存儲器上的圖像數(shù)據(jù)變換為視頻信號。
全文摘要
本發(fā)明提供即使向打印機(jī)發(fā)送出大量的打印命令也能夠以很少的存儲器保證高速而且正常打印的打印系統(tǒng)以及打印裝置。在打印裝置中采用具備打印模式?jīng)Q定單元的結(jié)構(gòu),打印模式?jīng)Q定單元判在通常打印模式下變換了打印命令數(shù)據(jù)時(shí)的中間語言數(shù)據(jù)大小能否存儲在頁存儲器中,在能夠存儲的情況下,使打印模式?jīng)Q定單元選擇通常打印模式,在不能夠存儲的情況下選擇壓縮打印模式。進(jìn)而,在打印模式?jīng)Q定單元中具備數(shù)據(jù)再處理裝置,在選擇了壓縮打印模式的情況下,在與通常打印模式的精細(xì)灰階圖像數(shù)據(jù)相對應(yīng)的中間語言數(shù)據(jù)中,通過執(zhí)行壓/擴(kuò)處理,輸出色調(diào)變換處理,修剪處理、可逆壓縮處理的某一種,進(jìn)行縮小了數(shù)據(jù)大小的與中間語言數(shù)據(jù)相當(dāng)?shù)奶幚硪院笤俅伪4嬖陧摯鎯ζ髦小?br>
文檔編號B41J29/38GK1432902SQ0310048
公開日2003年7月30日 申請日期2003年1月15日 優(yōu)先權(quán)日2002年1月17日
發(fā)明者戶田雅成, 內(nèi)田達(dá)郎, 大村宏 申請人:佳能株式會(huì)社