專利名稱:打印機控制用程序、文檔操作終端以及文檔處理系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及裝入到個人計算機(PC)等文檔操作終端中的作為打印機設備驅動器的打印機控制用程序等,特別涉及以縮短打印開始時間為目的打印機控制用程序、文檔操作終端、文檔處理系統(tǒng)以及打印數據生成方法。
背景技術:
一般,由個人計算機等文檔操作終端生成的文檔數據,不能直接用打印機進行打印處理,需要變換成由羅列了各點的色彩信息的光柵圖像數據所構成的打印數據后,才能進行打印處理。
這樣,將文檔數據變換到光柵圖像數據的變換處理,一般稱為繪制(rendering)處理,例如,在一般的噴墨打印機中,通過在上述文檔操作終端的操作系統(tǒng)(OS)中預先裝入打印機控制用的程序,可執(zhí)行該處理。
而且,這種繪制處理,由于在文檔操作終端中文檔生成結束后由用戶按下進行文檔操作的應用軟件、例如文字處理軟件的打印指示鍵之后,才執(zhí)行打印機控制用程序,在實際由打印機開始打印之前,要花費該繪制處理所需要的時間,因而出現耗時的不良情況。特別是當所生成的的文檔是以圖像等為主體而數據量大的情況,或者文檔操作終端自身的信息處理能力低的情況等時,這種不良情況更加顯著。
因此,例如在以下的專利文獻1和2等中,提出了以下的在打印機中縮短實際打印開始時間的方法,即文檔操作終端(客戶裝置)的應用程序與文檔的生成作業(yè)并行,將文檔數據逐次傳送到打印機(打印裝置)中,已接收這些數據的打印機將該文檔數據轉換為適合打印的圖像數據,在文檔生成結束后按照傳送來的打印命令以及條件,采用先前生成的圖像數據進行打印處理,由此縮短實際打印開始時間。
然而,在這種現有技術中,由于在文檔操作應用程序軟件中需要與文檔生成(操作)作業(yè)并行將正在生成中的文檔數據的一部分逐次傳送到打印機側的功能和結構,例如,在已經在市場上出售或者實際上在文檔操作終端安裝并應用的文字處理軟件或編輯器等的通用文檔操作用應用軟件中,卻不能發(fā)揮這樣的功能。
另外,為了應用該功能,不僅應用軟件,還有打印機和打印機控制用程序等的各種打印控制用軟件,甚至幾乎整個打印系統(tǒng)都必須重新構筑,在開發(fā)和實現上需要花費很大的成本,顯然不合適。
專利文獻1特開2000-267827號公報;專利文獻2特開平11-31054號公報。
發(fā)明內容
為此,本發(fā)明正是為有效解決該課題而提出的方案,其主要的目的之一在于提供一種能縮短打印開始時間的新型打印機控制用程序、文檔操作終端、文檔處理系統(tǒng)以及打印數據生成方法。
本發(fā)明的另一主要目的在于提供一種在直接采用已存在的打印系統(tǒng)和通用文檔操作應用程序的情況下就可以縮短打印開始時間的新型打印機控制用程序、文檔操作終端、文檔處理系統(tǒng)以及打印數據生成方法。
為解決上述課題,本發(fā)明之一的打印機控制用程序,與利用打印功能的文檔操作用軟件,通過時分割任務執(zhí)行或者執(zhí)行場所的分散等方式,一起運行,其特征在于,讓計算機作為以下裝置發(fā)揮功能操作信息獲取裝置,其在該軟件的操作過程中獲取上述軟件的操作信息;和打印數據生成裝置,其根據由該操作信息獲取裝置所獲取的操作信息,生成用上述軟件制作的文檔的打印用數據。
這樣,在文字處理器、或者處理圖像閱覽等電子文件的文檔操作用軟件的操作中,即,文檔操作軟件的的處理啟動到結束的任意期間,由于可以獲取構成該文檔的數據,先行開始打印數據的生成處理(以下,本實施方式,與以往相同,將該打印數據的生成處理稱作“繪制”),可以省略以往在文檔生成結束后進行的一部分或者全部繪制處理。
其結果,由于可以大幅縮短或者省略文檔生成結束后的繪制處理所需要的時間,所以能大幅度縮短從向打印機發(fā)送數據到用該打印機首次打印輸出的時間。
另外,由于可以只是通過控制打印機的軟件就能發(fā)揮這些功能,故可以直接利用現在的打印系統(tǒng)和通用文檔操作用應用軟件等,能夠最小限度抑制開發(fā)成本和引入成本。
另外,本發(fā)明所謂的“利用打印功能的文檔操作用軟件”,不僅包括文字處理軟件和編輯器那樣的、通過用戶等的操作生成新的文檔數據的軟件,同時也包括圖像閱覽軟件那樣的閱覽專用的、不生成新的文檔數據的軟件(在以下的有關“打印機控制用程序”、“文檔操作終端”、“文檔處理系統(tǒng)”、“打印數據生成方法”的發(fā)明中也相同)。
本發(fā)明之二的打印機控制用程序,與利用打印功能的文檔操作用軟件一起運行,其特征在于,讓計算機作為以下裝置發(fā)揮功能操作信息獲取裝置,其在該軟件的操作中獲取上述軟件的操作信息;打印數據生成裝置,其根據由該操作信息獲取裝置所獲取的操作信息,生成用上述軟件制作的文檔的打印用數據;和繪制信息保持裝置,其將用上述打印數據生成裝置生成的打印用數據的各素材原封不動地保持。
這樣,在本發(fā)明之一的效果的基礎上,由于通過繪制信息保持裝置在繪制的狀態(tài)下原樣保持由上述打印數據生成裝置生成的打印用數據的各素材,以后需要對同樣的數據進行繪制時能夠直接利用在該繪制信息保持裝置中保持的已繪制的素材。
其結果,由于不需要對同樣的數據每次進行繪制,能夠在更短的時間內生成打印數據。
本發(fā)明之三的打印機控制用程序,與利用打印功能的文檔操作用軟件一起運行,其特征在于,讓計算機作為以下裝置發(fā)揮功能操作信息獲取裝置,其在該軟件的操作中獲取上述軟件的操作信息;操作信息選擇裝置,其從用該操作信息獲取裝置所獲取的操作信息中選擇給定操作信息;和打印數據生成裝置,其根據由該操作信息選擇裝置所選擇的操作信息,生成用上述軟件制作的文檔的打印用數據。
這樣,在本發(fā)明之一的效果的基礎上,由于通過操作信息選擇裝置從操作信息獲取裝置已獲取的操作信息中選擇給定的操作信息,將該操作信息傳輸到打印數據生成裝置中,所以不是通過用戶的設定等固定所獲取的操作信息的種類,而是能夠根據應用軟件的種類適當切換。例如,對操作信息的種類和內容等設置優(yōu)先權,根據應用軟件的利用狀況進行生成操作信息等的后續(xù)處理,或者切換監(jiān)視列表,或者對有關處理頻度高的文檔提高優(yōu)先權,降低其它文檔的優(yōu)先權等。
本發(fā)明之四的打印機控制用程序,與利用打印功能的文檔操作用軟件一起運行,其特征在于,讓計算機作為以下裝置發(fā)揮功能操作信息獲取裝置,其在該軟件的操作中獲取上述軟件的操作信息;CPU負載信息獲取裝置,其獲取讓上述軟件運行的計算機的CPU的負載信息;操作信息選擇裝置,其根據由該CPU負載信息獲取裝置所獲取的CPU的負載信息,從該操作信息獲取裝置所獲取的操作信息中選擇給定操作信息;和打印數據生成裝置,其根據由該操作信息選擇裝置所選擇的操作信息,生成用上述軟件制作的文檔的打印用數據。
這樣,在本發(fā)明之一的效果的基礎上,由于CPU負載信息獲取裝置在獲取運行軟件的計算機的CPU的負載信息,同時操作信息選擇裝置根據CPU的負載信息從上述操作信息獲取裝置已獲取的操作信息中選擇給定的操作信息,所以能夠避免在操作信息的獲取以及操作中的繪制處理中增大所需要的CPU負載。
也就是說,本發(fā)明,根據已獲取的操作信息進行的繪制處理(打印數據生成處理),由通過運行上述軟件的計算機的CPU執(zhí)行時,按照該CPU的負載狀況(占用率)變更監(jiān)視對象的操作信息的種類。例如,在CPU的占用率很小時,如以下的本發(fā)明之五所示,如果操作系統(tǒng)(以下,稱作OS(Operating System))將有關對應用軟件公開的程序接口API(Application Program Interface)的全部操作信息(ReadFile、OleLoadPicture、WriteFile、Textout、MoveToEx、LineTo、Ellipse)作為監(jiān)視對象;在CPU的占用率比上述占用率高時,將來自該API中CPU負載的最大操作信息(例如,WriteFile、Ellipse)不作為監(jiān)視對象;進一步在CPU的占用率比上述占用率高時,將來自該API中CPU負載的較大操作信息(例如,Textout、MoveToEx、LineTo)不作為監(jiān)視對象,則可以有效避免由于操作信息的獲取以及操作中的繪制引起的CPU負載的增大。
本發(fā)明之五的的打印機控制用程序,在本發(fā)明之一~之四中任一項所述的打印機控制用程序中,其特征在于,上述軟件是利用操作系統(tǒng)的應用軟件;用上述操作信息獲取裝置獲取的上述軟件的操作信息是有關由上述應用軟件對上述操作系統(tǒng)的操作的信息。
也就是說,本發(fā)明,如本發(fā)明之一~之四所示,作為由上述操作信息獲取裝置獲取的操作信息,具體講,上述應用軟件的操作信息中對OS的操作信息,例如,為利用OS的一部分而將調用的API(Application ProgramInterface)等的程序接口作為對象。
也就是說,例如,Microsoft公司的“Word(注冊商標)”等通用文檔操作用應用軟件(文字處理軟件)在該公司的Windows(注冊商標)的OS上運行,在進行描繪時,利用該OS標準帶有的GDI(Graphical DeviceInterface)和DDI(Device Drive Interface)等描繪用的API,在顯示器中進行描繪,本發(fā)明監(jiān)視該OS等具有的應用軟件接口的運行狀況,獲取該運行狀況(以下稱作“鉤子”)并在文檔操作中進行繪制處理。
這樣,由于與上述本發(fā)明之一~之四同樣,可以大幅度縮短到首次打印輸出為止的時間,同時能夠直接利用現存的打印系統(tǒng)和通用文檔操作用應用軟件,可以最小限度抑制為獲得本功能的開發(fā)成本和開發(fā)時間。
而且,由于本發(fā)明利用OS等的應用軟件利用的環(huán)境的一般框架,所以能夠適應利用該環(huán)境的全部的文檔操作應用軟件。例如,UNIX(注冊商標)等,在OS以外也存在提供X-Windows(注冊商標)等的GUI(Graphical User Interface)的環(huán)境。如果利用從付隨在這樣的OS環(huán)境中獲取信息的框架,能夠得到與上述Windows(注冊商標)時同樣的效果。
另外,本發(fā)明中所謂的“操作系統(tǒng)”包括相當于操作系統(tǒng)的文檔操作的應用執(zhí)行環(huán)境、例如上述Windows(注冊商標)、Linux(注冊商標)等的一般的OS、和“X-Windows(注冊商標)”、“MicroWindows(注冊商標)”等的描繪模塊(在以下的有關“打印機控制用程序”、“文檔操作終端”、“文檔處理系統(tǒng)”、“打印數據生成方法”的發(fā)明中也相同)本發(fā)明之六的打印機控制用程序,在本發(fā)明之一~之四中任一項所述的打印機控制用程序中,其特征在于,上述軟件是利用操作系統(tǒng)的應用軟件;用上述操作信息獲取裝置獲取的上述軟件的操作信息是有關由上述操作系統(tǒng)對上述軟件的命令操作的信息。
也就是說,本發(fā)明,不是象上述本發(fā)明之五那樣上述應用軟件對OS的操作信息,而是用戶等對上述應用軟件執(zhí)行的文檔操作命令操作,例如,對“復制”、“剪切”、“粘貼”等所謂預先選擇自由設定的命令操作的信息作為操作信息獲取,執(zhí)行繪制處理。
這樣,與上述本發(fā)明之五相同,可以大幅度縮短到首次打印輸出為止的時間,同時能夠直接利用現存的打印系統(tǒng)和通用文檔操作用應用軟件,可以最小限度抑制為獲得本功能的開發(fā)成本和開發(fā)時間。
而且,作為合適的文檔操作用應用軟件,例如,在利用上述Microsoft公司的“Word(注冊商標)”等著名的文字處理軟件時,以高質的內容能夠認識、把握用戶的操作,與上述本發(fā)明之五等相比能夠更正確獲取文件內容。
另外,作為合適的文檔操作用應用軟件,例如,在利用上述Microsoft公司的“Office(注冊商標)”時,同樣地,能夠實現獲取該“Office(注冊商標)”上的應用事件,例如,根據以下的URL,http//msdn.Microsoft.com/library/default.asp?url=/library/en-us/odcvsto2003 ta/html/odc VSTHookWrd.asp中給出的方法能夠獲取應用中的事件。其中事件截獲Documents對象,能夠容易地檢查Add(新建)和Open(打開文件)等命令。
本發(fā)明之七的打印機控制用程序,在本發(fā)明之三所述的打印機控制用程序中,其特征在于,有關由上述操作系統(tǒng)對上述軟件的命令操作的信息是有關上述軟件的文檔操作的信息。
也就是說,本發(fā)明,作為有關對上述軟件的命令操作的信息,用戶開始編輯某個文件,將圖像文件插入到在生成中的文件里等,用戶獲取使生成中的文件內容很大變化的文檔操作的信息。
有關這樣的操作的信息,與訂正重復錯誤的文字輸入等的信息相比,是有關不易變更的內容操作的信息。也就是說,根據通過該方法得到的信息,可以降低浪費繪制后的素材的可靠性,并且也沒有必要大量地保持沒用的資料。因此,即使是信息處理能力較低的計算機,也可以得到與上述本發(fā)明之三的同樣效果。
本發(fā)明之八的打印機控制用程序,在本發(fā)明之一~之四中任一項所述的打印機控制用程序中,其特征在于,上述軟件是利用操作系統(tǒng)的應用軟件;用上述操作信息獲取裝置獲取的上述軟件的操作信息是有關由與該軟件協同動作的硬件的輸入裝置對上述操作系統(tǒng)的輸入操作的信息。
也就是說,本發(fā)明,不是如上述發(fā)明那樣,對OS的操作信息、或者對應用軟件的操作命令等所謂在應用軟件中認識、把握的操作信息,而是獲取有關使用鍵盤和鼠標等所謂輸入裝置由用戶對硬件(計算機)直接執(zhí)行的輸入操作的操作信息,執(zhí)行繪制處理。
這樣,與上述本發(fā)明之一~之四相同,顯然能夠發(fā)揮到首次打印輸出的時間縮短并開發(fā)成本削減的效果,由于截取從輸入裝置產生的電輸入信號,用單純結構在技術上可以容易且確切獲取用于進行的操作信息。
另外,在上述的Windows(注冊商標)中,關于鍵盤、鼠標等輸入裝置的操作,可以作為Windows(注冊商標)的事件(鍵盤操作,鼠標操作)獲取。例如,應用調用如下的URLhttp//hp.vector.co.jp/authors/VA016117/hook.html中的Windows(注冊商標)的全局鉤子的方法能夠獲取從輸入裝置到OS的操作信息。
本發(fā)明之九的文檔操作終端,與打印機連接成可通信,其特征在于,包括文檔操作裝置,其生成由上述打印機執(zhí)行打印的文檔;操作信息獲取裝置,其在該文檔操作裝置的操作過程中獲取該文檔操作裝置的操作信息;打印數據生成裝置,其根據由該操作信息獲取裝置所獲取的操作信息生成由上述文檔操作裝置生成的文檔的打印數據;和數據發(fā)送裝置,其將由該打印數據生成裝置生成的打印用數據發(fā)送到上述打印機。
這樣,與本發(fā)明之一相同,由于能夠先行開始繪制處理,所以可以省略以往在文檔生成結束后進行的繪制處理的一部分或者全部。
其結果,可以大幅度縮短、或者省略在文檔生成結束后的繪制處理所需要的時間,能夠大幅度縮短從通過數據發(fā)送裝置向打印機發(fā)送數據開始到在該打印機進行首次打印輸出為止的時間。
另外,除了如本發(fā)明之一那樣采用軟件實現外,通過專用電路的硬件頁能夠實現各裝置,這時,比用軟件實現能夠進行更高速的繪制處理。
本發(fā)明之十的文檔操作終端,與打印機連接成可通信,其特征在于,包括文檔操作裝置,其生成由上述打印機執(zhí)行打印的文檔;操作信息獲取裝置,其在該文檔操作裝置的操作過程中獲取該文檔操作裝置的操作信息;打印數據生成裝置,其根據由該操作信息獲取裝置所獲取的操作信息生成由上述文檔操作裝置生成的文檔的打印數據;繪制信息保持裝置,其將用上述打印數據生成裝置生成的打印用數據的各素材原封不動地保持;和數據發(fā)送裝置,其將由該打印數據生成裝置生成的打印用數據發(fā)送到上述打印機。
這樣,在得到與本發(fā)明之九同樣的效果的同時,如本發(fā)明之二那樣,由于通過繪制信息保持裝置在繪制后的狀態(tài)下原樣保持由上述打印數據生成裝置生成的打印用數據的各素材,以后需要對同樣的數據進行繪制時能夠直接利用在該繪制信息保持裝置中保持的已繪制的素材。其結果,由于不需要對同樣的數據每次進行繪制,能夠在更短的時間內生成打印數據。
本發(fā)明之十一的文檔操作終端,與打印機連接成可通信,其特征在于,包括文檔操作裝置,其生成由上述打印機執(zhí)行打印的文檔;操作信息獲取裝置,其在該文檔操作裝置的操作過程中獲取該文檔操作裝置的操作信息;操作信息選擇裝置,其從用該操作信息獲取裝置所獲取的操作信息中選擇給定操作信息;打印數據生成裝置,其根據由該操作信息選擇裝置所選擇的操作信息,生成用上述文檔操作裝置制作的文檔的打印用數據;和數據發(fā)送裝置,其將由該打印數據生成裝置生成的打印用數據發(fā)送到上述打印機。
這樣,在本發(fā)明之九的效果的基礎上,和本發(fā)明之三同樣,由于通過操作信息選擇裝置從操作信息獲取裝置已獲取的操作信息中選擇給定的操作信息,將該操作信息傳輸到打印數據生成裝置中,所以不是通過用戶的設定等固定所獲取的操作信息的種類,而是能夠根據應用軟件的種類適當切換。
本發(fā)明之十二的文檔操作終端,與打印機連接成可通信,其特征在于,包括文檔操作裝置,其生成由上述打印機執(zhí)行打印的文檔;操作信息獲取裝置,其在該文檔操作裝置的操作中獲取上述文檔操作裝置的操作信息;CPU負載信息獲取裝置,其獲取讓實現上述文檔操作裝置的計算機的CPU的負載信息;操作信息選擇裝置,其根據由該CPU負載信息獲取裝置所獲取的CPU的負載信息,從該操作信息獲取裝置所獲取的操作信息中選擇給定操作信息;打印數據生成裝置,其根據由該操作信息選擇裝置所選擇的操作信息,生成用上述文檔操作裝置生成的文檔的打印用數據;和數據發(fā)送裝置,其將由該打印數據生成裝置生成的打印用數據發(fā)送到上述打印機。
這樣,在本發(fā)明之一的效果的基礎上,和本發(fā)明之四同樣,由于CPU負載信息獲取裝置在獲取運行軟件的計算機的CPU的負載信息,同時操作信息選擇裝置根據CPU的負載信息從上述操作信息獲取裝置已獲取的操作信息中選擇給定的操作信息,所以能夠避免在操作信息的獲取以及操作中的繪制處理中增大所需要的CPU負載。
本發(fā)明之十三的文檔操作終端,在本發(fā)明之九~之十二中任一項所述的文檔操作終端中,其特征在于,上述文檔操作裝置是利用操作系統(tǒng)的應用軟件;用上述操作信息獲取裝置獲取的上述軟件的操作信息是有關由上述應用軟件對上述操作系統(tǒng)的操作的信息。
這樣,由于與上述本發(fā)明之九~之十二同樣,可以大幅度縮短到首次打印輸出為止的時間,和本發(fā)明之五同樣,能夠直接利用現存的打印系統(tǒng)和通用文檔操作用應用軟件,可以最小限度抑制為獲得本功能的開發(fā)成本和開發(fā)時間。
本發(fā)明之十四的文檔操作終端,在本發(fā)明之九~之十二中任一項所述的文檔操作終端中,其特征在于,上述文檔操作裝置是利用操作系統(tǒng)的應用軟件;用上述操作信息獲取裝置獲取的上述軟件的操作信息是有關由上述操作系統(tǒng)對上述軟件的命令操作的信息。
這樣,可以獲得本發(fā)明之九~之十二以及本發(fā)明之六相同的效果。
本發(fā)明之十五的文檔操作終端,在本發(fā)明之十一所述的文檔操作終端中,其特征在于,有關由上述操作系統(tǒng)對上述軟件的命令操作的信息是有關上述軟件的文件操作的信息。
這樣,可以獲得本發(fā)明之十一以及本發(fā)明之七相同的效果。
本發(fā)明之十六的文檔操作終端,在本發(fā)明之九~之十二中任一項所述的文檔操作終端中,其特征在于,上述文檔操作裝置是利用操作系統(tǒng)的應用軟件;用上述操作信息獲取裝置獲取的上述軟件的操作信息是有關由與該軟件協同動作的硬件的輸入裝置對上述操作系統(tǒng)的輸入操作的信息。
這樣,可以獲得本發(fā)明之九~之十二以及本發(fā)明之八相同的效果。
本發(fā)明之十七的文檔處理系統(tǒng),具有打印機、和利用該打印機的文檔操作終端,其特征在于,上述文檔操作終端包括文檔操作裝置,其生成由上述打印機執(zhí)行打印的文檔;操作信息獲取裝置,其在該文檔操作裝置的操作過程中獲取該文檔操作裝置的操作信息;打印數據生成裝置,其根據由該操作信息獲取裝置所獲取的操作信息生成由上述文檔操作裝置生成的文檔的打印數據;和數據發(fā)送裝置,其將由該打印數據生成裝置生成的打印用數據發(fā)送到上述打印機。
這樣,與本發(fā)明之一相同,由于能夠先行開始繪制處理,所以可以省略以往在文檔生成結束后進行的繪制處理的一部分或者全部。
其結果,可以大幅度縮短、或者省略在文檔生成結束后的繪制處理所需要的時間,能夠大幅度縮短從通過數據發(fā)送裝置向打印機發(fā)送數據開始到在該打印機進行首次打印輸出為止的時間。
另外,除了如本發(fā)明之一那樣采用軟件實現外,通過專用電路的硬件頁能夠實現各裝置,這時,比用軟件實現能夠進行更高速的繪制處理。
本發(fā)明之十八的打印數據生成方法,生成由利用打印功能的文檔操作用軟件生成的文檔的打印數據,其特征在于,監(jiān)視上述軟件的文檔生成狀況,在上述軟件的文檔生成過程中獲取給定操作信息,同時根據所獲取的上述操作信息在有打印指示前預先生成由上述軟件生成的文檔的打印數據。
這樣,與本發(fā)明之一相同,由于能夠在文檔操作用的軟件的操作中獲取構成該文檔的數據,先行開始繪制處理,所以可以省略以往在文檔生成結束后進行的繪制處理的一部分或者全部。
其結果,可以大幅度縮短、或者省略在文檔生成結束后的繪制處理所需要的時間,能夠大幅度縮短從通過數據發(fā)送裝置向打印機發(fā)送數據開始到在該打印機進行首次打印輸出為止的時間。
再有,為解決上述課題,本發(fā)明之十九的打印機控制用程序,常駐在文檔操作用的應用軟件所運行的環(huán)境中并控制打印機,其特征在于,包括操作信息獲取裝置,其在該應用軟件的操作過程中獲取上述應用軟件的操作信息;和打印數據生成裝置,其根據由該操作信息獲取裝置所獲取的操作信息生成由上述文檔操作應用軟件操作的文檔的打印用數據。
這樣,由于能夠在上述應用軟件的文檔操作中獲取構成該文檔的數據,先行開始打印數據的生成處理(以下,本實施方式,將該打印數據的生成處理稱作“繪制”),可以大幅縮短或者省略以往文檔生成結束后進行的繪制時間。
其結果,顯然可以大幅度縮短到首次打印輸出為止的時間,并且由于可以只是通過控制打印機的軟件的打印機控制用程序就能發(fā)揮這些功能,故可以直接利用現在的打印系統(tǒng)和通用文檔操作用應用軟件等,能夠最小限度抑制引入成本。
本發(fā)明之二十的打印機控制用程序,在本發(fā)明之十九的打印機控制用程序中,其特征在于,由上述操作信息獲取裝置獲取的上述應用軟件的操作信息是對操作系統(tǒng)或者上述應用軟件利用的環(huán)境的操作信息。
也就是說,本發(fā)明,如本發(fā)明之一那樣,作為由上述操作信息獲取裝置獲取的操作信息,具體講,上述應用軟件的操作信息中對OS的操作信息,例如,為利用OS的一部分而將調用的API等的接口作為對象。
也就是說,例如,Microsoft公司的“Word(注冊商標)”等通用文檔操作用應用軟件(文字處理軟件)在該公司的Windows(注冊商標)的OS上運行,在進行描繪時,利用該OS標準帶有的GDI和DDI等描繪用的API,在顯示器中進行描繪,本發(fā)明監(jiān)視該OS等具有的應用軟件接口的運行狀況,獲取該運行狀況(也稱作“鉤子”)并在文檔操作中進行給定打印數據生成處理。
這樣,由于與上述本發(fā)明之十九同樣,可以大幅度縮短到首次打印輸出為止的時間,同時能夠直接利用現存的打印系統(tǒng)和通用文檔操作用應用軟件,可以最小限度抑制為獲得本功能的開發(fā)成本和開發(fā)時間。
而且,由于本發(fā)明利用OS等的應用軟件利用的環(huán)境的一般框架,所以能夠適應利用該環(huán)境的全部的文檔操作應用軟件。例如,UNIX(注冊商標)等,在OS以外也存在提供X-Windows(注冊商標)等的GUI的環(huán)境。如果利用從付隨在這樣的OS環(huán)境中獲取信息的框架,能夠得到與上述Windows(注冊商標)時同樣的效果。
本發(fā)明之二十一的打印機控制用程序,在本發(fā)明之十九的打印機控制用程序中,其特征在于,由上述操作信息獲取裝置獲取的上述應用軟件的操作信息是有關該應用軟件的文檔操作命令的操作信息。
也就是說,本發(fā)明,不是象上述本發(fā)明之二十那樣上述應用軟件對OS的操作信息,而是用戶等對上述應用軟件執(zhí)行的文檔操作命令操作,例如,對“復制”、“剪切”、“粘貼”等所謂預先選擇自由設定的命令操作的信息作為操作信息獲取,執(zhí)行打印數據生成處理。
這樣,與上述本發(fā)明之一和之二相同,可以大幅度縮短到首次打印輸出為止的時間,同時能夠直接利用現存的打印系統(tǒng)和通用文檔操作用應用軟件,可以最小限度抑制為獲得本功能的開發(fā)成本和開發(fā)時間。
而且,作為合適的文檔操作用應用軟件,例如,在利用上述Microsoft公司的“Word(注冊商標)”等著名的文字處理軟件時,以高質的內容能夠認識、把握用戶的操作,與上述本發(fā)明之十九或之二十等相比能夠更正確獲取文件內容。
本發(fā)明之二十二的打印機控制用程序,在本發(fā)明之十九的打印機控制用程序中,其特征在于,上述操作信息獲取裝置獲取的上述應用軟件的操作信息是有關對與該軟件協同動作的硬件的輸入裝置的輸入操作的操作信息。
也就是說,本發(fā)明,不是如上述發(fā)明之二十、之二十那樣,對OS的操作信息、或者對應用軟件的操作命令等所謂在應用軟件中認識、把握的操作信息,而是獲取有關使用鍵盤和鼠標等所謂輸入裝置由用戶對硬件直接執(zhí)行的輸入操作的操作信息,執(zhí)行打印數據生成處理。
這樣,與上述本發(fā)明之十九~之二十一相同,顯然能夠發(fā)揮到首次打印輸出的時間縮短并開發(fā)成本削減的效果,由于截取從輸入裝置產生的電輸入信號,用單純結構在技術上可以容易且確切獲取用于進行的操作信息。
本發(fā)明之二十三的打印機控制用程序,在本發(fā)明之十九的打印機控制用程序中,其特征在于,由上述操作信息獲取裝置獲取的上述應用軟件的操作信息是有關該軟件的文檔操作的信息。
也就是說,用戶開始編輯某個文件,將圖像文件插入到在生成中的文件里等,用戶獲取使生成中的文件內容很大變化的文檔操作的信息。有關這樣的操作的信息,與訂正重復錯誤的文字輸入等的信息相比,是有關不易變更的內容操作的信息。也就是說,根據通過該方法得到的信息,可以降低浪費繪制后的素材的可靠性,并且也沒有必要大量地保持沒用的資料。因此,即使是信息處理能力較低的計算機,也可以得到與上述發(fā)明同樣的效果。
本發(fā)明之二十四的打印數據生成方法,采用打印機控制用程序根據由文檔操作用應用軟件操作的文檔數據生成打印數據,其特征在于,在上述文檔操作用應用軟件動作的計算機中常駐上述打印機控制用程序,監(jiān)視上述應用軟件的操作作業(yè),在上述應用軟件的文檔操作過程中獲取任意操作信息,預先根據該文檔數據生成打印數據。
這樣,和本發(fā)明之一同樣,由于能夠在上述應用軟件的文檔操作中獲取構成該文檔的數據,先行開始打印數據生成處理,可以大幅縮短或者省略以往文檔操作后進行的打印數據生成(繪制處理)時間。
其結果,顯然可以大幅度縮短到首次打印輸出為止的時間,并且由于可以只是通過控制打印機的軟件的打印機控制用程序就能發(fā)揮這些功能,故可以直接利用現在的打印系統(tǒng)和通用文檔操作用應用軟件等,能夠最小限度抑制開發(fā)成本和開發(fā)時間。
本發(fā)明之二十五的文檔處理系統(tǒng),具有文檔操作用應用軟件運行的文檔操作終端、和根據該文檔操作終端的指示執(zhí)行打印的打印機,其特征在于,包括操作信息獲取裝置,在操作中獲取上述應用軟件的操作信息;和打印數據生成裝置,其根據用該操作信息獲取裝置獲取的操作信息生成在上述打印機進行打印處理的文檔的打印用數據。
也就是說,上述本發(fā)明之十九~之二十三,均是將“打印機控制用程序”常駐在文檔操作用應用軟件運行的計算機上,通過運行的軟件實現這些功能,也就是說,其主要功能,即操作信息獲取裝置和打印數據生成裝置,例如采用根據ASIC(Application Specific Integrated Circuit)等專用的邏輯電路構成的硬件也可以實現。而且,如果將這些功能硬件化,要比用軟件實現能更加高速且正確地執(zhí)行。
另外,分散配置操作信息獲取裝置和打印數據生成裝置,例如,也可能采用在計算機(PC)等的文檔操作終端側設置操作信息獲取裝置,將打印數據生成裝置設置在打印機側的結構。其結果,通過分散負載,不僅提高了可靠性和可用性的同時,而且可以提高系統(tǒng)整體的處理能力以及處理效率。
本發(fā)明之二十六的文檔處理裝置,其特征在于,包括操作信息獲取裝置,在操作中獲取文檔操作用應用軟件的操作信息;和打印數據生成裝置,根據用該操作信息獲取裝置獲取的操作信息生成用上述文檔操作應用軟件操作的文檔的打印用數據。
這樣,與本發(fā)明之二十五相同,由于通過硬件能夠高速處理和分散配置各功能,所以與用軟件實現相比,能夠得到更優(yōu)化的處理能力以及更高速的處理效率。
另外,如本發(fā)明之十九~之二十三所示,在用軟件實現各功能時,與制造專用的硬件相比能大幅度削減成本,通過升級等可以容易進行功能改進和改變,比用硬件實現具有更方便的長處。
圖1為表示有關本發(fā)明打印機控制用程序以及文檔操作終端的框圖。
圖2為表示有關本發(fā)明構成文檔操作終端的硬件的框圖。
圖3為表示有關本發(fā)明打印機控制用程序的處理的流程圖。
圖4為表示成為監(jiān)視對象的操作信息列表的一例的圖。
圖5為表示CPU占用率與監(jiān)視對象操作信息的一例的圖。
圖6為表示成為監(jiān)視對象的操作信息列表的另一例的圖。
圖7為表示CPU占用率與監(jiān)視對象操作信息的另一例的圖。
圖8為表示有關應用軟件的信息的保持例的圖。
圖9為表示有關繪制處理后的素材數據的信息的保持例的圖。
圖10為表示打印機控制用程序的另一處理的主要流程的流程圖。
圖11為表示打印機控制用程序的另一處理的另一流程的流程圖。
圖12為表示記錄打印機控制用程序的存儲介質的一例的圖。
圖中10—文檔操作終端;20—數據發(fā)送裝置;30—操作系統(tǒng)(OS);40—文檔操作用應用軟件;50—輸入裝置用驅動器;60—打印機;62—數據接收裝置;64—打印裝置;70—CPU;72—RAM;74—ROM;76—總線;78—接口;80—輸入裝置;82—輸出裝置;84—存儲裝置;100—打印機控制用程序;110—操作信息獲取裝置;112—操作信息選擇裝置;114—CPU負載信息獲取裝置;116—繪制信息保持裝置;120—打印數據生成裝置(繪制裝置);L—操作信息列表;R—存儲介質;N—網絡。
具體實施例方式
以下,參照附圖,詳細說明本發(fā)明的實施方式。
圖1表示有關本發(fā)明打印機控制用程序100以及包括該程序的文檔操作終端10的一實施方式。
如圖所示,該打印機控制用程序100是在運行文檔操作應用軟件40等的計算機的存儲器(硬件)上與OS30一起常駐用于控制打印機60的打印機控制用程序(軟件),與現有的相同,提供以下功能將由文檔操作終端10側生成的文檔數據變換為合適所連接的不同打印機的內部控制方法的形式,同時將變換后的打印數據利用數據發(fā)送裝置20,與用戶發(fā)出的明確打印指示一起發(fā)送到相應打印機60。
另外,如圖所示,在該打印機控制用程序100中,在發(fā)揮上述基本功能的裝置的基礎上,還包括操作信息獲取裝置110、和打印數據生成裝置(繪制裝置)120。
該操作信息獲取裝置110具有的功能是獲取在OS30上運行的文檔操作用應用軟件40的操作信息,將獲取后的操作信息向打印數據生成裝置120提供。
也就是說,作為成為該操作信息獲取裝置110的獲取對象的操作信息,如圖1所示,是從識別來自鍵盤和鼠標等輸入裝置(圖中沒有畫出)的輸入信號的輸入裝置用驅動器50對OS30的輸入操作信息、有關從OS30對應用軟件40的命令操作的命令操作信息、以及有關從應用軟件40對OS30的API的操作信息,這其中任一項操作信息或者全部操作信息由適當的操作信息獲取裝置110實時獲取后,將該操作信息傳送到打印數據生成裝置120中。
這里,作為通過該操作信息獲取裝置110獲取的具體操作信息,舉例講,作為對上述應用軟件40用戶執(zhí)行的操作命令,例如有“復制”、“剪切”、“粘貼”、“文件獲取”、“文件保存”等按應用軟件40自由選擇設定的特有的命令操作信息另外,作為有關API的操作信息,例如,圖4所示的各方法(ReadFile(獲取文件)200、OleLoadPictureFile(在文檔中取入圖像)201、WriteFile(寫文件)202,TextOut(文本顯示)203、MoveToex、LineTo、Ellipse(描繪)204)相對應的OS的API等。進一步,作為有關從輸入裝置(輸入裝置用驅動器)直接輸入的操作信息,除了鍵盤和鼠標以外,還可以將條形碼讀出器、OCR(Optical Character Reader)、OMR(Optical MarkReader)、MICR(Magnetic Ink Character Reader)、數字化儀、圖像掃描儀、音聲識別裝置等輸入裝置的輸入操作信息等作為對象。
進一步例如,在Windows(注冊商標)NT、Windows(注冊商標)2000、Windows(注冊商標)XP等OS環(huán)境下,能夠用以下所示方法獲取對現存的處理的API。
1.利用OpenProcessToke、LookupPrivilegeValue(“SedebugPrivilege”)、AdjustTokenPriVileges獲取特權。
2.利用NtQuerySystemInformation獲取進程列表。
3.利用VirtualProtectEx與WriteProcessMemory在程序中寫入自身的代碼。
另一方面,打印數據生成裝置120具有根據由該操作信息獲取裝置110獲取的操作信息形成用上述文檔操作應用軟件40操作的文檔的打印用數據的功能。
也就是說,如上所述,以往的打印數據生成裝置,在接收到來自用戶的打印指示后,才進行將該文檔數據變換為光柵圖像數據的繪制處理,而有關本實施方式的打印數據生成裝置120具有以下上述功能根據由上述操作信息獲取裝置110逐一獲取的操作信息中獲取文檔數據,在該文檔操作應用軟件40的文檔編輯處理結束前,即在施行來自用戶明確的打印指示前,獲取文檔數據后,對其進行繪制處理。
另外,在本實施方式中的文檔操作終端10,如果具備運行成為操作對象的應用軟件40的環(huán)境或者提供該環(huán)境的OS30、以及讓該OS30和有關本發(fā)明的打印機控制用程序100等軟件運行的計算機系統(tǒng),除了文檔操作專用的計算機以外,也能夠直接使用通用個人計算機(PC)等。
圖2表示構成該文檔操作終端10的計算機系統(tǒng)的硬件構成。
如圖所示,該文檔操作終端10,將擔當各種控制和運算處理的中央運算裝置的CPU(Central Processing Unite)70、構成主存儲裝置(MainStorage)的RAM(Random Access Memory)72、和作為只讀存儲裝置的ROM(Read Only Memory)74之間,采用PCI(Peripheral ComponentInterconnect)總線或者ISA(Industrial Standard Architecture)總線構成的總線76進行連接,同時在該總線76上通過輸入輸出接口(I/F)78,還連接有硬盤驅動裝置(HDD)等的外部存儲裝置(Secondary Storage)84、上述鍵盤和鼠標等的輸入裝置80、液晶顯示器等的輸出裝置82、以及與打印機60等外部機器通信的網絡N等。
而且,在接通電源的同時,在ROM74等中存儲的BIOS(Basic InputOutput System)等基本系統(tǒng)用的程序,將通過例如CD-ROM、DVD-ROM、軟盤(FD)等存儲介質或者網絡等通信網絡N安裝在存儲裝置84中的OS30、應用軟件40、以及打印機控制用程序100等各種計算機程序裝入到RAM72中,根據裝入到該RAM72中的程序所記載的命令,CPU70驅動各種計算機資源,執(zhí)行給定控制以及運算處理,實現上述那樣的文檔編輯處理、操作信息獲取處理、以及打印數據生成處理等各種處理。
另外,作為與該文檔操作終端10連接的打印機60,如圖所示,只要包括用于通過網絡N接收從文檔操作終端10側送來的打印數據的數據接收裝置62和根據所接收的打印數據執(zhí)行打印的打印裝置64這樣的作為打印裝置的基本功能,并沒有特別限定,對于通用的噴墨式打印機或激光打印機,以及熱敏式打印機、針式打印機等舊式打印機都不需要作任何改動,就可以直接應用。
更進一步,在上述硬件上運行的應用軟件40和OS30也能夠直接適用在市場上銷售的通用商品。
接下來,主要參照圖3的流程圖說明具備這些功能的本發(fā)明的打印機控制用程序100的動作。
首先,本發(fā)明的打印機控制用程序100,在文檔操作終端10起動時(接通電源時),與OS30一起從硬盤驅動裝置(HDD)等存儲裝置84中讀出,常駐在存儲器(主存儲裝置)74上,并且監(jiān)視利用打印機60打印功能的文字處理軟件等文檔操作用應用軟件40的操作信息。另外,該打印機控制用程序100,并不一定需要與OS30一起常駐在存儲器74上,至少在利用打印機60打印功能的文字處理軟件等文檔操作用應用軟件40被讀出并由用戶能夠利用時,在存儲器74上存在,并能監(jiān)視文檔操作用應用軟件40即可。
而且,如圖所示,該打印機控制用程序100,在最初的步驟S100中,獲取成為監(jiān)視對象的應用軟件40的操作信息的列表。
也就是說,如上所述,成為監(jiān)視對象的文檔操作用應用軟件40的操作信息及其獲取方法有很多,獲取該全部操作信息不僅可以避免浪費,還可以避免相似操作信息引起的繪制處理的重復進行。
另外,優(yōu)選在存儲裝置84等中預先準備(保存)有收集成為監(jiān)視對象的操作信息后記述的多個操作消息列表,在確定了成為對象的文檔操作用應用軟件40時,從其中選擇收集了最合適的操作信息的操作消息列表。例如,在將Windows(注冊商標)的GDI或COM(Component Object Model)等API作為對象時,預備記述了圖4所示各種方法的操作消息列表L。
接下來,如果獲取了成為監(jiān)視對象的操作消息列表,順次移動到下面的步驟S102、S104,監(jiān)視應用軟件40的操作信息。
而且,在已判斷確認產生了操作信息時(“是”),該打印機控制用程序100(操作信息獲取裝置110),移動到下一步驟S106,解析該操作信息的類別,即,將該操作信息與上述操作消息列表對照,判斷是否是成為獲取對象的操作信息(步驟S108)。
該解析的結果,如果判斷是在操作消息列表中所記載的監(jiān)視對象的操作信息時(“是”),移動到下一步驟S110,獲取該操作信息,同時根據該操作信息,由該打印機控制用程序100的打印數據生成裝置120獲取相應的文檔數據,將其光柵圖像化,進行繪制處理(打印數據生成處理)。
另外,這樣繪制的光柵圖像數據,不傳送到打印機60側,而是在用戶發(fā)出明確的打印指示之前,由打印機控制用程序100暫時保持在文檔操作終端10側。
然后,進行完這樣的繪制處理后以及在上述步驟S108中操作信息的解析結果判斷該操作信息是監(jiān)視對象以外的操作信息時(“否”),返回到先前的步驟S102,在這之后對逐一發(fā)生的應用軟件40的操作信息繼續(xù)進行監(jiān)視,對發(fā)生的操作信息進行同樣的取舍選擇處理。
在這之后,這樣的應用軟件40的操作信息的獲取一直持續(xù)到在步驟S104中判斷操作信息的發(fā)生不是一定時間,在判斷沒有一定時間操作信息的發(fā)生時(“否”),判斷文檔編輯處理已結束并移動到步驟S114,等待用戶發(fā)出明確的打印指示。
在該步驟S114中,判斷有無用戶發(fā)出的明確打印指示,在判斷有打印指示時(“是”),解析與該打印指示同時確定的實際文檔數據(步驟116),與已經執(zhí)行繪制處理后的文檔數據對照。
該文檔數據的解析結果,在步驟S118中,判斷有在已經繪制處理后的數據之外還存在未進行繪制處理的數據時(“是”),移動到步驟120,對該未繪制數據進行繪制處理,相反,如果判斷沒有未繪制數據時(“否”),直接跳過步驟S120,移動到下一步驟S122。
詳細說明從該步驟S116到步驟S120的處理,例如,用戶利用應用軟件40實際生成的文檔由3個文本數據A、B、C、和4個圖像數據D、E、F、G構成。對4個圖像數據D、E、F、G和文本數據A、B已經從文檔操作中獲取其操作信息,已經由打印機控制用程序100結束了繪制處理時,在步驟S120中只需對剩余的文本C執(zhí)行繪制處理。另外,如果在步驟S116以前,已經對全部的數據結束了繪制處理,直接跳過步驟S120而移動到步驟S122。進一步,對于繪制處理已經結束但又從實際得到的文檔數據中刪除了該數據等的情況,也在步驟S120中匹配處理。
然后,這樣如果對全部數據結束了繪制處理,該打印機控制用程序100(打印數據生成裝置120)移動到步驟S122,在生成進行了有關打印用紙的種類和打印品質等進一步詳細的打印設定的打印數據后,將打印指示以及打印數據發(fā)送到成為對象的打印機60中,同時根據需要將該傳送結果通知用戶后結束處理。
這樣本發(fā)明,由于在上述應用軟件40的文檔操作(編輯)中獲取該文檔操作時的操作信息,提前進行繪制處理,對以往在文檔操作工作后,在有用戶發(fā)出的明確打印指示后進行的繪制處理時間可以大幅度縮短。
其結果,顯然對于打印機60中到首次打印輸出為止的時間可以大幅度縮短,而且由于通過只需對控制該打印機60的軟件(打印機控制用程序)的打印機控制用程序進行改進,就可以發(fā)揮這些功能,現存的打印系統(tǒng)、通用文檔操作用應用軟件可以直接應用,可以最小限度抑制開發(fā)成本和開發(fā)時間。
另外,在本實施方式中,作為獲取操作信息的對象,如圖1所示,雖然采用有關輸入裝置用驅動器50和OS30之間的輸入操作的信息、或者有關OS30和應用軟件40之間的命令的操作信息、或者有關上述應用軟件40與OS30之間的API的操作信息為例進行了說明,但本發(fā)明并不限定于此,也可以是其他操作信息,例如,有關用戶執(zhí)行的文件操作的操作信息。
即,用戶對生成中的文檔內容給予很大改變的文件操作的信息,與訂正重復錯誤的文字輸入等的信息相比,由于是有關不易變更的內容操作的信息,根據通過該方法獲取的信息,繪制后的素材成為浪費的可能性低,并且,不需要大量保持成為浪費的資源,即使對于比較缺乏信息處理能力的文檔操作終端10,也能夠得到如上所述的效果。
例如,也可以在根據WriteFile等的API利用或者文件的時間印記的狀態(tài)接受到用戶已保存某個文件的操作信息時,讀入該文件進行繪制,或者打開某個文件后,對其有描繪命令時,判斷已插入該文件而進行繪制處理。
另外,操作信息獲取裝置110,不是一一針對每個操作信息,也可以綜合多個操作信息,作為一個操作信息判斷。
例如,作為“描繪綠色的線”等操作信息,作為線的顏色選擇“綠色”,同時包括該線的種類、從某個始點到某個終點描繪等多個操作信息,如果將這些作為一個信息處理,就能夠迅速判斷。
另外,在操作信息的獲取方法上,可以根據操作信息之差的內容判斷,或者通過定期從OS30獲取屏幕復制,比較復制畫面而獲取需要的操作信息。
另外,操作信息獲取裝置110,也可以不是通過用戶的設定而固定要獲取的操作信息的種類,而是根據應用軟件40的種類等自動地轉換。例如,如圖1所示,進一步利用操作信息選擇裝置112,由該操作信息選擇裝置112對操作信息的內容設定優(yōu)先權,根據應用軟件40的應用狀況進行生成操作信息等的后續(xù)處理,或者切換監(jiān)視的操作消息列表,或者對處理頻度高的文檔設置高優(yōu)先權,而降低其它文檔的優(yōu)先權的處理。
另外,操作信息獲取裝置110,對已獲取的操作信息實施繪制時,也同時獲取有關硬件20的CPU的占用率(CPU負載)的信息,按照該占用率變更監(jiān)視對象的操作信息的種類。
例如,如圖1所示,進一步設置用于獲取構成文檔操作終端10的硬件的CPU70的負載信息的CPU負載信息獲取裝置114,如圖5所示,該CPU70的占用率,例如在0~33%時,有關API的全部操作信息(ReadFile、OleLoadPictureFile、WriteFile、TextOut、MoveToEx、LineTo、Ellipse)作為監(jiān)視對象;在CPU70的占用率在比該頻率高為34~66%時,將CPU負載的最大操作信息(例如,WriteFile、Ellipse)不作為監(jiān)視對象;進一步CPU70的占用率在上述頻率以上(67~100%)時,將CPU負載的較大操作信息(例如,WriteFile、Ellipse)不作為監(jiān)視對象,這樣,能夠避免在操作信息的獲取以及操作中的繪制處理增大CPU負載。
另外,上述操作信息獲取裝置110,也可以對來自描繪命令調用的順序或者畫面復制的文檔對象的重合、順序進行檢測處理。
也就是說,如果設置這樣的處理,明白描繪命令的順序和描繪時的選擇,能夠進行重合的文字和圖形的繪制處理。為此,可以準備與最終傳送到打印機的打印數據更加近似的數據,能夠進行更高速的打印輸出。
另外,在通過打印數據生成裝置120進行繪制處理時,根據文檔信息生成屬性值,與繪制處理后的內容建立對應關系,進行管理,如果對有關具有同一屬性值的內容不進行再一次的繪制處理,可以避免重復繪制。
另外,作為上述操作信息獲取裝置110的監(jiān)視對象,除此之外,也可以利用OS30的系統(tǒng)調用、Strace命令,ltrace命令以及與該命令相似的結構。
進一步,關于生成的打印數據,無論是位圖信息、頁面描述語言、或其參考信息等,只要在實際打印時可以利用可以生成任何形式的信息另外,在上述實施方式中,雖然在同一計算機的存儲器72上常駐打印機控制用程序100,由于在分散環(huán)境等中通過網絡也可以進行繪制處理,操作信息獲取裝置110和打印數據生成裝置120也可以不在利用OS30和應用軟件40的計算機上存在。
另外,該操作信息獲取裝置110以及打印數據生成裝置120并不一定是通過打印機控制用程序100這樣的作為打印機控制用程序的軟件的形態(tài)提供,也可以通過來自ASIC(Application Specific Integrated Circuit)等的專用邏輯回路構成的硬件實現,這時,能夠比用一般軟件實現更高速的繪制處理。
另外,涉及本發(fā)明的打印機控制用程序100,與以往相同,如圖12所示,通過CD-ROM等的存儲介質R向文檔操作終端10提供,此外,也可以在互聯網等網絡N上供給,其供給方式并沒有特別限定。
下面,說明有關本發(fā)明打印機控制用程序100的第2實施方式。
首先,圖6表示文檔操作用應用軟件40之一的Microsoft公司的“office(注冊商標)”中所使用的命令的操作信息,“Document.Add(新建)”、“Document.Open(打開文件)”等為獲取對象的操作信息。另外,圖7表示在CPU70的占用率在0~100%的范圍中這些操作信息始終是監(jiān)視對象的操作信息。
而且,如圖10的流程圖所示,首先在最初的步驟S200中,獲取圖4所示有關“Windows(注冊商標)”命令操作的操作消息列表,同時獲取圖7所示有關“office(注冊商標)”命令操作(圖中記為“應用命令操作”(以下相同))的操作消息列表。
然后,依次移動到步驟S202以及步驟S204,并在起動有關“Windows(注冊商標)”命令操作(圖中記為“OS命令操作”(以下相同))以及有關“office(注冊商標)”命令操作的各自的操作信息獲取裝置(相當于上述操作信息獲取裝置110)后,移動到步驟S206,判斷有無來自各操作信息獲取裝置的操作信息。
該判斷處理的結果,如果判斷有操作信息時(“是”),直接移動到步驟S208,判斷該操作信息是否是有關“office(注冊商標)”命令操作的操作信息,在判斷是有關“office(注冊商標)”命令操作的操作信息時(“是”),進一步移動到下一步驟S210,判斷該操作信息是否是監(jiān)視對象的命令。
然后,在步驟S210中,在判斷該操作信息是監(jiān)視對象的命令時(“是”),移動到下一步驟S212,進一步判斷該命令是否是圖7所示的打開文檔文件的命令,在判斷是打開文檔文件的命令時(“是”),移動到下一步驟S214并在獲取已打開的文檔文件后,移動到下一步驟S216并檢查該文檔所使用的字體大小,將該字體大小在圖1所示新設置的繪制信息保持裝置116中作為字體大小的候選保持后,移動到下一步驟S218,對該文檔進行繪制,在繪制信息保持裝置116中保持繪制處理后的素材。
然后,再次返回到步驟S206的上游側,監(jiān)視新的操作信息并重復同樣的處理。
另外,在步驟S210以及步驟S212中,在判斷不是分別給定的命令時(“否”),跳過其下面的步驟(S214~S218),同樣返回到步驟S206的上游側,監(jiān)視新的操作信息并重復同樣的處理。
另外,在上述步驟S208中,判斷已獲取的操作信息不是有關“office(注冊商標)”命令操作的操作信息時(“否”),移動到分支步驟S220,這時判斷該操作信息是否是有關“Windows(注冊商標)”命令操作的操作信息,如果判斷是有關“Windows(注冊商標)”命令操作的操作信息時(“是”),進一步移動到下一步驟S222,判斷該操作信息是否是監(jiān)視對象的命令,在判斷是監(jiān)視對象的命令時(“是”),進一步移動到下一步驟S224,判斷該監(jiān)視對象命令是否是有關“Text Out”的命令。在判斷該監(jiān)視對象命令是有關“Text Out”的命令時(“是”),移動到下一步驟S226并獲取寫出的文字后,移動到下一步驟S228,從上述繪制信息保持裝置116中獲取字體大小的候選后,移動到下一步驟S230,繪制處理與字體大小候選一致的文字,并將其保持在相同的翻譯保持裝置116中保持,然后,再次返回到步驟S206的上游側,監(jiān)視新的操作信息并重復同樣的處理。
圖8表示有關成為監(jiān)視對象的應用軟件40的信息保持例,具有作為使用的字體大小候選的10.5磅和9.0磅兩種字體大小候選,同時保持作為圖像大小信息的15mm×15mm的圖像。另外,圖9表示有關繪制處理后的素材數據的信息保持例,對各個素材數據,記述其特征值、數據的種類、標識符等。
返回到圖10的流程圖中,在上述步驟S224中,在判斷監(jiān)視對象的命令不是有關“Text Out”的命令時(“否”),移動到步驟S232,判斷有無其它命令,在判斷沒有其它命令時(“否”),直接返回到步驟S206的上游側,在判斷有其它命令時(“是”),移動到下一步驟S234,在執(zhí)行相應處理后,同樣地返回到步驟S206的上游側。
另外,在上述步驟S220以及步驟S222中,在判斷沒有分別給定的操作信息或者給定的命令時(“否”),也同樣地返回到步驟S206的上游側監(jiān)視新的操作信息并重復同樣的處理。
另一方面,在上述步驟S206中,在判斷沒有在一定時間操作信息的發(fā)生時(“否”),移動到圖11的步驟S236,判斷有來自應用軟件40(用戶)發(fā)出的明確打印指示,移動到下一步驟S238,按每個打印要素分割該文檔數據后,移動到下一循環(huán)步驟240,對分割后的各打印要素判斷是否需要這種繪制。
也就是說,首先在該循環(huán)步驟S240中的最初步驟S242中,從應用軟件40對GDI(Windowns(注冊商標))要求與應用軟件40保持的應該打印內容的打印處理后,移動到下一步驟S244,從Windows(注冊商標)對DDI(控制打印機程序)要求與GDI的要求對應中的處理。
然后,移動到下一步驟S246,根據應該打印處理的數據內容算出特征后,移動到下一判斷步驟S248,判斷在上述繪制信息保持裝置116中是否包括相應特征量的數據,在判斷包括時,移動到下一步驟S250,從繪制信息保持裝置116獲取已繪制處理的素材。
然后,移動到下一判斷步驟S252,判斷對已獲取的繪制后素材的特征量一致的操作信息是否只有一個,判斷只有一個時(“是”),移動到下一步驟S254,將該信息作為繪制素材,然后,移動到步驟S256,判斷所有分割后的各打印單元是否需要同樣的繪制。
在該循環(huán)處理的步驟S248中,判斷相應特征量的數據不包括在繪制信息保持裝置116中時(“否”),移動其它步驟S262,對給予數據實際進行繪制處理,在生成繪制后的素材后,移動到步驟S256判斷所有其它打印要素是否需要同樣的繪制。
另外,在上述步驟S252中,在判斷特征量一致的信息不止一個時(“否”),移動到其它步驟S264,應該打印處理的其它數據內容之間互相比較,當將一致的內容作為繪制素材后,移動到步驟S256,判斷所有其它打印要素是否需要同樣的繪制。
然后,如果這樣對全部的打印要素的繪制處理結束后,移動到下一步驟S258,綜合各打印要素后,移動到步驟S260,將繪制素材送到后臺處理器(spooler),結束處理。
在Windows(注冊商標)打印框架中,在執(zhí)行應用軟件40的打印命令時開始,執(zhí)行GDI用語境句柄生成(準備打印處理的圖像區(qū)域)。各應用軟件40,對該GDI,要求在各頁的何處打印文字等的處理。通過GDI接收打印處理要求后的Windows(注冊商標)調用對應的各打印機DDI接口,進行繪制處理(如果是噴墨打印機則含有二值化等)。
在Windows(注冊商標)打印框架中,在DDI接口中,為了進行繪制處理,準備配置文本的DrvTextOut和展開位圖的DrvBitBlt等,各打印機供給商(打印機供給源),通過對應于各打印機的機種作為打印機控制用程序安裝這些處理,能夠按照打印機的機種生成圖像。當該DrvTextOut等被調用時根據圖11的流程所調用的內容,例如,計算出文字串的散列數據等的特征量,與特征量一致時選擇相應的繪制對象,由于能夠高效獲取已繪制數據,在應用軟件40中不用追加用于打印的特別處理,與用戶的輸入操作并行實施繪制處理,所以能夠高速打印輸出。
另外,在本發(fā)明之九~之十七中的“文檔操作裝置”,在本實施方式中與由OS30、將來自用戶操作的輸入裝置的信號輸入到該OS30中的輸入用驅動器50、和實際執(zhí)行生成給定文件的應用軟件40所構成的組件對應。
另外,在圖1的例子中,繪制信息保持裝置116雖然是操作信息獲取裝置110的一部分,也可以設置在打印數據生成裝置120側,另外,由該繪制信息保持裝置116保持的已繪制的素材數據,例如,如果保存在構成文檔操作終端10的HDD等存儲裝置84等中,可以保持大量的素材數據,同時可以根據需要在瞬間利用。
權利要求
1.一種打印機控制用程序,與利用打印功能的文檔操作用軟件一起運行,其特征在于,讓計算機作為以下裝置發(fā)揮功能操作信息獲取裝置,其在該軟件的操作過程中獲取所述軟件的操作信息;和打印數據生成裝置,其根據由該操作信息獲取裝置所獲取的操作信息,生成用所述軟件制作的文檔的打印用數據。
2.一種打印機控制用程序,與利用打印功能的文檔操作用軟件一起運行,其特征在于,讓計算機作為以下裝置發(fā)揮功能操作信息獲取裝置,其在該軟件的操作中獲取所述軟件的操作信息;打印數據生成裝置,其根據由該操作信息獲取裝置所獲取的操作信息,生成用所述軟件制作的文檔的打印用數據;和繪制信息保持裝置,其將用所述打印數據生成裝置生成的打印用數據的各素材原封不動地保持。
3.一種打印機控制用程序,與利用打印功能的文檔操作用軟件一起運行,其特征在于,讓計算機作為以下裝置發(fā)揮功能操作信息獲取裝置,其在該軟件的操作中獲取所述軟件的操作信息;操作信息選擇裝置,其從用該操作信息獲取裝置所獲取的操作信息中選擇給定操作信息;和打印數據生成裝置,其根據由該操作信息選擇裝置所選擇的操作信息,生成用所述軟件制作的文檔的打印用數據。
4.一種打印機控制用程序,與利用打印功能的文檔操作用軟件一起運行,其特征在于,讓計算機作為以下裝置發(fā)揮功能操作信息獲取裝置,其在該軟件的操作中獲取所述軟件的操作信息;CPU負載信息獲取裝置,其獲取讓所述軟件運行的計算機的CPU的負載信息;操作信息選擇裝置,其根據由該CPU負載信息獲取裝置所獲取的CPU的負載信息,從該操作信息獲取裝置所獲取的操作信息中選擇給定操作信息;和打印數據生成裝置,其根據由該操作信息選擇裝置所選擇的操作信息,生成用所述軟件制作的文檔的打印用數據。
5.根據權利要求1~4中任一項所述的打印機控制用程序,其特征在于,所述軟件是利用操作系統(tǒng)的應用軟件;用所述操作信息獲取裝置獲取的所述軟件的操作信息是有關由所述應用軟件對所述操作系統(tǒng)的操作的信息。
6.根據權利要求1~4中任一項所述的打印機控制用程序,其特征在于,所述軟件是利用操作系統(tǒng)的應用軟件;用所述操作信息獲取裝置獲取的所述軟件的操作信息是有關由所述操作系統(tǒng)對所述軟件的命令操作的信息。
7.根據權利要求3所述的打印機控制用程序,其特征在于,有關由所述操作系統(tǒng)對所述軟件的命令操作的信息是有關所述軟件的文檔操作的信息。
8.根據權利要求1~4中任一項所述的打印機控制用程序,其特征在于,所述軟件是利用操作系統(tǒng)的應用軟件;用所述操作信息獲取裝置獲取的所述軟件的操作信息是有關由與該軟件協同動作的硬件的輸入裝置對所述操作系統(tǒng)的輸入操作的信息。
9.一種文檔操作終端,與打印機連接成可通信,其特征在于,包括文檔操作裝置,其生成由所述打印機執(zhí)行打印的文檔;操作信息獲取裝置,其在該文檔操作裝置的操作過程中獲取該文檔操作裝置的操作信息;打印數據生成裝置,其根據由該操作信息獲取裝置所獲取的操作信息生成由所述文檔操作裝置生成的文檔的打印數據;和數據發(fā)送裝置,其將由該打印數據生成裝置生成的打印用數據發(fā)送到所述打印機。
10.一種文檔處理系統(tǒng),具有打印機、和利用該打印機的文檔操作終端,其特征在于,所述文檔操作終端包括文檔操作裝置,其生成由所述打印機執(zhí)行打印的文檔;操作信息獲取裝置,其在該文檔操作裝置的操作過程中獲取該文檔操作裝置的操作信息;打印數據生成裝置,其根據由該操作信息獲取裝置所獲取的操作信息生成由所述文檔操作裝置生成的文檔的打印數據;和數據發(fā)送裝置,其將由該打印數據生成裝置生成的打印用數據發(fā)送到所述打印機。
11.一種打印數據生成方法,生成由利用打印功能的文檔操作用軟件生成的文檔的打印數據,其特征在于,監(jiān)視所述軟件的文檔生成狀況,在所述軟件的文檔生成過程中獲取給定操作信息,同時根據所獲取的所述操作信息在有打印指示前預先生成由所述軟件生成的文檔的打印數據。
12.一種打印機控制用程序,常駐在文檔操作用的應用軟件所運行的環(huán)境中并控制打印機,其特征在于,包括操作信息獲取裝置,其在該應用軟件的操作過程中獲取所述應用軟件的操作信息;和打印數據生成裝置,其根據由該操作信息獲取裝置所獲取的操作信息生成由所述文檔操作應用軟件操作的文檔的打印用數據。
13.根據權利要求12所述的打印機控制用程序,其特征在于,由所述操作信息獲取裝置獲取的所述應用軟件的操作信息是對操作系統(tǒng)或者所述應用軟件利用的環(huán)境的操作信息。
14.根據權利要求12所述的打印機控制用程序,其特征在于,由所述操作信息獲取裝置獲取的所述應用軟件的操作信息是有關該應用軟件的文檔操作命令的操作信息。
15.根據權利要求12所述的打印機控制用程序,其特征在于,所述操作信息獲取裝置獲取的所述應用軟件的操作信息是有關對與該軟件協同動作的硬件的輸入裝置的輸入操作的操作信息。
16.根據權利要求12所述的打印機控制用程序,其特征在于,由所述操作信息獲取裝置獲取的所述應用軟件的操作信息是有關該軟件的文檔操作的信息。
全文摘要
提供一種打印機控制用程序、文檔操作終端、文檔處理系統(tǒng)以及打印數據生成方法,由與文檔操作用應用軟件(40)一起動作的打印機驅動程序(100)監(jiān)視上述應用軟件(40)的操作狀況,在上述應用軟件(40)的文檔操作中獲取任意的操作消息,根據該操作消息預先生成該文檔數據的打印數據。由此,在進行打印指示前由于對數據的繪制已經幾乎全部結束,所以能大幅度縮短打印開始時間。這樣,在直接利用現存的打印系統(tǒng)和通用文檔操作用應用軟件的情況下,可以縮短打印開始時間。
文檔編號G06F17/21GK1591312SQ20041006829
公開日2005年3月9日 申請日期2004年8月27日 優(yōu)先權日2003年8月29日
發(fā)明者北田成秀, 高橋有亮, 荒崎真一 申請人:精工愛普生株式會社