JP5142872B2 - 印刷制御装置、印刷制御方法、及びコンピュータプログラム - Google Patents

印刷制御装置、印刷制御方法、及びコンピュータプログラム Download PDF

Info

Publication number
JP5142872B2
JP5142872B2 JP2008193991A JP2008193991A JP5142872B2 JP 5142872 B2 JP5142872 B2 JP 5142872B2 JP 2008193991 A JP2008193991 A JP 2008193991A JP 2008193991 A JP2008193991 A JP 2008193991A JP 5142872 B2 JP5142872 B2 JP 5142872B2
Authority
JP
Japan
Prior art keywords
print
band
print command
printer
storage device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008193991A
Other languages
English (en)
Other versions
JP2010033283A (ja
JP2010033283A5 (ja
Inventor
美明 友松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2008193991A priority Critical patent/JP5142872B2/ja
Priority to US12/509,309 priority patent/US8379270B2/en
Publication of JP2010033283A publication Critical patent/JP2010033283A/ja
Publication of JP2010033283A5 publication Critical patent/JP2010033283A5/ja
Application granted granted Critical
Publication of JP5142872B2 publication Critical patent/JP5142872B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/125Page layout or assigning input pages onto output media, e.g. imposition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1284Local printer device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1848Generation of the printable image
    • G06K15/1856Generation of the printable image characterized by its workflow
    • G06K15/1861Generation of the printable image characterized by its workflow taking account of a limited available memory space or rasterization time
    • G06K15/1863Generation of the printable image characterized by its workflow taking account of a limited available memory space or rasterization time by rasterizing in sub-page segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32358Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter
    • H04N1/32363Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter at the transmitter or at the receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32358Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter
    • H04N1/32443Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter with asynchronous operation of the image input and output devices connected to the memory
    • H04N1/32448Controlling data flow to or from the memory in relation to the available memory capacity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32106Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title separate from the image data, e.g. in a different computer file
    • H04N1/32112Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title separate from the image data, e.g. in a different computer file in a separate computer file, document page or paper sheet, e.g. a fax cover sheet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0082Image hardcopy reproducer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3212Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to a job, e.g. communication, capture or filing of an image
    • H04N2201/3222Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to a job, e.g. communication, capture or filing of an image of processing required or performed, e.g. forwarding, urgent or confidential handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3285Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter
    • H04N2201/329Storage of less than a complete document page or image frame
    • H04N2201/3294Storage of less than a complete document page or image frame of several complete lines, e.g. a band of data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3285Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter
    • H04N2201/3295Deletion of stored data; Preventing such deletion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3285Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter
    • H04N2201/3298Checking or indicating the storage space

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Record Information Processing For Printing (AREA)

Description

本発明は、印刷制御装置、印刷制御方法、及びコンピュータプログラムに関し、特に、複数部数の印刷を行うために用いて好適なものである。
ホストコンピュータから送られてくるラスタイメージに基づいて、プリンタ装置によりプリントを行うプリントシステムが知られている。ホストコンピュータでは、ラスタイメージを展開するに際して、次の処理が行われる。まず、ホストコンピュータのアプリケーションソフトウェアにより作成された文字、グラフィックス、写真等のデータは、一旦、ホストコンピュータのプリンタドライバによりホストコンピュータの仮想的なページメモリに展開される。そして、ページメモリに展開されたデータは、色変換やハーフトーン処理が行われた後にプリントコマンドとしてプリンタに送信される。尚、以下の説明では、アプリケーションソフトウェアを、必要に応じて、単にアプリケーションと称する。
このようなプリントシステムの場合、ホストコンピュータ側の処理負荷は非常に大きくなる。このため、複数部数の印刷を行う場合、従来は、特許文献1に記載の技術のようにしていた。すなわち、まず、一部目の印刷の際に作成された処理後のプリンタコマンドを一旦ハードディスク等の補助記憶装置に保存する。そして、二部目以降の印刷に際しては、補助記憶装置に保存したプリンタコマンドをプリンタに送信する。
この際、補助記憶装置の空き容量よりも、プリンタコマンドのデータサイズの方が大きく、プリントコマンドを補助記憶装置に保存できない場合がある。このような場合には、1ページ分の印刷データを記憶するだけの空き容量が補助記憶装置にある場合にのみプリンタコマンドを保存し、そうでない場合にはプリントコマンドを保存しないようにしている。
特開平6−202822号公報
しかしながら、電子化の影響でドキュメントのページ数が増えているだけでなく、プリンタの高解像度化からページ毎のプリンタコマンド(プリントイメージデータ)のサイズが大きくなっている。したがって、補助記憶装置に全てのページのプリンタコマンドを補助記憶装置に保存できないケースが増えてきている。その結果、一部のページ分しかプリンタコマンドを補助記憶装置に保存できないため、保存できなかったページについては、二部目以降も高速に印刷できないという問題があった。
また、印刷中にはアプリケーションやOperating System(以下の説明では、単にOSと称する)も非常に多くの補助記憶装置を用いる。このため、補助記憶装置の空き容量の全てを使いきってしまうと、アプリケーションやOSの動作を阻害してしまいシステムが不安定になる要因となってしまう。
その他にも、システムの多様化によって、補助記憶装置の容量が充分無く、1ページ分のプリンタコマンドすら保存できないケースが発生している。例えば、携帯電話やゲーム機等をホストコンピュータとして使用する印刷を行う場合に、このようなケースが発生する。ホストコンピュータとして使用される携帯電話やゲーム機等には補助記憶装置が無く、プリンタコマンドを保存する場合には、ホストコンピュータ側又はプリンタ側の主記憶装置に保存するしかない。しかしながら、主記憶装置に保存できる容量は非常に小さく、1ページ分のプリンタコマンドすら保存できないことが多い。
また、スキャナーと一体になったプリンタであって、補助記憶装置を持たない安価な複合プリンタが、近年急速に普及している。この複合プリンタは補助記憶装置を持たないので、スキャナーからプリンタにダイレクトに複数部数のコピーを行う場合、プリンタコマンドを複合プリンタ本体の主記憶装置に保存するしかない。しかしながら、主記憶装置の容量は小さいため、1ページ分のプリンタコマンドを保存することができないことが多い。
本発明は、以上のような問題点に鑑みてなされたものであり、複数部数の印刷を従来よりも効率よく行えるようにすることを目的とする。
本発明の印刷制御装置は、記憶装置を有し、複数部を指定する印刷要求に基づくプリンタでの印刷に用いるプリントコマンドを供給する印刷制御装置であって、前記印刷要求に基づき、バンド単位でプリントコマンドを生成する生成手段と、前記生成手段により生成されたプリントコマンドをプリンタに対して送信する送信手段と、前記記憶装置に記憶するバンドの優先度を設定する設定手段と、前記複数部の一部目の印刷の制御において、前記優先度に基づいて前記記憶装置に記憶するバンドを決定し、前記生成手段により生成されたプリントコマンドのうち、当該決定したバンドのプリントコマンドを前記記憶装置に記憶する記憶制御手段とを有し、前記設定手段は、前記印刷を行うページに対して設定された複数のバンドのうち、相対的に先に給紙されるバンドに対する前記優先度が相対的に低くなるように、前記優先度を設定し、前記複数部の二部目の印刷において、前記記憶制御手段により前記記憶装置に記憶されたプリントコマンドについては、当該プリントコマンドを前記送信手段によりプリンタに対して送信し、前記記憶制御手段により前記記憶装置に記憶されていないプリントコマンドについては、前記生成手段によりプリントコマンドを再度生成し、当該再度生成されたプリントコマンドを前記送信手段によりプリンタに対して送信することを特徴とする。
本発明の印刷制御方法は、記憶装置を有し、複数部を指定する印刷要求に基づくプリンタでの印刷に用いるプリントコマンドを供給する印刷システムにおける印刷制御方法であって、前記印刷要求に基づき、バンド単位でプリントコマンドを生成する生成工程と、前記生成工程で生成されたプリントコマンドをプリンタに対して送信する送信工程と、前記記憶装置に記憶するバンドの優先度を設定する設定工程と、前記複数部の一部目の印刷の制御において、前記優先度に基づいて前記記憶装置に記憶するバンドを決定し、前記生成工程で生成されたプリントコマンドのうち、当該決定したバンドのプリントコマンドを前記記憶装置に記憶する記憶制御工程とを有し、前記設定工程は、前記印刷を行うページに対して設定された複数のバンドのうち、相対的に先に給紙されるバンドに対する前記優先度が相対的に低くなるように、前記優先度を設定し、前記複数部の二部目の印刷において、前記記憶制御工程で前記記憶装置に記憶されたプリントコマンドについては、当該プリントコマンドをプリンタに対して送信し、前記記憶制御工程で前記記憶装置に記憶されていないプリントコマンドについては、プリントコマンドを再度生成し、当該再度生成されたプリントコマンドをプリンタに対して送信することを特徴とする。
本発明のコンピュータプログラムは、前記印刷制御方法の各工程をコンピュータに実行させることを特徴とする。
本発明によれば、印刷対象の全てのプリントコマンドを保存できない場合でも、従来より効率的にプリコマンドを保存し再利用することができる。
以下、図面を参照して、本発明の好適な実施形態を詳しく説明する。尚、以下の各実施形態は特許請求の範囲に記載の本発明を限定するものでなく、また、以下の各実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
<第1の実施形態>
まず、本発明の第1の実施形態について説明する。
図1は、プリントシステム(印刷システム)の構成の一例を示す図である。図2は、ホストコンピュータの機能的な構成の一例を示す図である。図1、図2では、ホストコンピュータ100とプリンタ200とを相互に接続して構成したプリントシステムを例に挙げて示している。
まず、ホストコンピュータ100について説明する。ホストコンピュータ100は、CPU101と、ROM102と、RAM103と、キーボード104と、ディスプレイ105と、ハードディスク106とがシステムバスを介して相互に接続されて構成されている。
ROM102にはブートプログラムが格納されている。RAM103は、主メモリとワークエリアとして用いられ、バンドメモリ107を有する。バンドメモリ107は、印刷対象となるページのバンド領域のデータをイメージデータに展開するためのものである。また、RAM103は、プリンタコマンドファイル管理テーブル109を有する。プリンタコマンドファイル管理テーブル109は、ページ番号と、バンド位置と、プリンタコマンドファイル108のファイル名とを相互に関連付けて登録するテーブルである。
補助記憶装置の一例であるハードディスク106は、制御プログラムを格納する他、ワークエリアとしても用いられる、また、ハードディスク106には、プリンタコマンドファイル108が格納されている。
CPU101は、ハードディスク106に格納された制御プログラムに従って各部を制御するものである。キーボード104は、コマンドを発行するためのものである。ディスプレイ105は、処理結果等を表示するためのものである。
次に、プリンタ200について説明する。プリンタ200は、入出力部201と、RAM202と、プリント部203とを有する。
入出力部201は、双方向インタフェースを介してホストコンピュータ100に接続されており、データ通信処理を制御するものである。RAM202は、入出力部201で受信されたプリンタコマンドを記憶するためのものである。プリント部203は、RAM202に記憶されたプリンタコマンドに基づきプリントを行うものである。
図2において、アプリケーション310は、キーボード104を使って行われたオペレータの印刷要求により作成した文字、イメージ、図形等の描画データを、OS320を介してプリンタドライバ330に送り、その描画データのプリンタ200への出力を要求する。
図3は、描画データの一例であるページイメージの一例と、そのページイメージから作成されるバンドイメージの一例を説明する図である。
所謂ダムプリンタ又はビデオプリンタの場合、ホストコンピュータ100は、プリンタ200の解像度に合わせて、イメージデータであるページイメージ401に描画コマンドを展開した後、プリンタ200に送る。この際、本実施形態では、図3に示すように、ページイメージ401は、複数のバンドイメージ402a〜402eに分解され、それらのバンドイメージ402a〜402eがバンドメモリ107に展開された後に、プリンタ200に出力される。
図4は、複数部数の一部目の印刷を行う際のプリンタドライバ330における処理の一例を説明するフローチャートである。この処理では、全ページの印刷データをバンド単位でバンドイメージ402に展開した後、バンドイメージ402を、印刷データの一例であるプリンタコマンドに変換してプリンタ200に送信する。そして、これと略同時に、バンドイメージ402a〜e(バンド毎)のプリンタコマンドを、プリンタコマンドファイル108としてハードディスク106に保存する。
アプリケーション310がOS320に描画コマンドの出力命令を行うと、プリンタドライバ330のページ・バンド管理部331が、バンド毎の描画コマンドを受け取る。そして、描画処理部332は、描画コマンドをバンド毎にバンドメモリ107に描画する。
まず、ステップS101において、ページ・バンド管理部331は、印刷するページを示すページ番号Pnを0で初期化する。
次に、ステップS102において、ページ・バンド管理部331は、ページ番号Pnをページ毎に1ずつ増やす。
次に、ステップS103において、ページ・バンド管理部331は、各ページにおけるバンドの位置を示すバンド位置Bnを0で初期化する。
次に、ステップS104において、ページ・バンド管理部331は、バンド位置Bnをバンド毎に1ずつ増やす。
次に、ステップS105において、プリンタドライバ330は、描画コマンドをバンド毎にプリンタコマンドに変換してプリンタ200に送信する。
具体的にステップS105では、まず、ページ・バンド管理部331は、ページ番号Pn及びバンド位置Bnに対応する描画コマンドを受け取る。次に、描画処理部332は、その描画コマンドをバンドイメージ402としてバンドメモリ107に展開する。バンドイメージ402は、通常、標準的な色空間であるsRGBデータである。このため、色変換処理部333は、バンドイメージ402を、sRGBデータからプリンタ200の色空間のRGBデータに変換した後、プリンタ200のインクの色空間であるCMYKイメージデータへ変換する。
次に、ハーフトーン処理部334は、CMYKイメージデータに変換されたバンドイメージ402のデータを、擬似階調処理であるハーフトーン処理を行ってプリンタ200の階調に変換する。そして、プリンタコマンド生成部335は、ハーフトーン処理が行われた後のCMYKイメージデータをプリンタコマンドに変換する。ここでは、主にハーフトーン処理が行われた後のイメージのデータサイズを減らすためのデータ圧縮やコマンドの付加等が行われる。そして、プリンタコマンド出力部336は、作成されたプリンタコマンドをプリンタ200に出力する。
次に、プリンタコマンドファイル制御部337が、ステップS105で作成されたプリンタコマンドをプリンタコマンドファイル108としてハードディスク106に保存する。まず、プリンタコマンドファイル制御部337は、プリンタコマンドファイル108を保存するだけのディスクの空き容量が、ハードディスク106にあるか否かを判定する。
具体的にステップS106において、プリンタコマンドファイル制御部337は、プリンタコマンドファイル108を保存した後のハードディスク106の空き容量Dを求める。空き容量Dは、保存前のハードディスク106の空き容量から、ステップS105で作成されたプリンタコマンドファイル108のサイズを減算した値として求めることができる。尚、ハードディスク106の空き容量は、通常、OS320が提供している機能を用いることで求めることができる。
次に、ステップS107において、プリンタコマンドファイル制御部337は、ステップS106で求められた、ハードディスク106の空き容量Dが、予め用意された閾値Dthよりも大きいか否かを判定する。ハードディスク106は、プリンタドライバ330と並行して処理を行っているアプリケーション310やOS320も使用する。このため、閾値Dthの値として、ある程度大きな値を指定する必要がある。全てのハードディスク106の空き容量を使い切ってしまうと、アプリケーション310やOS320の動作が阻害されてしまいシステムが不安定になる要因となってしまうためである。しかしながら、閾値Dthを大きくし過ぎると、プリンタコマンドファイル108を保存できるバンド数が減るために、効率良くハードディスク106を使用しないと、処理速度が低下してしまう。本実施形態では、これらのバランスを考慮して閾値Dthが予め定められる。
ステップS107の判定の結果、ハードディスク106の空き容量Dが閾値Dth以下である場合には、ステップS108に進む。ステップS108に進むと、プリンタコマンドファイル制御部337は、ハードディスク106の空き容量に応じて、既に保存されているプリンタコマンドファイル108であって、優先度が相対的に低いバンドのプリンタコマンドファイル108を削除する。このステップS108の処理の詳細については後述する。
次に、ステップS109において、プリンタコマンドファイル制御部337は、ステップS108でプリンタコマンドファイル108を削除した結果、ハードディスク106の空き容量Dが閾値Dthよりも大きくなったか否かを判定する。具体的にステップS109では、プリンタコマンドファイル制御部337は、ステップS108の処理結果として設定されるReturnの値が1かどうかを判定する。この判定の結果、Returnの値が0である場合(NO)には、プリンタコマンドファイル108を保存するだけの空き容量がハードディスク106にないので、ステップS110、S111の処理を行わずに、後述するステップS112に進む。
一方、ステップS109において、Returnの値が1であると判定された場合と、前述したステップS107において、ハードディスク106の空き容量Dが閾値Dthよりも大きいと判定された場合には、ステップS110に進む。ステップS110に進む場合には、プリンタコマンドファイル108を保存するだけの空き容量がハードディスク106にあることになる。ステップS110では、プリンタコマンドファイル制御部337は、ステップS105で作成した“バンド位置Bnのプリンタコマンド”をプリンタコマンドファイル108としてハードディスク106に保存する。このようにして、プリンタコマンドファイル制御部337は、ハードディスク106に対するプリンタコマンドファイル108の記憶制御を行う。
次に、ステップS111において、プリンタコマンドファイル制御部337は、ステップS110で保存したプリンタコマンドファイル108のファイル名を、RAM103に記憶されているプリンタコマンドファイル管理テーブル109に保存する。そして、ステップS112に進む。前述したように、プリンタコマンドファイル管理テーブル109には、ページ番号Pn及びバンド位置Bnに対するプリンタコマンドファイル108のファイル名が登録される。尚、プリンタコマンドファイル管理テーブル109は、必ずしもRAM103に記憶されている必要はない。例えば、プリンタコマンドファイル108と同じハードディスク106にプリンタコマンドファイル管理テーブル109を作成することも可能である。
ステップS112に進むと、ページ・バンド管理部331は、現在のページ番号Pnの全てのバンドについて、ステップS104〜S111の処理を行ったか否かを判定する。すなわち、ページ・バンド管理部331は、現在のページ番号Pnの全てのバンドについて、プリンタコマンドの作成と、プリンタコマンドのプリンタ200への送信と、プリンタコマンドのハードディスク106への保存とが終了したか否かを判定する。この判定の結果、現在のページ番号Pnの全てのバンドについて、ステップS104〜S111の処理を行っていない場合には、処理を行うまで、ステップS104〜S112の処理を繰り返し行う。
そして、現在のページ番号Pnの全てのバンドについて、ステップS104〜S111の処理を行うと、ステップS113に進む。ステップS113に進むと、ページ・バンド管理部331は、全てのページ番号Pn(全てのページ)について、ステップS102〜S112の処理を行ったか否かを判定する。すなわち、ページ・バンド管理部331は、全てのページ番号Pn(全てのページ)について、プリンタコマンドの作成と、プリンタコマンドのプリンタ200への送信と、プリンタコマンドのハードディスク106への保存とが終了したか否かを判定する。
この判定の結果、全てのページ番号Pn(全てのページ)について、ステップS102〜S112の処理を行っていない場合には、処理を行うまで、ステップS102〜S113の処理を繰り返し行う。
そして、全てのページ番号Pn(全てのページ)について、ステップS102〜S112の処理を行うと、図4のフローチャートによる処理を終了する。
次に、図4のステップS108の処理の一例を詳細に説明する。前述したように、ステップS108では、ハードディスク106の空き容量が不足している場合に、プリンタコマンドファイル制御部337が、ハードディスク106に保存済みのプリンタコマンドファイル108(の一部)を削除する。
プリンタコマンドファイル108を削除するかどうかは、例えば、次のようにして決めることができる。まず、特定のバンドへの処理結果が他のバンドに影響するかというバンド間の相関関係を元に決めることができる。また、これに代えて、又はこれに加えて、プリンタドライバ330のプリンタコマンド作成処理とプリンタ200の印刷処理との速度差を元に決めることができる。
バンド間の相関関係を元にして決める場合の一例としては、ハーフトーン処理部334が行うハーフトーン処理として誤差拡散法を用いている場合がある。誤差拡散法を用いる場合、注目画素に対するハーフトーン処理の結果として発生する誤差を、その後にハーフトーン処理を行う画素に伝播させるので、ページの途中から処理を開始できない。もし、ハーフトーン処理部334が、N(Nは自然数)番目のバンドまでの誤差を伝播せずに、(N+1)番目から誤差拡散処理を行った場合、N番目と(N+1)番目のバンド境界部分の印刷結果に不連続な部分が発生してしまう。したがって、N番目のバンドまでプリンタコマンドファイル108を保存していても、(N+1)番目のバンドの誤差拡散処理を行うためには、最初のバンドからN番目のバンドまで、再度ハーフトーン処理までの処理を行う必要がある。すなわち、描画処理部332による描画コマンドのメモリへの展開と、色変換処理部333による色変換処理と、ハーフトーン処理部334によるハーフトーン処理とを、最初のバンドからN番目のバンドまで再度行う必要がある。
したがって、誤差の伝播方向の後方部分のバンドを優先して残し(プリンタコマンドとして保存し)、誤差の伝播方向に合わせてバンド(プリンタコマンド)を削除する必要がある。このようにすれば、削除されたバンドのみを再度処理すればすむため、高速に処理を行える。
尚、誤差拡散法のみについては、"An Adaptive Algorithm for Spatial Gray Scale” in society for Information Display 1975 Symposium Digest of Technical Papers, 1975, 36“等に記載されている公知の技術である。
図5(a)は、ハーフトーン処理として誤差拡散法を用いる場合のバンドの重要度とバンド重要度テーブルの一例を示す図である。図5(a)において、プリンタコマンドファイル制御部337は、バンド重要度の番号の小さい(記憶する優先度の低い)バンドから削除することになる。
図5(a)に示すように、ハーフトーン処理として誤差拡散法を用いる場合には、誤差の伝搬方向に合わせてバンドを削除していくことになる。
また、プリンタドライバ330のプリンタコマンド作成処理とプリンタ200の印刷処理との速度差を元にして決める場合の一例としては、給紙等の印刷準備中の場合がある。プリンタ200は印刷の際、ページの最初に給紙等の印刷準備処理を行う必要がある。この印刷準備処理の最中は印刷が行われない。このため、プリンタドライバ330側のプリンタコマンド作成処理の方が、プリンタ200の印刷処理よりも速くなる。したがって、先に排紙されるページ前半部分については、複数部数の印刷を行うに際し、プリンタドライバ330が描画コマンドをプリンタコマンドに変換してプリンタ200に送信しても、印刷が間に合う。
また、プリンタドライバ330のプリンタコマンドファイル制御部337がハードディスク106からプリンタコマンドを読み出して送信する処理時間は、プリンタ200側の印刷処理時間に比べて短い。したがって、プリンタドライバ330の処理に余った時間が発生する。そのため、プリンタドライバ330は、プリンタコマンドを送信した後、プリンタ200がそのプリンタコマンドの印刷を終了するまでの余った時間で、次のプリンタコマンドを作成する処理を行うことができる。つまり、プリンタドライバ330はプリンタコマンドファイル108に保存されたプリンタコマンドを送信した後、次のバンドの描画コマンドをプリンタコマンドに変換してプリンタ200に送信しても印刷が間に合う。
図5(b)は、ハーフトーン処理として誤差拡散法以外の方法を用いる場合のバンドの重要度とバンド重要度テーブルの一例を示す図である。図5(b)においても、プリンタコマンドファイル制御部337は、バンド重要度の番号の小さい(記憶する優先度の低い)バンドから削除することになる。
前述したように、給紙等のプリンタ200の初期化処理の関係で、プリンタ200の印刷処理よりもプリンタドライバ330のプリンタコマンド作成処理の方が速い。このため、図5(b)に示すように、ページの前半(先に給紙(排紙)される部分)は重要度が低い。一方、ページの後半については、プリンタコマンド作成処理と、プリンタコマンド送信処理とを交互に行った方が効率よいので、1バンド置きに重要度を低くして、重要度の高いバンドと低いバンドとが交互に生じるようにしている。
前述したように、ステップS107の判定の結果、ハードディスク106の空き容量Dが閾値Dth以下の場合には、ステップS108において、保存済みのプリンタコマンドファイル108の一部を削除する。本実施形態では、図5に示したようなバンド重要度テーブルに従って、保存済みのプリンタコマンドファイル108の一部を削除する。
図6は、図4のステップS108の処理の一例を詳細に説明するフローチャートである。
まず、ステップS201において、プリンタコマンドファイル制御部337は、バンド重要度テーブルが作成済みか否かを判定する。最初にこのステップS201の処理を行ったときには、バンド重要度テーブルは作成されていない。したがって、ステップS202において、プリンタコマンドファイル制御部337は、バンド重要度テーブルを作成して、バンド重要度を設定する。そして、ステップS203に進む。前述したように、バンド重要度テーブルは、ハーフトーン処理後のバンド間の相関関係や、プリンタドライバ330のプリンタコマンド作成処理とプリンタ200の印刷処理との速度差等を元に決める必要がある。プリンタコマンドファイル制御部337は、図5の右に示したようなバンド重要度テーブルの番号の順番にバンドを削除することで効率よく処理を行うことができる。
一方、バンド重要度テーブルが作成済みである場合には、バンド重要度テーブルを再度作成する必要はないので、ステップS202を省略してステップS203に進む。ステップS203に進むと、バンド重要度の低いバンドから順にプリンタコマンドファイル108を削除するため、プリンタコマンドファイル制御部337は、バンド番号bを0で初期化する。
次に、ステップS204において、プリンタコマンドファイル制御部337は、バンド番号bを1ずつ順番に増やす。
次に、ステップS205において、プリンタコマンドファイル制御部337は、ステップS202で作成したバンド重要度テーブルを用いて、バンド番号bに相当するバンド位置Bmを取得する。このとき、複数のバンド重要度テーブルの中から、ステップS205で使用するバンド重要度テーブルを、設定等に応じて切り替えてもよい。例えば、ハーフトーン処理が誤差拡散法である場合には、図5(a)の右図に示すバンド重要度テーブルを使用し、そうでない場合には、図5(b)の右図に示すバンド重要度テーブルを使用することが効果的である。例えば、ハーフトーン処理が誤差拡散法でなくバンド番号bが5である場合、プリンタコマンドファイル制御部337は、図5(b)の右図に示すバンド重要度テーブルからバンド位置Bmとしてバンド位置B3を取得する。
次に、プリンタコマンドファイル制御部337は、ステップS205で取得したバンド位置Bmについて、ハードディスクの106の空き容量Dが閾値Dthよりも大きくなるまで、全てのページでプリンタコマンドファイル108を削除する。具体的に説明すると、まず、ステップS206において、プリンタコマンドファイル制御部337は、ページ番号Pmを0で初期化する。
次に、ステップS207において、プリンタコマンドファイル制御部337は、ページ番号Pmをページ毎に1ずつ増やす。
次に、ステップS208において、プリンタコマンドファイル制御部337は、ページ番号Pm及びバンド位置Bmに対応するプリンタコマンドファイル108が、プリンタコマンドファイル管理テーブル109に登録されているか否かを判定する。この判定は、プリンタコマンドファイル108のファイル名がプリンタコマンドファイル管理テーブル109に登録されているかどうかで行うことができる。尚、ステップS208で使用されるページ番号PmはステップS207で設定したものであり、バンド位置Bmは、ステップS205で取得したものである。また、プリンタコマンドファイル管理テーブル109は、図4のステップS111で作成されたものである。
ステップS208の判定の結果、プリンタコマンドファイル108がプリンタコマンドファイル管理テーブル109に登録されていない場合には、ステップS209〜S211を省略して後述するステップS213に進む。
一方、プリンタコマンドファイル108がプリンタコマンドファイル管理テーブル109に登録されていた場合には、ステップS209に進む。ステップS209に進むと、プリンタコマンドファイル制御部337は、ステップS208で登録されていると判定されたプリンタコマンドファイル108を削除し、ハードディスク106に対するプリンタコマンドファイル108の記憶制御を行う。そして、プリンタコマンドファイル制御部337は、プリンタコマンドファイル管理テーブル109から、削除したプリンタコマンドファイル108のファイル名を削除する。
次に、ステップS210において、プリンタコマンドファイル108を保存した後のハードディスク106の空き容量Dを再度求める。
次に、ステップS211において、プリンタコマンドファイル制御部337は、ステップS106で求められた、ハードディスク106の空き容量Dが閾値Dthよりも大きいか否かを判定する。この判定の結果、ハードディスク106の空き容量Dが閾値Dthよりも大きい場合には、ステップS212に進む。ステップS212に進むと、プリンタコマンドファイル制御部337は、Returnに1を設定し、図4のステップS109に進む。
一方、ハードディスク106の空き容量Dが閾値Dth以下である場合には、ステップS213に進む。尚、前述したように、ステップS208において、プリンタコマンドファイル108がプリンタコマンドファイル管理テーブル109に登録されていないと判定された場合にも、ステップS213に進む。
ステップS213に進むと、プリンタコマンドファイル制御部337は、全てのページのバンド位置Bmのプリンタコマンドファイル108の削除が終了したか否かを判定する。この判定の結果、全てのページのバンド位置Bmのプリンタコマンドファイル108の削除が終了していない場合には、ステップS207に戻る。そして、全てのページのバンド位置Bmのプリンタコマンドファイル108の削除が終了するか、ハードディスク106の空き容量Dが閾値Dthより大きくなるまで、ステップS207〜S211、S213の処理を繰り返す。
一方、全てのページのバンド位置Bmのプリンタコマンドファイル108の削除が終了すると、ステップS214に進む。ステップS214に進むと、プリンタコマンドファイル制御部337は、全てのバンド番号についてプリンタコマンドファイル108の削除が終了したか否か判定する。この判定の結果、全てのバンド番号についてプリンタコマンドファイル108の削除が終了していなければ、ステップS204に戻る。そして、全てのバンド番号についてプリンタコマンドファイル108の削除が終了するか、ハードディスク106の空き容量Dが閾値Dthより大きくなるまで、ステップS204〜S214の処理を繰り返す。
一方、全てのバンド番号についてプリンタコマンドファイル108の削除が終了すると、ステップS215に進む。ステップS215に進むのは、全てのプリンタコマンドファイル108を削除しても、ハードディスク106の空き容量が充分でない場合である。したがって、ステップS215において、プリンタコマンドファイル制御部337は、Returnに0を設定し、図4のステップS109に進む。
以上で、一部目の処理は終了する。
次に、図7のフローチャートを参照しながら、二部目以降の印刷を行う際のプリンタドライバ330における処理の一例を説明する。
まず、ステップS301において、ページ・バンド管理部331は、印刷するページ番号Pnを0で初期化する。
次に、ステップS302において、ページ・バンド管理部331は、印刷するページ番号Pnをページ毎に1ずつ増やす。
次に、ステップS303において、ページ・バンド管理部331は、各ページにおけるバンド位置Bnを0で初期化する。
次に、ステップS304において、ページ・バンド管理部331は、バンド位置Bnをバンド毎に1ずつ増やす。
次に、ステップS305において、プリンタコマンドファイル制御部337は、ページ番号Pn及びバンド位置Bnに対応するプリンタコマンドファイル108が、プリンタコマンドファイル管理テーブル109に登録されているか否かを判定する。この判定は、プリンタコマンドファイル108のファイル名がプリンタコマンドファイル管理テーブル109に登録されているかどうかで行うことができる。尚、ステップS305で使用されるページ番号PnはステップS302で設定したものであり、バンド位置Bnは、ステップS304で設定されたものである。また、プリンタコマンドファイル管理テーブル109は、例えば、図4のステップS111で作成されたものである。
ステップS305の判定の結果、プリンタコマンドファイル108がプリンタコマンドファイル管理テーブル109に登録されていない場合には、後述するステップS309に進む。
一方、プリンタコマンドファイル108がプリンタコマンドファイル管理テーブル109に登録されている場合には、ステップS306に進む。ステップS306に進むと、プリンタコマンドファイル制御部337は、ステップS305の判定の結果に基づいて得られるプリンタコマンドファイル108から、ページ番号Pn及びバンド位置Bnに対応するプリンタコマンドを読み出す。そして、プリンタコマンド出力部336は、そのプリンタコマンドをプリンタ200に送信する。
このようにしてプリンタコマンドが送信された後、ステップS307において、プリンタコマンドファイル制御部337は、ページ番号Pn及びバンド位置Bnに対応するプリンタコマンドファイル108を再度利用するか否かを判断する。すなわち、プリンタコマンドファイル制御部337は、現在処理している部が、最終部か否かを判定する。
この判定の結果、現在処理している部が最終部でない場合には、後述するステップS310に進む。
一方、現在処理している部が最終部である場合には、ステップS308に進む。ステップS308に進むと、プリンタコマンドファイル制御部337は、ページ番号Pn及びバンド位置Bnに対応するプリンタコマンドファイル108を、この後利用することがないため、そのプリンタコマンドファイル108をハードディスク106から削除する。そして、後述するステップS310に進む。
前述したように、ステップS305において、プリンタコマンドファイル108がプリンタコマンドファイル管理テーブル109に登録されていないと判定された場合には、ステップS309に進む。ステップS309に進むと、プリンタドライバ330は、ページ番号Pn及びバンド位置Bnに対応する描画コマンドをバンド毎にプリンタコマンドに変換してプリンタコマンドを再度生成し、プリンタ200に送信する。このステップS309の処理は、ステップS105と同様にして行うことができる。そして、ステップS310に進む。
ステップS310に進むと、ページ・バンド管理部331は、現在のページ番号Pnの全てのバンドのプリンタコマンドをプリンタ200へ送信したか否かを判定する。この判定の結果、現在のページ番号Pnの全てのバンドのプリンタコマンドをプリンタ200へ送信していない場合には、送信するまで、ステップS304〜S310の処理を繰り返し行う。
そして、ページ番号Pnの全てのバンドのプリンタコマンドをプリンタ200へ送信すると、ステップS311に進む。ステップS311に進むと、ページ・バンド管理部331は、全てのページのプリンタコマンドをプリンタ200へ送信したか否かを判定する。この判定の結果、全てのページのプリンタコマンドをプリンタ200へ送信していない場合には、送信するまで、ステップS302〜S311の処理を繰り返し行う。
そして、全てのページのプリンタコマンドをプリンタ200へ送信すると、ステップS312に進む。ステップS312において、ページ・バンド管理部331は、全ての部数のプリンタコマンドをプリンタ200へ送信したか否かを判定する。この判定の結果、全ての部数のプリンタコマンドをプリンタ200へ送信していない場合には、送信するまで、ステップS301〜S312の処理を繰り返し行う。
そして、全ての部数のプリンタコマンドをプリンタ200へ送信すると、図7のフローチャートによる処理を終了する。
尚、本実施形態で説明した変数の値は、例えばRAM103に設定される。
以上のように本実施形態では、バンド重要度テーブルにより、削除するバンドの順番を予め定義しておく。そして、あるバンドにおける新たなプリンタコマンドを保存した後のハードディスク106の空き容量Dが閾値以下になると、ハードディスク106に保存済みのプリンタコマンドを、定義しておいたバンド重要度に従ってバンド単位で削除する。そして、ハードディスク106の空き容量Dが閾値よりも大きくなると、新たなプリンタコマンドをバンド単位でハードディスク106に保存する。二部目以降の印刷を制御するに際し、ハードディスク106に保存されているプリンタコマンドについてはプリンタ200に送信し、保存されていないプリンタコマンドについては再度生成する。
これに対し、ハードディスク106に空きがある場合に、本実施形態のようにせずに(印刷を行うための処理とは無関係な順番で)プリンタコマンドをバンド単位で保存することも考えられる。しかしながら、バンド間に相関関係がある場合にこのようにしてプリンタコマンドをバンド単位で保存すると、次のような問題がある。すなわち、複数部数の二部目以降を印刷する際に、途中のバンドまでプリンタコマンドが保存されているにも関わらず、再度最初から処理する必要が発生し、2部目以降の印刷処理を高速に実行できなくなる虞があるという問題がある。
例えば、ハーフトーン処理として誤差拡散法を用いた場合には、前述したように、注目画素のハーフトーンの結果として発生する誤差を、その後にハーフトーン処理を行う画素に伝播させるので、ハーフトーン処理の結果が次のバンドにも影響する。そのため、N番目のバンドまでプリンタコマンドを保存していても、(N+1)番目のバンドに対してハーフトーン処理を行うためには、再度最初からN番目のバンドの描画コマンドをメモリへの展開し、色変換する必要がある。したがって、結局は、そのページを効率的に処理することができない。
一方、本実施形態では、バンド重要度テーブルにより、削除するバンドの順番を予め定義しておくので、バンド間の相関関係等、印刷を行うための処理を考慮して、ハードディスク106に記憶するバンドと記憶しないバンドとを選別することができ、好ましい。したがって、複数部数の印刷をする際に、ホストコンピュータ100及びプリンタ200において、印刷対象の全ページのプリンタコマンドを保存できない場合でも、プリンタコマンドを効率的に保存することができる。よって、複数部数の印刷におけるスループットを従来よりも向上させることができる。
また、本実施形態では、例えば、ハーフトーン処理として誤差拡散法を用いる場合と、そうでない場合との夫々に適したバンド重要度テーブルを選択することにより、印刷を行うための処理に適したバンド重要度テーブルを選択するようにした。したがって、印刷を行うための処理を可及的に適切に行うことができる。
<変形例>
本実施形態では、説明を簡単にするために、バンド毎のプリンタコマンド作成処理時間とプリンタコマンドサイズについては考慮していない。しかしながら、プリンタコマンド作成処理時間とプリンタコマンドサイズとを考慮することもできる。例えば、図4のステップS110において、プリンタコマンド作成処理時間がプリンタ200の印刷に間に合う場合や、プリンタコマンドのサイズが閾値よりも大きい場合には、プリンタコマンドをハードディスク106に保存しないようにすることもできる。また、図4のステップS111において、プリンタコマンド作成処理時間とプリンタコマンドファイル108のサイズとをプリンタコマンドファイル管理テーブル109に保存することもできる。このようにした場合には、単位処理時間当りのプリンタコマンドファイルのサイズが大きいバンドを優先的に保存したり、これとは逆に先に削除したりすることも可能である。また、描画処理に時間がかからなかったバンドであるほど先に削除することも可能である。この他、各ページにおいて相対的に先に給紙されるバンドであるほど先に削除することも可能である。更に、印刷を行う各ページにおける複数のバンドのうち、描画領域を含むバンドのみを記憶し、残りのバンドを削除するようにしてもよい。以上のように、バンド重要度テーブルの作成方法は、前述したものに限定されず、バンド重要度テーブルは必須のものではない。
また、本実施形態では、プリンタコマンドファイル108をハードディスク106に保存する形態とした。しかしながら、RAM103にプリンタコマンドファイル108を保存してもよい。また、プリンタ200本体内のRAM202にプリンタコマンドファイル108を保存してもよい。このようにした場合には、ホストコンピュータ100から、プリンタコマンドファイル108の保存や削除を制御し、プリンタ200がプリンタコマンドファイル108を使って印刷を制御する必要がある。また、プリンタ200が独自にプリンタコマンドファイル108の保存や削除を管理することもできる。このようにした場合には、二部目以降の印刷に際し、プリンタ200が、ホストコンピュータ100に対して、プリンタコマンドファイル108を保存していない領域へのプリンタコマンドファイル108の出力命令を行う必要がある。
また、本実施形態では、ハードディスク106の空き容量Dが閾値Dthよりも大きい場合に、プリンタコマンドをバンド単位でハードディスク106に記憶する場合を例に挙げて説明した(図4のステップS105〜S107、S110等を参照)。しかしながら、必ずしもこのようにする必要はない。例えば、プリンタコマンドの全てを記憶できる場合には、プリンタコマンドの全てを一度に記憶してもよい。
<第2の実施形態>
次に、本発明の第2の実施形態について説明する。前述した第1の実施形態では、一旦、プリンタコマンドファイル108を作成した後、ハードディスク106の空き容量に応じて、作成したプリンタコマンドファイル108を削除する場合を例に挙げて説明した。このようにしたのは、プリンタコマンドファイル108のサイズが、描画データやページ数に応じて変化することと、アプリケーション310やOS320がハードディスク106を使用するため、ハードディスク106の空き容量が常に変動するためである。しかし、バンド毎のプリンタコマンドのサイズ及びページ数が判明し、他のアプリケーション310等のハードディスク106の使用量を予測できる場合には、ハードディスク106の空き容量に応じて保存するバンド数を事前に決めることができる。この場合、不要なプリンタコマンドファイル108の作成、削除を行う必要がないため、より効率的に処理することができる。このように本実施形態と第1の実施形態とは、プリンタコマンドをハードディスク106に保存する際の処理の一部が主として異なる。したがって、本実施形態の説明において、第1の実施形態と同一の部分については、図1〜図7に付した符号と同一の符号を付すこと等により、詳細な説明を省略する。
図8のフローチャートを参照しながら、複数部数の一部目の印刷を行う際のプリンタドライバ330における処理の一例を説明する。
まず、ステップS401において、プリンタコマンドファイル制御部337は、保存するバンド数を決定する。
このステップS401の具体例としてプリンタコマンドファイル制御部337は、まず、ハードディスク106の空き容量から、他のアプリケーション310等のハードディスク106の使用量を減算する。そして、プリンタコマンドファイル制御部337は、減算した値を、バンド当りのプリンタコマンドのサイズで除算し、その結果を用いることでバンド数を求めることができる。
次に、ステップS202において、プリンタコマンドファイル制御部337は、第1の実施形態と同様に、バンド重要度テーブルを作成して、バンド重要度を設定する(図6を参照)。
次に、ステップS402において、プリンタコマンドファイル制御部337は、ステップS401で求めたバンド数から、プリンタコマンドファイル108を作成するバンドの位置を決定する。このステップS402の具体例としてプリンタコマンドファイル制御部337は、ステップS401で求めたバンド数をページ数で除算し、全ページで保存できるバンドの位置を決定する。そして、ステップS401で求めたバンド数から、全ページで保存するバンド数を引いた残りの数のバンドには、次の重要度のバンドを割り当てる。このとき、次の重要度のバンドについては、保存可能なページに保存する。例えば、ハーフトーン処理が誤差拡散法でなく、保存できるバンド数が35、ページ数が10ページとする。この場合、35を10で除算した値である3つのバンドを全てのページで保存することができる。よって、重要度の高い3つのバンド(バンド位置B3、B5、B6のバンド)については(図5(b)を参照)、全てのページでプリンタコマンドファイル108を保存する。これにより保存したバンド数は30になる。そして、残りの5つのバンドについては、1から5ページ目までのみ、重要度が4番目のバンド(バンド位置B4のバンド)のプリンタコマンドファイル108を保存する。
次のステップS101〜S105は、第1の実施形態で説明したのと同じである(図4を参照)。
次に、ステップS403において、プリンタコマンドファイル制御部337は、ステップS102で指定されたページPnと、ステップS104で指定されたバンド位置Bnとが、ステップS402で決定したバンドの位置に対応するか否かを判定する。この判定の結果、ステップS402で決定したバンドの位置に対応する場合には、ステップS110以降の処理を行う。一方、ステップS402で決定したバンドの位置に対応しない場合には、ステップS110、S111を省略してステップS112以降の処理行う。ステップS110〜S113の処理も第1の実施形態と同じであるので、その詳細な説明を省略する(図4を参照)。以上のように本実施形態では、例えば、ステップS402、S403、S110の処理を行うことによって、プリンタコマンドファイル制御部337が、ハードディスク106に対するプリンタコマンドファイル108の記憶制御を行う。
以上のように本実施形態では、ハードディスク106の空き容量から、保存するバンド数を決定し、決定したバンド数と、バンド重要度テーブルに基づくバンドの重要度とに基づいて、保存するバンドの位置を決定する。そして、決定した位置のバンドのプリンタコマンドが得られたら、そのプリンタコマンドを決定した位置に保存する。したがって、第1の実施形態で説明した効果に加え、バンド毎のプリンタコマンドのサイズ及びページ数が判明し、アプリケーション310等のハードディスク106の使用量を予測できる場合には、次の効果が得られる。すなわち、一部目の処理において、不要なプリンタコマンドファイル108の作成、削除を行う必要がなくなる。したがって、より効率的に処理することができる。
<第3の実施形態>
次に、本発明の第3の実施形態について説明する。前述した第1、第2の実施形態では、ホストコンピュータ100からプリンタ200にプリントするシステムについて説明した。これに対し、本実施形態では、近年急速に普及しているプリンタとスキャナーとが一体になった複合プリンタでダイレクトに複数部数のコピーをする場合を例に挙げて説明する。このように、本実施形態と第1、第2の実施形態とは、処理を行う主体が主として異なる。したがって、本実施形態の説明において、第1、第2の実施形態と同一の部分については、図1〜図8に付した符号と同一の符号を付すこと等により、詳細な説明を省略する。
図9は、複合プリンタの構成の一例を説明するブロック図である。
図9に示すように、プリント部903とスキャナー部904とが一体になった安価な複合プリンタ900では、ハードディスク等の補助記憶装置を持たないことが多い。そのため、このような複合プリンタ900では、スキャンしたイメージを、色処理、ハーフトーン処理した後に、プリントイメージ905として主記憶装置であるRAM902に保存して再利用することが有効である。
ただし、RAM902の容量はコストの関係で大きくないため、多くのページのプリントイメージ905をRAM202に保存することができない。したがって、場合によっては1ページ分のプリントイメージ905さえRAM902に保存することができない。
そこで、このような複合プリンタ900で、第1、第2の実施形態と同様に処理することが有効となる。
本実施形態では、第1、第2の実施形態で説明した描画コマンドを、スキャナー部904がスキャンした画像に置き換え、プリンタコマンドファイル108を、プリントイメージ905に置き換えることで、第1、第2の実施形態と略同じ処理を行うことができる。ただし、バンド重要度テーブルを作成する際は、スキャンの特性を考慮することが重要である。通常、プリントよりスキャンの方が、処理速度が遅いため、スキャンする時間を短くすることが有効である。例えば、多くのスキャナーは精度を保つために一旦ホームポジションからスキャンを開始する必要である。
そのため、同じ面積の領域をスキャンする場合、ホームポジションから遠い部分をスキャンするよりも、近い部分だけをスキャンした方が、高速に処理することができる。そこで、本実施形態では、各ページにおいて後からスキャンされる部分(バンド)の重要度をより高くすることで、高速に処理できるようになる。
図10は、スキャナー部904でスキャンした画像を印刷する場合のバンド重要度とバンド重要度テーブルの一例を示す図である。
図10において、例えば、ページ全体が6バンドとし、3バンド分のプリントイメージ205を保存でき、バンド重要度テーブルにおいて重要度が4以降の(バンド位置B4〜B6の)バンドのプリントイメージ905を、RAM902に保存したとする。そうすると、2部目の以降の出力の際には、ホームポジションからバンド位置B3までをスキャンするだけよいため、全てをスキャンするよりも高速にスキャンできる。逆に、バンド位置B1〜B3のバンドを保存した場合には、バンド位置B4以降のバンドだけをスキャンすることはできないため、結局ホームポジションから、バンド位置B1〜B6全体をスキャンすることになる。
以上のように、プリント部903とスキャナー部904が一体となった複合プリンタ900で複数部数をコピーする際に、複合プリンタ900に印刷対象の全ページのプリントイメージ205を保存できない場合でも第1、第2の実施形態と同様の効果が得られる。
(本発明の他の実施形態)
前述した本発明の実施形態における印刷制御装置を構成する各手段、並びに印刷制御方法の各ステップは、コンピュータのRAMやROMなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
また、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図4、図6〜図8に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接、あるいは遠隔から供給するものを含む。そして、そのシステムあるいは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
尚、前述した各実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
本発明の第1の実施形態を示し、プリントシステムの構成の一例を示す図である。 本発明の第1の実施形態を示し、ホストコンピュータの機能的な構成の一例を示す図である。 本発明の第1の実施形態を示し、描画データの一例であるページイメージの一例と、そのページイメージから作成されるバンドイメージの一例を説明する図である。 本発明の第1の実施形態を示し、一部目の印刷を行う際のプリンタドライバにおける処理の一例を説明するフローチャートである。 本発明の第1の実施形態を示し、バンドの重要度とバンド重要度テーブルの一例を示す図である。 本発明の第1の実施形態を示し、図4のステップS108の処理の一例を詳細に説明するフローチャートである。 本発明の第1の実施形態を示し、二部目以降の印刷を行う際のプリンタドライバ330における処理の一例を説明するフローチャートである。 本発明の第2の実施形態を示し、一部目の印刷を行う際のプリンタドライバにおける処理の一例を説明するフローチャートである。 本発明の第3の実施形態を示し、複合プリンタの構成の一例を説明するブロック図である。 本発明の第3の実施形態を示し、バンド重要度とバンド重要度テーブルの一例を示す図である。
符号の説明
100 ホストコンピュータ
106 ハードディスク
107 バンドメモリ
108 プリンタコマンドファイル
109 プリンタコマンドファイル管理テーブル
330 プリンタドライバ
900 複合プリンタ
902 RAM
905 プリントイメージ

Claims (13)

  1. 記憶装置を有し、複数部を指定する印刷要求に基づくプリンタでの印刷に用いるプリントコマンドを供給する印刷制御装置であって、
    前記印刷要求に基づき、バンド単位でプリントコマンドを生成する生成手段と、
    前記生成手段により生成されたプリントコマンドをプリンタに対して送信する送信手段と、
    前記記憶装置に記憶するバンドの優先度を設定する設定手段と、
    前記複数部の一部目の印刷の制御において、前記優先度に基づいて前記記憶装置に記憶するバンドを決定し、前記生成手段により生成されたプリントコマンドのうち、当該決定したバンドのプリントコマンドを前記記憶装置に記憶する記憶制御手段とを有し、
    前記設定手段は、前記印刷を行うページに対して設定された複数のバンドのうち、相対的に先に給紙されるバンドに対する前記優先度が相対的に低くなるように、前記優先度を設定し、
    前記複数部の二部目の印刷において、
    前記記憶制御手段により前記記憶装置に記憶されたプリントコマンドについては、当該プリントコマンドを前記送信手段によりプリンタに対して送信し、前記記憶制御手段により前記記憶装置に記憶されていないプリントコマンドについては、前記生成手段によりプリントコマンドを再度生成し、当該再度生成されたプリントコマンドを前記送信手段によりプリンタに対して送信することを特徴とする印刷制御装置。
  2. 前記記憶装置の空き容量を判定する判定手段をさらに有し、
    前記記憶制御手段は、前記プリントコマンドが前記記憶装置に記憶されることで前記判定手段により前記空き容量が閾値以下になると判定された場合、前記記憶装置に既に記憶したプリントコマンドのうち、前記優先度が相対的に低いバンドのプリントコマンドを削除することを特徴とする請求項1に記載の印刷制御装置。
  3. 前記記憶制御手段は、前記印刷に使用されるプリントコマンドのうち、描画領域を含むバンドのプリントコマンドを前記記憶装置に記憶することを特徴とする請求項1に記載の印刷制御装置。
  4. 記憶装置を有し、複数部を指定する印刷要求に基づくプリンタでの印刷に用いるプリントコマンドを供給する印刷制御装置であって、
    前記印刷要求に基づき、バンド単位でプリントコマンドを生成する生成手段と、
    前記生成手段により生成されたプリントコマンドをプリンタに対して送信する送信手段と、
    前記記憶装置に記憶するバンドの優先度を設定する設定手段と、
    前記複数部の一部目の印刷の制御において、前記優先度に基づいて前記記憶装置に記憶するバンドを決定し、前記生成手段により生成されたプリントコマンドのうち、当該決定したバンドのプリントコマンドを前記記憶装置に記憶する記憶制御手段と、を有し、
    前記設定手段は、前記印刷を行うページに対して設定された複数のバンドのうち、最初に給紙されるバンドよりも後に給紙される連続する少なくとも3つのバンドについては、前記優先度の高い部分と低い部分とが交互に生じるように、前記優先度を設定し、
    前記複数部の二部目の印刷において、
    前記記憶制御手段により前記記憶装置に記憶されたプリントコマンドについては、当該プリントコマンドを前記送信手段によりプリンタに対して送信し、前記記憶制御手段により前記記憶装置に記憶されていないプリントコマンドについては、前記生成手段によりプリントコマンドを再度生成し、当該再度生成されたプリントコマンドを前記送信手段によりプリンタに対して送信することを特徴とする印刷制御装置。
  5. 記憶装置を有し、複数部を指定する印刷要求に基づくプリンタでの印刷に用いるプリントコマンドを供給する印刷制御装置であって、
    前記印刷要求に基づき、バンド単位でプリントコマンドを生成する生成手段と、
    前記生成手段により生成されたプリントコマンドをプリンタに対して送信する送信手段と、
    前記記憶装置に記憶するバンドの優先度を設定する設定手段と、
    前記複数部の一部目の印刷の制御において、前記優先度に基づいて前記記憶装置に記憶するバンドを決定し、前記生成手段により生成されたプリントコマンドのうち、当該決定したバンドのプリントコマンドを前記記憶装置に記憶する記憶制御手段と、を有し、
    前記設定手段は、前記プリントコマンドに対するハーフトーンの処理が誤差拡散法で行われた場合の前記優先度として、前記印刷を行うページに対して設定された複数のバンドのうち、前記ハーフトーンの処理が相対的に先に行われたバンドに対する前記優先度が相対的に低くなるように、前記優先度を設定し、
    前記複数部の二部目の印刷において、
    前記記憶制御手段により前記記憶装置に記憶されたプリントコマンドについては、当該プリントコマンドを前記送信手段によりプリンタに対して送信し、前記記憶制御手段により前記記憶装置に記憶されていないプリントコマンドについては、前記生成手段によりプリントコマンドを再度生成し、当該再度生成されたプリントコマンドを前記送信手段によりプリンタに対して送信することを特徴とする印刷制御装置。
  6. 記憶装置を有し、複数部を指定する印刷要求に基づくプリンタでの印刷に用いるプリントコマンドを供給する印刷制御装置であって、
    前記印刷要求に基づき、バンド単位でプリントコマンドを生成する生成手段と、
    前記生成手段により生成されたプリントコマンドをプリンタに対して送信する送信手段と、
    前記記憶装置に記憶するバンドの優先度を設定する設定手段と、
    前記複数部の一部目の印刷の制御において、前記優先度に基づいて前記記憶装置に記憶するバンドを決定し、前記生成手段により生成されたプリントコマンドのうち、当該決定したバンドのプリントコマンドを前記記憶装置に記憶する記憶制御手段と、を有し、
    前記設定手段は、前記プリントコマンドがスキャナーの読み取り動作によって生成された場合の前記優先度として、前記印刷を行うページに対して設定された複数のバンドのうち、相対的に先にスキャンされるバンドに対する前記優先度が相対的に低くなるように、前記優先度を設定し、
    前記複数部の二部目の印刷において、
    前記記憶制御手段により前記記憶装置に記憶されたプリントコマンドについては、当該プリントコマンドを前記送信手段によりプリンタに対して送信し、前記記憶制御手段により前記記憶装置に記憶されていないプリントコマンドについては、前記生成手段によりプリントコマンドを再度生成し、当該再度生成されたプリントコマンドを前記送信手段によりプリンタに対して送信することを特徴とする印刷制御装置。
  7. 記憶装置を有し、複数部を指定する印刷要求に基づくプリンタでの印刷に用いるプリントコマンドを供給する印刷システムにおける印刷制御方法であって、
    前記印刷要求に基づき、バンド単位でプリントコマンドを生成する生成工程と、
    前記生成工程で生成されたプリントコマンドをプリンタに対して送信する送信工程と、
    前記記憶装置に記憶するバンドの優先度を設定する設定工程と、
    前記複数部の一部目の印刷の制御において、前記優先度に基づいて前記記憶装置に記憶するバンドを決定し、前記生成工程で生成されたプリントコマンドのうち、当該決定したバンドのプリントコマンドを前記記憶装置に記憶する記憶制御工程とを有し、
    前記設定工程は、前記印刷を行うページに対して設定された複数のバンドのうち、相対的に先に給紙されるバンドに対する前記優先度が相対的に低くなるように、前記優先度を設定し、
    前記複数部の二部目の印刷において、
    前記記憶制御工程で前記記憶装置に記憶されたプリントコマンドについては、当該プリントコマンドをプリンタに対して送信し、前記記憶制御工程で前記記憶装置に記憶されていないプリントコマンドについては、プリントコマンドを再度生成し、当該再度生成されたプリントコマンドをプリンタに対して送信することを特徴とする印刷制御方法。
  8. 前記記憶装置の空き容量を判定する判定工程をさらに有し、
    前記記憶制御工程は、前記プリントコマンドが前記記憶装置に記憶されることで前記判定工程により前記空き容量が閾値以下になると判定された場合、前記記憶装置に既に記憶したプリントコマンドのうち、前記優先度が相対的に低いバンドのプリントコマンドを削除することを特徴とする請求項に記載の印刷制御方法。
  9. 前記記憶制御工程は、前記印刷に使用されるプリントコマンドのうち、描画領域を含むバンドのプリントコマンドを前記記憶装置に記憶することを特徴とする請求項に記載の印刷制御方法。
  10. 記憶装置を有し、複数部を指定する印刷要求に基づくプリンタでの印刷に用いるプリントコマンドを供給する印刷システムにおける印刷制御方法であって、
    前記印刷要求に基づき、バンド単位でプリントコマンドを生成する生成工程と、
    前記生成工程で生成されたプリントコマンドをプリンタに対して送信する送信工程と、
    前記記憶装置に記憶するバンドの優先度を設定する設定工程と、
    前記複数部の一部目の印刷の制御において、前記優先度に基づいて前記記憶装置に記憶するバンドを決定し、前記生成工程で生成されたプリントコマンドのうち、当該決定したバンドのプリントコマンドを前記記憶装置に記憶する記憶制御工程と、を有し、
    前記設定工程は、前記印刷を行うページに対して設定された複数のバンドのうち、最初に給紙されるバンドよりも後に給紙される連続する少なくとも3つのバンドについては、前記優先度の高い部分と低い部分とが交互に生じるように、前記優先度を設定し、
    前記複数部の二部目の印刷において、
    前記記憶制御工程で前記記憶装置に記憶されたプリントコマンドについては、当該プリントコマンドをプリンタに対して送信し、前記記憶制御工程で前記記憶装置に記憶されていないプリントコマンドについては、プリントコマンドを再度生成し、当該再度生成されたプリントコマンドをプリンタに対して送信することを特徴とする印刷制御方法。
  11. 記憶装置を有し、複数部を指定する印刷要求に基づくプリンタでの印刷に用いるプリントコマンドを供給する印刷システムにおける印刷制御方法であって、
    前記印刷要求に基づき、バンド単位でプリントコマンドを生成する生成工程と、
    前記生成工程で生成されたプリントコマンドをプリンタに対して送信する送信工程と、
    前記記憶装置に記憶するバンドの優先度を設定する設定工程と、
    前記複数部の一部目の印刷の制御において、前記優先度に基づいて前記記憶装置に記憶するバンドを決定し、前記生成工程で生成されたプリントコマンドのうち、当該決定したバンドのプリントコマンドを前記記憶装置に記憶する記憶制御工程と、を有し、
    前記設定工程は、前記プリントコマンドに対するハーフトーンの処理が誤差拡散法で行われた場合の前記優先度として、前記印刷を行うページに対して設定された複数のバンドのうち、前記ハーフトーンの処理が相対的に先に行われたバンドに対する前記優先度が相対的に低くなるように、前記優先度を設定し、
    前記複数部の二部目の印刷において、
    前記記憶制御工程で前記記憶装置に記憶されたプリントコマンドについては、当該プリントコマンドをプリンタに対して送信し、前記記憶制御工程で前記記憶装置に記憶されていないプリントコマンドについては、プリントコマンドを再度生成し、当該再度生成されたプリントコマンドをプリンタに対して送信することを特徴とする印刷制御方法。
  12. 記憶装置を有し、複数部を指定する印刷要求に基づくプリンタでの印刷に用いるプリントコマンドを供給する印刷システムにおける印刷制御方法であって、
    前記印刷要求に基づき、バンド単位でプリントコマンドを生成する生成工程と、
    前記生成工程で生成されたプリントコマンドをプリンタに対して送信する送信工程と、
    前記記憶装置に記憶するバンドの優先度を設定する設定工程と、
    前記複数部の一部目の印刷の制御において、前記優先度に基づいて前記記憶装置に記憶するバンドを決定し、前記生成工程で生成されたプリントコマンドのうち、当該決定したバンドのプリントコマンドを前記記憶装置に記憶する記憶制御工程と、を有し、
    前記設定工程は、前記プリントコマンドがスキャナーの読み取り動作によって生成された場合の前記優先度として、前記印刷を行うページに対して設定された複数のバンドのうち、相対的に先にスキャンされるバンドに対する前記優先度が相対的に低くなるように、前記優先度を設定し、
    前記複数部の二部目の印刷において、
    前記記憶制御工程で前記記憶装置に記憶されたプリントコマンドについては、当該プリントコマンドをプリンタに対して送信し、前記記憶制御工程で前記記憶装置に記憶されていないプリントコマンドについては、プリントコマンドを再度生成し、当該再度生成されたプリントコマンドをプリンタに対して送信することを特徴とする印刷制御方法。
  13. 請求項〜1の何れか1項に記載の印刷制御方法の各工程をコンピュータに実行させることを特徴とするコンピュータプログラム。
JP2008193991A 2008-07-28 2008-07-28 印刷制御装置、印刷制御方法、及びコンピュータプログラム Expired - Fee Related JP5142872B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008193991A JP5142872B2 (ja) 2008-07-28 2008-07-28 印刷制御装置、印刷制御方法、及びコンピュータプログラム
US12/509,309 US8379270B2 (en) 2008-07-28 2009-07-24 Apparatus and method for controlling printing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008193991A JP5142872B2 (ja) 2008-07-28 2008-07-28 印刷制御装置、印刷制御方法、及びコンピュータプログラム

Publications (3)

Publication Number Publication Date
JP2010033283A JP2010033283A (ja) 2010-02-12
JP2010033283A5 JP2010033283A5 (ja) 2011-09-08
JP5142872B2 true JP5142872B2 (ja) 2013-02-13

Family

ID=41568376

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008193991A Expired - Fee Related JP5142872B2 (ja) 2008-07-28 2008-07-28 印刷制御装置、印刷制御方法、及びコンピュータプログラム

Country Status (2)

Country Link
US (1) US8379270B2 (ja)
JP (1) JP5142872B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5573132B2 (ja) * 2009-12-02 2014-08-20 株式会社リコー 印刷システム、印刷装置、プログラム、および記憶媒体
JP5760745B2 (ja) * 2011-06-28 2015-08-12 ブラザー工業株式会社 印刷装置および印刷システム
US8848251B2 (en) * 2013-01-30 2014-09-30 Hewlett-Packard Development Company, L.P. Halftoning printing with a page-wide-array printer
JP6044447B2 (ja) * 2013-05-09 2016-12-14 富士ゼロックス株式会社 原稿読取装置、画像形成装置
JP2015084172A (ja) * 2013-10-25 2015-04-30 キヤノン株式会社 情報処理装置及びプログラム、制御方法
US10685125B2 (en) 2017-04-20 2020-06-16 The Boeing Company Multiple security level monitor for monitoring a plurality of MIL-STD-1553 buses with multiple independent levels of security
US10691573B2 (en) 2017-04-20 2020-06-23 The Boeing Company Bus data monitor
US10467174B2 (en) 2017-04-20 2019-11-05 The Boeing Company System and method of monitoring data traffic on a MIL-STD-1553 data bus

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3110905B2 (ja) 1992-12-28 2000-11-20 キヤノン株式会社 データ転送装置及び方法
JP3466808B2 (ja) * 1996-02-29 2003-11-17 キヤノン株式会社 画像処理装置及び方法
US6538764B2 (en) * 1996-04-12 2003-03-25 Canon Kabushiki Kaisha Printing apparatus, information processing apparatus, data processing method for use in such an apparatus, and storage medium storing computer-readable program
JP3420457B2 (ja) * 1997-03-14 2003-06-23 キヤノン株式会社 文書処理方法及び装置
JPH11177788A (ja) * 1997-12-11 1999-07-02 Toshiba Corp 印刷制御方法および印刷装置
JP3689579B2 (ja) * 1998-02-05 2005-08-31 キヤノン株式会社 情報処理装置及び情報処理方法、記憶媒体
JP2005352744A (ja) * 2004-06-10 2005-12-22 Canon Inc データ処理装置、画像形成装置および画像形成システム

Also Published As

Publication number Publication date
JP2010033283A (ja) 2010-02-12
US20100020358A1 (en) 2010-01-28
US8379270B2 (en) 2013-02-19

Similar Documents

Publication Publication Date Title
JP5142872B2 (ja) 印刷制御装置、印刷制御方法、及びコンピュータプログラム
US7697772B2 (en) Apparatus, method and computer program product for performing image compression of image data
JP4890990B2 (ja) 画像処理装置、その画像処理装置の制御方法およびプログラム
US20070086050A1 (en) Information processing apparatus, image processing method, and machine-readable medium
JP2010160617A (ja) プリンタサーバ、画像形成装置およびこれらを用いた印刷システムとその制御方法ならびにプログラムおよび記録媒体
JP2002041261A (ja) 情報処理装置及び情報処理方法及びコンピュータ読み取り可能なプログラムを格納した記憶媒体
JP3907362B2 (ja) 印刷制御方法及び装置および印刷システム
US7664290B2 (en) Image processor, image processing method, and storage medium storing program for the combining of coded images into print images
JP4174476B2 (ja) データ処理装置およびデータ処理方法およびプリンタドライバプログラムおよび印刷制御装置および印刷制御方法および印刷システム
JP2009037539A (ja) 情報処理装置、プリフライト方法及びプログラム
JP4208901B2 (ja) 情報処理装置、画像処理装置、それらの装置の制御方法、プログラム、及びコンピュータ可読の記憶媒体
JP2006155308A (ja) 画像形成装置
JP4323742B2 (ja) 画像処理装置および画像処理装置の制御方法およびプログラム
JP2006263969A (ja) 画像処理装置及び印刷ジョブ生成装置ならびに画像処理システム
JP2007251360A (ja) 画像形成装置、画像形成装置の制御方法、および画像形成装置の制御プログラム
JP2006079192A (ja) 情報処理装置および画像処理システムおよび画像処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム
JP2005161819A (ja) 印刷装置および印刷制御方法
JP4717565B2 (ja) 画像処理装置及びその制御方法、プログラム
JP2006044056A (ja) 印刷制御装置および方法およびプログラム
JP2006150891A (ja) 画像形成装置
JP2008310774A (ja) 情報処理装置及びその制御方法、コンピュータプログラム
JP4764371B2 (ja) 画像処理装置及び画像処理方法
JP2008181450A (ja) 画像処理装置、画像処理システム及び画像処理プログラム
JPH10190936A (ja) 複合画像処理装置並びに複合画像処理装置の制御方法およびコンピュータが読出し可能なプログラムを格納した記憶媒体
JP2006023870A (ja) 情報処理装置および印刷装置およびデータ処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110726

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110726

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120731

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120801

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120927

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121023

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121120

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151130

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees