印刷制御装置、印刷制御方法、プログラム及びコンピュータ読み取り可能な記録媒体
【課題】印刷物を印刷する時点から印刷物に打ち込まれたインクが乾燥するまでの時間を短縮するとともに、出力される印刷物の方向を一定に揃える。
【解決手段】クライアントコンピュータは、印刷データに含まれる各ページデータの画素値に基づいて、所定の基準でページデータを区分した各区分領域に対応するインク打ち込み量を算出する(ステップS302)。次いで、クライアントコンピュータは、各区分領域に対応するインク打ち込み量に基づいて、ページデータ毎に回転印刷を実行するか否かを決定し、各ページデータに対する回転印刷の決定結果に基づいて、印刷データに含まれる全ページデータに対して決定された回転印刷に係る決定結果を同一の決定内容に変更する(ステップS303)。
【解決手段】クライアントコンピュータは、印刷データに含まれる各ページデータの画素値に基づいて、所定の基準でページデータを区分した各区分領域に対応するインク打ち込み量を算出する(ステップS302)。次いで、クライアントコンピュータは、各区分領域に対応するインク打ち込み量に基づいて、ページデータ毎に回転印刷を実行するか否かを決定し、各ページデータに対する回転印刷の決定結果に基づいて、印刷データに含まれる全ページデータに対して決定された回転印刷に係る決定結果を同一の決定内容に変更する(ステップS303)。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、印刷用紙等の記録媒体にインクを吐出して画像を印刷するインクジェットプリンタ等の印刷装置に対する印刷制御装置、印刷制御方法、プログラム及びコンピュータ読み取り可能な記録媒体に関するものである。
【背景技術】
【0002】
インクジェットプリンタで印刷を行う場合、用紙上に吐出されたインクが完全に乾燥するまでに一定の時間がかかる。この乾燥時間はインクの種類、印刷品位、用紙種類によって異なる。
【0003】
インクジェットプリンタで印刷を行う場合、インクが乾く前に印刷した用紙に触ると用紙表面がこすれて、こすれたインクにより用紙表面が汚れる。また、インクが乾く前に印刷した用紙に他の紙を積み重ねると、印刷を行った用紙表面がこすれたインクで汚れたり、積み重ねた紙の裏面に印刷した用紙のインクが付着して汚れたりする。
【0004】
このため、インクジェットプリンタで印刷を行う場合、1ページの印刷完了後も、吐出されたインクが乾燥するまでその用紙は利用することができない。
【0005】
この印刷完了後の乾燥待ち時間を短縮するために1ページの印刷時に、ページ前半より後半部分のインク打ち込み量が多い場合は描画データを180度回転して印刷し、インク打ち込み量の多い領域により多くの乾燥時間を割り当てるという方法が提案されている(例えば、特許文献1参照)。
【0006】
【特許文献1】特開2004−262171号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1に開示される発明は、インクの打ち込み量に基づき、印刷データを180度回転させ、インクの乾燥時間を考慮しているものの、1ページの印刷を前提としている。
【0008】
このため、複数ページの各ページに対して上記の方法を実行すると、印刷物の一部が180度回転されて印刷され、ユーザは取り出すときに向きを揃えるなど整列する必要があった。
【0009】
そこで、本発明の目的は、印刷物を印刷する時点から印刷物に打ち込まれたインクが乾燥するまでの時間を短縮するとともに、出力される印刷物の方向を一定に揃えることにある。
【課題を解決するための手段】
【0010】
本発明の印刷制御装置は、印刷データに含まれる各ページデータの画素値に基づいて、ページデータを区分した各区分領域に対応するインク打ち込み量を算出するインク打ち込み量算出手段と、前記各区分領域に対応するインク打ち込み量に基づいて、ページデータ毎に回転印刷を実行するか否かを決定する回転印刷決定手段と、各ページデータに対する回転印刷の決定結果に基づいて、前記印刷データに含まれる全ページデータに対して決定された回転印刷に係る決定内容を同一の決定内容に変更する変更手段と、記変更手段で変更された決定内容で印刷を制御する印刷制御手段とを有することを特徴とする。
本発明の印刷制御方法は、印刷制御装置による印刷制御方法であって、印刷データに含まれる各ページデータの画素値に基づいて、ページデータを区分した各区分領域に対応するインク打ち込み量を算出するインク打ち込み量算出ステップと、前記各区分領域に対応するインク打ち込み量に基づいて、ページデータ毎に回転印刷を実行するか否かを決定する回転印刷決定ステップと、各ページデータに対する回転印刷の決定結果に基づいて、前記印刷データに含まれる全ページデータに対して決定された回転印刷に係る決定内容を同一の決定内容に変更する変更ステップと、記変更ステップで変更された決定内容で印刷を制御する印刷制御ステップとを含むことを特徴とする。
本発明のプログラムは、前記印刷制御方法をコンピュータに実行させることを特徴とする。
本発明のコンピュータ読み取り可能な記録媒体は、前記プログラムを記録したことを特徴とする。
【発明の効果】
【0011】
本発明によれば、印刷物を印刷する時点から印刷物に打ち込まれたインクが乾燥するまでの時間を短縮することができるとともに、出力される印刷物の方向を一定に揃えることが可能となる。
【発明を実施するための最良の形態】
【0012】
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
【0013】
−第1の実施形態−
先ず、本発明の第1の実施形態について説明する。図1は、本発明の第1の実施形態に係る印刷制御装置を適用した印刷機器制御システムの構成を示すブロック図である。なお、本発明の機能が実行されるのであれば、印刷機器制御システムが単体の機器であっても、複数の機器からなる構成であってもよい。印刷機器制御システムが複数の機器から成る場合、LAN、WAN等のネットワークを介して接続が為され、処理が行われるシステムであってもよい。即ち、以下に説明する実施形態における各種端末の接続構成は飽くまでも一例であり、用途や目的に応じて様々な構成例があることは言うまでもない。
【0014】
図1において、100は印刷制御装置であるクライアントコンピュータである。クライアントコンピュータ100内においては、CPU101、RAM102、ROM103、入力コントローラ(入力C)105、ビデオコントローラ(VC)106、メモリコントローラ(MC)107及び通信I/F108がシステムバス104を介して接続される。
【0015】
ROM103或いは外部メモリ111には、本実施形態の特徴的な処理を実現するための印刷制御プログラム112、プリンタドライバ113、オペレーティングシステムプログラム(以下、OSと称す)114、及び、その他CPU101の制御プログラムであるBIOS(Basic Input/Output System)や各サーバ或いは各PCの実行する機能を実現するために必要な後述する各種プログラム等115が記憶されている。また、ROM103或いは外部メモリ111には、プリンタドライバ113が用いる不図示の定義ファイル及び各種情報テーブル等も記憶されている。
【0016】
本実施形態で使用するOSは、例えばウィンドウズ(登録商標)XP(マイクロソフト社製)を想定するが、これに限るものではない。
【0017】
RAM102は、CPU101の主メモリ、ワークエリア等として機能する。CPU101は、処理の実行に際して必要なプログラム等をROM103或いは外部メモリ111からRAM102にロードして実行することで各種動作、機能を実現するものである。
【0018】
また、入力コントローラ(入力C)105は、キーボード(KB)109や不図示のマウス等のポインティングデバイスからの入力を制御する。106はビデオコントローラ(VC)であり、CRTディスプレイ(CRT)110等の表示器への表示を制御する。なお、表示器はCRTだけでなく、液晶ディスプレイ等の他の表示器でも構わない。これらは必要に応じて管理者が選択的に使用するものである。
【0019】
メモリコントローラ(MC)107は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)や不図示のフレキシブルディスク(FD)或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等の外部メモリ111へのアクセスを制御する。
【0020】
通信I/Fコントローラ(通信I/FC)108は、ネットワーク302を介して、外部機器と接続・通信するものであり、ネットワーク302での通信制御処理を実行する。例えば、Ethernet(登録商標)を用いた通信でプリンタ200との間でデータ送受信等が可能である。また、Ethernet(登録商標)を用いた通信に限らず、USBを用いた通信を介してプリンタ200との間でデータ送受信等が可能であることは言うまでもない。
【0021】
なお、CPU101は、例えばRAM102内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、CRT110上での表示を可能としている。また、CPU101は、CRT110上に不図示のマウスカーソル等を表示制御して不図示のマウス等のポインティングデバイスからのユーザ指示を可能とする。
【0022】
次に、プリンタ200の構成について説明する。プリンタ200において、プリンタCPU201は、ROM203に記憶された制御プログラム等に基づいて印刷部I/F205を介してシステムバス208に接続される印刷部(プリンタエンジン)206に出力情報としての画像信号を出力する。また、ROM203には、CPU112の制御プログラム等が記憶される。また、ROM203には上記出力情報を生成する際に使用するフォントデータ等を記憶されている。
【0023】
CPU201は、入力部204を介してホストコンピュータとの通信処理が可能となっており、プリンタ200内の情報等をクライアントコンピュータ100に通知可能に構成されている。
【0024】
RAM202は、CPU201の主メモリであり、ワークエリア等として機能する。RAM202は、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。なお、RAM202は、出力情報展開領域、環境データ格納領域、NVRAM等にも用いられる。
【0025】
また、図示しないNVRAMを有し、操作部207からのプリンタモード設定情報を記憶するようにしてもよい。
【0026】
さらに、本プリンタ200は不図示のロール紙が出力可能であり、ロール紙をカットするための印刷カット部209を有している。このロール紙をカットするための制御プログラムはROM203に記憶されており、クライアントコンピュータ100よりロール紙をカットするための情報を受けてカットするタイミングを制御することも可能である。
【0027】
なお、印刷部206は、インクジェット方式を想定しているが、それ以外のプリンタであっても本発明は適用可能である。
【0028】
また、図1は、図2におけるクライアントコンピュータ100を想定して説明したが、クライアントコンピュータ100に代わってプリントサーバ300に適用できることは言うまでもない。
【0029】
本実施形態では、印刷制御プログラム112に、プリンタドライバ113が持つ制御、具体的には印刷データをプリンタが解釈できる言語に変換し、該変換したデータをプリンタ200へ送信すると言った制御を、持たせてある。なお、印刷制御プログラム112の機能をプリンタドライバ113に持たせるように構成しても良い。
【0030】
また、印刷制御プログラム112は上位のアプリケーションから受け取ったデータを印刷するように構成する。具体的には、DTPから送られてきた印刷データ(Post Script等)を印刷制御プログラム112が受け取り、ラスタデータに変換し、該変換されたデータを印刷するように構成している。
【0031】
なお、これに限ったことではなく、別のアプリケーションで後述する図3のS301の処理がなされたものを印刷制御プログラムが受け取ることで印刷を実行するように構成しても良い。
【0032】
図2は、図1に示したコンピュータ100、プリンタ200を適用可能な印刷システムの一例を示すシステム構成図である。
【0033】
図1において、400はネットワークであり、複数のクライアントコンピュータ100、プリンタ200、プリントサーバ300が接続されている。なお、クライアントコンピュータ100は複数に限定されることはない。
【0034】
この場合、クライアントコンピュータ100の通信I/Fコントローラ108は、ネットワークインタフェースカード(NIC)の機能を有するものとする。また、プリンタ200は、セントロニクスやUSB等のローカルインタフェース500を介してプリントサーバ300と接続され、該プリントサーバ300を介してネットワーク400に接続される形態であっても、ネットワーク400に直接接続される形態であってもよい。なお、プリンタ200がネットワーク400に直接接続されている場合、プリンタ200の入力部204は、ネットワークインタフェースカード(NIC)の機能を有するものとする。
【0035】
上記プリントサーバ300を介してネットワーク400に接続されるプリンタ200に各クライアントコンピュータ100から印刷ジョブを送信する場合、まず各クライアントコンピュータ100は、印刷ジョブのスケジューリング、プリンタとクライアントコンピュータとの接続制御やプリンタのステータスの管理を行っている、プリントサブシステムを介して、プリントサーバ300へ印刷ジョブを送信する。
【0036】
そして、プリントサーバ300は、各クライアントコンピュータ100から送信されてきた印刷ジョブを、不図示のプリントサーバ300上のプリントサブシステムを介して、プリンタ200へ送信する。これにより、各クライアントコンピュータ100は、プリントサーバ300を介して印刷ジョブをプリンタ200へ送信することができる。
【0037】
また、ネットワーク400に直接接続されるプリンタ200に各クライアントコンピュータ100から印刷ジョブを送信する場合、各クライアントコンピュータ100は、プリントサブシステムを介して、ネットワーク400に直接接続されるプリンタ200へ印刷ジョブを送信する。
【0038】
図3は、クライアントコンピュータ100の全体の処理を示すフローチャートである。図3に示す処理は、図1の印刷制御プログラム112によって実行されるものである。
【0039】
CPU101は、上位のアプリケーションから受け取った印刷データが保存されている、図1の外部メモリ111から当該データを読み出し、全ページ分のラスタイメージデータを生成し(ステップS301)、以降のステップS302〜ステップS304の印刷処理へ移る。尚、ラスタイメージデータは外部メモリ111のワークファイル内に保存される。ここで、ユーザがUI上で印刷データを指定し、本処理が実行されるように構成しても良い。
【0040】
続いて、CPU101は、図1の外部メモリ111のワークファイル内におけるラスタイメージデータを解析し、画素値からページ毎のインク打ち込み量を算出する(ステップS302)。ステップS302の詳細は図4を用いて説明する。
【0041】
ステップS303は、インク乾燥時間を短縮し、且つ、用紙の上下向きを揃えて印刷するための最適な方法を判定する処理である。ステップS303の詳細は図11を用いて説明する(第2の実施形態におけるステップS303の処理ついては、図5を用いて説明する)。
【0042】
続いて、CPU101は、ステップS303の判定結果に基づき、印刷イメージを作成し、プリンタ200に対して出力する(ステップS304)。ステップS304の詳細は図10を用いて説明する。
【0043】
図4は、図3のステップS302の詳細を示すフローチャートである。CPU101は、全てのページについてインク打ち込み量の算出が終了したか否かを判定し(ステップS401)、終了していたら(ステップS401/YES)、本処理が終了する。終了していなければ次のページの算出を行う。
【0044】
全てのページについてインク打ち込み量の算出が終了していない場合、CPU101は、残りの或るページについて、ページ内全ての画素毎に総インク打ち込み量を算出する(ステップS402)。具体的には、各画素のCMYKの値(0〜100%)を合計する。Cが100%というのは、色を8ビット表現した場合、255を表わす。
【0045】
続いて、CPU101は、総インク打ち込み量に応じた補正値Rを図12のルックアップテーブルを参照して、取得する(ステップS403)。
【0046】
補正値Rは、インク打ち込み量0〜400%時のインク乾燥に要する時間を、例えば、打ち込み量が100%のときを基準(=1とする)とした比の値で表し、0〜400%各打ち込み量毎にテーブルとしたものである。
【0047】
このテーブルはターゲットとなるプリンタ、インク、メディア、印字モードによって異なるものを作成し、外部メモリ111上に保持しておき、必要時にRAM102に読み出して使用する。尚、このルックアップテーブルは、各打ち込み量で乾燥に要する時間を比較し、どの程度の乾燥時間に違いがあるかを測定し、その測定結果から得られた値で作成されている。
【0048】
続いて、CPU101は、ステップS403で取得した補正値Rに基づき各画素の総インク打ち込み量を補正する(ステップS404)。例えば、ある画素値がC=100%、M=80%、Y=80%、K=30%(打ち込み量=290%)で、打ち込み量290%時の補正値をRとすると、補正後の総インク打ち込み量=290×Rとなる。補正後の画素値を総インク打ち込み量とする。上記の方法は飽くまでも一例であり、他の方法を使っても良い。
【0049】
続いて、CPU101は、ステップS404で求めた補正後の各画素の総インク打ち込み量に基づき、ページ全体、ページ前半部分及びページ後半部分の夫々について、各画素のインク打ち込み量を合計し、ページ全体の総インク打ち込み量、ページ前半部分の総インク打ち込み量及びページ後半部分の総インク打ち込み量を算出する(ステップS405)。
【0050】
例えば、図7に示す例では、4ページのページ構成を有する印刷データに対して、各ページについてページ全体、ページ前半部分及びページ後半部分の夫々について総インク打ち込み量が算出されることになる。
【0051】
図11は、図3のステップS303の詳細を示すフローチャートである。先ず、CPU101は、図4のステップS405で算出されたページ前半部分とページ後半部分の総インク打ち込み量をRAM102より取得する(ステップS1101)。尚、本処理はページ毎に行われ、初めは1ページ目の総インク打ち込み量を取得し、ステップS1102、ステップS1103(又はステップS1104)、ステップS1105の処理が終わると本処理に戻り、その後は2ページ目〜最終ページまでステップS1102〜S1105の処理を行うことによって、ページ毎に回転設定の有無を決定する。
【0052】
続いて、CPU101は、ステップS1101で取得した総インク打ち込み量がページ後半部分の方がページ前半部分より多いか否かを判定する(ステップS1102)。ページ後半部分の総インク打ち込み量の方が多い場合はステップS1103へ処理が移り、そうでない場合はステップS1104へ処理が移る。
【0053】
ステップS1103では、CPU101は、図6(a)の例えば1ページ目で示すように、当該ページの回転設定を「有」に決定する。なお、本実施形態では回転設定「有」となると180度回転するものとする。
【0054】
ステップS1104では、CPU101は、図6(a)の例えば2ページ目で示すように、当該ページの回転設定を「無」に決定する。この「無」という設定になると、180度回転させず印刷処理が行われることになる。
【0055】
続いて、CPU101は、全ページに対して回転設定を行ったかを判定する(ステップS1105)。全ページに対して回転設定がされていれば、ステップS1106へ処理が移り、そうでなければステップS1101へ処理が移る。
【0056】
続いて、CPU101は、図6(a)に示す全ページ分の「更新前」の回転有無設定(決定)情報を取得する(ステップS1106)。
【0057】
続いて、CPU101は、図6(a)に示す「更新前」の回転有無設定(決定)情報内で決定されている「有」と「無」との比率を判定する(ステップS1107)。例えば、図6(a)の[更新前]の回転有無設定(決定)情報を参照すると、「有」が3ページ、「無」が2ページであるため、「有」の比率が多いと判定される。
【0058】
「有」の比率が多いと判定されればステップS1108へ、「無」の比率が多いと判定されればステップS1109へ、「有」と「無」との比率が同じと判定されればステップS1110へ処理が移る。
【0059】
ステップS1107で「有」の比率が多いと判断された場合、CPU101は、図6(b)に示す「更新後」の回転有無設定(決定)情報のように全てのページを「有」と変更する(ステップS1108)。これにより、ページ後半部分にインク打ち込み量が多いドキュメントはページ後半部分から出力することができ、印刷の実時間を乾燥時間に割り当てることができ、乾燥の時間が短縮される。
【0060】
ステップS1107で「無」の比率が多いと判断された場合、CPU101は、全ページの回転有無設定を「無」に変更する。即ち、図6(b)に示す「更新後」の回転有無設定(決定)情報の「有」の部分が全てのページについて「無」となる。
【0061】
これにより、ページ前半部分にインク打ち込み量が多いドキュメントはページ前半部分から出力(通常印刷)されるため、印刷の実時間を乾燥時間に割り当てることができ、乾燥の時間が短縮される。
【0062】
ステップS1107で「有」と「無」の比率が同じと判断された場合、CPU101は、ユーザに回転させるか否かを選択させるための不図示の画面を表示させる(ステップS1110)。
【0063】
ステップS1110に引き続き、CPU101は、ステップS1111で表示させた画面で入力された回転設定で、全ページの回転有無設定を行う(ステップS1111)。
【0064】
ステップS1112では、CPU101は、逆順印刷設定を行わないために、RAM102に逆順印刷設定を「無」と記憶させる。
【0065】
図10は、図3のステップS304の詳細を示すフローチャートである。先ず、CPU101は、全ページに対する印刷処理を終了したかを判断する(ステップS1001)。終了してなければステップS1002へ進む。終了していれば印刷処理を終了する。
【0066】
続いて、CPU101は、図11のステップS1112(第2の実施形態では図5のステップS513)で設定した情報に基づき、逆順印刷が設定されているかを判断する(ステップS1002)。
【0067】
逆順印刷が設定されている場合(ステップS1002/YES)、CPU101は、出力されていない最後尾のページデータを取得する(ステップS1003)。
【0068】
逆順印刷が設定されていない場合(ステップS1002/NO)、CPU101は、出力されていない最先頭のページのイメージデータを取得する(ステップS1004)。
【0069】
続いて、CPU101は、図6(b)に示す「更新後」の回転有無設定情報を参照し、該当するページを180度回転するか否かを判定する(ステップS1005)。180度回転すると判定された場合は(ステップS1005/YES)、ステップS1006へ処理が移り、そうでない場合は、ステップS1006を実行せず、ステップS1007へ処理が移る。ステップS1006では、該当するページを180度回転したデータを作成される。
【0070】
ステップS1007では、CPU101は、ステップS1006で180度回転したデータ、又は、ステップS1003或いはS1004で取得したデータを印刷データに変換(例えば、PDL変換)し、プリンタ200に出力する(ステップS1007)。
【0071】
続いて、CPU101は、ステップS1007で出力されたデータのページを印刷済みに設定する(ステップS1008)。これは、RAM102にページ数情報と印刷済み情報を記憶させておくことによって実現可能である。
【0072】
上述した第1の実施形態では、インク打ち込み量と補正量を考慮し、ページ毎に決定した回転の有無の比率に基づいて、全体ページの回転方向を一定にし(例えば、「有」が「無」より多ければ、全てのページについて「有」に変更)、乾燥時間を必要とするページの部分を先に印刷できるため、乾燥時間を短くすることができる。また、ユーザが取り出すときに印刷物の方向を整える必要がなくなり使い勝手が向上する。
【0073】
また、第1の実施形態では、インク打ち込み量が多い画素に対して補正値を適用することにより、重ね打ちの場合の乾きにくさを打ち込み量に反映(表現)することができるので、より精度の高いインク打ち込み量を算出することができる。つまり、よりインク乾燥待ち時間を短くすることができる。
【0074】
−第2の実施形態−
次に、本発明の第2の実施形態について説明する。本実施形態では、実印刷時間(インクを打ち込んでいる時間)を乾燥時間に最大限あてられるよう、印刷データにおけるページ前半部分とページ後半部分、印刷データにおける前半ページと後半ページ部分のインク打ち込み量を考慮し、実際に印刷が始まってから印刷物が使用可能になるまでの時間をさらに短くすることができるものである。
【0075】
本実施形態は、第1の実施形態における図11の処理を図5の処理に置き換えたものであり、その他の処理は同様である。また、構成も第1の実施形態と同様であるため、本実施形態における構成及び第1の実施形態と同様の処理については説明を省略する。
【0076】
図5は、図3のステップS303の詳細を示すフローチャートである。ここでは、最適な出力を求める際にページを回転させるが、回転角を180度として説明する。なお、回転角が180度ではなく、90度や270度であっても一定の効果を奏することができる。
【0077】
先ず、CPU101は、全てのページについて180度回転処理の要、不要の判定が終了したかを判断する(ステップS501)。全ページについて180度回転処理の要、不要の判定が終了したら処理はステップS506に移り、全ページについて180度回転処理の要、不要の判定が終了していなければ、ステップS502の処理に移る。
【0078】
ステップS502では、CPU101は、該当するページのページ前半部分とページ後半部分のインク打ち込み量を比較する(ステップS502)。
【0079】
続いて、CPU101は、ページ前半部分よりページ後半部分の方がインク打ち込み量が多いか否かを判定する(ステップS503)。ページ後半部分の方がインク打ち込み量が多い場合は、処理はステップS504に移り、ページ後半部分の方がインク打ち込み量が多くない場合は、処理はステップS505に移る。
【0080】
ステップS504では、CPU101は、該当するページについて180度回転するように決定する。ステップS505では、CPU101は、該当するページについて回転しないように決定する。このようにして、全ページについての回転処理の決定結果が図6(a)に示すようにRAM102上に記憶される。
【0081】
全ページについて回転処理の決定がなされると、CPU101は、図6(a)の回転処理の決定結果を参照し、各ページの回転処理の有無をチェックする(ステップS506)。その結果、回転するページと回転しないページが混在している場合は、ステップS507へ処理が移る。混在しておらず、全ページについて同じ向きの決定(全てのページを回転する、又は、全てのページを回転させない旨の決定)がなされている場合、処理はステップS511に移る。
【0082】
ステップS507では、CPU101は、図4のステップS405で求めた各ページのページ前半部分とページ後半部分とのインク打ち込み量に基づいて、全ページに亘るページ前半部分のインク打ち込み量の合計と、全ページに亘るページ後半部分のインク打ち込み量の合計とを求めて、それらを比較する。
【0083】
続いて、CPU101は、ページ後半部分のインク打ち込み量の合計の方がページ前半部分のインク打ち込み量の合計より大きいか否かを判断する(ステップS508)。ページ後半部分のインク打ち込み量の合計の方が大きい場合、処理はステップS509に移り、ページ後半部分のインク打ち込み量の合計の方が大きくない場合、処理はステップS510に移る。
【0084】
ステップS509では、CPU101は、全てのページについて180度回転を決定定する。このように決定すると、図6(b)に示すように回転設定(決定)情報は全てのページについて「有」となる。ステップS510では、CPU101は、全てのページについて回転設定を「無」とする。このように決定すると、図6(b)では全てのページについて「有」となっているが、これらが全て「無」と決定されることになる。
【0085】
ステップS511では、CPU101は、図4のステップS405で求めた各ページのページ全体のインク打ち込み量に基づいて、前半ページのインク打ち込み量の合計と後半ページのインク打ち込み量の合計を算出し、それらを比較する。後半ページのインク打ち込み量の合計の方が大きい場合は、処理はステップS513に移り、後半ページのインク打ち込み量の合計の方が大きくない場合には、処理は終了する。
【0086】
例えば、図8に示す例では、4ページのページ構成を有する印刷データに対して、1ページ目のページ全体のインク打ち込み量と2ページ目のページ全体のインク打ち込み量との合計を、前半ページのインク打ち込み量として算出し、3ページ目のページ全体のインク打ち込み量と4ページ目のページ全体のインク打ち込み量との合計を、後半ページのインク打ち込み量として算出することになる。
【0087】
後半ページのインク打ち込み量の合計の方が大きい場合(ステップS512/YES)、CPU101は、逆順印刷を行うように設定し、その判定結果を図1のRAM102上に記憶しておく(ステップS513)。この設定内容は、図10のステップS1002の判定処理にて使用される。
【0088】
このように、本実施形態では、180度回転の有無及び逆順印刷の有無の判定、設定を行うことで、図9に示す(a)〜(d)の何れかの態様で出力されることになる。図9(a)に示す出力態様は、ステップS510で全ページについて回転設定が「無」と決定され、且つステップS513で逆順印刷が設定されなかった場合(正順印刷)の出力態様である。図9(b)に示す出力態様は、ステップS510で全ページについて回転設定が「無」と決定され、且つステップS513で逆順印刷が設定された場合の出力態様である。図9(c)に示す出力態様は、ステップS509で全ページについて回転設定が「有」と決定され、且つステップS513で逆順印刷が設定されなかった場合(正順印刷)の出力態様である。図9(d)に示す出力態様は、ステップS509で全ページについて回転設定が「有」と決定され、且つステップS513で逆順印刷が設定された場合の出力態様である。
【0089】
上述したように、本実施形態においては、印刷物の乾燥しにくい領域、つまり全ページに亘ってページ内のページ前半部分とページ後半部分とのどちらのインク打ち込み量が多いか、さらに、全ページに亘って前半ページと後半ページとのどちらのインク打ち込み量が多いかを判定し、その判定結果に適した態様で印刷物の出力態様を切り替えることができる。詳細には、後半の印刷ページに打ち込み量が多い場合に、逆順印刷(印刷データの後半から印刷)をさせると、印刷する実時間(用紙にインクを打ち込んでいる時間)が乾燥時間に割り当てられるため、余分な乾燥時間がかからない。このように、本実施形態にでは、インク打ち込み量の多い箇所により多くの乾燥時間を割り当てることができるため、印刷物が最終的に乾燥するまでの時間を短くすることができる。
【0090】
また、通常は、ページとページの間に乾燥時間が設定されている。本実施形態による印刷制御方法を用いることによってこの事前に設定しておく乾燥時間も短く設定することが可能となる。
【0091】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体をシステム或いは装置に供給し、そのシステム等のコンピュータが記憶媒体からプログラムコードを読み出し実行することによっても達成される。
【0092】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0093】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0094】
また、コンピュータが読み出したプログラムコードの指示に基づき、コンピュータ上で稼動しているOS等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0095】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに接続された機能拡張ユニット等に備わるメモリに書込まれた後、そのプログラムコードの指示に基づきCPU等が実際の処理を行い、前述した実施形態の機能が実現される場合も含まれる。
【図面の簡単な説明】
【0096】
【図1】本発明の実施形態に係る印刷制御装置を適用した印刷機器制御システムの構成を示すブロック図である。
【図2】図1に示したコンピュータ、プリンタを適用可能な印刷システムの一例を示すシステム構成図である。
【図3】クライアントコンピュータの全体の処理を示すフローチャートである。
【図4】図3のステップS302の詳細を示すフローチャートである。
【図5】図3のステップS303の詳細を示すフローチャートである。
【図6】各ページの回転処理の設定結果(決定結果)を示す図である。
【図7】ページ全体、ページ前半部分及びページ後半部分の夫々について総インク打ち込み量を算出する方法を具体的に説明するための図である。
【図8】前半ページと後半ページとのインク打ち込み量を算出する方法を具体的に説明するための図である。
【図9】印刷物の出力態様の種類を示す図である。
【図10】図3のステップS304の詳細を示すフローチャートである。
【図11】図3のステップS303の詳細を示すフローチャートである。
【図12】インク打ち込み量と補正値とを対応付けたルックアップテーブルの構成例を示す図である。
【符号の説明】
【0097】
101、201:CPU
102、202:RAM
103、203:ROM
104:システムバス
105:入力コントローラ(入力C)
106:ビデオコントローラ(VC)
107:メモリコントローラ(MC)
108:通信I/F
109:キーボード(KB)
110:CRT
111:外部メモリ
112:印刷制御プログラム
113:プリンタドライバ
114:OS
115:その他のプログラム
200:プリンタ
204:入力部
205:印刷部I/F
206:印刷部
207:操作部
209:用紙カット部
【技術分野】
【0001】
本発明は、印刷用紙等の記録媒体にインクを吐出して画像を印刷するインクジェットプリンタ等の印刷装置に対する印刷制御装置、印刷制御方法、プログラム及びコンピュータ読み取り可能な記録媒体に関するものである。
【背景技術】
【0002】
インクジェットプリンタで印刷を行う場合、用紙上に吐出されたインクが完全に乾燥するまでに一定の時間がかかる。この乾燥時間はインクの種類、印刷品位、用紙種類によって異なる。
【0003】
インクジェットプリンタで印刷を行う場合、インクが乾く前に印刷した用紙に触ると用紙表面がこすれて、こすれたインクにより用紙表面が汚れる。また、インクが乾く前に印刷した用紙に他の紙を積み重ねると、印刷を行った用紙表面がこすれたインクで汚れたり、積み重ねた紙の裏面に印刷した用紙のインクが付着して汚れたりする。
【0004】
このため、インクジェットプリンタで印刷を行う場合、1ページの印刷完了後も、吐出されたインクが乾燥するまでその用紙は利用することができない。
【0005】
この印刷完了後の乾燥待ち時間を短縮するために1ページの印刷時に、ページ前半より後半部分のインク打ち込み量が多い場合は描画データを180度回転して印刷し、インク打ち込み量の多い領域により多くの乾燥時間を割り当てるという方法が提案されている(例えば、特許文献1参照)。
【0006】
【特許文献1】特開2004−262171号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1に開示される発明は、インクの打ち込み量に基づき、印刷データを180度回転させ、インクの乾燥時間を考慮しているものの、1ページの印刷を前提としている。
【0008】
このため、複数ページの各ページに対して上記の方法を実行すると、印刷物の一部が180度回転されて印刷され、ユーザは取り出すときに向きを揃えるなど整列する必要があった。
【0009】
そこで、本発明の目的は、印刷物を印刷する時点から印刷物に打ち込まれたインクが乾燥するまでの時間を短縮するとともに、出力される印刷物の方向を一定に揃えることにある。
【課題を解決するための手段】
【0010】
本発明の印刷制御装置は、印刷データに含まれる各ページデータの画素値に基づいて、ページデータを区分した各区分領域に対応するインク打ち込み量を算出するインク打ち込み量算出手段と、前記各区分領域に対応するインク打ち込み量に基づいて、ページデータ毎に回転印刷を実行するか否かを決定する回転印刷決定手段と、各ページデータに対する回転印刷の決定結果に基づいて、前記印刷データに含まれる全ページデータに対して決定された回転印刷に係る決定内容を同一の決定内容に変更する変更手段と、記変更手段で変更された決定内容で印刷を制御する印刷制御手段とを有することを特徴とする。
本発明の印刷制御方法は、印刷制御装置による印刷制御方法であって、印刷データに含まれる各ページデータの画素値に基づいて、ページデータを区分した各区分領域に対応するインク打ち込み量を算出するインク打ち込み量算出ステップと、前記各区分領域に対応するインク打ち込み量に基づいて、ページデータ毎に回転印刷を実行するか否かを決定する回転印刷決定ステップと、各ページデータに対する回転印刷の決定結果に基づいて、前記印刷データに含まれる全ページデータに対して決定された回転印刷に係る決定内容を同一の決定内容に変更する変更ステップと、記変更ステップで変更された決定内容で印刷を制御する印刷制御ステップとを含むことを特徴とする。
本発明のプログラムは、前記印刷制御方法をコンピュータに実行させることを特徴とする。
本発明のコンピュータ読み取り可能な記録媒体は、前記プログラムを記録したことを特徴とする。
【発明の効果】
【0011】
本発明によれば、印刷物を印刷する時点から印刷物に打ち込まれたインクが乾燥するまでの時間を短縮することができるとともに、出力される印刷物の方向を一定に揃えることが可能となる。
【発明を実施するための最良の形態】
【0012】
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
【0013】
−第1の実施形態−
先ず、本発明の第1の実施形態について説明する。図1は、本発明の第1の実施形態に係る印刷制御装置を適用した印刷機器制御システムの構成を示すブロック図である。なお、本発明の機能が実行されるのであれば、印刷機器制御システムが単体の機器であっても、複数の機器からなる構成であってもよい。印刷機器制御システムが複数の機器から成る場合、LAN、WAN等のネットワークを介して接続が為され、処理が行われるシステムであってもよい。即ち、以下に説明する実施形態における各種端末の接続構成は飽くまでも一例であり、用途や目的に応じて様々な構成例があることは言うまでもない。
【0014】
図1において、100は印刷制御装置であるクライアントコンピュータである。クライアントコンピュータ100内においては、CPU101、RAM102、ROM103、入力コントローラ(入力C)105、ビデオコントローラ(VC)106、メモリコントローラ(MC)107及び通信I/F108がシステムバス104を介して接続される。
【0015】
ROM103或いは外部メモリ111には、本実施形態の特徴的な処理を実現するための印刷制御プログラム112、プリンタドライバ113、オペレーティングシステムプログラム(以下、OSと称す)114、及び、その他CPU101の制御プログラムであるBIOS(Basic Input/Output System)や各サーバ或いは各PCの実行する機能を実現するために必要な後述する各種プログラム等115が記憶されている。また、ROM103或いは外部メモリ111には、プリンタドライバ113が用いる不図示の定義ファイル及び各種情報テーブル等も記憶されている。
【0016】
本実施形態で使用するOSは、例えばウィンドウズ(登録商標)XP(マイクロソフト社製)を想定するが、これに限るものではない。
【0017】
RAM102は、CPU101の主メモリ、ワークエリア等として機能する。CPU101は、処理の実行に際して必要なプログラム等をROM103或いは外部メモリ111からRAM102にロードして実行することで各種動作、機能を実現するものである。
【0018】
また、入力コントローラ(入力C)105は、キーボード(KB)109や不図示のマウス等のポインティングデバイスからの入力を制御する。106はビデオコントローラ(VC)であり、CRTディスプレイ(CRT)110等の表示器への表示を制御する。なお、表示器はCRTだけでなく、液晶ディスプレイ等の他の表示器でも構わない。これらは必要に応じて管理者が選択的に使用するものである。
【0019】
メモリコントローラ(MC)107は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)や不図示のフレキシブルディスク(FD)或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等の外部メモリ111へのアクセスを制御する。
【0020】
通信I/Fコントローラ(通信I/FC)108は、ネットワーク302を介して、外部機器と接続・通信するものであり、ネットワーク302での通信制御処理を実行する。例えば、Ethernet(登録商標)を用いた通信でプリンタ200との間でデータ送受信等が可能である。また、Ethernet(登録商標)を用いた通信に限らず、USBを用いた通信を介してプリンタ200との間でデータ送受信等が可能であることは言うまでもない。
【0021】
なお、CPU101は、例えばRAM102内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、CRT110上での表示を可能としている。また、CPU101は、CRT110上に不図示のマウスカーソル等を表示制御して不図示のマウス等のポインティングデバイスからのユーザ指示を可能とする。
【0022】
次に、プリンタ200の構成について説明する。プリンタ200において、プリンタCPU201は、ROM203に記憶された制御プログラム等に基づいて印刷部I/F205を介してシステムバス208に接続される印刷部(プリンタエンジン)206に出力情報としての画像信号を出力する。また、ROM203には、CPU112の制御プログラム等が記憶される。また、ROM203には上記出力情報を生成する際に使用するフォントデータ等を記憶されている。
【0023】
CPU201は、入力部204を介してホストコンピュータとの通信処理が可能となっており、プリンタ200内の情報等をクライアントコンピュータ100に通知可能に構成されている。
【0024】
RAM202は、CPU201の主メモリであり、ワークエリア等として機能する。RAM202は、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。なお、RAM202は、出力情報展開領域、環境データ格納領域、NVRAM等にも用いられる。
【0025】
また、図示しないNVRAMを有し、操作部207からのプリンタモード設定情報を記憶するようにしてもよい。
【0026】
さらに、本プリンタ200は不図示のロール紙が出力可能であり、ロール紙をカットするための印刷カット部209を有している。このロール紙をカットするための制御プログラムはROM203に記憶されており、クライアントコンピュータ100よりロール紙をカットするための情報を受けてカットするタイミングを制御することも可能である。
【0027】
なお、印刷部206は、インクジェット方式を想定しているが、それ以外のプリンタであっても本発明は適用可能である。
【0028】
また、図1は、図2におけるクライアントコンピュータ100を想定して説明したが、クライアントコンピュータ100に代わってプリントサーバ300に適用できることは言うまでもない。
【0029】
本実施形態では、印刷制御プログラム112に、プリンタドライバ113が持つ制御、具体的には印刷データをプリンタが解釈できる言語に変換し、該変換したデータをプリンタ200へ送信すると言った制御を、持たせてある。なお、印刷制御プログラム112の機能をプリンタドライバ113に持たせるように構成しても良い。
【0030】
また、印刷制御プログラム112は上位のアプリケーションから受け取ったデータを印刷するように構成する。具体的には、DTPから送られてきた印刷データ(Post Script等)を印刷制御プログラム112が受け取り、ラスタデータに変換し、該変換されたデータを印刷するように構成している。
【0031】
なお、これに限ったことではなく、別のアプリケーションで後述する図3のS301の処理がなされたものを印刷制御プログラムが受け取ることで印刷を実行するように構成しても良い。
【0032】
図2は、図1に示したコンピュータ100、プリンタ200を適用可能な印刷システムの一例を示すシステム構成図である。
【0033】
図1において、400はネットワークであり、複数のクライアントコンピュータ100、プリンタ200、プリントサーバ300が接続されている。なお、クライアントコンピュータ100は複数に限定されることはない。
【0034】
この場合、クライアントコンピュータ100の通信I/Fコントローラ108は、ネットワークインタフェースカード(NIC)の機能を有するものとする。また、プリンタ200は、セントロニクスやUSB等のローカルインタフェース500を介してプリントサーバ300と接続され、該プリントサーバ300を介してネットワーク400に接続される形態であっても、ネットワーク400に直接接続される形態であってもよい。なお、プリンタ200がネットワーク400に直接接続されている場合、プリンタ200の入力部204は、ネットワークインタフェースカード(NIC)の機能を有するものとする。
【0035】
上記プリントサーバ300を介してネットワーク400に接続されるプリンタ200に各クライアントコンピュータ100から印刷ジョブを送信する場合、まず各クライアントコンピュータ100は、印刷ジョブのスケジューリング、プリンタとクライアントコンピュータとの接続制御やプリンタのステータスの管理を行っている、プリントサブシステムを介して、プリントサーバ300へ印刷ジョブを送信する。
【0036】
そして、プリントサーバ300は、各クライアントコンピュータ100から送信されてきた印刷ジョブを、不図示のプリントサーバ300上のプリントサブシステムを介して、プリンタ200へ送信する。これにより、各クライアントコンピュータ100は、プリントサーバ300を介して印刷ジョブをプリンタ200へ送信することができる。
【0037】
また、ネットワーク400に直接接続されるプリンタ200に各クライアントコンピュータ100から印刷ジョブを送信する場合、各クライアントコンピュータ100は、プリントサブシステムを介して、ネットワーク400に直接接続されるプリンタ200へ印刷ジョブを送信する。
【0038】
図3は、クライアントコンピュータ100の全体の処理を示すフローチャートである。図3に示す処理は、図1の印刷制御プログラム112によって実行されるものである。
【0039】
CPU101は、上位のアプリケーションから受け取った印刷データが保存されている、図1の外部メモリ111から当該データを読み出し、全ページ分のラスタイメージデータを生成し(ステップS301)、以降のステップS302〜ステップS304の印刷処理へ移る。尚、ラスタイメージデータは外部メモリ111のワークファイル内に保存される。ここで、ユーザがUI上で印刷データを指定し、本処理が実行されるように構成しても良い。
【0040】
続いて、CPU101は、図1の外部メモリ111のワークファイル内におけるラスタイメージデータを解析し、画素値からページ毎のインク打ち込み量を算出する(ステップS302)。ステップS302の詳細は図4を用いて説明する。
【0041】
ステップS303は、インク乾燥時間を短縮し、且つ、用紙の上下向きを揃えて印刷するための最適な方法を判定する処理である。ステップS303の詳細は図11を用いて説明する(第2の実施形態におけるステップS303の処理ついては、図5を用いて説明する)。
【0042】
続いて、CPU101は、ステップS303の判定結果に基づき、印刷イメージを作成し、プリンタ200に対して出力する(ステップS304)。ステップS304の詳細は図10を用いて説明する。
【0043】
図4は、図3のステップS302の詳細を示すフローチャートである。CPU101は、全てのページについてインク打ち込み量の算出が終了したか否かを判定し(ステップS401)、終了していたら(ステップS401/YES)、本処理が終了する。終了していなければ次のページの算出を行う。
【0044】
全てのページについてインク打ち込み量の算出が終了していない場合、CPU101は、残りの或るページについて、ページ内全ての画素毎に総インク打ち込み量を算出する(ステップS402)。具体的には、各画素のCMYKの値(0〜100%)を合計する。Cが100%というのは、色を8ビット表現した場合、255を表わす。
【0045】
続いて、CPU101は、総インク打ち込み量に応じた補正値Rを図12のルックアップテーブルを参照して、取得する(ステップS403)。
【0046】
補正値Rは、インク打ち込み量0〜400%時のインク乾燥に要する時間を、例えば、打ち込み量が100%のときを基準(=1とする)とした比の値で表し、0〜400%各打ち込み量毎にテーブルとしたものである。
【0047】
このテーブルはターゲットとなるプリンタ、インク、メディア、印字モードによって異なるものを作成し、外部メモリ111上に保持しておき、必要時にRAM102に読み出して使用する。尚、このルックアップテーブルは、各打ち込み量で乾燥に要する時間を比較し、どの程度の乾燥時間に違いがあるかを測定し、その測定結果から得られた値で作成されている。
【0048】
続いて、CPU101は、ステップS403で取得した補正値Rに基づき各画素の総インク打ち込み量を補正する(ステップS404)。例えば、ある画素値がC=100%、M=80%、Y=80%、K=30%(打ち込み量=290%)で、打ち込み量290%時の補正値をRとすると、補正後の総インク打ち込み量=290×Rとなる。補正後の画素値を総インク打ち込み量とする。上記の方法は飽くまでも一例であり、他の方法を使っても良い。
【0049】
続いて、CPU101は、ステップS404で求めた補正後の各画素の総インク打ち込み量に基づき、ページ全体、ページ前半部分及びページ後半部分の夫々について、各画素のインク打ち込み量を合計し、ページ全体の総インク打ち込み量、ページ前半部分の総インク打ち込み量及びページ後半部分の総インク打ち込み量を算出する(ステップS405)。
【0050】
例えば、図7に示す例では、4ページのページ構成を有する印刷データに対して、各ページについてページ全体、ページ前半部分及びページ後半部分の夫々について総インク打ち込み量が算出されることになる。
【0051】
図11は、図3のステップS303の詳細を示すフローチャートである。先ず、CPU101は、図4のステップS405で算出されたページ前半部分とページ後半部分の総インク打ち込み量をRAM102より取得する(ステップS1101)。尚、本処理はページ毎に行われ、初めは1ページ目の総インク打ち込み量を取得し、ステップS1102、ステップS1103(又はステップS1104)、ステップS1105の処理が終わると本処理に戻り、その後は2ページ目〜最終ページまでステップS1102〜S1105の処理を行うことによって、ページ毎に回転設定の有無を決定する。
【0052】
続いて、CPU101は、ステップS1101で取得した総インク打ち込み量がページ後半部分の方がページ前半部分より多いか否かを判定する(ステップS1102)。ページ後半部分の総インク打ち込み量の方が多い場合はステップS1103へ処理が移り、そうでない場合はステップS1104へ処理が移る。
【0053】
ステップS1103では、CPU101は、図6(a)の例えば1ページ目で示すように、当該ページの回転設定を「有」に決定する。なお、本実施形態では回転設定「有」となると180度回転するものとする。
【0054】
ステップS1104では、CPU101は、図6(a)の例えば2ページ目で示すように、当該ページの回転設定を「無」に決定する。この「無」という設定になると、180度回転させず印刷処理が行われることになる。
【0055】
続いて、CPU101は、全ページに対して回転設定を行ったかを判定する(ステップS1105)。全ページに対して回転設定がされていれば、ステップS1106へ処理が移り、そうでなければステップS1101へ処理が移る。
【0056】
続いて、CPU101は、図6(a)に示す全ページ分の「更新前」の回転有無設定(決定)情報を取得する(ステップS1106)。
【0057】
続いて、CPU101は、図6(a)に示す「更新前」の回転有無設定(決定)情報内で決定されている「有」と「無」との比率を判定する(ステップS1107)。例えば、図6(a)の[更新前]の回転有無設定(決定)情報を参照すると、「有」が3ページ、「無」が2ページであるため、「有」の比率が多いと判定される。
【0058】
「有」の比率が多いと判定されればステップS1108へ、「無」の比率が多いと判定されればステップS1109へ、「有」と「無」との比率が同じと判定されればステップS1110へ処理が移る。
【0059】
ステップS1107で「有」の比率が多いと判断された場合、CPU101は、図6(b)に示す「更新後」の回転有無設定(決定)情報のように全てのページを「有」と変更する(ステップS1108)。これにより、ページ後半部分にインク打ち込み量が多いドキュメントはページ後半部分から出力することができ、印刷の実時間を乾燥時間に割り当てることができ、乾燥の時間が短縮される。
【0060】
ステップS1107で「無」の比率が多いと判断された場合、CPU101は、全ページの回転有無設定を「無」に変更する。即ち、図6(b)に示す「更新後」の回転有無設定(決定)情報の「有」の部分が全てのページについて「無」となる。
【0061】
これにより、ページ前半部分にインク打ち込み量が多いドキュメントはページ前半部分から出力(通常印刷)されるため、印刷の実時間を乾燥時間に割り当てることができ、乾燥の時間が短縮される。
【0062】
ステップS1107で「有」と「無」の比率が同じと判断された場合、CPU101は、ユーザに回転させるか否かを選択させるための不図示の画面を表示させる(ステップS1110)。
【0063】
ステップS1110に引き続き、CPU101は、ステップS1111で表示させた画面で入力された回転設定で、全ページの回転有無設定を行う(ステップS1111)。
【0064】
ステップS1112では、CPU101は、逆順印刷設定を行わないために、RAM102に逆順印刷設定を「無」と記憶させる。
【0065】
図10は、図3のステップS304の詳細を示すフローチャートである。先ず、CPU101は、全ページに対する印刷処理を終了したかを判断する(ステップS1001)。終了してなければステップS1002へ進む。終了していれば印刷処理を終了する。
【0066】
続いて、CPU101は、図11のステップS1112(第2の実施形態では図5のステップS513)で設定した情報に基づき、逆順印刷が設定されているかを判断する(ステップS1002)。
【0067】
逆順印刷が設定されている場合(ステップS1002/YES)、CPU101は、出力されていない最後尾のページデータを取得する(ステップS1003)。
【0068】
逆順印刷が設定されていない場合(ステップS1002/NO)、CPU101は、出力されていない最先頭のページのイメージデータを取得する(ステップS1004)。
【0069】
続いて、CPU101は、図6(b)に示す「更新後」の回転有無設定情報を参照し、該当するページを180度回転するか否かを判定する(ステップS1005)。180度回転すると判定された場合は(ステップS1005/YES)、ステップS1006へ処理が移り、そうでない場合は、ステップS1006を実行せず、ステップS1007へ処理が移る。ステップS1006では、該当するページを180度回転したデータを作成される。
【0070】
ステップS1007では、CPU101は、ステップS1006で180度回転したデータ、又は、ステップS1003或いはS1004で取得したデータを印刷データに変換(例えば、PDL変換)し、プリンタ200に出力する(ステップS1007)。
【0071】
続いて、CPU101は、ステップS1007で出力されたデータのページを印刷済みに設定する(ステップS1008)。これは、RAM102にページ数情報と印刷済み情報を記憶させておくことによって実現可能である。
【0072】
上述した第1の実施形態では、インク打ち込み量と補正量を考慮し、ページ毎に決定した回転の有無の比率に基づいて、全体ページの回転方向を一定にし(例えば、「有」が「無」より多ければ、全てのページについて「有」に変更)、乾燥時間を必要とするページの部分を先に印刷できるため、乾燥時間を短くすることができる。また、ユーザが取り出すときに印刷物の方向を整える必要がなくなり使い勝手が向上する。
【0073】
また、第1の実施形態では、インク打ち込み量が多い画素に対して補正値を適用することにより、重ね打ちの場合の乾きにくさを打ち込み量に反映(表現)することができるので、より精度の高いインク打ち込み量を算出することができる。つまり、よりインク乾燥待ち時間を短くすることができる。
【0074】
−第2の実施形態−
次に、本発明の第2の実施形態について説明する。本実施形態では、実印刷時間(インクを打ち込んでいる時間)を乾燥時間に最大限あてられるよう、印刷データにおけるページ前半部分とページ後半部分、印刷データにおける前半ページと後半ページ部分のインク打ち込み量を考慮し、実際に印刷が始まってから印刷物が使用可能になるまでの時間をさらに短くすることができるものである。
【0075】
本実施形態は、第1の実施形態における図11の処理を図5の処理に置き換えたものであり、その他の処理は同様である。また、構成も第1の実施形態と同様であるため、本実施形態における構成及び第1の実施形態と同様の処理については説明を省略する。
【0076】
図5は、図3のステップS303の詳細を示すフローチャートである。ここでは、最適な出力を求める際にページを回転させるが、回転角を180度として説明する。なお、回転角が180度ではなく、90度や270度であっても一定の効果を奏することができる。
【0077】
先ず、CPU101は、全てのページについて180度回転処理の要、不要の判定が終了したかを判断する(ステップS501)。全ページについて180度回転処理の要、不要の判定が終了したら処理はステップS506に移り、全ページについて180度回転処理の要、不要の判定が終了していなければ、ステップS502の処理に移る。
【0078】
ステップS502では、CPU101は、該当するページのページ前半部分とページ後半部分のインク打ち込み量を比較する(ステップS502)。
【0079】
続いて、CPU101は、ページ前半部分よりページ後半部分の方がインク打ち込み量が多いか否かを判定する(ステップS503)。ページ後半部分の方がインク打ち込み量が多い場合は、処理はステップS504に移り、ページ後半部分の方がインク打ち込み量が多くない場合は、処理はステップS505に移る。
【0080】
ステップS504では、CPU101は、該当するページについて180度回転するように決定する。ステップS505では、CPU101は、該当するページについて回転しないように決定する。このようにして、全ページについての回転処理の決定結果が図6(a)に示すようにRAM102上に記憶される。
【0081】
全ページについて回転処理の決定がなされると、CPU101は、図6(a)の回転処理の決定結果を参照し、各ページの回転処理の有無をチェックする(ステップS506)。その結果、回転するページと回転しないページが混在している場合は、ステップS507へ処理が移る。混在しておらず、全ページについて同じ向きの決定(全てのページを回転する、又は、全てのページを回転させない旨の決定)がなされている場合、処理はステップS511に移る。
【0082】
ステップS507では、CPU101は、図4のステップS405で求めた各ページのページ前半部分とページ後半部分とのインク打ち込み量に基づいて、全ページに亘るページ前半部分のインク打ち込み量の合計と、全ページに亘るページ後半部分のインク打ち込み量の合計とを求めて、それらを比較する。
【0083】
続いて、CPU101は、ページ後半部分のインク打ち込み量の合計の方がページ前半部分のインク打ち込み量の合計より大きいか否かを判断する(ステップS508)。ページ後半部分のインク打ち込み量の合計の方が大きい場合、処理はステップS509に移り、ページ後半部分のインク打ち込み量の合計の方が大きくない場合、処理はステップS510に移る。
【0084】
ステップS509では、CPU101は、全てのページについて180度回転を決定定する。このように決定すると、図6(b)に示すように回転設定(決定)情報は全てのページについて「有」となる。ステップS510では、CPU101は、全てのページについて回転設定を「無」とする。このように決定すると、図6(b)では全てのページについて「有」となっているが、これらが全て「無」と決定されることになる。
【0085】
ステップS511では、CPU101は、図4のステップS405で求めた各ページのページ全体のインク打ち込み量に基づいて、前半ページのインク打ち込み量の合計と後半ページのインク打ち込み量の合計を算出し、それらを比較する。後半ページのインク打ち込み量の合計の方が大きい場合は、処理はステップS513に移り、後半ページのインク打ち込み量の合計の方が大きくない場合には、処理は終了する。
【0086】
例えば、図8に示す例では、4ページのページ構成を有する印刷データに対して、1ページ目のページ全体のインク打ち込み量と2ページ目のページ全体のインク打ち込み量との合計を、前半ページのインク打ち込み量として算出し、3ページ目のページ全体のインク打ち込み量と4ページ目のページ全体のインク打ち込み量との合計を、後半ページのインク打ち込み量として算出することになる。
【0087】
後半ページのインク打ち込み量の合計の方が大きい場合(ステップS512/YES)、CPU101は、逆順印刷を行うように設定し、その判定結果を図1のRAM102上に記憶しておく(ステップS513)。この設定内容は、図10のステップS1002の判定処理にて使用される。
【0088】
このように、本実施形態では、180度回転の有無及び逆順印刷の有無の判定、設定を行うことで、図9に示す(a)〜(d)の何れかの態様で出力されることになる。図9(a)に示す出力態様は、ステップS510で全ページについて回転設定が「無」と決定され、且つステップS513で逆順印刷が設定されなかった場合(正順印刷)の出力態様である。図9(b)に示す出力態様は、ステップS510で全ページについて回転設定が「無」と決定され、且つステップS513で逆順印刷が設定された場合の出力態様である。図9(c)に示す出力態様は、ステップS509で全ページについて回転設定が「有」と決定され、且つステップS513で逆順印刷が設定されなかった場合(正順印刷)の出力態様である。図9(d)に示す出力態様は、ステップS509で全ページについて回転設定が「有」と決定され、且つステップS513で逆順印刷が設定された場合の出力態様である。
【0089】
上述したように、本実施形態においては、印刷物の乾燥しにくい領域、つまり全ページに亘ってページ内のページ前半部分とページ後半部分とのどちらのインク打ち込み量が多いか、さらに、全ページに亘って前半ページと後半ページとのどちらのインク打ち込み量が多いかを判定し、その判定結果に適した態様で印刷物の出力態様を切り替えることができる。詳細には、後半の印刷ページに打ち込み量が多い場合に、逆順印刷(印刷データの後半から印刷)をさせると、印刷する実時間(用紙にインクを打ち込んでいる時間)が乾燥時間に割り当てられるため、余分な乾燥時間がかからない。このように、本実施形態にでは、インク打ち込み量の多い箇所により多くの乾燥時間を割り当てることができるため、印刷物が最終的に乾燥するまでの時間を短くすることができる。
【0090】
また、通常は、ページとページの間に乾燥時間が設定されている。本実施形態による印刷制御方法を用いることによってこの事前に設定しておく乾燥時間も短く設定することが可能となる。
【0091】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体をシステム或いは装置に供給し、そのシステム等のコンピュータが記憶媒体からプログラムコードを読み出し実行することによっても達成される。
【0092】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0093】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0094】
また、コンピュータが読み出したプログラムコードの指示に基づき、コンピュータ上で稼動しているOS等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0095】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに接続された機能拡張ユニット等に備わるメモリに書込まれた後、そのプログラムコードの指示に基づきCPU等が実際の処理を行い、前述した実施形態の機能が実現される場合も含まれる。
【図面の簡単な説明】
【0096】
【図1】本発明の実施形態に係る印刷制御装置を適用した印刷機器制御システムの構成を示すブロック図である。
【図2】図1に示したコンピュータ、プリンタを適用可能な印刷システムの一例を示すシステム構成図である。
【図3】クライアントコンピュータの全体の処理を示すフローチャートである。
【図4】図3のステップS302の詳細を示すフローチャートである。
【図5】図3のステップS303の詳細を示すフローチャートである。
【図6】各ページの回転処理の設定結果(決定結果)を示す図である。
【図7】ページ全体、ページ前半部分及びページ後半部分の夫々について総インク打ち込み量を算出する方法を具体的に説明するための図である。
【図8】前半ページと後半ページとのインク打ち込み量を算出する方法を具体的に説明するための図である。
【図9】印刷物の出力態様の種類を示す図である。
【図10】図3のステップS304の詳細を示すフローチャートである。
【図11】図3のステップS303の詳細を示すフローチャートである。
【図12】インク打ち込み量と補正値とを対応付けたルックアップテーブルの構成例を示す図である。
【符号の説明】
【0097】
101、201:CPU
102、202:RAM
103、203:ROM
104:システムバス
105:入力コントローラ(入力C)
106:ビデオコントローラ(VC)
107:メモリコントローラ(MC)
108:通信I/F
109:キーボード(KB)
110:CRT
111:外部メモリ
112:印刷制御プログラム
113:プリンタドライバ
114:OS
115:その他のプログラム
200:プリンタ
204:入力部
205:印刷部I/F
206:印刷部
207:操作部
209:用紙カット部
【特許請求の範囲】
【請求項1】
印刷データに含まれる各ページデータの画素値に基づいて、ページデータを区分した各区分領域に対応するインク打ち込み量を算出するインク打ち込み量算出手段と、
前記各区分領域に対応するインク打ち込み量に基づいて、ページデータ毎に回転印刷を実行するか否かを決定する回転印刷決定手段と、
各ページデータに対する回転印刷の決定結果に基づいて、前記印刷データに含まれる全ページデータに対して決定された回転印刷に係る決定内容を同一の決定内容に変更する変更手段と、
前記変更手段で変更された決定内容で印刷を制御する印刷制御手段とを有することを特徴とする印刷制御装置。
【請求項2】
前記インク打ち込み量算出手段は、各ページデータの前半部分と後半部分とのインク打ち込み量を算出することを特徴とする請求項1に記載の印刷制御装置。
【請求項3】
前記回転印刷決定手段は、ページデータの前半部分より後半部分の方のインク打ち込み量が多い場合、該当するページデータについて回転印刷を実行すると決定することを特徴とする請求項2に記載の印刷制御装置。
【請求項4】
前記変更手段は、回転印刷を実行すると決定された数と回転印刷を実行しないと決定された数との比率に応じて変更することを特徴とする請求項1乃至3の何れか1項に記載の印刷制御装置。
【請求項5】
前記変更手段は、回転印刷を実行しないと決定された数より回転印刷を実行すると決定された数の方が多い場合、全ページデータについて回転印刷を行う決定内容に変更することを特徴とする請求項4に記載の印刷制御装置。
【請求項6】
前記変更手段は、各ページデータの前半部分のインク打ち込み量合計と後半部分のインク打ち込み量合計とを比較して変更することを特徴とする請求項1乃至5の何れか1項に記載の印刷制御装置。
【請求項7】
前記インク打ち込み量算出手段により算出されるインク打ち込み量に応じた補正値を決定する補正値決定手段と、
前記補正値を用いて、前記インク打ち込み量算出手段により算出されるインク打ち込み量を補正して、前記各区分領域に対応するインク打ち込み量を補正するインク打ち込み量補正手段とを更に有し、
前記回転印刷決定手段は、前記インク打ち込み量補正手段により補正された前記各区分領域に対応するインク打ち込み量に基づいて、ページデータ毎に回転印刷を実行するか否かを決定することを特徴とする請求項1乃至6の何れか1項に記載の印刷制御装置。
【請求項8】
前記印刷データ内の前半のページデータ群に対するインク打ち込み量の合計値と、前記印刷データ内の後半のページデータ群に対するインク打ち込み量の合計値とを算出し、前記前半のページデータ群に対するインク打ち込み量の合計値と前記後半のページデータ群に対するインク打ち込み量の合計値とを比較するインク打ち込み量比較手段と、
前記インク打ち込み量比較手段による比較結果に基づいて、前記印刷データに含まれる全ページデータを逆順印刷するか否かを決定する逆順印刷決定手段とを更に有することを特徴とする請求項1乃至7の何れか1項に記載の印刷制御装置。
【請求項9】
印刷制御装置による印刷制御方法であって、
印刷データに含まれる各ページデータの画素値に基づいて、ページデータを区分した各区分領域に対応するインク打ち込み量を算出するインク打ち込み量算出ステップと、
前記各区分領域に対応するインク打ち込み量に基づいて、ページデータ毎に回転印刷を実行するか否かを決定する回転印刷決定ステップと、
各ページデータに対する回転印刷の決定結果に基づいて、前記印刷データに含まれる全ページデータに対して決定された回転印刷に係る決定内容を同一の決定内容に変更する変更ステップと、
前記変更ステップで変更された決定内容で印刷を制御する印刷制御ステップとを含むことを特徴とする印刷制御方法。
【請求項10】
請求項9に記載の印刷制御方法をコンピュータに実行させるためのプログラム。
【請求項11】
請求項10に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項1】
印刷データに含まれる各ページデータの画素値に基づいて、ページデータを区分した各区分領域に対応するインク打ち込み量を算出するインク打ち込み量算出手段と、
前記各区分領域に対応するインク打ち込み量に基づいて、ページデータ毎に回転印刷を実行するか否かを決定する回転印刷決定手段と、
各ページデータに対する回転印刷の決定結果に基づいて、前記印刷データに含まれる全ページデータに対して決定された回転印刷に係る決定内容を同一の決定内容に変更する変更手段と、
前記変更手段で変更された決定内容で印刷を制御する印刷制御手段とを有することを特徴とする印刷制御装置。
【請求項2】
前記インク打ち込み量算出手段は、各ページデータの前半部分と後半部分とのインク打ち込み量を算出することを特徴とする請求項1に記載の印刷制御装置。
【請求項3】
前記回転印刷決定手段は、ページデータの前半部分より後半部分の方のインク打ち込み量が多い場合、該当するページデータについて回転印刷を実行すると決定することを特徴とする請求項2に記載の印刷制御装置。
【請求項4】
前記変更手段は、回転印刷を実行すると決定された数と回転印刷を実行しないと決定された数との比率に応じて変更することを特徴とする請求項1乃至3の何れか1項に記載の印刷制御装置。
【請求項5】
前記変更手段は、回転印刷を実行しないと決定された数より回転印刷を実行すると決定された数の方が多い場合、全ページデータについて回転印刷を行う決定内容に変更することを特徴とする請求項4に記載の印刷制御装置。
【請求項6】
前記変更手段は、各ページデータの前半部分のインク打ち込み量合計と後半部分のインク打ち込み量合計とを比較して変更することを特徴とする請求項1乃至5の何れか1項に記載の印刷制御装置。
【請求項7】
前記インク打ち込み量算出手段により算出されるインク打ち込み量に応じた補正値を決定する補正値決定手段と、
前記補正値を用いて、前記インク打ち込み量算出手段により算出されるインク打ち込み量を補正して、前記各区分領域に対応するインク打ち込み量を補正するインク打ち込み量補正手段とを更に有し、
前記回転印刷決定手段は、前記インク打ち込み量補正手段により補正された前記各区分領域に対応するインク打ち込み量に基づいて、ページデータ毎に回転印刷を実行するか否かを決定することを特徴とする請求項1乃至6の何れか1項に記載の印刷制御装置。
【請求項8】
前記印刷データ内の前半のページデータ群に対するインク打ち込み量の合計値と、前記印刷データ内の後半のページデータ群に対するインク打ち込み量の合計値とを算出し、前記前半のページデータ群に対するインク打ち込み量の合計値と前記後半のページデータ群に対するインク打ち込み量の合計値とを比較するインク打ち込み量比較手段と、
前記インク打ち込み量比較手段による比較結果に基づいて、前記印刷データに含まれる全ページデータを逆順印刷するか否かを決定する逆順印刷決定手段とを更に有することを特徴とする請求項1乃至7の何れか1項に記載の印刷制御装置。
【請求項9】
印刷制御装置による印刷制御方法であって、
印刷データに含まれる各ページデータの画素値に基づいて、ページデータを区分した各区分領域に対応するインク打ち込み量を算出するインク打ち込み量算出ステップと、
前記各区分領域に対応するインク打ち込み量に基づいて、ページデータ毎に回転印刷を実行するか否かを決定する回転印刷決定ステップと、
各ページデータに対する回転印刷の決定結果に基づいて、前記印刷データに含まれる全ページデータに対して決定された回転印刷に係る決定内容を同一の決定内容に変更する変更ステップと、
前記変更ステップで変更された決定内容で印刷を制御する印刷制御ステップとを含むことを特徴とする印刷制御方法。
【請求項10】
請求項9に記載の印刷制御方法をコンピュータに実行させるためのプログラム。
【請求項11】
請求項10に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2007−175980(P2007−175980A)
【公開日】平成19年7月12日(2007.7.12)
【国際特許分類】
【出願番号】特願2005−376386(P2005−376386)
【出願日】平成17年12月27日(2005.12.27)
【出願人】(390002761)キヤノンマーケティングジャパン株式会社 (656)
【Fターム(参考)】
【公開日】平成19年7月12日(2007.7.12)
【国際特許分類】
【出願日】平成17年12月27日(2005.12.27)
【出願人】(390002761)キヤノンマーケティングジャパン株式会社 (656)
【Fターム(参考)】
[ Back to top ]