JP4140319B2 - 印刷システム - Google Patents
印刷システム Download PDFInfo
- Publication number
- JP4140319B2 JP4140319B2 JP2002251866A JP2002251866A JP4140319B2 JP 4140319 B2 JP4140319 B2 JP 4140319B2 JP 2002251866 A JP2002251866 A JP 2002251866A JP 2002251866 A JP2002251866 A JP 2002251866A JP 4140319 B2 JP4140319 B2 JP 4140319B2
- Authority
- JP
- Japan
- Prior art keywords
- page
- image
- printer
- memory
- 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
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
- Record Information Processing For Printing (AREA)
Description
【発明の属する技術分野】
コンピュータに保存されている複数ページの情報を、プリンタを使って複数部印刷するためのシステムに関する。
【0002】
【従来の技術】
従来、コンピュータに保存されている複数ページの文書情報を、プリンタを使って複数部印刷する方式には、以下の様なものがある。
(1) ホスト・コンピュータは、各ページのデータを1回だけプリンタヘ送信する。プリンタは、1ページ分のデータを受信するごとに、メモリ上に作成した画像を必要な部数分コピーして用紙へ印刷する。印刷した用紙は全て同じ排紙口ヘ出力され、同じページを印刷した用紙の集まりがページ数分重なって出力される。コピーされた用紙は、人間が用紙の集まりの中から各ページを1枚ずつ拾い出して仕分けし、目的のページの順番に並び替えることによって、必要な部数のセットにまとめる。
【0003】
(2) ホスト・コンピュータは、各ページのデータを1回だけプリンタヘ送信する。プリンタは、1ページ分のデータを受信するごとに、メモリ上に作成した画像を必要な部数分コピーして用紙へ印刷する。プリンタには複数の排紙口を持つソータを装備し、コピーされた用紙はそれぞれが別々の排紙口ヘ出力される。これによって、各排紙口には目的のページの順番に揃えられた必要な部数のセットが印刷される。
【0004】
(3) ホスト・コンピュータは、最初のページから最後のページまでのデータをプリンタヘ送信し、この処理を必要な部数分繰り返し実行する。プリンタは、1ページ分のデータを受信するごとに、メモリ上に作成した画像を1枚の用紙へ印刷する。排紙口には、目的のページの順番で必要な部数のセットが積み重なって印刷される。
【0005】
(4) ホスト・コンピュータは、各ページのデータを1回だけプリンタヘ送信する。プリンタは、1ページ分のデータを受信するごとに、メモリ上に作成した画像を1枚の用紙へ印刷する。これと同時に、プリンタは、作成した画像を全てメモリ又はハード・ディスクに保存しておく。1部目の印刷が終了すると、プリンタは、保存しておいた画像を最初のページから読み出して2部目以降の印刷を行う。排紙口には、目的のページの順番で必要な部数のセットが積み重なって印刷される。
【0006】
【発明が解決しようとする課題】
上記(1)の方式は、ホスト・コンピュータにもプリンタにも特別な仕組みはなく、従来からプリンタに備わっている用紙のコピー機能を使って、必要な部数の印刷を行うものである。印刷した用紙は人間が仕分けをしなければならないため、多数の印刷を行う場合、煩雑な作業を伴うこととなる。
【0007】
上記(2)の方式は、各部が別々の排紙口ヘ仕分けされて出力されるため、人間による煩雑な作業は必要ない。しかしながら、ソータは高価で大きな装置であるため、プリンタの小型化やローコスト化が難しい。また、ソータに用意できる排紙□は10〜20個程度が上限であり、これ以上の部数を印刷する場合には、何回かに分けて印刷する必要がある。
【0008】
上記(3)の方式は、ホスト・コンピュータのプログラムの工夫で実現でき、ワードプロセッサ・ソフトウェアなどでは既に実現されていて、安価である。しかし、必要な部数の全てのページについて、ホスト・コンピュータからプリンタヘデータを送出する必要があるため、複雑な絵柄のページを印刷する場合などでは、ホスト・コンピュータ又はプリンタのデータ処理性能が間に合わず、高速な印刷ができないなどの難点がある。
【0009】
上記(4)の方式は、ホスト・コンピュータからプリンタヘのデータ送出が1回だけであり、2部目以降については、1部目で保存した画像を読み出すため、高速な印刷が可能である。しかしながら、高解像度のカラー印刷を行う場合、1ページ当たり数十Mバイトの記憶容量が必要であり、実用的なページ数分の画像を保存するためのメモリをプリンタに搭載することは、今だ高価である。ハード・ディスクに画像を記憶する方法は、既に実用化されており、実用的なページ数分の画像を記憶する手段としては十分であるが、小型プリンタにおいては、ハード・ディスク装置分のコストが上がると言う難点がある。
【0010】
そこで上記の問題に鑑み、本発明では、画像形成装置を用いて複数ページの出力情報を複数部印刷する場合、高速な印刷をすることができ、かつ、低コストな印刷システムを提供する。
【0011】
【課題を解決するための手段】
上記課題は、請求項1記載の発明によれば、複数の印刷頁情報からなる印刷頁情報群の印刷を指示する印刷指示装置と、前記印刷指示に基づいて印刷する画像形成装置とからなる印刷システムにおいて、前記印刷指示装置は、前記印刷頁情報群に含まれるそれぞれの印刷頁情報を識別する頁識別情報を作成する作成手段と、該作成手段により作成された頁識別情報を記憶する第1の記憶手段と、前記印刷頁情報と該印刷頁情報に対応する頁識別情報とを前記画像形成装置に送信する第1の送信手段と、前記画像形成装置から送信された頁識別情報を受信する第1の受信手段と、前記第1の記憶手段に記憶した頁識別情報であって、かつ前記第1の受信手段により受信した頁識別情報以外の頁識別情報を判定する頁識別情報判定手段と、前記頁識別情報判定手段の結果に基づいて取得した頁識別情報に対応する印刷頁情報を送信する第2の送信手段とを備え、前記画像形成装置は、前記第1の送信手段により送信された前記印刷頁情報と前記頁識別情報を受信する第2の受信手段と、前記第2の受信手段により受信した前記印刷頁情報と前記頁識別情報とを対応づけた印刷識別対応情報を記憶する第2の記憶手段と、前記印刷頁情報の情報量と、前記印刷頁情報に基づいて印刷画像を描画する時間と、描画した印刷画像の情報量と、に基づいて各印刷頁情報の優先度を算出する優先度算出手段と、前記優先度算出手段により得られた優先度に基づいて、前記第2の記憶手段から前記印刷識別対応情報を消去する消去手段と、前記第2の記憶手段に記憶している頁識別情報を前記第1の受信手段に送信する第3の送信手段と、を備えることを特徴とする印刷システムを提供することによって達成できる。
【0012】
このように構成することにより、プリンタのメモリに記憶しきれないような多数のページを複数部印刷する場合でも、優先度が高いページの画像をプリンタのメモリに残すことによって、2部目以降の場合に、ホスト・コンピュータからプリンタヘ送出されるデータの量が少なくなったり、送出されたデータからプリンタが画像を作成する必要が無くなったりするため、高速な印刷が可能になる。
【0013】
また、請求項2記載の発明によれば、前記優先度算出手段は、前記印刷頁情報の情報量と、前記印刷頁情報に基づいて印刷画像を描画する時間と、描画した印刷画像の情報量とに、それぞれの係数を掛けてから、足し合わせた合計値に基づいて算出されることを特徴とする請求項1記載の印刷システムを提供することによって達成できる。
【0014】
このように構成することにより、優先度は、描画コマンド列のバイト数と、描画コマンド列の処理時間と、画像メモリのバイト数とから成る3つの変動要因とのそれぞれの係数によって計算されるため、係数の値を適切に選択することによって、2部目以降の印刷において、印刷速度を最優先にしたり、ホスト・コンピュータの処理の軽減を最優先にしたり、印刷速度とホスト・コンピュータ処理のバランスを考慮したりするなど重視する項目に応じた柔軟な対応が可能である。
【0020】
このように構成することにより、優先度は、描画コマンド列のバイト数と、描画コマンド列の処理時間と、画像メモリのバイト数とから成る3つの変動要因とのそれぞれの係数によって計算されるため、係数の値を適切に選択することによって、2部目以降の印刷において、印刷速度を最優先にしたり、ホスト・コンピュータの処理の軽減を最優先にしたり、印刷速度とホスト・コンピュータ処理のバランスを考慮したりするなど重視する項目に応じた柔軟な対応が可能である。
【0021】
【発明の実施の形態】
第1の実施形態の発明は、複数ページの文書を複数部印刷するホスト・コンピュータとプリンタとの印刷システムである。ホスト・コンピュータは、各ページのデータをプリンタヘ送出する場合、プリンタが同じページであるか否かを識別できるようにするための識別コード(ページID)を付加する。この識別コード(ページID)は、ページごとに別々の値であり、かつ、各部の同じページでは同じ値になるように制御される。
【0022】
最初の1部目の印刷を行う場合、ホスト・コンピュータは、各ページの画像を作成するのに必要な全ての描画コマンドをプリンタヘ送出する。プリンタは、ホスト・コンピュータから受信した描画コマンド列を画像メモリに描画した後、画像を用紙へ印刷すると共に、画像データを識別コード(ページID)とペアにして、メモリに記憶する。
【0023】
1部目のページ数が多い場合、プリンタに搭載しているメモリでは、ホスト・コンピュータから送られて来るページに対応する全ての画像を記憶できない場合がある。この場合、プリンタは、優先度に基づいてメモリに記憶している画像の幾つかをページ単位で削除することにより、より優先度の高いページの画像をメモリに残すよう制御する。
【0024】
1部目の全てのページの印刷が終了し、2部目の印刷を行う手前で、ホスト・コンピュータは、プリンタに対して、プリンタが記憶しているページ画像の問い合わせを行う。プリンタは、問い合わせのあった時点でメモリに記憶している画像に対応する識別コード(ページID)を、ホスト・コンピュータヘ応答する。
【0025】
2部目以降の印刷を行う場合、ホスト・コンピュータは、プリンタから応答のあった識別コード(ページID)と同じページに関しては、プリンタが記憶している画像を印刷するように制御するコマンドをプリンタヘ送出する。プリンタから応答のなかった識別コード(ページID)のページに関しては、1部目の場合と同じ描画コマンド列をプリンタヘ送出する。
【0026】
プリンタには1部目と2部目以降の区別はないが、ホスト・コンピュータが上記のように制御することにより、2部目以降の印刷に関して、プリンタのメモリに記憶しているページ画像は、プリンタのメモリから素早く用紙へ印刷できる。前述の優先度は、ホスト・コンピュータからプリンタヘ送出されるデータの大半を占める描画コマンド列のバイト数と、描画コマンド列によってプリンタがメモリへ画像を描画処理するのに要した時間と、描画した結果の画像を記憶するのに必要なメモリのバイト数とに基づいて、それぞれの値に係数を掛けた重み付けによって決定される。
【0027】
これらの係数を適切に選択することによって、上記(4)の方式のような大量のメモリまたはハード・ディスク装置をプリンタに搭載しなくても、上記(3)の方式に見られる印刷速度の劣化を改善した印刷が可能となる。
次に、第2の実施形態の発明について説明する。第1の実施形態では、1部目の全てのページの印刷が終了した段階で、プリンタで記憶するページ画像が確定している。2部目の印刷を行う手前で、ホスト・コンピュータがプリンタで記憶しているページ画像の問い合わせを1度だけ行い、2部目以降の印刷の場合に描画コマンド列を送出する必要のあるページか否かを判断していた。
【0028】
これに対して、第2の実施形態の発明では、1部目の印刷でプリンタが記憶できなかったページに関して、ホスト・コンピュータが2部目または3部目以降の印刷で描画コマンド列を送出した場合も、プリンタが画像データを記憶するような制御を行う。この場合、プリンタは、2部目以降の印刷で新たなページ画像をメモリヘ記憶する代わりに、記憶するためのメモリが足りなくなって、既に記憶しているページを削除しなければならなくなる可能性が生じる。
【0029】
そのため、ホスト・コンピュータは、描画コマンド列を送出した後には必ず、プリンタに対して、記憶しているページ画像の問い合わせを行う。これによって、プリンタは、新たに記憶したページや削除したページが反映された状態の識別コード(ページID)をホスト・コンピュータヘ応答する。
【0030】
ホスト・コンピュータは、新たに取得した識別コード(ページID)の状態に基づいて、以降のページに関して、プリンタが記憶している画像を印刷するように制御するコマンドをプリンタヘ送出するか、または、1部目の場合と同じ描画コマンド列をプリンタヘ送出するかを判断する。
【0031】
プリンタがメモリに記憶しているページを削除する場合は、第1の実施形態と同じ方法で計算した優先度に基づいて、優先度が高いページの画像を残すように制御する。ただし、2部目の印刷では、1部目の印刷の場合に全てのページを処理した結果がプリンタのメモリに記憶されているため、第1の実施形態より優先度の判定精度が向上する。3部目の印刷でページを削除する場合は、2部目の場合よりもさらに断度の判定精度が向上し、部数が多くなるほど判定精度が向上する。
【0032】
これは、1部目の印刷でページ画像を削除する場合は、その時点で処理しているページより後ろのページがプリンタに送出されていないため、優先度を判定する際、後ろのページの優先度が考慮されていないのと、1部目および2部目以降の印刷でページ画像を削除する場合、その時点で既に削除されているページに関して優先度が不明なため、記憶していないページの優先度が考慮されないためである。
【0033】
それでは、以下に、それぞれの実施形態について、詳述する。
<第1の実施形態>
図1は、本発明の実施例に関わるシステム構成である。ホスト・コンピュータ101は、印刷データを作成してプリンタ102へ出力する役割を担う。プリンタ102は、ホスト・コンピュータ101が出力する印刷データをパラレル・インターフェイス103を経由して受信し、印刷データの内容を解析して画像を形成後、用紙に印刷する装置である。
【0034】
パラレル・インターフェイス103は、ホスト・コンピュータ101とプリンタ102とを接続するパラレル・インターフェイスである。
プリンタ102は、2つの大きな機能ブロックから構成される。1つはインターフェイス・コントローラ104であり、もう1つはプリンタ・エンジン105である。これらは、ビデオ・インターフェイス106で接続されている。インターフェイス・コントローラ104は、印刷データの受信と内容解析と画像データの作成を担う。プリンタ・エンジン105は、インターフェイス・コントローラ104が作成した画像データを用紙に印刷するための各種機械的な制御を担う。
【0035】
ホスト・コンピュータ101は、以下の様なハードウェアから構成される。キーボード107は、オペレータがホスト・コンピュータに指示を与えるための入力装置である。ディスプレイ108は、ホスト・コンピュータの処理結果などを表示するための出力装置である。
【0036】
フロッピー(登録商標)・ディスク・ドライブ109は、各種データを取りはずし可能なメディアに記憶するための記憶装置である。ハードディスク・ドライブ110は、各種アプリケーション・プログラムやデータが予め記憶されている記憶装置である。
【0037】
ROM111は、ホスト・コンピュータの起動プログラムが格納されているROM(リード・オンリー・メモリ)である。RAM112は、アプリケーション・プログラムを実行する場合に、必要なプロクラムやデータを格納するRAM(ランダム・アクセスメモリ)である。
【0038】
CPU113は、起動プログラムやアプリケーション・プログラムに従ってホスト・コンピュータを制御する中央処理演算装置である。プリンタ・インターフェイス114は、プリンタヘ印刷データを送信したり、プリンタの状態を受信するためのインターフェイスである。
【0039】
インターフェイス・コントローラ104は、以下の様なハードウェアから構成される。ホスト・インターフェイス115は、パラレル・インターフェイス103を介して、送信されて来る印刷データを取り込んだり、プリンタ102の状態応答を返信するためのインターフェイスである。
【0040】
オペレーション・パネル116は、幾つかのスイッチと表示手段から構成される操作パネルである。プリンタ102の各種状態を表示したり、プリンタ102を操作するオペレータからの指示を入力する目的で使われる。
Mask−ROM117は、各文字コードに対応する図形データを記憶しているROMである。印刷データの中に文字コード情報が含まれている場合、画像データを作成するために、文字コードに対応する図形データを参照する目的で使われる。ROM118は、インターフェイス・コントローラ104を制御するのに必要なプログラムが格納してあるROMである。
【0041】
RAM119は、印刷データの受信や内容解析に必要な変数、及び、作成した画像データを格納するためのRAMである。CPU120は、プログラムを実行する中央処理演算装置である。CPU120は、ROM118に記憶されているプログラムを順次実行することにより、インターフェイス・コントローラ104で必要な制御を成し遂げるためのCPUである。
【0042】
エンジン・インターフェイス121は、作成した画像データや制御情報を、ビデオ・インターフェイス106を介して、プリンタ・エンジン105へ送出したり、プリンタ・エンジン105の状態を取得するためのインターフェイスである。
【0043】
図2は、ホスト・コンピュータ101で実行する印刷に関わる部分のプログラムである。この図2では、プリンタ102ヘデータを送出して、Nページ(Nは任意の正数)の印刷物をM部(Mは任意の正数)印刷するプログラムのフローを記述している。図3は、後述するページID記憶テーブルを示したものである。
【0044】
図4および図5は、図2のプログラムに対応するプリンタ102のインターフェイス・コントローラ104で実行するプログラムである。ホスト・コンピュータ101から送られてくるコマンドを解釈し、必要な制御を実行する。
図2のプログラムと、図4および図5のプログラムとは、協調して本発明の動作を達成する。
【0045】
まず、1部目の印刷では、ホスト・コンピュータ101側は、各ページの画像の作成と印刷に必要なコマンドを順次プリンタ102へ送出し、プリンタ102側は、インターフェイス・コントローラ104が各ページの画像を作成して、プリンタ・エンジン105が用紙への印刷を行う。このとき、インターフェイス・コントローラ104は、メモリが許す範囲で作成した各ページの画像を全て記憶しようとする。もし、インターフェイス・コントローラ104が1部目の途中のページでメモリ不足になった場合、後続ページの画像を作成するのに必要なメモリを確保するため、それまでに記憶している画像をページ単位で削除して、1部目の全てのページの画像の作成と印刷を遂行する。画像の削除は、各ページで後述する評価式Zに基づいて計算した優先度に従って、優先度が低い1ページを先に削除する。
【0046】
1部目の印刷が終わると、2部目の印刷を行う前に、ホスト・コンピュータ101は、インターフェイス・コントローラ104で記憶しているページをチェックする。そして、2部目及び3部目以降、ホスト・コンピュータ101は、インターフェイス・コントローラ104が記憶しているページに関しては、画像の作成に必要なコマンドを省いたデータをプリンタ102へ送出する。
【0047】
インターフェイス・コントローラ104は、ページごとに、メモリで記憶している画像のページなのか、画像を作成するコマンドが送られて来るページなのかを識別し、その識別結果に応じてメモリに記憶済みの画像もしくは新しく作成した画像を印刷する。
【0048】
以下は、図2の各ステップの説明である。ステップT201(以下、ステップをTと略する)からT208までは、1部目の印刷を行うためのプログラム・ステップである。
まず、初期化コマンドをプリンタ102へ送出する(T201)。初期化コマンドは、一連の印刷の始めに1度だけ送出し、インターフェイス・コントローラ104のメモリを初期化する機能である。初期化コマンドには、インターフェイス・コントローラ104で各ページの画像の優先度を決めるための評価式Zの係数も付随する。この評価式Zや係数に関しては、後述する図5のT319で説明する。
【0049】
次に、1部目のページ番号を表す変数Xを初期化して1ページ目にする(T202)。
次に、各ページを識別するためのページIDを生成して、図3に示したページID記憶テーブル250に登録する(T203)。ページIDはページ毎に異なる値で、かつ、1部目と2部目以降の同じページでは同じ値を持つデータである。2部目以降の印刷で、インターフェイス・コントローラ104のメモリに記憶されている画像のページを識別する必要が生じた場合、ホスト・コンピュータ101は、ページIDを使って記憶されているページであるかどうかを判断する。
【0050】
ページID記憶テーブル250は、各ページのページIDを、ホスト・コンピュータ101で記憶しておくための変数配列である。この配列は、1部目の各ページの印刷を行う場合に各変数の値が確定し、2部目以降の印刷を行う場合に参照される。
【0051】
次に、T203で生成したXページ目のページIDをプリンタ102へ送出する(T204)。これにより、プリンタ102のインターフェイス・コントローラ104は、これから印刷するページがT203で生成したページIDに関する処理であることを認識して、他のページとは区別できるようになる。
【0052】
次に、Xページ目の画像をプリンタ102のインターフェイス・コントローラ104に作成させるための描画コマンド列を送出する(T205)。通常、1ページ分の画像をプリンタに描画させるためには数多くのコマンドが必要である。複雑な図形や画像を用紙に印刷する場合、ホスト・コンピュータからプリンタヘ送出されるデータの90%以上が描画に関連するコマンドで、残りの10%以下が用紙印刷の動作をセットアップしたり、実行させたりするなどのコマンドであることが多い。
【0053】
本実施例では、データの大半を占める描画に関連するコマンドの具体的な記述を省略しており、これらのコマンドを描画コマンド列として扱っている。
次に、画像記憶コマンドをプリンタ102へ送出する(T206)。画像記憶コマンドは、T204及びT205で関連付けられたページIDと描画された画像を、プリンタ102のメモリに記憶させるコマンドである。このコマンドにより、インターフェイス・コントローラ104は、メモリが許す範囲で、描画コマンド列で描画した画像を用紙印刷の後もメモリに残す制御を行う。
【0054】
次に、T205でプリンタ102のインターフェイス・コントローラ104に作成させた画像を用紙へ印刷させるための印刷開始コマンドを、プリンタ102へ送出する(T207)。このコマンドにより、プリンタ102は描画した1ページ分の画像を1枚の用紙に印刷する。
【0055】
次に、1部目の印刷が終了したか否かを判断している(T208)。ページ番号を表す変数Xを更新して、Nページに未到達であればT203に戻り、Nページに到達したらT209以降のステップヘ進む。
T203からT208の処理は1部目の各ページについて行われ、それぞれのページIDに関連した画像をインターフェイス・コントローラ104に作成/記憶/印刷させるループ処理になっている。
【0056】
T209とT210は、1部目の印刷と2部目の印刷の間に行うプログラム・ステップである。まず、ステータス確認コマンドをプリンタ102へ送出する(T209)。ステータス確認コマンドは、インターフェイス・コン卜ローラ104で記憶している画像のページIDを列挙して、ステータス応答することをインターフェイス・コントローラ104に指示するコマンドである。
【0057】
次に、T209で送出したステータス確認コマンドに対応する応答データを受信する(T210)。ホスト・コンピュータ101は、T209で送出したコマンドに対応するステータス応答データがプリンタ102から返信されて来るのを待ち、受信したページIDの列挙データを取得する。
【0058】
このデータは、T201からT208の1部目の印刷を行った後、その結果としてインターフェイス・コントローラ104に記憶されている画像がどのページなのかを識別する情報で、2部目以降の印刷を行う場合に使う情報である。プリンタ102からホスト・コンピュータ101へ送信されるステータス応答データは、後述する図8に示す。
【0059】
T211からT219は、2部目以降の印刷を行うプログラム・ステップである。この内のT212からT218は、各部のページ一式を印刷するステップになっている。
まず、部数を数えるための変数Yを初期化して2部目にする(T211)。次に、ページ番号を表す変数Xを初期化して1ページ目にする(T212)。次に、ページID記憶テーブル250を参照して、Xページ目のページIDを取得する(T213)。ページIDは、1部目の各ページを印刷する場合にT203で生成して書き込まれたデータであり、1部目と2部目以降の同じページでは、ページID記憶テーブル250の同じ場所を参照することにより、同じページIDを取得することができる。
【0060】
次に、T213で取得したXページ目のページIDをプリンタ102へ送出する(T214)。このページIDの送出により、これから印刷するページが1部目のどのページと同じなのかを、プリンタ102のインターフェイス・コントローラ104に識別させることができる。
【0061】
次に、T213で取得してT214でプリンタ102へ送出したXページ目のページIDが、T209及びT210でプリンタ102から取得したステータス応答データの中に含まれているか否か、すなわち、プリンタ102のインターフェイス・コントローラ104がXページ目の画像を記憶しているか否かを判断する(T215)。Xページ目のページIDが含まれていない場合はT216へ進み、含まれている場合はT216を実行せずにT217へ進む。
【0062】
T215で、プリンタ102のインターフェイス・コントローラ104がXページ目の画像を記憶していない場合、Xページ目の画像をインターフェイス・コントローラ104に作成させるための描画コマンド列を送出する(T216)。これは、T205と同じ処理である。前述した様に、1ページ分の画像をプリンタに描画させるためには数多くのコマンドが必要なため、T215の条件分岐でT216を実行する必要があると判断されるか否かは、Xページ目に関連してホスト・コンピュータ101がプリンタ102へ送出するデータの量を大きく左右することになる。
【0063】
次に、印刷開始コマンドをプリンタ102へ送出する(T217)。このコマンドにより、T213からT216までの処理で、プリンタ102のインターフェイス・コントローラ104に準備されたXページ目の画像を用紙に印刷させる。
【0064】
次に、各部ごとの全てのページが終了したか否かを判断している(T218)。ページ番号を表す変数Xを更新して、Nページに未到達であればT213に戻り、Nページに到達したらT219以降のステップヘ進む。
次に、全ての部数の印刷が終了したか否かを判断している(T219)。部数を数えるための変数Yを更新して、M部に未到達であればT212に戻り、M部に到達したらホスト・コンピュータの印刷プログラムを終了する。
【0065】
T211からT219の処理は、全体として、2部目以降の各部の各ページについて、それぞれのページIDに関連した画像をインターフェイス・コントローラ104が記憶しているか否かを判断して、記憶している場合は、プリンタ102への描画コマンド列の送出を行わずに印刷させるループ処理になっている。
【0066】
次に、図4および図5を参照しながら、プリンタ102のインターフェイス・コントローラ104で実行する制御フローについて説明する。
まず、ホスト・コンピュータ101がプリンタ102へ送出したコマンドを、1個ずつデータ受信する(T301)。
【0067】
次に、受信したコマンドの種類を判別して、以降で説明するプログラム・ステップの何れかへ分岐する(T302)。通常、プリンタのコマンドは複数バイトのデータで1個のコマンドを表し、各バイトを順に解析していくことによってコマンドを識別する。
【0068】
各コマンドをバイト・データで表現することは本発明と関係ないため、図4および図5では、各コマンドに対応するバイト・データの説明を行っていない。複数バイトのデータを合わせて1個のコマンドとして扱い、コマンドの種類を識別するための詳細なアルゴリズムは省略している。
【0069】
実際のプリンタには数多くの種類のコマンドがあるが、図4および図5は、本実施例に関係するコマンドだけを表しており、関係ないコマンドを省略している。
図2のT205やT216でプリンタ102に送られて来る描画コマンド列は、インターフェイス・コントローラ104の画像メモリに画像を描画するために、多数の種類のコマンドが数多く組み合わされて構成された多量のバイト・データである。描画コマンド列に含まれるコマンドの組み合わせは、描画しようとする画像によって異なるが、本実施例では、描画コマンド列に含まれる個々のコマンドの説明は省略し、単に描画コマンド列として扱っている。
【0070】
本発明においては、描画コマンド列が多量のバイト・データから構成されることと、同じ画像を描画する場合は描画コマンド列も同じであることとが関係する。
T303とT304は、T301でホスト・コンピュータ101から受信したデータが、T302で初期化コマンドと判別された場合に行うプログラム・ステップである。図2のT201で、ホスト・コンピュータ101が送出したコマンドの実行処理に対応する。
【0071】
まず、図6で示される画像記憶テーブルの全ての変数をゼロに初期化し、変数Sをゼロに初期化する(T303)。ここで、変数Sは、特に囲示していないが、インターフェイス・コントローラ104のメモリ変数である。変数Sは、インターフェイス・コントローラ104が描画コマンド列を処理している途中でメモリ不足になり、記憶済みの画像をページ単位で削除する必要が生じた場合、削除したページの画像メモリの最大バイト数を記憶する変数である。
【0072】
次に、後述するT319で優先度を計算する際に使用する評価式Zの係数を記憶する(T304)。
ここで、図6に示す画像記憶テーブルについて説明する。画像記憶テーブルは、インターフェイス・コントローラ104のメモリ変数で、図6に示すG350,G351,G352,G353,G354から構成されている。
【0073】
G350は、記憶している画像のページ数(画像の個数)を格納している。G351は、ホスト・コンピュータ101から送られて来たページIDを記憶する変数である。G352は、後述するT319で計算した画像の優先度を記憶する変数である。G353は、描画コマンド列を処理して描画した画像メモリのアドレスを記憶する変数である。G354は、描画コマンド列を処理して描画した画像メモリのバイト数を記憶する変数である。
【0074】
G351,G352,G353,G354は、4個の変数が一式で1ページ分のセットになっており、インターフェイス・コントローラ104で記憶可能な画像メモリのページ数と同じ個数のセットが存在する。画像記憶テーブルは、T303で初期化された後、後述するT320で画像メモリの登録が行われ、T310やT324で登録内容の削除が行われる。
【0075】
ホスト・コンピュータ101は、1部目の各ページを印刷する場合、作成した画像の全てのページを記憶させるべく、インターフェイス・コントローラ104へ画像記憶コマンドを送信して来る。
しかし、インターフェイス・コントローラ104のメモリが不足して画像を削除してしまった場合、2部目以降で、ホスト・コンピュータ101は、インターフェイス・コントローラ104が記憶していないページの画像を再度作成させるべく、1部目と同じ描画コマンド列を再度送って来る。
【0076】
このとき、1部目で記憶済みの他のページの画像を削除しないで、送られて来た描画コマンド列による画像が作成できることを確実にするため、インターフェイス・コントローラ104は、1部目で削除してしまったページの画像メモリの最大バイト数分のメモリを空けておく必要がある。
【0077】
変数Sは、2部目以降で描画コマンド列が送られて来るのに備えて、空けておく必要のあるメモリのバイト数を記憶する変数である。
ここで、評価式Zの係数は、後述するT319で、各ページの画像の優先度を計算する場合に使用するパラメータである。初期化コマンドにはパラメータが3つ付随し、係数Aと係数Bと係数Cを指定する。ホスト・コンピュータ101は、図2のT201で初期化コマンドを送出する場合、3つの係数をプリンタ102へ送出する。T304は、これらの係数を、インターフェイス・コントローラ104のメモリ変数に記憶する処理である。係数Aと係数Bと係数Cは、特に図示していないが、インターフェイス・コントローラ104の独立した3つのメモリ変数に記憶される。
【0078】
T305は、T301でホスト・コンピュータ101から受信したデータが、T302でページIDコマンドと判別された場合に行うプログラム・ステップである。ホスト・コンピュータ101が、図2のT204やT214で送出したコマンドの実行処理に対応する。
【0079】
ここでは、送られて来たページIDを、インターフェイス・コントローラ104のメモリ変数に記憶する(T305)。このメモリ変数は持に囲示していないが、記憶したページIDは、後述するT320で画像メモリを登録する場合や、後述する印刷開始コマンドのT321やT322で参照される。
【0080】
T306からT318は、T301でホスト・コンピュータ101から受信したデータが、T302で描画コマンド列と判別された場合に行うプログラム・ステップである。ホスト・コンピュータ101が図2のT205やT216で送出した描画コマンド列の実行処理に対応する。
【0081】
前述した様に、描画コマンド列の中の個々のコマンドの説明は省略しているが、T308からT315は、本実施例に関係する内容の範囲で、個々の描画コマンドに必要な処理を記述している。本実施例では、描画コマンド列の中の個々の描画コマンドを実行処理する場合、画像メモリの動的割り当てを行う。
【0082】
画像メモリは、図形が描画される場合、描画しようとする図形の座標範囲に応じて、動的にメモリが割り当てられる。個々のページの最初で何も描画されていない状態では、画像メモリは何も割り当てられていない。
始めの描画コマンドを実行する場合、そのコマンドで描画しようとする囲形の座標範囲が事前にチェックされ、描画しようとする囲形を記憶するのに必要な座標範囲の画像メモリが確保されてから、図形の描画を行う。
【0083】
そして、次の描画コマンドを実行する場合は、描画しようとする図形の座標範囲と、既に割り当ててある画像メモリの座標範囲とが比較され、描画しようとする図形の座標範囲が画像メモリを超えている場合は、新たなメモリを割り当てて画像メモリに描画できる座標範囲を拡張してから図形を描画する。
【0084】
まず、描画コマンド列の全体のバイト数を数えるためのカウンタをクリアする(T306)。このカウンタは、T314で個々のコマンドのバイト数が加算され、T318で合計値が確定し、後述するT319で優先度を計算する場合に使われる。
【0085】
次に、描画コマンド列の実行時間を計測するためのタイマーをスタートする(T307)。このタイマーは、図示していないハードウェアのタイマーであり、描画コマンド列の最初のコマンドから最後のコマンドまでをインターフェイス・コントローラ104が実行処理して、画像を作成するのに要した時間を計測するためのものである。T317で時間の計測値が確定し、後述するT319で優先度を計算する場合に使われる。
【0086】
次に、1個の描画コマンドを実行する前に、描画しようとする囲形の座標範囲に画像メモリが既に割り当てられているか、割り当てられていない場合は必要とするメモリが確保できるか否かを判断する(T308)。画像メモリが既に割り当てられているか、または、割り当てるのに必要なメモリが確保できる場合は、T313へ進む。そうでない場合は、必要な画像メモリを確保するため、T309以降のステップヘ進む。
【0087】
T309からT312は、画像メモリヘの新たなメモリの割り当てが必要な場合に、インターフェイス・コントローラ104に実装しているメモリが使い果たされていて、新たなメモリを確保できない場合に行う処理である。既に画像記憶テーブルに登録されている画像メモリの中から1ページを選んで削除し、割り当てられていたメモリを開放することによって、空きメモリを作成する。
【0088】
現在処理している描画コマンド列で作成している途中の画像メモリは、画像記憶テーブルヘの登録処理がまだ行われていない。従って、画像記憶テーブルの中からの画像メモリの選択と削除は、新たなメモリの割り当てが必要な画像メモリとは違うページを対象に行われる。
【0089】
まず、画像記憶テーブルに画像メモリが登録されているか否かを判断する(T309)。1ページ以上の画像メモリが登録されている場合は、T310以降のステップヘ進む。
T309で画像記憶テーブルに何も登録されていないと判断されるということは、現在処理している描画コマンド列で作成している途中の画像メモリだけで、インターフェイス・コントローラ104に実装しているメモリがオーバー・フローしてしまったことを表す。この様な場合の処理は、本発明の範囲を超えている。本実施例では、インターフェイス・コントローラ104の致命的なエラーとして、図4および図5で示されるフローをエラー終了とする。
【0090】
T309で1ページ以上の画像メモリが登録されている場合、画像記憶テーブルに登録されている画像メモリの中から、最も優先度の低いページを1つ選択し、このページに割り当てられている画像メモリを開放する(T310)。これにより、インターフェイス・コントローラ104に実装しているメモリの中で、使われていない空きメモリか増える。画像メモリを開放したページは、画像記憶テーブルの登録情報が削除され、記憶している画像の個数G350も1つ減算される。
【0091】
次に、T310で画像記憶テーブルから削除したページの画像メモリのバイト数と、変数Sで記憶している値を比較して条件分岐する(T311)。削除したページの画像メモリのバイト数の方が大きい場合は、T312へ進む。そうでない場合は、T308へ戻る。
【0092】
T311で削除したページの画像メモリのバイト数の方が、変数Sより大きい場合は、変数SをT310で削除したページの画像メモリのバイト数に変更する(T312)。変数Sは、前述した様にT303でゼロに初期化され、T311とT312によって、画像記憶テーブルから削除したページの画像メモリの最大バイト数を記憶するようになっている。
【0093】
T311とT312は、何れもT308へ戻る。T308では、新たな空きメモリを基にして、再度、作成途中の画像メモリヘ新しく割り当てるのに必要なメモリが確保できるか否かチェックする。メモリが確保できる場合は、T313へ進むが、確保できない場合は、再び、T309からT312を実行し、優先度の低いページを削除して空きメモリを増やす。
【0094】
T308からT312は、図形を描画するのに必要な新たなメモリを確保できるまで繰り返すループ処理になっている。
T308で画像メモリが既に割り当てられているか、または、割り当てるのに必要なメモリが確保できる場合、1個の描画コマンドを実行し、画像メモリヘ囲形を描画する(T313)。画像メモリヘ図形を描画する場合、画像メモリに新たなメモリの割り当てが必要な場合は、T308からT312で確保した空きメモリを使用する。
【0095】
次に、T313で画像メモリヘ描画したコマンドのバイト数をカウンタに加算する(T314)。このカウンタは、T306でクリアされ、個々の描画コマンドを実行することに、T314で加算される。
次に、描画コマンド列の中の個々の描画コマンドを、全て実行したか否か判断する(T315)。残りのコマンドがある場合は、T308に戻って、次の描画コマンドに関してT308からT315の処理を実行する。残りのコマンドが無くなった場合は、T316以降のステップヘ進む。
【0096】
T315で残りのコマンドが無くなった場合、T308からT315で作成した画像メモリを調べて、描画された囲形の画像メモリのバイト数を確定し、インターフェイス・コントローラ104のメモリ変数に記憶する(T316)。
次に、描画コマンド列の実行時間を計測するためのタイマーをストップして、画像メモリヘ図形を描画するのに要した時間を確定し、インターフェイス・コントローラ104のメモリ変数に記憶する(T317)。
【0097】
次に、描画コマンド列の全体のバイト数を確定し、インターフェイス・コントローラ104のメモリ変数に記憶する(T318)。このバイト数の値は、T314で個々のコマンドのバイト数が加算された合計値である。
T316からT318は、ホスト・コンピュータ101が図2のT205やT216で送出した描画コマンド列を、インターフェイス・コントローラ104が実行処理して計測した、画像メモリのバイト数と、描画コマンド列の実行時間と、描画コマンド列のバイト数とを確定している。これらの値は、画像記憶コマンドを実行する場合、T319で優先度を計算するのに使われる。
【0098】
T319とT320は、T301でホスト・コンピュータ101から受信したデータがT302で画像記憶コマンドと判別された場合に行うプログラム・ステップである。ホスト・コンピュータ101が、図2のT206で送出したコマンドの実行処理に対応する。
【0099】
まず、T306からT318で作成した画像メモリの優先度を計算して確定する(T319)。
次に、T306からT318で作成した画像メモリを画像記憶テーブルに登録する(T320)。記憶している画像の個数G350を1つ加算し、T305で記憶したページIDと、T319で計算した優先度と、T306からT318で作成した画像メモリのアドレスと、T316で確定した画像メモリのバイト数とを、画像記憶テーブルの空いている場所(ページID351、優先度352、画像のアドレス353、画像のバイト数354)に登録する。
【0100】
画像メモリの優先度は、描画コマンド列のバイト数と、描画コマンド列の処理時間と、画像メモリのバイト数とに、それぞれの係数を掛けてから、足し合わせた合計値である。以下の評価式Zを使って計算する。
優先度 = A×(描画コマンド列のバイト数)+B×(描画コマンド列の処理時間)+C×(画像メモリのバイト数)
係数Aと係数Bと係数Cは、ホスト・コンピュータ101が初期化コマンドに付随して送出した値であり、T304でメモリ変数に記憶した値を使用する。描画コマンド列のバイト数は、ホスト・コンピュータ101が送出した描画コマンド列をT306からT318で実行処理して、T318でメモリ変数に記憶した値を使用する。同様に、描画コマンド列の処理時間と画像メモリのバイト数は、T317及びT316でメモリ変数に記憶した値を使用する。
【0101】
画像メモリの優先度は、大きい値は高く評価され、小さい値は低く評価される。T310や後述するT324で、画像記憶テーブルに登録されている画像メモリの中から最も優先度の低いページを選択する場合は、優先度の値が最も小さいものを選ぶ。
【0102】
描画コマンド列のバイト数と描画コマンド列の処理時間と画像メモリのバイト数は、ホスト・コンピュータ101が送出する描画コマンド列の内容によって決まり、インターフェイス・コントローラ104の画像メモリに作成された画像の特徴を表す。描画コマンド列の内容はページごとに異なるが、各部の同じページでは同じ内容である。従って、各部の同じページでは、描画コマンド列のバイト数と描画コマンド列の処理時間と画像メモリのバイト数も同じ値になる。
【0103】
描画コマンド列のバイト数は、描画する画像の複雑さや面積に依存して、多かったり少なかったりする。描画コマンド列のバイト数が多い場合、図2のT205やT216でホスト・コンピュータ101が描画コマンド列を生成するのに必要な処理時間が長くなったり、ホスト・コンピュータ101からプリンタ102へ描画コマンド列をデータ転送するのに必要な時間が長くなったりする。
【0104】
これらの時間は、ホスト・コンピュータ101のCPU113やプリンタ・インターフェイス114、プリンタ102のインターフェイス・コントローラ104のCPU120やホスト・インターフェイス115の処理性能にも依存する。描画コマンド列の処理時間は、描画コマンド列のバイト数が多いと処理時間も長くなる傾向にあるが、描画コマンド列を構成する個々のコマンドの種類と出現回数によっては、少ないバイト数でも処理時間が長くなることもある。描画コマンド列の処理時間が長い場合、インターフェイス・コントローラ104がプリンタ・エンジン105へ画像データを出力する時期が遅れ、用紙の印刷が遅くなる。
【0105】
画像メモリのバイト数は、描画コマンド列で描画する画像の面積に比例する。画像メモリのバイト数が多いページは、インターフェイス・コントローラ104に実装しているメモリの多くを占有するため、記憶できるページ数が少なくなる。これは、2部目以降で、ホスト・コンピュータ101が1部目と同じ描画コマンド列を再度送出する必要のあるページ数を増やすことになる。
【0106】
係数Aと係数Bと係数Cは、画像メモリの優先度を計算するために、描画コマンド列のバイト数と描画コマンド列の処理時間と画像メモリのバイト数のうち、どの値を重視するかを決める。
評価式Zの中で「A×(描画コマンド列のバイト数)」が大きくなるように係数Aの値を決めると、描画コマンド列のバイト数が多いページの優先度が高くなり、T310や後述するT324でページを削除する場合、削除対象のページになる可能性が少なくなる。
【0107】
これによって、2部目以降において、ホスト・コンピュータ101が図2のT216でバイト数の多い描画コマンド列を実行処理する可能性が低くなり、ホスト・コンピュータ101からプリンタ102へ送出されるデータのバイト数が少なくなる。
【0108】
ホスト・コンピュータ101のCPU113やプリンタ・インターフェイス114、プリンタ102のホスト・インターフェイス115の処理性能が低くても比較的速く印刷できるようにしたい場合や、ホスト・コンピュータ101での印刷処理を軽減して印刷以外の処理が早く行えるようにしたい場合に有効である。
【0109】
評価式Zの中で「B×(描画コマンド列の処理時間)」が大きくなるように係数Bの値を決めると、描画コマンド列の処理時間が長いページの優先度が高くなり、T310や後述するT324でページを削除する場合、削除対象のページになる可能性が少なくなる。
【0110】
これによって、2部目以降において、ホスト・コンピュータ101が図2のT216で処理時間の長い描画コマンド列を送出する可能性が低くなり、インターフェイス・コントローラ104がT306からT318を長時間処理する可能性が低くなる。用紙の印刷を極力速くしたい場合に有効である。
【0111】
評価式Zの中で「C×(画像メモリのバイト数)」は、上記の2項とは異なる使い方をする。「C×(画像メモリのバイト数)」がマイナスの数値となるように係数Cの値を決めると、画像メモリのバイト数が多いページの優先度が低くなり、T310や後述するT324でページを削除する場合、削除対象のページになる可能性が高くなる。これによって、インターフェイス・コントローラ104に実装しているメモリに、画像メモリのバイト数が少ないページを多数記憶するようになる。
【0112】
係数Cは、係数A又は係数Bと組み合わせて使用する。例えば、「A×(描画コマンド列のバイト数)」が大きくなるように係数Aの値を決め、かつ、「C×(画像メモリのバイト数)」がマイナスの数値となるように係数Cの値を決めると、画像記憶テーブルには、描画コマンド列のバイト数が多くて画像メモリのバイト数が少ないページを優先して登録するようになり、2部目以降でホスト・コンピュータ101が送出するデータのバイト数とインターフェイス・コントローラ104に実装しているメモリの効率を両方加味できる。
【0113】
同様に、「B×(描画コマンド列の処理時間)」が大きくなるように係数Bの値を決め、かつ、「C×(画像メモリのバイト数)」がマイナスの数値となるように係数Cの値を決めると、画像記憶テーブルには、描画コマンド列の処理時間が長くて画像メモリのバイト数が少ないページを優先して登録するようになり、2部目以降の印刷速度とインターフェイス・コントローラ104に実装しているメモリの効率を両方加味できる。
【0114】
係数Aと係数Bと係数Cは、重視する項とその他の項とのバランスを考慮して、目的に応じた柔軟な設定が可能である。
なお、評価式Zで計算した優先度は、インターフェイス・コントローラ104に実装しているメモリが使い果たされている状態で必要なメモリを新たに確保するため、画像記憶テーブルに登録されている画像メモリを削除する場合に使われる。
【0115】
1部目のページ数が少ないとか、画像メモリヘ描画する画像の面積が小さくてバイト数が少ないなどの理由により、インターフェイス・コントローラ104が1部目の全てのページの画像メモリを記憶できる場合は、T310や後述するT324を実行しないため、優先度が参照されることはない。
【0116】
T321からT328は、T301でホスト・コンピュータ101から受信したデータがT302で印刷開始コマンドと判別された場合に行うプログラム・ステップである。ホスト・コンピュータ101が図2のT207やT217で送出したコマンドの実行処理に対応する。
【0117】
印刷開始コマンドの実行処理は、印刷しようとしているページIDの画像メモリが画像記憶テーブルに登録されているか否かで、2つの処理に分かれる。
1部目の印刷では、図2は、T204からT207までのステップで、ページIDコマンドと描画コマンド列と画像記憶コマンドと印刷開始コマンドとをプリンタ102へ順に送出する。このため、印刷開始コマンドを実行する場合、印刷しようとしているページIDの画像メモリは、必ず画像記憶テーブルに登録されている。
【0118】
2部目以降の印刷では、図2のT214からT217までのステップで、ページIDコマンドと印刷開始コマンドとのみをプリンタ102へ送出する場合と、ページIDコマンドと描画コマンド列と印刷開始コマンドとをプリンタ102へ送出する場合がある。前者は、印刷しようとしているページIDの画像メモリが、画像記憶テーブルに登録されている場合のコマンド送出であり、後者は、画像記憶テーブルに登録されていない場合のコマンド送出である。
【0119】
画像記憶テーブルに登録されているページIDの画像メモリを印刷する場合、インターフェイス・コントローラ104は、画像メモリのデータをプリンタ・エンジン105へ出力して用紙への印刷を行った後、空きメモリの調整を行う。画像記憶テーブルに登録されていないページIDの画像メモリを印刷する場合は、画像メモリのデータをプリンタ・エンジン105へ出力して用紙へ印刷した後、画像メモリをメモリ開放する。
【0120】
印刷開始コマンドを受信すると、まず、T305でメモリ変数に記憶したページIDが、画像記憶テーブルに登録されているか否かを判断する(T321)。画像記憶テーブルに登録されている場合は、T322からT326の処理へ進み、そうでない場合は、T327からT328の処理へ進む。
【0121】
T322からT326は、画像記憶テーブルに登録されているページIDの画像メモリを印刷する場合の処理である。
まず、画像記憶テーブルを参照して、T305でメモリ変数に記憶したページIDを探し出し、対応する画像メモリのデータをプリンタ・エンジン105へ出力する(T322)。また、これと同時に、プリンタ・エンジン105が用紙を印刷するのに必要な制御情報も出力する。プリンタ・エンジン105は、インターフェイス・コントローラ104から受信した画像データと制御情報に基づいて、画像データを用紙へ印刷するための各種機械的な制御を実行する。
【0122】
T323からT326は、インターフェイス・コントローラ104に実装しているメモリについて、空きメモリの調整を行う。
1部目の各ページの印刷で、インターフェイス・コントローラ104がT306からT318によって描画コマンド列を実行する場合、インターフェイス・コントローラ104に実装しているメモリが使い果たされていると、T309からT312の処理で、既に画像記憶テーブルに登録済みのページの画像メモリを削除する可能性がある。
【0123】
削除されたページは、2部目以降の印刷の場合、ホスト・コンピュータ101が描画コマンド列を再度送出するが、このときに十分な空きメモリが存在しないと、インターフェイス・コントローラ104はT309からT312の処理を実行して、画像記憶テーブルに登録済みの別のページの画像メモリを削除してしまう。
【0124】
ホスト・コンピュータ101は、2部目の印刷の手前で、図2のT209及びT210によって取得したステータス応答データに基づいて、2部目以降の各ページで描画コマンド列を再度送出する必要があるか否か判断する。2部目以降の印刷の場合に画像記憶テーブルに登録済みのページの画像メモリを削除してしまうと、ステータス応答データの内容と画像記憶テーブルの状態に食い違いが生じ、画像記憶テーブルに登録されていないページなのにも関わらず、ホスト・コンピュータ101が描画コマンド列を送出せず、正しく動作しなくなる。
【0125】
このような現象を回避するため、2部目以降でインターフェイス・コントローラ104が描画コマンド列を実行処理する場合は、T309からT312を実行しないようにしておく必要があり、この条件を満たすため、インターフェイス・コントローラ104には十分な空きメモリを確保しておく必要がある。
【0126】
ここで、ホスト・コンピュータ101は、1部目の印刷のときにインターフェイス・コントローラ104が削除したページの描画コマンド列だけを送出し、また、作成した画像メモリは用紙への印刷が終了すると、画像記憶テーブルに登録されることなく、すぐにメモリ開放される。従って、2部目以降の印刷のときに、インターフェイス・コントローラ104が用意しておく必要のある空きメモリは、1部目の印刷のときに削除したページの画像メモリの最大バイト数であり、この値はT303やT311からT312で更新された変数Sに記憶されている。
【0127】
T323からT326は、インターフェイス・コントローラ104の空きメモリのバイト数が変数Sで記憶している値より小さいかどうか比較し、空きメモリが足りない場合は、優先度が低いページIDの画像メモリを画像記憶テーブルから削除して、空きメモリを確保する処理である。
【0128】
まず、インターフェイス・コントローラ104の空きメモリのバイト数が変数Sで記憶している値より小さいか否か判断する(T323)。空きメモリのバイト数が変数Sより小さい場合は、T324からT326のステップヘ進み、十分な空きメモリがある場合は、印刷開始コマンドの実行処理を終了する。
【0129】
T323で空きメモリのバイト数が変数Sより小さい場合、画像記憶テーブルに登録されている画像メモリの中から、最も優先度の低いページを1つ選択し、このページに割り当てられている画像メモリを開放する(T324)。これにより、インターフェイス・コントローラ104に実装しているメモリの中で、使われていない空きメモリが増える。画像メモリを開放したページは、画像記憶テーブルから削除され、記憶している画像の個数G350も1つ減算される。
【0130】
次に、T324で画像記憶テーブルから削除したページの画像メモリのバイト数と、変数Sで記憶している値とを比較して条件分岐する(T325)。削除したページの画像メモリのバイト数の方が大きい場合は、T326へ進む。そうでない場合は、T323へ戻る。
【0131】
T325で削除したページの画像メモリのバイト数の方が大きい場合、変数SをT324で削除したページの画像メモリのバイト数に変更する(T326)。変数Sは、画像記憶テーブルから削除したページの画像メモリの最大バイト数を記憶するようになっている。T324で削除したページに関しても、2部目以降で描画コマンド列が再度送出されて来るので、これを加味した値に更新する。
【0132】
T325とT326は、いずれもT323へ戻る。T323では、新たな空きメモリを基にして、再度、変数Sで記憶している値と比較される。十分な空きメモリを確保できた場合は、印刷開始コマンドの実行処理を終了するが、確保できなかった場合は、再び、T324からT326を実行し、優先度の低いページを削除して空きメモリを増やす。
【0133】
画像記憶コマンドによる画像記憶テーブルヘの画像メモリの登録や、ステップT309からT312の実行による変数Sで記憶している値の変更は、ホスト・コンピュータ101が1部目の各ページを印刷している場合にのみ行われる。2部目以降の各ページでは、変数Sで記憶している値やインターフェイス・コントローラ104の空きメモリは変化しないため、T323の条件分岐が、T324からT326のステップを実行するような条件になることはない。
【0134】
T327からT328は、画像記憶テーブルに登録されていないページIDの画像メモリを印刷する場合の処理である。これは、2部目以降の印刷において、ホスト・コンピュータ101が図2のT214からT217で、ページIDコマンドと描画コマンド列と印刷開始コマンドをプリンタ102へ送出した場合に実行される。
【0135】
まず、画像メモリのデータをプリンタ・エンジン105へ出力する(T327)。この画像メモリは、ホスト・コンピュータ101が図2のT216で送出した描画コマンド列を、インターフェイス・コントローラ104がT306からT318で実行処理して作成したものである。画像メモリのデータと同時に、プリンタ・エンジン105へは、用紙を印刷するのに必要な制御情報も出力する。プリンタ・エンジン105は、インターフェイス・コントローラ104から受信した画像データと制御情報に基づいて、画像データを用紙へ印刷するための各種機械的な制御を実行する。
【0136】
T328では、T327で印刷した画像メモリをメモリ開放する。これによって、T306からT318の実行処理に伴って画像メモリとして割り当てられたインターフェイス・コントローラ104の空きメモリが、再び空きメモリに戻される。
【0137】
T329は、T301でホスト・コンピュータ101から受信したデータが、T302でステータス確認コマンドと判別された場合に行うプログラム・ステップである。ホスト・コンピュータ101が、図2のT209で送出したコマンドの実行処理に対応する。
【0138】
T329は、ステータス確認コマンドの応答として、図8で例示するような形態のデータをホスト・コンピュータ101へ出力する。これらのデータは、画像記憶テーブルで記憶している情報のコピーである。図8において、記憶している画像の個数G501は、記憶している画像の個数G350のコピーである。記憶している画像のページID(G502)は、画像記憶テーブルに登録されている画像メモリのページID(G351)のコピーである。ステータス応答データには、画像記憶テーブルに登録されている全ての画像メモリのページID(G351)が列挙して出力される。
【0139】
図7と図8と図9は、本実施例での動作を例示するため、ホスト・コンピュータ101とプリンタ102の間で送受信されるコマンドやステータス応答データの一例を表している。
図7は、ホスト・コンピュータ101が図2のT201からT208を実行してプリンタ102へ送出する1部目のコマンドを表した例である。
【0140】
初期化コマンド401は、ホスト・コンピュータ101がT201で送出する初期化コマンドである。プリンタ102は、このコマンドを受信するとT303からT304の処理を実行する。
ページIDコマンド402は、ホスト・コンピュータ101がT204で送出するページIDコマンドである。プリンタ102は、このコマンドを受信するとT305の処理を実行する。
【0141】
描画コマンド列403は、ホスト・コンピュータ101がT205で送出する描画コマンド列である。プリンタ102は、このコマンドを受信するとT306からT318の処理を実行する。
画像記憶コマンド404は、ホスト・コンピュータ101がT206で送出する画像記憶コマンドである。プリンタ102は、このコマンドを受信するとT319からT320の処理を実行する。
【0142】
印刷開始コマンド405は、ホスト・コンピュータ101がT207で送出する印刷開始コマンドである。プリンタ102は、このコマンドを受信するとT321からT328の処理を実行する。
T204とT205とT206とT207は、Nページ分のループ処理の一部になっている。このため、ページIDコマンド402と描画コマンド列403と画像記憶コマンド404と印刷開始コマンド405も、Nページ分の繰り返しが送出される。プリンタ102は、これらのコマンドを順に実行処理して、作成した画像メモリを画像記憶テーブルヘ登録し、かつ、用紙へ印刷する。
【0143】
図8は、1部目の印刷と2部目の印刷の間で、プリンタ102からホスト・コンピュータ101へ出力されるデータを表した例である。これは、ホスト・コンピュータ101がT209を実行してステータス確認コマンドをプリンタ102へ送出し、プリンタ102がこのコマンドをT329で実行処理することにより出力される。ホスト・コンピュータ101では、T210でテータス応答データを受信する。
【0144】
このステータス応答データは、インターフェイス・コントローラ104の画像記憶テーブルで記憶している情報のコピーである。
記憶している画像の個数G501は、記憶している画像の個数G350のコピーである。記憶している画像のページID(G502)は、画像記憶テーブルに登録されている画像メモリのページID(G351)のコピーであり、画像記憶テーブルに登録されている全ての画像メモリのページID(G351)が列挙して出力される。
【0145】
図8では、1ページ目のページIDと4ページ目のページIDが欠落している。これは、インターフェイス・コントローラ104が1部目の印刷を行っている場合において、図4および図5のT309からT312、またはT324からT326を実行して、画像記憶テーブルから1ページ目と4ページ目の画像メモリが削除されたことを反映している。
【0146】
図9は、ホスト・コンピュータ101がT211からT219を実行してプリンタ102へ送出する2部目以降のコマンドを表した例である。ページIDコマンド601,604と、描画コマンド列602と、印刷開始コマンド603,605とは、ホスト・コンピュータ101がT214とT216とT217で送出する。
【0147】
前述した図8により、1ページ目と4ページ目の画像メモリは、インターフェイス・コントローラ104の画像記憶テーブルに登録されていないことが判明している。そのため、1ページ目と4ページ目では、T215でT216を実行するように条件分岐が行われ、ホスト・コンピュータ101は描画コマンド列602をプリンタ102へ送出する。
【0148】
インターフェイス・コントローラ104は、ページIDコマンド601と描画コマンド列602を、それぞれT305と、T306からT318で実行処理した後、印刷開始コマンド603では、T321においてT327からT328を実行するように条件分岐が行われ、用紙への印刷と描画コマンド列602で作成した画像メモリの開放が行われる。
【0149】
1ページ目と4ページ目を除くページでは、T215においてT216を実行しないように条件分岐が行われるため、ホスト・コンピュータ101は、ページIDコマンド604と印刷開始コマンド605のみをプリンタ102へ送出する。これによって、インターフェイス・コントローラ104は、ページIDコマンド604をT305で実行処理した後、印刷開始コマンド605では、T321でT322からT326を実行するように条件分岐が行われ、T322で画像記憶テーブルに登録されている画像メモリのデータが用紙に印刷される。
【0150】
T211からT219は、Nページの印刷をM−1部繰り返すループ処理になっている。図9はNページの印刷の1セット分であり、ホスト・コンピュータ101のコマンド送出とインターフェイス・コントローラ104の実行処理は、図9と同じ内容が、M−1回繰り返される。
<第2の実施形態>
(実施例1)
第1の実施形態では、1部目の印刷を終了した時点で、プリンタ102のメモリに記憶するページが確定していた。ホスト・コンピュータ101は、2部目を印刷するためのコマンドをプリンタ102へ送出する手前で、プリンタ102のステータス応答データを取得する。これによって、プリンタ102が記憶しているページIDを把握し、2部目以降にプリンタ102へ送出するコマンドの内容を変更している。
【0151】
図2において、2部目以降の印刷の場合、T216でホスト・コンピュータ101がコマンド列をプリンタ102へ送出した後、画像記憶コマンドの送出処理を追加して、このページをプリンタ102に記憶させることも可能である。
この場合、画像記憶コマンドの送出や次の描画コマンド列の送出によって、プリンタ102の空きメモリが不足して、それまでプリンタ102のメモリに記憶していたページが追加や削除されてしまう可能性が生じる。図2において、ホスト・コンピュータ101は、2部目の印刷を行う手前のT209とT210で、1度だけプリンタ102からステータス応答データを受信しているので、2部目以降の印刷で新たに生じたページの追加や削除に伴うプリンタ102の状態と受信したステータス応答データとに食い違いが生じる。そのため、ホスト・コンピュータ101は、2部目以降の印刷で画像記憶コマンドを送出した場合、ステータス確認コマンドの送出とステータス応答データの受信を再度実行し、以降のページでは、新たに受信したステータス応答データの内容に基づいて、プリンタ102が記憶しているページか否かの判断を行う必要がある。
【0152】
すなわら、図2のT216の後ろに、T206およびT209およびT210と同じ処理を追加してT220およびT221およびT222とし、図10に示す処理フローとなる。
図10において、ホスト・コンピュータ101は、T202からT208のループ処理によって1部目の各ページの印刷処理を行い、T211からT219のループ処理では2部目以降の印刷処理を行っている。
(実施例2)
実施例1において、1部目の印刷と2部目以降の印刷は1つのループ処理に統合することが可能である。図10から、T204からT207の処理を削除して、さらに、T211で行っている変数Yの初期化を1部目とするよう変更してT223とし、図11に示す処理フローとなる。
【0153】
この場合、T202からT208のループ処理では、ページID記憶テーブル250へ各ページのページIDを登録する処理だけが行われる。T209とT210によるステータス確認コマンドの送出とステータス応答データの受信は、プリンタ102が1部目の印刷を行う前に実行されるため、ホスト・コンピュータ101が受信するステータス応答データには、有効なページIDが何も含まれていない。
【0154】
したがって、T223からT219のループ処理では、1部目の全てのページにおいて、T215で必ずT216へ進むよう判断され、T216によって各ページの描画コマンド列がプリンタ102へ送出される。
(実施例3)
さらに、実施例2における図11では、各ページを識別するためのページIDを扱っているが、ページIDは各部の同じページでは同じ値であるので、1から順にカウントするページ番号と同値と見なすこともできる。図11において、ページ番号は変数Xで表されているので、ページID記憶テーブル250は省略することができる。よって、ページID記憶テーブル250に関連するT202からT208と、T213の処理を削除して、ページIDの代わりに変数Xの値を使う。この場合のプログラムは、図12に示す処理フローとなる。
(実施例4)
図4および図5で示される処理フローは、上述した図10や図11や図12で示される処理フローと組み合わせても動作するが、もともと図2と組み合わせて動作することを前提にしている。図2は、1部目の印刷を終了した時点で、プリンタ102のメモリに記憶するページを確定させ、2部目以降では、記憶していないページの描画コマンド列をプリンタ102へ送出する。
【0155】
図4および図5の処理フローは、プリンタ102のメモリに記憶していないページの描画コマンド列が再度ホスト・コンピュータ101から送出されて来ても、記憶済みの画像を削除することなく、同じ画像を作成できるようにするため、必要なサイズのメモリを変数Sに記憶して、変数Sが示すサイズのメモリを空けておくよう設計されている。
【0156】
図10や図11や図12で示される処理フローは、プリンタ102のメモリに記憶しているページの追加や削除が2部目以降の印刷で行われても、ステータス応答データの受信を実行するため、ホスト・コンピュータ101のプログラム実行に反映される。そのため、図4および図5で示される処理フローで行っているような変数Sによる空きメモリの確保は必要なく、変数Sに関連する処理を削除することが可能である。
【0157】
すなわら、図4および図5のT303で行っている変数Sの初期化と、T311からT312で行っている変数Sの更新処理と、T323からT326で行っている空きメモリの調整および変数Sの更新処理を削除して、図13および図14のようになる。
【0158】
図2で示される処理フローと図4および図5で示される処理フローが組み合わされて連動する場合、1部目の各ページの印刷の期間に、ホスト・コンピュータ101が図2のT205で描画コマンド列をプリンタ102へ送出した時点では、このページより後ろのページはプリンタ102に送出されていない。そのため、プリンタ102が図4および図5のT310やT324で優先度の低いページを削除する必要が生じた場合、後ろのページに関しての優先度は加味されないで削除するページが決定される。
【0159】
ホスト・コンピュータ101のプログラムを、図10や図11や図12のフローのように変形することによって、2部目以降の印刷のときに、プリンタ102が図4および図5のT310やT324で優先度の低いページを削除する必要が生じた場合は、1部目で印刷した全てのページの優先度の累積が画像記憶テーブルに反映されているため、より適切なページが削除されるようになる。
【0160】
図10または図11または図12で示されるホスト・コンピュータ101側の処理フローと、図13および図14で示されるプリンタ102側の処理フローが組み合わされて連動する場合、変数Sによるプリンタ102の空きメモリの確保が必要なくなる。そのため、図2と図4および図5が組み合わされて連動する場合と比べ、プリンタ102のメモリに、より多くのページ数の画像を記憶できる可能性が高まる。
【0161】
【発明の効果】
本発明は、「従来の技術」欄で述べた、(3)の方式に見られる高速な印刷ができない場合があると言う問題と、(4)の方式でハード・ディスク装置を搭載することによりコスト上昇してしまうと言う問題を回避し改善している。
【0162】
プリンタのメモリに記憶しきれないような多数のページを複数部印刷する場合でも、優先度が高いページの画像をプリンタのメモリに残すことによって、2部目以降の場合に、ホスト・コンピュータからプリンタヘ送出されるデータの量が少なくなったり、送出されたデータからプリンタが画像を作成する必要が無くなったりするため、高速な印刷が可能になる。
【0163】
優先度は、描画コマンド列のバイト数と、描画コマンド列の処理時間と、画像メモリのバイト数とから成る3つの変動要因とのそれぞれの係数によって計算されるため、係数の値を適切に選択することによって、2部目以降の印刷において、印刷速度を最優先にしたり、ホスト・コンピュータの処理の軽減を最優先にしたり、印刷速度とホスト・コンピュータ処理のバランスを考慮したりするなど重視する項目に応じた柔軟な対応が可能である。
【0164】
第1の実施形態の発明は、1部目の全てのページの印刷が終了し2部目の印刷を行う手前で、ホスト・コンピュータがプリンタのメモリに記憶しているページ画像の問い合わせを1度だけ行う。そのため、プリンタからホスト・コンピュータヘのステータス応答データの送信が低速な印刷システムでも、ステータス応答することに伴う処理速度の低下があまり無く、2部目以降に送出するデータの量が少なくなることによる高速化によって、全体として高速な印刷システムが実現する。
【0165】
第2の実施形態の発明は、ホスト・コンピュータがプリンタへ描画コマンド列を送出する度に、プリンタのメモリに記憶しているページ画像の問い合わせを行うため、プリンタからホスト・コンピュータヘのステータス応答データの送信が高速な印刷システムに適合する。第1の実施形態の発明と比べて、ステータス応答の回数が増えるが、プリンタのメモリに記憶するページ画像が最適化されるため、ホスト・コンピュータからプリンタヘ送出されるデータの量がさらに少なくなり、さらに高速な印刷システムが実現する。
【図面の簡単な説明】
【図1】本発明のシステム構成図である。
【図2】第1の実施形態におけるホスト・コンピュータの印刷プログラムの処理フローを示す図である。
【図3】ページID記憶テーブルの1例を示す図である。
【図4】第1の実施形態におけるインターフェイス・コントローラの制御プログラムの処理フロー(その1)を示す図である。
【図5】第1の実施形態におけるインターフェイス・コントローラの制御プログラムの処理フロー(その2)を示す図である。
【図6】画像記憶テーブルの1例を示す図である。
【図7】第1の実施形態におけるホスト・コンピュータとプリンタ間で送受信される1部目のコマンド・シーケンスの1例を示す図である。
【図8】第1の実施形態におけるホスト・コンピュータとプリンタ間で送受信されるステータス応答データの1例を示す図である。
【図9】第1の実施形態におけるホスト・コンピュータとプリンタ間で送受信される2部目のコマンド・シーケンスの1例を示す図である。
【図10】第2の実施形態(実施例1)におけるホスト・コンピュータの印刷プログラムの処理フローを示す図である。
【図11】第2の実施形態(実施例2)におけるホスト・コンピュータの印刷プログラムの処理フローを示す図である。
【図12】第2の実施形態(実施例3)におけるホスト・コンピュータの印刷プログラムの処理フローを示す図である。
【図13】第2の実施形態におけるインターフェイス・コントローラの制御プログラムの処理フロー(その1)を示す図である。
【図14】第2の実施形態におけるインターフェイス・コントローラの制御プログラムの処理フロー(その2)を示す図である。
【符号の説明】
101 ホスト・コンピュータ
102 プリンタ
103 パラレル・インターフェイス
104 インターフェイス・コントローラ
105 プリンタ・エンジン
106 ビデオ・インターフェイス
107 キーボード
108 ディスプレイ
109 フロッピー(登録商標)・ディスク・ドライブ
110 ハードディスク・ドライブ
111 ROM
112 RAM
113 CPU
114 プリンタ・インターフェイス
115 ホスト・インターフェイス
116 オペレーション・パネル
117 Mask−ROM
118 ROM
119 RAM
120 CPU
121 エンジン・インターフェイス
Claims (2)
- 複数の印刷頁情報からなる印刷頁情報群の印刷を指示する印刷指示装置と、前記印刷指示に基づいて印刷する画像形成装置とからなる印刷システムにおいて、
前記印刷指示装置は、
前記印刷頁情報群に含まれるそれぞれの印刷頁情報を識別する頁識別情報を作成する作成手段と、
該作成手段により作成された頁識別情報を記憶する第1の記憶手段と、
前記印刷頁情報と該印刷頁情報に対応する頁識別情報とを前記画像形成装置に送信する第1の送信手段と、
前記画像形成装置から送信された頁識別情報を受信する第1の受信手段と、
前記第1の記憶手段に記憶した頁識別情報であって、かつ前記第1の受信手段により受信した頁識別情報以外の頁識別情報を判定する頁識別情報判定手段と、前記頁識別情報判定手段の結果に基づいて取得した頁識別情報に対応する印刷頁情報を送信する第2の送信手段とを備え、
前記画像形成装置は、
前記第1の送信手段により送信された前記印刷頁情報と前記頁識別情報を受信する第2の受信手段と、
前記第2の受信手段により受信した前記印刷頁情報と前記頁識別情報とを対応づけた印刷識別対応情報を記憶する第2の記憶手段と、
前記印刷頁情報の情報量と、前記印刷頁情報に基づいて印刷画像を描画する時間と、描画した印刷画像の情報量と、に基づいて各印刷頁情報の優先度を算出する優先度算出手段と、
前記優先度算出手段により得られた優先度に基づいて、前記第2の記憶手段から前記印刷識別対応情報を消去する消去手段と、
前記第2の記憶手段に記憶している頁識別情報を前記第1の受信手段に送信する第3の送信手段と、
を備えることを特徴とする印刷システム。 - 前記優先度算出手段は、前記印刷頁情報の情報量と、前記印刷頁情報に基づいて印刷画像を描画する時間と、描画した印刷画像の情報量とに、それぞれの係数を掛けてから、足し合わせた合計値に基づき算出することを特徴とする請求項1記載の印刷システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002251866A JP4140319B2 (ja) | 2002-08-29 | 2002-08-29 | 印刷システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002251866A JP4140319B2 (ja) | 2002-08-29 | 2002-08-29 | 印刷システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004094395A JP2004094395A (ja) | 2004-03-25 |
JP4140319B2 true JP4140319B2 (ja) | 2008-08-27 |
Family
ID=32058335
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002251866A Expired - Fee Related JP4140319B2 (ja) | 2002-08-29 | 2002-08-29 | 印刷システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4140319B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5623029B2 (ja) | 2009-06-02 | 2014-11-12 | キヤノン株式会社 | 印刷制御装置、印刷制御方法、およびプログラム |
JP6344145B2 (ja) * | 2014-08-27 | 2018-06-20 | コニカミノルタ株式会社 | 画像形成装置および画像形成プログラム |
-
2002
- 2002-08-29 JP JP2002251866A patent/JP4140319B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004094395A (ja) | 2004-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8984435B2 (en) | Print control apparatus and print control method | |
US7589849B2 (en) | Method and apparatus for providing printer recognition and management of a print job entity | |
US7324224B2 (en) | Printer for managing a plurality of print job data | |
US5241672A (en) | System using the storage level of file updates in nonvolatile memory to trigger saving of RAM to disk and using the file updates to reboot after crash | |
JP4886866B2 (ja) | 主記憶装置へのアクセスを高速化する方法および記憶装置システム | |
JPH07168762A (ja) | キャッシュページ置換方法及び装置並びにコンピュータ装置 | |
JPH0683827A (ja) | 文書プレゼンテーション制御方法及び装置 | |
JP4140319B2 (ja) | 印刷システム | |
JPH0822640B2 (ja) | 画像記録装置の制御装置 | |
JP3315758B2 (ja) | 印字装置 | |
JPH1178178A (ja) | 印刷システム | |
JP3013577B2 (ja) | メモリ管理装置及びメモリ管理装置を備えたプリンタ | |
JP3823534B2 (ja) | 印刷システム | |
JPH11194973A (ja) | 画像情報処理装置、その制御方法および記録媒体 | |
JP3001213B2 (ja) | プリンタ制御装置 | |
JPH023351A (ja) | 印刷装置 | |
JP3173716B2 (ja) | 出力装置、情報処理システム及びデータ出力方法 | |
JP4109755B2 (ja) | 印刷装置 | |
JPH091871A (ja) | 印刷装置および印刷装置の描画制御方法 | |
JP2980672B2 (ja) | プリンタ | |
JP4497888B2 (ja) | 画像処理装置、画像処理方法、制御プログラム | |
JP3812278B2 (ja) | 記録媒体およびコンピュータ | |
JPH09212320A (ja) | 情報処理装置並びに印刷装置並びに情報処理システムおよび情報処理システムのデータ処理方法 | |
JP3500254B2 (ja) | プリンタの印字テスト制御方法 | |
JPH0863307A (ja) | 印刷装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050317 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071206 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071218 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080131 |
|
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: 20080520 |
|
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: 20080602 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110620 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110620 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120620 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120620 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130620 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |