JPH05301429A - エラー回復機能付き印刷制御装置及び印刷制御方法 - Google Patents

エラー回復機能付き印刷制御装置及び印刷制御方法

Info

Publication number
JPH05301429A
JPH05301429A JP4226889A JP22688992A JPH05301429A JP H05301429 A JPH05301429 A JP H05301429A JP 4226889 A JP4226889 A JP 4226889A JP 22688992 A JP22688992 A JP 22688992A JP H05301429 A JPH05301429 A JP H05301429A
Authority
JP
Japan
Prior art keywords
command
print
page
unit
buffer
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.)
Pending
Application number
JP4226889A
Other languages
English (en)
Inventor
Saiji Kageyama
斎司 蔭山
Chikahiko Nagata
近彦 永田
Tadahiko Aso
忠彦 麻生
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.)
Hitachi Ltd
Hitachi Micro Software Systems Inc
Original Assignee
Hitachi Ltd
Hitachi Micro Software Systems 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 Hitachi Ltd, Hitachi Micro Software Systems Inc filed Critical Hitachi Ltd
Publication of JPH05301429A publication Critical patent/JPH05301429A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

(57)【要約】 【目的】本発明の目的は、印刷制御装置のエラ−回復方
式に係り、プリンタにて紙ジャム等の再印刷の必要なエ
ラ−が発生した場合にも、正確な再印刷結果を出力する
印刷制御装置を提供することにある。 【構成】印刷制御装置110内にエラ−回復に備えコマ
ンドと各頁先頭の描画属性パラメ−タを保存するコマン
ドバッファ保存部1311(又はコマンドファイル保存
部、又は描画ドットイメ−ジを保存するペ−ジバッファ
保存部)、該保存内容を用いてエラ−回復する保存コマ
ンドバッファ利用再描画印刷準備部1312(又は保存
コマンドファイル利用再描画印刷準備部、又は保存ペ−
ジバッファ再印刷部)を設けた。 【効果】再印刷の必要なエラ−の発生時に前記保存内容
を用いて、描画属性パラメ−タが頁間で引き継がれる仕
様のコマンドに対しても、正確な再印刷結果でエラ−回
復することができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は印刷制御装置及び印刷制
御装置方法に係り、特に、レーザプリンタ、LED(発
光ダイオード)プリンタ、LCS(液晶シャッタ)プリ
ンタ等のページプリンタやシャトルプリンタで発生し
た、紙ジャムエラー等のエラー回復方式に関する。
【0002】
【従来の技術】従来、特開昭60−257262号公報
に記載の発明(以下、第1の従来技術という)のよう
に、プリンタはホストコンピュータより送信された印刷
コマンドを、その印刷コマンドの印刷処理の正常終了で
ある排紙完了まで保持するためのコマンドバッファを、
プリンタ内に同時に印刷処理されうる最大枚数(以下、
単に最大保持枚数と呼ぶ)のコマンド分用意していた。
そして、紙ジャム等の再印刷が必要なエラーが発生した
場合には、エラー要因の除去の後、エラー発生時以後の
印刷コマンドをコマンドバッファから読出し、再度印刷
し、エラー回復を行なっていた。
【0003】また、特開昭63−85068号公報に記
載の発明(以下、第2の従来技術という)においては、
プリンタで紙ジャム等のエラーが発生した場合、プリン
タはホストコンピュータに発生したエラー種別とエラー
が発生したページを通知し、通知を受けたホストコンピ
ュータは、再印刷が必要なエラーに対しては、エラーが
発生したページ以後の印刷コマンドをプリンタに再送
し、プリンタにてエラー発生箇所以後の再印刷が行なえ
るようにしていた。
【0004】また、特開平2−19057号公報に記載
の発明(以下、第3の従来技術という)においては、プ
リンタで紙ジャム等のエラーが発生した場合、プリンタ
はホストコンピュータに発生したエラー種別を通知し、
通知を受けたホストコンピュータは、再印刷が必要なエ
ラーに対しては、文書を構成する先頭ページ以後の前記
印刷コマンド列を再送する。
【0005】この再送印刷コマンド列に対し、プリンタ
はエラー発生ページ以前のページについて以下の処理を
行なう。
【0006】(1)コマンド解釈にてコマンドが属性パ
ラメータの設定コマンドと判定された場合、それを実行
し、その結果属性パラメータを属性パラメータテーブル
と呼ぶテーブルに設定する。ここで、属性パラメータと
しては紙サイズ、行ピッチ、文字ピッチ、文字種類、文
字サイズ、線種等がある。
【0007】(2)しかし、コマンドが文字、図形(直
線、円弧、円、多角形等)、イメージ等の描画用のコマ
ンドなら、その実行は行なわない。
【0008】(3)また、ページバッファについての印
刷処理も起動しない。
【0009】また、プリンタはエラー発生ページ以後の
ページについては、通常通り描画処理と印刷処理を行な
っている。
【0010】
【発明が解決しようとする課題】上記第1の従来技術に
おいては、例えば、20枚/分の印刷速度のレーザプリ
ンタにおいて、約10から20枚の用紙が同時に印刷処
理に係属するため、前記最大保持枚数は約10から20
枚となる。また、用紙1枚当りの印刷コマンドの容量
は、A4サイズ1ページを400ドット/インチの密度
のイメージデータとして送信する場合、約2メガバイト
となる。従って、この場合前述のエラー回復専用のコマ
ンドバッファとして約20から40メガバイトものメモ
リが必要になり、コストの増大が甚だしいという問題点
があった。また、第1の従来技術においては前記描画属
性パラメータがページ間で引き継ぎについては、考慮が
されていなかった。従って、印刷コマンドを保存してお
いてもエラー発生頁を起点として保存印刷コマンドを用
いたエラー回復を行う場合、該エラー発生頁までの属性
パラメータが引き継がれないため、該エラーの発生頁か
らの再印刷結果がエラー発生前の属性パラメータによる
本来のものとして印刷できないという問題点もあった。
【0011】また、上記第2の従来技術においては、再
印刷を行なう際、エラー発生ページ以後の印刷コマンド
列をホストコンピュータがプリンタに再送している。
【0012】しかし、エラー発生ページ以後の印刷コマ
ンド列をホストコンピュータが再送しても、エラー発生
ページ以前の印刷コマンド列にて設定、更新されていた
前記属性パラメータの値は、再送された印刷コマンド列
のみでは認識できず、エラー発生前の属性パラメータに
よる本来の印刷はできないという問題点があった。
【0013】また、上記第3の従来技術においては、プ
リンタはエラー発生ページ以前のページについては、前
述のようにコマンド解釈を行ないながら、属性パラメー
タの設定コマンドならそれを実行し、描画用コマンドと
印刷処理は実行しない。このような処理の仕方を以下コ
マンド読み飛ばし処理と呼ばれる。
【0014】しかし、このコマンド読み飛ばし処理は複
雑な処理である。即ち、描画コマンドとして各種類のも
の、例えば、各社特有のプリンタエスケープシーケンス
コマンドを複数個とPostScript(Adobe
Systems社の登録商標)やInterpres
s(Xrox社の登録商標)のようなページ記述言語を
複数個サポートする場合、この読み飛ばし処理を各種類
の描画コマンドについて行なう必要があり、開発プログ
ラム量が増大するという問題点があった。
【0015】以上の問題点は特に描画処理と印刷処理を
マルチタスク構成とし、並行処理又は並列処理する印刷
制御装置において大きな課題であった。
【0016】本発明の目的は、上記問題点を解決し、上
記のようにプリンタにて紙ジャム等、再印刷が必要なエ
ラーが発生した場合にも、むだな再印刷を行うことな
く、正確な印刷結果を出力する印刷装置および印刷制御
方法を、少ない記憶容量、簡単な処理にて実現すること
にある。
【0017】
【課題を解決するための手段】上記目的を達成するため
に、本発明による印刷制御装置は、 印刷ページ順に配置され、文字、図形、イメージ等
の描画情報を示す描画用コマンドと、任意の位置に配置
され、それ以後の該描画用コマンドに係る描画情報をイ
メージデータとして描画するための書式等を示す属性パ
ラメータ設定コマンドとを少なくとも備えた印刷コマン
ド列をホストコンピュータから受信する通信制御部と、 受信した前記印刷コマンド列を格納するためのコマ
ンドバッファ部と、 正常時においては、前記コマンドバッファ部から前
記印刷コマンド列を順次読み出し、該印刷コマンド列に
従って描画処理を行なうとともに、異常発生時において
は、異常発生時点の未排紙ページ以降の前記印刷コマン
ド列を再び順次読み出し、該印刷コマンド列に従って描
画処理を行なう描画処理部と、 該描画処理部で描画されたドットイメージデータを
格納するページバッファ部と、 該ページバッファ部内に格納された前記ドットイメ
ージデータについての印刷を前記プリンタ制御部に指示
する印刷処理部と、 該印刷処理部からの指示に従い、該ページバッファ
部からの前記ドットイメージデータを読み出し、プリン
タエンジン部に対し印刷制御を行なうプリンタ制御部
と、 前記プリンタエンジン部の異常を監視し、再印刷が
必要な異常が発生した場合、前記描画処理部の再印刷処
理を起動する異常処理部と、 前記描画処理部で読み出した印刷コマンド列に従っ
て設定された属性パラメータをその属性パラメータに係
るページが全て排紙されるまで少なくとも格納する属性
パラメータテーブル部、 とにより、異常発生時において、前記描画処理部は、前
記属性パラメータテーブル部に格納されている再描画処
理するページの属性パラメータにより描画処理を行なう
構成とした。本方法を以後コマンドバッファ保存方式と
呼ぶ。
【0018】また、上記目的を達成するために、本発明
による印刷制御装置は、 文字、図形、イメージ等の描画情報及び該描画情報
をイメージデータとして描画するための書式等を示す属
性パラメータ設定情報を示す印刷コマンド列をホストコ
ンピュータから受信する通信制御部と、 受信した前記印刷コマンド列を格納するためのコマ
ンドバッファ部と、 前記コマンドバッファ部から前記印刷コマンド列を
順次読み出し、該印刷コマンド列に従ってページ毎に描
画処理を行なう描画処理部と、 該描画処理部で描画されたドットイメージデータ
を、少なくともそのページの印刷が終了するまで格納す
るページバッファ部と、 該ページバッファ部内に格納された前記ドットイメ
ージデータについての印刷を前記プリンタ制御部に指示
する印刷処理部と、 該印刷処理部からの指示に従い、該ページバッファ
部からの前記ドットイメージデータを読み出し、プリン
タエンジン部に対し印刷制御を行なうプリンタ制御部
と、 前記プリンタエンジン部の異常を監視し、再印刷が
必要な異常が発生した場合、前記プリンタ制御部の再印
刷処理を起動する異常処理部と、 排紙待ちページの前記ページバッファでの記憶位置
を示すページバッファ番号を保存するページバッファ番
号保存部、 とにより、異常発生時においては、前記プリンタ制御部
は、前記ページバッファ番号保存部にある、異常が発生
したページのページバッファ番号により、該異常が発生
したページのドットイメージデータを読み出し、プリン
タエンジン部の印刷制御を行なう構成とした。本方法を
以後ページバッファ保存方式と呼ぶ。
【0019】また、上記目的を達成するために、本発明
による印刷制御装置は、上記コマンドバッファ保存方式
にさらに、 前記コマンドバッファから受信した印刷コマンド列
を、各ページの印刷コマンドがそれぞれ記述された複数
のコマンドファイルとして格納する二次記憶装置と、 該コマンドファイルの書き込み・読み出しを制御す
るコマンドファイル保存制御部と、 該コマンドファイルの該二次記憶装置での格納位置
を管理するコマンドファイル管理テーブル部、 とにより、前記異常処理部が前記描画処理部の再印刷処
理を起動する際、前記コマンドファイル保存制御部は、
再印刷の必要なページのコマンドファイルを、前記コマ
ンドファイル管理テーブル部により格納位置を認識する
ことにより、前記二次記憶装置から前記コマンドバッフ
ァへ読み出し、前記描画処理部は、前記コマンドバッフ
ァに新たに格納された印刷コマンド列により、再印刷の
ための描画処理を行う構成とした。本方法を以後コマン
ドファイル保存方式と呼ぶ。
【0020】また上記コマンドファイル保存方式におい
ては、各ページについてコマンドの代わりにページバッ
ファへの描画結果であるドットイメージデータを保存
し、それを用いてエラー回復するようにしてもよい。本
方法を以後描画イメージファイル保存方式と呼ぶ。
【0021】
【作用】コマンドバッファ保存方式においては、例え
ば、描画処理部は、描画処理において改頁条件を検出す
ると、描画の完了したペ−ジバッファについて印刷処理
部を起動し、印刷処理部は、該ペ−ジバッファについて
の印刷をプリンタ制御部に指示し、プリンタエンジン部
は、プリンタ制御部の制御により印刷を行なう。
【0022】異常監視部は、プリンタ関係のエラ−を検
出し、エラ−が紙ジャム等の再印刷の必要なエラ−の場
合、描画処理部を新たに起動する。
【0023】起動された該描画処理部は、前記属性パラ
メータテーブル部に、例えば、コマンドバッファからの
読出し位置を示す読出しポインタの値とともに記憶され
た属性パラメータに従って、コマンドバッファ内のエラ
ーのあったページのコマンドの解釈と実行を行なう。
【0024】本コマンドバッファ保存方式によれば、用
紙1枚分で最も容量が大きくなるときに必要な容量(例
えば前述のA4サイズ100ドット/インチの場合、約
2メガバイト)分だけコマンドバッファを用意すれば、
正確な印刷結果を出力することができる。
【0025】また、ペ−ジバッファ保存方式において
は、例えば、描画処理部は、描画処理において改頁条件
を検出すると、描画の完了したペ−ジバッファについて
印刷処理部を起動するとともに、印刷対象のページの印
刷ペ−ジバッファ番号を保存する。そして、ペ−ジバッ
ファの該当個所についての印刷をプリンタ制御部に指示
し、プリンタエンジン部は、プリンタ制御部の制御によ
り印刷を行なう。
【0026】異常監視部は、プリンタ関係のエラ−を検
出し、紙ジャム等の再印刷の必要なエラ−か判定の場
合、保存された前記ペ−ジバッファ番号により、ペ−ジ
バッファ内のエラ−のあったページの再印刷処理を行
う。そして、最終的に印刷終了が確認されたページのみ
イメージデータをペ−ジバッファからゼロクリアする。
【0027】また、コマンドファイル保存方式において
は、例えば、前記描画処理部がコマンドバッファ読出し
処理において一定量のコマンドをコマンドワ−クエリア
に格納すると、その内容をコマンドファイルとして二次
記憶装置に格納する。
【0028】描画処理部は改頁条件を検出すると、現描
画属性パラメ−タの値を次のペ−ジ用の属性パラメ−タ
ファイルとして前記コマンドファイル部へ格納するとと
もに、描画の完了したペ−ジバッファについての印刷処
理部の印刷処理を起動する。印刷処理部が該ペ−ジバッ
ファについての印刷をプリンタ制御部に指示した後、異
常処理部は、プリンタ関係のエラ−を検出し、エラ−が
紙ジャム等の再印刷の必要なエラ−の場合、描画処理部
を新たに起動する。
【0029】起動された該描画処理部は、例えば、描画
処理用の現属性パラメ−タテ−ブルに保存第1ペ−ジ用
の属性パラメ−タファイルの内容をコピ−するととも
に、コマンドバッファ部へ保存コマンドファイルの内容
を格納し、現属性パラメ−タテ−ブルの属性パラメータ
に従い、コマンドバッファ内のコマンドの解釈と実行を
行なう。
【0030】また、描画イメージファイル保存方式は、
ペ−ジバッファ保存方式においてさらに、ペ−ジバッフ
ァの描画結果であるドットイメージデータをファイルと
して二次記憶装置に保存する。
【0031】以上のように、コマンドバッファ保存方式
によれば、属性パラメータは、印刷コマンド列とは別に
記憶管理されるので、用紙1枚分で最も容量が大きくな
るときに必要な容量分だけコマンドバッファを用意する
だけで、正確な印刷結果を出力することができる。
【0032】また、ページバッファ保存方式によれば、
排紙の終了したバッファエリアは順次クリアできるの
で、印刷の終了した用紙1枚分で最も容量が大きくなる
ときに必要な容量分だけページバッファを用意すれば、
正確な印刷結果を出力することができる。
【0033】また、コマンドファイル保存方式によれ
ば、コマンドバッファ保存方式よりさらにコマンドバッ
ファ容量を少なくすることができる(最低1バイトでも
動作可能)。
【0034】また、描画イメージファイル保存方式によ
れば、さらにコマンドバッファ容量を少なくすることが
できる。
【0035】
【実施例】次に本発明の第1実施例を説明する。初め
に、図1の構成図を用いて本実施例における印刷制御装
置110の構成を説明する。
【0036】印刷制御装置110はホスト通信制御部1
0、コマンドバッファ部11、コマンドバッファ管理部
12、コマンド処理部13、ペ−ジバッファ制御部1
4、ペ−ジバッファ部15、プリンタ制御部16、異常
処理部17とから構成される。
【0037】ホスト通信制御部10はホストコンピュ−
タ100(図示していない)から印刷コマンドを受信
し、コマンドバッファ部11へ格納する。印刷コマンド
を以後単にコマンドとも呼ぶ。
【0038】なお、図中において、実線は印刷データの
流れを、破線は制御情報の流れを示している。
【0039】ホストコンピュータ100が印刷制御装置
110に送信する印刷コマンド列の例を図38を用いて
説明する。
【0040】本印刷コマンド列は、文書先頭部380
0、第1ページ部3810、第2ページ部3820、第
3ページ部3830、………等からなる。さらに、文書
先頭部3800は、属性パラメータを初期化するための
リセットコマンド3801等からなる。第1ページ部3
810と第2ページ部3820と第3ページ部3830
は、第1ページから第3ページの描画、印刷内容を指定
するための各種属性パラメータの設定コマンドと各種描
画コマンドの列と、ページ区切りを示すための改頁コマ
ンド3819,3829,3839とからなる。本例で
は属性パラメータの設定コマンドとして、紙サイズ設定
コマンド3811、印刷部数設定コマンド3812、文
字種類設定コマンド3813、文字サイズ設定コマンド
3814、3824、線幅設定コマンド3816、線種
設定コマンド3817と塗り潰しパターン設定コマンド
382Aを示したが、描画や印刷に関する任意の属性パ
ラメータを本各種属性パラメータの設定コマンドを用い
て設定することができる。また、本例では描画コマンド
として、文字列の描画を指示するための文字コード列3
815、3825、3835と、円弧描画コマンド38
18、3838と、多角形塗り潰しコマンド382Bを
示したが、任意の文字、図形、イメージを本描画コマン
ドを用いて描画することができる。また、本例ではペー
ジ区切りを明示的に示す改頁コマンド3819、382
9、3839を各ページ区切りに配置したが、本改頁コ
マンドの代りに、ページ区切りを暗黙的に示すようにし
ても良い。暗黙的なページ区切りの例としては、紙サイ
ズ変更コマンド、印刷部数設定コマンド、印字方向(ポ
ートレート=縦長/ランドスケープ=横長)指定コマン
ド、自動改頁等がある。紙サイズ変更コマンド、印刷部
数設定コマンド、印字方向指定コマンドは、1ページに
おいて1種しか指定できないものであり、ページ途中で
これらのコマンドがあったときは、改頁と判断すること
ができる。自動改頁とは、ページ長を超える行について
は文字描画を指示した場合に、(a)印刷制御装置がペ
ージ長の範囲での1ページ分の印刷と、(b)改頁と、
(c)次のページへのページ長を超えた分の印刷を行う
ための機能である。
【0041】図38に示した印刷コマンド列に対する印
刷制御装置110とプリンタエンジン部120による印
刷結果を図39に示す。3910と3920と3930
は、各々第1ペ−ジ、第2ペ−ジ、第3ペ−ジを正常に
印刷した場合の印刷結果である。
【0042】ところで、属性パラメータ設定コマンド
は、ページ区切り箇所とは独立した任意の箇所に設定で
き、一度設定した属性パラメータ値は、以後設定し直す
か、前記リセットコマンドで初期化するまで、その値が
維持される。従って、プリンタエンジン部において第1
ページから第2ページを正常印刷した後、第3ページの
印刷で紙ジャム等の印刷エラーが生じた場合に、属性パ
ラメータを考慮しないで第3ページ部以後のコマンド列
について再印刷を行うと、再印刷の結果がエラー発生前
の本来のものとは異なるものとなってしまう。この場合
の第3ページについての再印刷結果は、3940に示す
ように印刷され、本来の印刷結果3930とは異なる。
【0043】コマンドバッファ管理部12は、コマンド
バッファ部11への読出しと書き込み用のポインタの制
御や、コマンドバッファ部11の内容の保存を行う。そ
のため、コマンドバッファ管理部12内の、後で説明す
る図2に示したコマンドバッファ管理テ−ブル部を用い
る(図1には、その重要部分であるコマンドバッファ排
紙待ち行列部のみ図示している)。
【0044】コマンド処理部13は描画処理部131と
印刷処理部132とからなる。描画処理部131は、前
記コマンドバッファ部11からコマンドを読出し、解
釈、実行する。コマンド実行の結果、ペ−ジバッファ部
15に文字、図形、イメ−ジ等がドットイメ−ジデ−タ
として描画される。また、コマンド実行において改頁条
件を検出すると、そのペ−ジの描画を終了し、描画の完
了したペ−ジバッファについて印刷処理部132を起動
する。
【0045】また前記描画処理部131内にはコマンド
バッファ保存部1311と保存コマンドバッファ利用再
描画・印刷準備部1312を設けた。コマンドバッファ
保存部1311は、エラ−回復に備え排紙の終了を確認
するまでコマンドバッファの内容をペ−ジ単位で保存し
ておく。また保存コマンドバッファ利用再描画・印刷準
備部1312は、コマンドバッファ部11に保存してお
いたコマンドバッファを利用して再印刷を行う。
【0046】印刷処理部132は印刷指示部1321を
用いてプリンタ制御部16に対し、印刷の指示を行う。
【0047】ペ−ジバッファ部15はビットマップメモ
リであり、前述のように描画の対象となる。通常用紙1
ペ−ジから複数ペ−ジ分で構成される。ペ−ジバッファ
制御部14はペ−ジバッファ15の制御を行う。
【0048】プリンタ制御部16は印刷処理部132か
ら印刷指示を受けると、プリンタエンジン部120に対
し、プリンタエンジンインタフェ−スに従って一連の印
刷命令を発行する。その後、描画の出来上がっているペ
−ジバッファの内容をプリンタ制御部16内の読み出し
回路が読出し、プリンタエンジン部120に出力する。
プリンタエンジン部120は印刷プロセスを実行し、用
紙への印刷を行う。
【0049】また本プリンタ制御部16には、排紙終了
監視部161及び排紙終了処理部A1621を設けた。
排紙終了監視部161は印刷用紙のプリンタエンジン部
120からの排紙終了を監視し、排紙終了を検出した時
点で排紙終了処理部A1621を起動する。
【0050】異常処理部17は本印刷制御装置110の
各部が検出した各種異常に対し、異常処理を行う。本異
常処理部17には再印刷準備部A171を設け、再印刷
の必要なエラ−の検出時に再印刷の準備をするようにし
た。
【0051】次に図2を用いてコマンドバッファ管理テ
−ブル部20の内容を説明する。本管理テ−ブル部20
はコマンドバッファエリアの先頭アドレス21、コマン
ドバッファエリアの末尾アドレス22、書込みスタ−ト
ポインタ23、書込みエンドポインタ24、コマンドバ
ッファ内デ−タ末尾ポインタ25、コマンドバッファ読
出しポインタ26、及びコマンドバッファ排紙待ち行列
の根のポインタ27とからなる。
【0052】このうち、書込みスタ−トポインタ23と
書込みエンドポインタ24とコマンドバッファ内デ−タ
末尾ポインタ25は前記ホスト通信制御部10等による
コマンドバッファ部11へのコマンドの書込みを制御す
るために用いる。またコマンドバッファ読出しポインタ
26とコマンドバッファ内デ−タ末尾ポインタ25と書
き込みスタ−トポインタ23等は、描画処理部131に
よるコマンドバッファ部11からのコマンド読出しを制
御するために用いる。
【0053】またコマンドバッファ排紙待ち行列の根の
ポインタ27は前記コマンドバッファ排紙待ち行列部1
21の根のポインタである。本ポインタ27にコマンド
ブロックと呼ぶ構成物が連なる。該コマンドブロックは
その第1要素として次のコマンドブロックへのポインタ
(271、281、291)、その第2要素としてコマ
ンドペ−ジエンドポインタ保存部(272、282、2
92)、その第3要素として属性パラメ−タテ−ブル保
存部(273、283、293)を有する。すなわち、
図1のコマンドバッファ排紙待ち行列部121は、コマ
ンドバッファ排紙待ち行列の根のポインタ27およびこ
れらコマンドブロックで構成される。
【0054】次に図3を用いて印刷制御装置110の正
常時の動作手順を説明する。
【0055】初めに印刷制御装置110はホスト通信制
御部10内のコマンド受信部を用いて、ホストコンピュ
−タ100から印刷コマンド列を受信し、コマンドバッ
ファ部11へ格納する(301)。なお、印刷コマンド
列は1ペ−ジ以上の論理ペ−ジとして構成される文書を
記述するためのものであり、各論理ペ−ジは1個以上の
印刷コマンド列として定義される。
【0056】コマンドバッファ部11に格納されている
印刷コマンド列は、描画処理部131により、受信順に
読出した後(302)、解釈、実行される。その結果、
ペ−ジバッファ部15上に文字、図形、イメ−ジ等が描
画される(303)。
【0057】描画処理部131はコマンド実行において
改頁条件を検出すると、コマンドバッファ保存処理(3
04)と印刷処理部132の起動を行う(305)。
【0058】印刷処理部132はプリンタ制御部16に
対し、印刷指示を発行した後(307)、排紙終了待ち
状態に移る(308)。
【0059】プリンタ制御部16はプリンタエンジン部
120に対し、前述の手順を実行し、その結果描画の出
来上がっているペ−ジバッファの内容がビデオ信号とし
てプリンタエンジン部120に出力される(309)。
プリンタ制御部16は該ペ−ジバッファ内容の出力開始
時点で、排紙終了監視タイマを起動する(310)。
【0060】例えば、後述の図5に示した構成によれ
ば、タイマ制御部5115は排紙終了監視タイマのタイ
ムアウトを検出すると、プリンタ制御部16内の排紙終
了処理1を起動する(3121)。
【0061】排紙終了処理1は前述の処理を行い、その
一貫として排紙終了待ち状態にある印刷処理部を本状態
から解除する(313)。
【0062】印刷処理部132は、排紙終了待ち状態か
ら解除された後、印刷終了ペ−ジNoを更新する(31
4)。
【0063】次に図4を用いて印刷制御装置110の異
常時の動作手順を説明する。図3と301から309ま
では同じ手順を行ったものとする。この時プリンタエン
ジン部120において、紙ジャムエラ−が発生したもの
とする(321)。
【0064】プリンタエンジン部120はプリンタ制御
部16にエラ−発生をプリンタエンジンインタフェ−ス
に従って連絡する(322)。プリンタ制御部16は異
常処理部17に、エラ−種別を伝え、それを起動する
(323)。なお、エラ−種別には、再印刷の必要なも
のとして、「紙ジャム」、「ドアオープン」等が、再印
刷の必要がないものとして、「紙無し」、「トナー無
し」、「プリンタ機構の不良」等がある。
【0065】異常処理部17は以下の処理を行う。
【0066】(1)印刷処理部132と描画処理部13
1の処理を中断する(324、325)。
【0067】(2)エラ−の発生をホスト通信制御部1
0を介して、ホストコンピュ−タ100へ報告する(3
26、327)。
【0068】(3)紙ジャムのような再印刷が必要なエ
ラ−か判定し、そうであれば次の処理を行う。
【0069】(3−1)印刷処理部132と描画処理部
131の全ての処理を強制終了(現状の処理をすべてク
リアし、再開するときは、最初から処理のやりなおしが
必要な状態に)する(3281)。
【0070】(3−2)再印刷準備1として、コマンド
バッファに排紙未完了のコマンドが保存されているか判
定し、そうであれば再印刷エラ−フラグをONに設定す
る(3291)。
【0071】(3−3)描画処理部131の処理を起動
する(3301)。
【0072】(4)印刷制御装置110は以下正常時に
おける動作手順を実行する。つまり、描画処理部131
が描画(331)と印刷処理部の起動(332)を行
い、印刷処理部132が印刷指示(334)等の処理を
行う。
【0073】本印刷制御装置は、図5に示す本発明の出
願人による発明(特開平1−164637号公報や特開
平1−282747号公報に記載)への拡張機能として
実現しても良い。つまり、描画処理部131や印刷処理
部132の処理をマルチタスク構成とし、並行処理また
は並列処理できるようにしてもよい。この場合、図1内
の各構成要素は図5の各構成要素に次のように対応づけ
られ、その一機能として実現する。
【0074】(1)ホストコンピュ−タ100−−−>
ホストコンピュ−タ510 (2)ホスト通信制御部10−−−>ホスト通信制御部
5118 (3)コマンドバッファ部11−−−>コマンドバッフ
ァ部511 (4)コマンドバッファ管理部12−−−>例えば、ホ
スト通信制御部5118 (5)描画処理部131−−−>描画タスク処理部51
31 (6)印刷処理部132−−−>印刷タスク処理部51
32 (7)ペ−ジバッファ制御部14−−−>ペ−ジバッフ
ァ制御部5116 (8)ペ−ジバッファ部15−−−>ペ−ジバッファ部
514 (9)プリンタ制御部16−−−>プリンタ制御部51
17 (10)異常処理部17−−−>プリンタ制御部511
7、印刷タスク処理部5132、描画タスク処理部51
31等の一機能として実現。
【0075】(11)プリンタエンジン部120−−−
>プリンタエンジン部516 なお、図5の各構成要素には、前記発明(特開平1−1
64637号公報や特開平1−282747号公報に記
載)の参照番号の第1図における参照番号に5をつけた
ものを用いた。
【0076】本実現方法によれば、CPU、プリンタエ
ンジン部、及びペ−ジバッファ部(複数ペ−ジにもでき
る)を空き時間なく使用することができるので、正常時
及びエラ−回復時の印刷スル−プットを向上し、プリン
タエンジン最高速度での印刷を実現することができる。
【0077】次に、図6乃至図12を用いて印刷制御装
置110の各部の処理手順を説明する。
【0078】まず、図6を用いて描画処理部131の処
理手順を説明する。初めに、描画準備(6109)によ
り内部にある描画用の各種パラメ−タやテ−ブルを初期
化する(6110)。その一貫として、再印刷エラ−フ
ラグがONか判定する(6111)。ONの場合、保存
コマンドバッファ利用再描画・印刷準備部1312によ
り、保存コマンドバッファ利用再描画・印刷準備処理と
して以下の3項目を実行する(6112−1)。
【0079】(1)前記コマンドバッファからの読出し
位置を示すコマンド読出しポインタ26の値を排紙待ち
行列の先頭コマンドブロックの第2要素(コマンドペ−
ジエンドポインタ保存部272)の値として保存する。
【0080】(2)前述の描画用の各種パラメ−タのう
ち、現描画属性パラメ−タの値を前記コマンドバッファ
排紙待ち行列の先頭コマンドブロックの第3要素(属性
パラメ−タテ−ブル保存部273)の値として保存す
る。
【0081】(3)該再印刷エラ−フラブをOFFとす
る。
【0082】描画準備の後、描画処理はコマンド解釈
(6121)とコマンド実行(6130)を無限ル−プ
により繰り返す(6120)。
【0083】コマンド実行6130では、コマンドに応
じて分岐を行い(6131)、紙サイズ指定(613
2)、印刷部数指定(6133)、文字描画(613
4)、図形描画(6135)、改頁(6136)、及び
その他の処理(6137)を行う。
【0084】改頁(6136)では6136−1、61
36−2、6136−3、6136−4等の処理を行
う。このうち6136−3以外は前記発明(特開平1−
164637号公報や特開平1−2827471号公報
に記載)の場合と同様の処理である。コマンドバッファ
保存処理(6136−3)では前記コマンドバッファ保
存部1311を用いて、コマンドバッファ排紙待ち行列
部121の最後尾に現コマンドバッファ読出しポインタ
を第2要素、現描画属性パラメ−タの値を第3要素とす
るコマンドブロックを接続する。また印刷処理起動(6
136−4)では描画の完了したペ−ジバッファについ
て印刷処理部132を起動する。
【0085】図7を用いて印刷処理部132の処理手順
を説明する。本処理では、プリンタリザ−ブ(70
9)、レディ状態確認(710)、給紙部、排紙部確認
(711)、給紙部、排紙部指示(712)、印刷指示
(714)、排紙終了待ち状態への移行(715)、プ
リンタフリ−(717)、タスク終了(718)を順に
行う。処理内容は前記発明(特開平1−164637号
公報や特開平1−282747号公報に記載)の場合と
同様である。なお、プリンタリザ−ブ(709)とプリ
ンタフリ−(717)とタスク終了(718)はマルチ
タスク方式を実現する場合に必要になる。
【0086】図8を用いてプリンタ制御部16における
割込み処理の手順を説明する。本割込み処理では割込み
要因に応じて(810)、垂直同期信号出力(811)
と排紙終了監視タイマ起動(812)とビデオ信号出力
(813)の実行、異常処理の実行(814)、その他
の割込み要因についての処理の実行(815)を行う。
本手順の処理内容も前記発明(特開平1−164637
号公報や特開平1−282747号公報に記載)の場合
と同様である。
【0087】図9を用いてタイマ制御部5115におけ
る処理手順を説明する。
【0088】タイマが動作中なら(910)、各タイマ
項目について処理を行う(911から915)。排紙終
了監視タイマについてはタイマ値をカウントダウンし
(912)、タイムアウトを検出すると(913)、排
紙終了処理A1621を起動する(914)。
【0089】図10を用いて排紙終了処理A(162
1)の処理手順を説明する。本処理では排紙完了ペ−ジ
通し番号を更新した後(1011)、前記コマンドバッ
ファへの書込みエンドを示す書込みエンドポインタの値
を、前記コマンドバッファ排紙待ち行列部の先頭コマン
ドブロックの第2要素であるコマンドペ−ジエンドポイ
ンタ保存部の値に更新する(1021)。続いて、該コ
マンドバッファ排紙待ち行列部から先頭のコマンドブロ
ックを除去した後(1031)、排紙終了監視の監視対
象である印刷タスクを前記排紙終了待ち状態から解除す
る(1041)。
【0090】図11に示すように、異常処理部17は以
下の処理手順を実行する。
【0091】(1)印刷制御装置の状態を印刷不可能状
態に設定し、ユ−ザ操作パネルにその旨表示する(11
00)。
【0092】(2)印刷処理部と描画処理部の処理を中
断する。マルチタスク構成の場合、複数個の印刷タスク
処理と一個以上の描画タスク処理を中断する(111
0)。
【0093】(3)エラの発生したペ−ジ通し番号を排
紙完了ペ−ジ通し番号から決定する(1120)。
【0094】(4)エラ−コ−ドと前記エラ−発生ペ−
ジ通し番号を、ホスト通信制御部10を介して、ホスト
コンピュ−タ100へ報告する(1130)。
【0095】(5)エラ−原因が除去されるまで(11
40)、プリンタのエラ−状態の確認(1141)と確
認した最新のエラ−のユ−ザ操作パネル部5107への
表示を行う(1142)。
【0096】(6)紙ジャム、印刷途中でのプリンタド
アオ−プンのような再印刷が必要なエラ−か判定し(1
160)、そうであれば次の処理を行う。
【0097】(6−1)印刷処理部132と描画処理部
131の全ての処理を強制終了する(1161−1)。
【0098】(6−2)再印刷準備Aを行う(1162
−1)。本再印刷準備1では図12に示すように、コマ
ンドバッファに排紙未完了のコマンドが保存されている
かを、コマンドバッファ排紙待ち行列が空でないかで判
定し(1211)、保存されていれば再印刷エラ−フラ
グをONに設定する(1221)。
【0099】(6−3)印刷制御装置110の状態を印
刷可能状態(オンライン)に設定し、ユ−ザ操作パネル
部5107にその旨表示する(1163)。
【0100】(6−4)描画処理部131の処理を起動
する(1164−1)。
【0101】(7)再印刷が必要なエラ−でないなら、
次の処理を行う。
【0102】(7−1)印刷制御装置110の状態を印
刷可能状態(オンライン)に設定し、 ユ−ザ操作パ
ネル部5107にその旨表示する(1165)。
【0103】(7−2)印刷処理部と描画処理部の処理
を再開する(1166)。
【0104】なお、再印刷の起動は、異常処理部におい
てプリンタエラーの無いことを検出した後、例えば、ホ
ストコンピュータ510からの指示によっても良いし、
パネル制御部5119からの指示によって行っても良
い。
【0105】次に図13を用いて、ホストコンピュ−タ
100の処理手順を説明する。本処理ではユ−ザからの
印刷指示があれば(1330)、ホストコンピュ−タ内
の記憶部から印刷コマンド列を読出し(1331)、該
印刷コマンド列を印刷制御装置へ送信する(133
2)。プリンタにエラ−が発生中であれば(134
0)、ユ−ザからのエラ−回復指示を待った後(134
1)、再開指示コマンドを印刷制御装置110へ送信す
る(1342)。
【0106】なお、1340、1341、1342の手
順はユ−ザからのエラ−回復指示を待った後、エラ−回
復指示を印刷制御装置に送信する場合に用いる。ユ−ザ
からのエラ−回復指示を待たずに、印刷制御装置がエラ
−原因の除去後自動回復する仕様の場合、本手順は用い
ない。
【0107】またエラ−報告を受信したならば(135
0)、エラ−表示をホストコンピュ−タ内の表示部に行
う(1351)。
【0108】次に図14を用いて、印刷制御装置110
のハードウェア構成を説明する。
【0109】印刷制御装置110は、CPUバス140
1、ホスト通信コントローラ1402、CPU140
3、ROM1404、サブCPU1406、ユーザ操作
パネル1407、プリンタメモリコントローラ140
9、及びRAM1400Aからなる。
【0110】CPUバス1401は、CPU1403の
各種入出力信号(アドレス信号、データ信号、その他の
制御信号)からなる。
【0111】CPU1403は本CPUバス1401を
介して、1402、1406、1409等の周辺コント
ローラや1404、1400A等のメモリと入出力を行
う。
【0112】ホスト通信コントローラ1402は、印刷
制御装置110がホストコンピュータ100と通信を行
うためのコントローラである。本通信(ホストI/Fと
呼ぶ)の物理I/FとしてはSCSI(Small C
omputer SystemInterface)、
RS232C、RS422、GP−IB(Gener−
al Purpose Interface Bu
s)、セントロニクス、HDLC(High −Lev
el Data Link Control)等を用
い、使用する物理I/Fの種類に応じて本コントローラ
1402のハードウェア論理として適切なものを実装す
る。
【0113】ROM1404には印刷制御装置110の
初期化立上げプログラム(IPL(Initial P
rogram Loading)プログラムとも呼ぶ)
と文字フォントの一部を格納する。
【0114】RAM1400Aには(a)本印刷制御装
置120の制御プログラム、(b)文字フォントの残
り、(c)コマンドバッファ部メモリ、(d)ページバ
ッファ部メモリ、及び(e)ページバッファ管理テーブ
ル、タスク管理テーブル等の各種管理テーブル、その他
を格納する。これらのうち(a)と(b)は前記IPL
プログラムにてホストコンピュータ100からダウンロ
ードすることにより、格納する。また(a)と(b)は
RAM1410Aに格納せず、ROM1404に予め格
納しておいてもよい。また逆にROM1404には文字
フォントを一切格納せず、すべてRAM1400Aに格
納してもよい。
【0115】サブCPU1406は、CPU1403の
指示に従い、ユーザ操作パネル1407やプリンタエン
ジン部120との間で入出力処理を行う。
【0116】プリンタメモリコントローラ1409はR
AM1400Aの内容(通常ページバッファ部の内容)
のプリンタエンジン部120への読出し処理及びRAM
1400AがDRAMの場合、DRAMメモリの制御
(リフレッシュ等)を行う。本読出し処理は内蔵のDM
A(Direct Memory Access)機能
を用いて行う。紙面一ペ−ジ分のデ−タのペ−ジバッフ
ァ部からの読出しが終了した時点で、プリンタメモリコ
ントローラ1409がCPU1403に対し割込み信号
(CPUバス1401内の信号の一部)をアサートし、
CPUによるページバッファ読出し終了割込み処理を起
動する。
【0117】印刷制御装置110はプリンタエンジン部
120との間で、サブCPU1406が信号線1400
C−1を介し、プリンタメモリコントローラ1409が
信号線1400C−2を介して、プリンタエンジンI/
Fと呼ぶI/Fに従って、通信を行う。
【0118】プリンタメモリコントローラ1409は、
信号線1400C−2を用いて、プリンタエンジン部1
20がシャトルプリンタの場合には、ページバッファ部
15の内容を形式変換した後、プリンタエンジン部12
0へ出力する。またプリンタエンジン部がレーザプリン
タの場合には、プリンタメモリコントローラ1409
は、信号線1400C−2を用いて、ページバッファ部
の内容をパラレルシリアル変換した後、プリンタエンジ
ン部へ出力する。
【0119】信号線1400C−1は、プリンタエンジ
ン部がシャトルプリンタの場合には、プリンタエンジン
部からページ先頭位置を示すための信号等を受信するた
めに用いる。またプリンタエンジン部がレーザプリンタ
の場合には、本信号線1400C−1は、サブCPU1
406がプリンタエンジン部120へ問合せや指示のた
めのコマンドを送信し、プリンタエンジン部120から
応答ステータスを受信するためのコマンド、ステータス
送受信信号及び、前記ページバッファ部15の内容のプ
リンタエンジン部120への読出し手順を制御するため
の制御信号を搬送するために用いる。
【0120】本実施例においては、コマンドバッファを
用紙1枚分の印刷コマンドの格納に必要な容量分だけ用
意すればよく、第1の従来技術のようにエラ−回復専用
のコマンドバッファを前記最大保持枚数分用意する必要
がないので、印刷制御装置の費用対効果比を高めること
ができる。また、前記コマンドバッファ排紙待ち行列部
に各ペ−ジの描画開始時の描画属性パラメ−タを保存し
ているので、前記描画属性パラメ−タがペ−ジ間で引き
継がれる仕様のコマンドに対しても、エラ−回復時に印
刷結果が本来のものと異なることはなく、印刷制御装置
の信頼性と使い勝手を高めることができる。
【0121】また、第2の従来技術におけるホストコン
ピュ−タの処理負担の増大とプログラムの改造を解消す
ることもできる。
【0122】また、第3の従来技術におけるコマンド読
み飛ばし処理をなくすことができるので、印刷制御装置
の開発プログラム量の増大を解消することができる。
【0123】次に本発明の第2実施例を説明する。初め
に、図15の構成図を用いて本実施例における印刷制御
装置の構成を説明する。
【0124】印刷制御装置1510はホスト通信制御部
150、コマンドバッファ部151、コマンド処理部1
53、ペ−ジバッファ制御部154、ペ−ジバッファ部
155、プリンタ制御部156、異常処理部157とか
ら構成される。
【0125】ホスト通信制御部1510は第1実施例
(図1の場合)と同様な処理を行う。
【0126】コマンド処理部153は描画処理部153
1と印刷処理部1532とからなる。描画処理部153
1も第1実施例(図1の場合)と同様な処理を行い、コ
マンドバッファ部151からコマンドを読出し、解釈、
実行する。コマンド実行において改頁条件を検出する
と、そのペ−ジの描画を終了し、描画の完了したペ−ジ
バッファについて印刷処理部1532を起動する。
【0127】印刷処理部1532は印刷指示部1532
1を用いてプリンタ制御部156に対し、印刷の指示を
行う。さらに、印刷処理部1532内にはペ−ジバッフ
ァ保存部15322及び保存ペ−ジバッファ解放部15
323を設けた。ペ−ジバッファ保存部15322は、
エラ−回復のためペ−ジバッファを保存しておく。また
保存ペ−ジバッファ解放部15323は、排紙終了時に
該保存ペ−ジバッファを開放する。
【0128】ペ−ジバッファ制御部154とペ−ジバッ
ファ部155とプリンタ制御部156も第1実施例の場
合と同様の機能を実行する。なおペ−ジバッファ制御部
154には印刷ブロックと呼ぶ構成物の連なりであるペ
−ジバッファ排紙待ち行列部1541を設けた。該印刷
ブロックはその第2要素としてペ−ジバッファ番号、そ
の第3要素として印刷タスク番号を有し、エラ−回復の
ためのペ−ジバッファの保存と解放の管理に用いられ
る。
【0129】また前記プリンタ制御部156には、排紙
終了監視部1561及び排紙終了処理部B 15622
を設けた。排紙終了監視部1561は印刷用紙のプリン
タエンジン部1520からの排紙終了を監視し、排紙終
了を検出した時点で排紙終了処理部B 15622を起
動する。
【0130】異常処理部157は本印刷制御装置151
0の各部が検出した各種異常に対し、異常処理を行う。
本異常処理部157には保存ペ−ジバッファ再印刷部1
572を設け、再印刷の必要なエラ−の検出時に保存し
ておいたペ−ジバッファを用いて再印刷を行うようにし
た。
【0131】次に図16を用いてペ−ジバッファ管理テ
−ブル部16Aの内容を説明する。本管理テ−ブル部1
6Aは一ペ−ジ以上のペ−ジバッファを管理するための
ものであり、全ペ−ジバッファ用共通情報16A1とペ
−ジバッファ0用情報16B1、ペ−ジバッファ1用情
報16B2、−−−、ペ−ジバッファN−1用情報10
B3とからなる。ここで、Nはペ−ジバッファの総面数
であり、後述するように全ペ−ジバッファ用共通情報1
6A1の中の一項目として記述されている。
【0132】また、全ペ−ジバッファ用共通情報16A
1は当該描画ペ−ジバッファ番号16A2、当該印刷ペ
−ジバッファ番号16A3、ペ−ジバッファ総面数
(N)16A4、及びペ−ジバッファ排紙待ち行列の根
のポインタ16A5等からなる。
【0133】このうち、ペ−ジバッファ排紙待ち行列の
根のポインタ16A5以外の内容は前記発明(特開平1
−164637号公報や特開平1−282747号公報
に記載)の場合と同様である。
【0134】またペ−ジバッファ排紙待ち行列の根のポ
インタ16A5は前記ペ−ジバッファ排紙待ち行列部1
541の根のポインタである。本ポインタ16A5に印
刷ブロック(16C0〜16E0)と呼ぶ構成物が連な
る。該印刷ブロック(16C0〜16E0)はその第1
要素として次の印刷ブロックへのポインタ(16C1、
16D1、16E1)、その第2要素としてペ−ジバッ
ファ番号(16C2、16D2、16E2)、その第3
要素として印刷タスク番号(16C3、16D3、16
E3)を有する。第2要素のペ−ジバッファ番号と第3
要素の印刷タスク番号は、各印刷タスクがあるペ−ジバ
ッファについての印刷を指示する時点で、該印刷タスク
のタスク番号と印刷対象の当該印刷ペ−ジバッファ番号
を印刷ブロック中に記録したものである。本記録は該印
刷が正常に排紙終了した時点で、削除される。また再印
刷の必要なエラ−が発生すると、本記録を用いてエラ−
回復処理を行う。
【0135】次に図17を用いて印刷制御装置の正常時
の動作手順を説明する。
【0136】印刷コマンド列の受信、格納(1701)
から描画(1703)までの手順は第1実施例(図3)
の場合と同じである。その後本実施例では、コマンドバ
ッファ保存処理(3041)を行わずに、印刷処理部を
起動する(1705)。
【0137】印刷処理部1532はペ−ジバッファ保存
処理(1706)、プリンタ制御部156への印刷指示
の発行(1707)の後、排紙終了待ち状態に移る(1
708)。
【0138】以下排紙終了監視タイマの起動(171
0)から排紙終了待ち解除(1713)、印刷終了ペ−
ジNoの更新(1714)まで、第1実施例(図3)の
場合と同じ手順を実行する。
【0139】その後印刷処理部1532は保存ペ−ジバ
ッファクリア処理を行い(1715)、一連の正常印刷
手順を終了する。
【0140】次に図18を用いて印刷制御装置の異常時
の動作手順を説明する。印刷コマンド列の受信、格納
(1701)以後、ホストコンピュ−タ100へのエラ
−報告(1827)までの手順は第1実施例(図4)の
場合と同じである。その後本実施例では、以下の処理を
行う。
【0141】(1)紙ジャムのような再印刷が必要なエ
ラ−か判定し、そうであれば次の処理を行う。
【0142】(1−1)印刷処理部1532の全ての処
理を強制終了する。描画処理部の処理を強制終了しない
(それ迄の処理をクリアせず、中断するのみとする)点
が第1実施例の場合とは異なる(18282)。
【0143】(1−2)保存ペ−ジバッファ再印刷処理
を行い、ペ−ジバッファ部155に排紙未完了のペ−ジ
バッファが保存されているか判定し、保存されていれば
それらの全ての保存ペ−ジバッファについて、印刷タス
ク処理部を起動する(18292)。
【0144】(1−3)描画処理部1531の処理を再
開する。第1実施例のように、本描画処理を(1−1)
において強制終了していないため、再開するだけでよ
く、起動する必要はない(18302)。
【0145】(2)印刷制御装置1510は以下正常時
における動作手順を実行する。
【0146】つまり、描画処理部1531が描画(18
31)と印刷処理部の起動(1832)を行い、印刷処
理部1532が印刷指示(1833)等の処理を行う。
本実施例も、第1実施例の場合と同様、5図に示す本発
明の出願人による発明(特開平1−164637号公報
や特開平1−282747号公報に記載)への拡張機能
として実現することができる。つまり、描画処理部や印
刷処理部の処理をマルチタスク構成とし、並行処理また
は並列処理を実現できるようにしてもよい。この場合、
図15内の各構成要素は図5の各構成要素に、第1実施
例の場合と同様に対応づけられる。本実現方法によれ
ば、CPU、プリンタエンジン部、及びペ−ジバッファ
部(複数ペ−ジにもできる)を空き時間なく使用するこ
とができるので、正常時及びエラ−回復時の印刷スル−
プットを向上し、プリンタエンジン最高速度での印刷を
実現することができる。
【0147】次に図19を用いて印刷制御装置の各部の
処理手順を説明する。
【0148】描画処理部1531の処理手順は第1実施
例の場合(図6)と次の二点以外は共通である。
【0149】(1)描画準備(609)から、再印刷エ
ラ−フラグがONかの判定以降の処理(611、612
−1)を削除する。
【0150】(2)コマンドバッファ保存処理(636
−3)を改頁処理から削除する。
【0151】図19を用いて印刷処理部1532の処理
手順を説明する。本処理では、プリンタリザ−ブ(19
09)、レディ状態確認(1910)、給紙部、排紙部
確認(1911)、給紙部、排紙部指示(1912)の
後、ペ−ジバッファ保存処理を行う(1913)。本ペ
−ジバッファ保存処理(1913)では、前記コマンド
バッファ排紙待ち行列部1541の最後尾に、印刷対象
の当該印刷ペ−ジバッファ番号16C2を第2要素、本
印刷処理を実行する印刷タスク番号16C3を第3要素
とする印刷ブロック16C0等を接続しペ−ジバッファ
内容を保存する。
【0152】続いて、印刷処理部1532は前記印刷指
示部15321を用いて該ペ−ジバッファについての印
刷をプリンタ制御部156に指示する(1914)。但
し、本印刷指示ではペ−ジバッファの内容をゼロクリア
せず保存するモ−ドで行うよう、プリンタ制御部156
に指示する。
【0153】印刷処理部1532は印刷指示の後、排紙
終了待ち状態となる(1915)。
【0154】後述する排紙終了処理2により排紙終了待
ち状態から解除された該印刷処理部は、保存ペ−ジバッ
ファ解放部15323を用いて保存ペ−ジバッファクリ
ア処理(1916)を行う。本前記保存ペ−ジバッファ
クリア処理(1916)では、ペ−ジバッファ排紙待ち
行列部の先頭印刷ブロックの第2要素に記録されている
ペ−ジバッファ番号のペ−ジバッファのゼロクリア(1
916−1)及び該先頭印刷ブロックの前記ペ−ジバッ
ファ排紙終了待ち行列からの除去(1916−2)を行
なう。
【0155】なお、本発明の発明者による既出願発明で
ある可変長ペ−ジバッファ制御方式(特開平1−282
747号公報に記載)を用いた場合、紙サイズに応じて
定まる個数分のペ−ジバッファをクリアするものとす
る。
【0156】印刷処理部1532はその後、プリンタフ
リ−(1917)、タスク終了(1918)を順に行
う。
【0157】プリンタ制御部156における割込み処理
の手順は、第1実施例の場合(図8)と同様である。
【0158】タイマ制御部における処理手順は、排紙終
了監視タイマがタイムアウトした時排紙終了処理A(図
9の914)の代わりに排紙終了処理2を起動する点以
外は、図9の場合と同様である。
【0159】図20を用いて排紙終了処理B(1562
2と17122に対応)の処理手順を説明する。本処理
では排紙完了ペ−ジ通し番号を更新した後(201
1)、前記ペ−ジバッファ排紙待ち行列の先頭印刷ブロ
ックの第3要素に記録されているタスク番号の印刷タス
クについて前記印刷処理部の排紙終了待ち状態を解除す
る(2042)。
【0160】図21を用いて、異常処理部157の処理
手順を説明する。印刷制御装置の状態の印刷可能状態へ
の設定等の処理(2100)以後、エラ−原因除去まで
のプリンタエラ−状態の確認(2141)と確認エラ−
のユ−ザ操作パネル部5107への表示(2142)は
第1実施例の場合と同じである。続いて異常処理部15
7は、以下の処理を行う。
【0161】(1)紙ジャム、印刷途中でのプリンタド
アオ−プンのような再印刷が必要なエラ−か判定し(2
160)、そうであれば次の処理を行う。
【0162】(1−1)印刷処理部1532の全ての処
理を強制終了する(2161−2)。
【0163】(1−2)保存ペ−ジバッファ再印刷処理
を行う(2162−2)。本保存ペ−ジバッファ再印刷
処理では図22に示すように、ペ−ジバッファに排紙未
完了の描画内容が保存されているかを、ペ−ジバッファ
排紙待ち行列が空でないかで判定し(2212)、空で
ない場合前記ペ−ジバッファ排紙待ち行列のすべての印
刷ブロックについて先頭から順に、その第2要素として
記録してあるペ−ジバッファ番号についての印刷処理を
起動する(2222)。
【0164】(1−3)印刷制御装置1510の状態を
印刷可能状態(オンライン)に設定し、ユ−ザ操作パネ
ル部5107にその旨表示する(2163)。
【0165】(1−4)描画処理部131の処理を再開
する(2164−2)。
【0166】(2)再印刷が必要なエラ−でないなら、
次の処理を行う。
【0167】(2−1)印刷制御装置1510の状態を
印刷可能状態(オンライン)に設定し、ユ−ザ操作パネ
ル部5107にその旨表示する(2165)。
【0168】(2−2)印刷処理部と描画処理部の処理
を再開する(2166)。
【0169】ホストコンピュ−タ100の処理手順は、
図13の場合と同様である。
【0170】また印刷制御装置1510のハードウェア
構成も図14の場合と同様である。
【0171】本実施例においては、ペ−ジバッファを用
紙1枚分だけ用意すればよく、第1の従来技術のように
エラ−回復専用のコマンドバッファを前記最大保持枚数
分用意する必要がないので、印刷制御装置の費用対効果
比を高めることができる。また、前記ペ−ジバッファに
描画結果そのものを保存しているので、前記描画属性パ
ラメ−タがペ−ジ間で引き継がれる仕様のコマンドに対
しても、エラ−回復時に印刷結果が本来のものと異なる
ことはなく、印刷制御装置の信頼性と使い勝手を高める
ことができる。
【0172】また、第2の従来技術におけるホストコン
ピュ−タの処理負担の増大とプログラムの改造を解消す
ることもできる。
【0173】また、第3の従来技術におけるコマンド読
み飛ばし処理をなくすことができるので、印刷制御装置
の開発プログラム量の増大を解消することができる。
【0174】次に本発明の第3実施例を説明する。初め
に、図23の構成図を用いて本実施例における印刷制御
装置の構成を説明する。
【0175】印刷制御装置2310はホスト通信制御部
230、コマンドバッファ部231、コマンドバッファ
管理部232、コマンド処理部233、ペ−ジバッファ
制御部234、ペ−ジバッファ部235、プリンタ制御
部236、異常処理部237、ファイル制御部238、
コマンドファイル書込み部23315、コマンドファイ
ル読出し部239、及び二次記憶装置部2381とから
構成される。
【0176】ホスト通信制御部230とコマンドバッフ
ァ管理部232は第1実施例(図1の場合)と同様な処
理を行う。但し、コマンドバッファ管理部232内のコ
マンドバッファ管理テ−ブル部に図1のコマンドバッフ
ァ排紙待ち行列部121は設けない。
【0177】コマンド処理部233は描画処理部233
1と印刷処理部2332とからなる。描画処理部233
1も第1実施例(図1の場合)と同様な処理を行い、コ
マンドバッファ部231からコマンドを読出し、解釈、
実行する。コマンド実行において改頁条件を検出する
と、そのペ−ジの描画を終了し、描画の完了したペ−ジ
バッファについて印刷処理部2332を起動する。
【0178】また前記描画処理部内にはコマンドファイ
ル保存部23311と保存コマンドファイル利用再描
画、印刷準備部23313、及びコマンドファイル管理
テ−ブル部23314を設けた。コマンドファイル保存
部23311は、エラ−回復に備え各ペ−ジ用のコマン
ドファイルと各ペ−ジ描画開始時の属性パラメ−タファ
イルを、コマンドファイル書込み部23315を用い
て、二次記憶装置部2381に保存する。保存コマンド
ファイル利用再描画、印刷準備部23313は、保存し
ておいたコマンドファイルを利用して再印刷の準備を行
う。またコマンドファイル管理テ−ブル部23314に
は、該コマンドファイルを管理するため、各ペ−ジにつ
いてのコマンドファイル名称と属性パラメ−タ名称を、
各々受信し、印刷するペ−ジ順の待ち行列として記述す
る。
【0179】印刷処理部2332は第1実施例の場合と
同様、印刷指示部23321を用いてプリンタ制御部2
36に対し、印刷の指示を行う。
【0180】ペ−ジバッファ制御部234とペ−ジバッ
ファ部235とプリンタ制御部236も第1実施例の場
合と同様の機能を実行する。
【0181】また本プリンタ制御部には、排紙終了監視
部2361及び排紙終了処理部C23623を設けた。
排紙終了監視部2361は印刷用紙のプリンタエンジン
部2320からの排紙終了を監視し、排紙終了を検出し
た時点で排紙終了処理部C23623を起動する。
【0182】異常処理部237は本印刷制御装置231
0の各部が検出した各種異常に対し、異常処理を行う。
本異常処理部237には再印刷準備部B2373を設
け、再印刷の必要なエラ−の検出時に再印刷の準備をす
るようにした。
【0183】二次記憶装置部2381には磁気ディス
ク、フロッピディスク、半導体メモリディスク等の媒体
を設け、各ペ−ジ用のコマンドファイルや属性パラメ−
タファイルを記憶するようにする。
【0184】ファイル制御部238は二次記憶装置部2
381内の各ファイルの制御を行う。そのため、オ−プ
ン(open)、クロ−ズ(close)、読出し(r
ead)、書込み(write)等のス−パバイザの呼
出しインタ−フェ−ス(以後単にSVCと略す)を、コ
マンド処理部内の各処理(2331や2332)とコマ
ンドファイル読出し部239に提供する。
【0185】コマンドファイル書込み部23315は、
前述のように、各ペ−ジ用のコマンドファイルと各ペ−
ジ描画開始時の属性パラメ−タファイルを、二次記憶装
置部2381へ書込む。
【0186】またコマンドファイル読出し部239は、
再印刷の必要なエラ−についての回復処理時に、保存し
ておいた各ペ−ジ用のコマンドファイルからコマンドを
読出しコマンドバッファ部231へ格納する。
【0187】次に図24を用いてコマンドファイル管理
テ−ブル部23314の内容を説明する。本管理テ−ブ
ル部23314は再印刷エラ−フラグ241、保存コマ
ンドファイル行列根のポインタ242、保存属性パラメ
−タファイル行列根のポインタ243、ファイル空き待
ち用ECB(Event Control Block
の略)244、ファイル空き待ちサイズ245、コマン
ドバッファ残り印刷コマンドサイズ246、及びコマン
ドワ−ク有効コマンドサイズ247とからなる。
【0188】このうち、再印刷エラ−フラグ241は0
と1の値をとり、値0と1は各々再印刷の必要なエラ−
が発生していない場合と発生している場合を表す。
【0189】保存コマンドファイル行列には、各ペ−ジ
についての保存コマンドを格納しているコマンドファイ
ルの名称(242A2、242B2等)を、各々受信
し、印刷するペ−ジ順の待ち行列として記述する。
【0190】また保存属性パラメ−タファイル行列に
は、各ペ−ジについての保存属性パラメ−タを格納して
いる属性パラメ−タファイルの名称(243A2、24
3B2等)を、各々受信し、印刷するペ−ジ順の待ち行
列として記述する。
【0191】コマンドファイル書込み部23315は、
エラ−回復に備えてファイルへの書込み処理を行う。こ
の書込み処理で書込み保存のための限界値を超えた場合
の本コマンドファイル書込み処理部のファイル空き待ち
状態化と、保存用ファイルに十分な空きが生じた場合の
該待ち状態からの解除を制御するため、前述のファイル
空き待ち用ECB244を設けた。
【0192】ファイル空き待ちサイズ245は、上記フ
ァイル空き待ちにおける空き待ちサイズを記述するため
のエリアである。
【0193】コマンドバッファ残り印刷コマンドサイズ
246とコマンドワ−ク有効コマンドサイズ247は、
各々後述する図37の3733部分と3732部分の容
量を記述しておくためのエリアである。
【0194】次に図25を用いて印刷制御装置の正常時
の動作手順を説明する。
【0195】印刷コマンド列の受信、格納(2501)
から描画(2503)までの手順は第1実施例(図3)
の場合と同じである。その後本実施例では、コマンドバ
ッファ保存処理(3041)の代わりに、コマンドファ
イル保存処理(25042)を行い、印刷処理部を起動
する(2505)。
【0196】その後、印刷処理部2332によるプリン
タ制御部236への印刷指示の発行(2507)から印
刷終了ペ−ジNoの更新(2514)まで、プリンタ制
御部236が図3の排紙終了処理A(3121)の代わ
りに排紙終了処理C25123を行う以外は、第1実施
例(図3)の場合と同じ手順を実行する。排紙終了処理
C25123では、前記コマンドファイル管理テ−ブル
部23314を参照して、保存先頭ペ−ジ用のコマンド
ファイルの実体と名称を、各々二次記憶装置部2381
とコマンドファイル管理テ−ブル部23314から削除
する。さらに、保存先頭ペ−ジ用の属性パラメ−タファ
イルの実体と名称も、各々二次記憶装置部2381とコ
マンドファイル管理テ−ブル部23314から削除す
る。
【0197】その後、排紙終了処理C(25123)
は、コマンドファイル書込み部23315がファイル空
き待ち状態であるかを調べ、そうであればファイル空き
待ちサイズ245分の空きが前述の削除により発生した
かを調べる。本空きが発生したならば、コマンドファイ
ル書込み部23315を前述のファイル空き待ち状態か
ら解除する。
【0198】印刷制御装置の異常時の動作手順は、図4
の再印刷準備A(3291)の代わりに再印刷準備B
(図示せず)を行う以外は、図4の場合と同様である。
再印刷準備Bでは、コマンドファイルに排紙未完了のコ
マンドファイルが保存されているかを、前述の保存コマ
ンドファイル行列が空でないかで判定し、保存されてい
れば再印刷エラ−フラグをONに設定した後、コマンド
ファイル書込み部23315を書込みモ−ド3で起動す
る。なお、書込みモ−ドとは、コマンドファイル書込み
部23315によるファイル書き込み内容を、本処理の
起動時に選択、指示するための入力であり、後で図29
と図30を用いて説明する。
【0199】本実施例も、第1実施例の場合と同様、本
発明の出願人による発明(特開平1−164637号公
報や特開平1−282747号公報に記載)への拡張機
能として実現することができる。つまり、描画処理部や
印刷処理部の処理をマルチタスク構成とし、並行処理ま
たは並列処理を実現できるようにしてもよい。この場
合、図23内の各構成要素は図26の各構成要素に、第
1実施例の場合と同様に対応づけられる。本実施例では
さらに以下の対応づけを行う。
【0200】(1)ファイル制御部238−−>ファイ
ル制御部26121 (2)二次記憶装置部2381−−>二次記憶装置部2
6122 (3)コマンドファイル書込み部23315−−>コマ
ンドファイル書込みタスク処理部26134 (4)コマンドファイル読出し部239−−>コマンド
ファイル読出しタスク処理部26133 本実現方法によれば、CPU、プリンタエンジン部、及
びペ−ジバッファ部(複数ペ−ジにもできる)を空き時
間なく使用することができるので、正常時及びエラ−回
復時の印刷スル−プットを向上し、プリンタエンジン最
高速度での印刷を実現することができる。
【0201】次に図27乃至図37を用いて印刷制御装
置の各部の処理手順を説明する。ここでは、印刷制御装
置を図26のようにマルチタスク構成とした場合につい
て説明するが、図23の構成の場合についても同様にし
て実現することができる。本説明では各処理部を描画タ
スク処理部26131(描画処理部2331)のように
記す。つまり、初めにマルチタスク構成の場合の図26
の場合の処理部、括弧内に図23の場合の処理部を記
す。
【0202】まず図27と図28を用いて描画タスク処
理部26131(描画処理部2331)の処理手順を説
明する。初めに、描画準備(2709)により描画用の
各種パラメ−タの初期化等を行なう。描画準備(270
9)では、図28に示すように再印刷エラ−フラグ24
1がOFFか判定する(281)。OFFの場合、以下
の3項目を実行する。
【0203】(1)コマンドワ−クをコマンドワ−クリ
ザ−ブ機能を用いて獲得する。獲得したコマンドワ−ク
Noをiとする。ここで、コマンドワ−クとはコマンド
のファイルへの格納の仲立ちをするためのバッファメモ
リのことであり、図27を用いて後で説明する(281
1)。
【0204】(2)描画用の各種パラメ−タを記述する
ための描画属性パラメ−タテ−ブルに初期値をセットす
る(2812)。
【0205】(3)文書の第1ペ−ジ用の属性パラメ−
タファイルの作成と格納を行う。なお、第1ペ−ジ用の
属性パラメ−タファイルの内容としては、前記描画属性
パラメ−タテ−ブルの内容を格納する(2813)。
【0206】再印刷エラ−フラグ241がONの場合、
保存コマンドファイル利用再描画・印刷準備部2331
3により、保存コマンドファイル利用再描画、印刷準備
処理として以下の4項目を実行する(282)。
【0207】(1)コマンドファイル管理テ−ブル部に
記載の前記保存第1ペ−ジ用属性パラメ−タファイル名
(243A2)のファイルの内容を二次記憶装置部23
81内の23821から読出し、描画タスク処理部26
131(描画処理部2331)内の前記描画属性パラメ
−タテ−ブルの値として設定する(2821)。
【0208】(2)コマンドバッファ部231を空にす
る。実際に内容のゼロクリアをせず、単に前記各種ポイ
ンタ(23から26等)を再設定する(2822)。
【0209】(3)コマンドファイル読出しタスク処理
部26133(コマンドファイル読出し部239)によ
る処理を起動する(2823)。
【0210】(4)本描画タスク処理部26131(描
画処理部2331)の処理を、前記コマンドファイル読
出しタスク処理部26133(コマンドファイル読出し
部239)によるコマンドバッファ格納待ち状態に、移
す(2824)。
【0211】2823と2824において、コマンドフ
ァイル読出しタスク処理部26133のタスク優先度は
描画タスク処理部26131のタスク優先度と同じにし
た。その理由は、コマンドファイル読出しタスクを起動
後、描画タスクのコマンド格納待ち状態への移行を完了
してから、コマンドファイル読出しタスクを実行させる
ためである。なお、タスク優先度を用いたタスクの実行
制御方法としては、前記先願発明(特開平1−1646
37号や特開平1−282747号)に記載したのと同
様の方法を実装した。
【0212】描画準備の後、第1実施例の場合と同様、
描画処理はコマンド解釈(2721)とコマンド実行
(2730)を無限ル−プにより繰り返す(272
0)。
【0213】本実施例ではコマンド解釈(2721)に
おいて逐次コマンドをコマンドバッファから前記コマン
ドワ−クに格納する。該コマンドワ−クに一定量のコマ
ンドがたまると、描画タスク処理部26131(描画処
理部2331)内の前記コマンドファイル保存部233
11を用いて該コマンドワ−クエリアの内容を前記コマ
ンドファイルに逐次格納する。なお、コマンドファイル
は文書の各ペ−ジについて、別々のファイルとして格納
する。詳しくは、次のようにする。まず前記再印刷エラ
−フラグ241がOFFか判定し(2722)、その場
合該コマンドワ−クiにコマンドバッファからコマンド
を格納する(27221)。コマンドワ−クiが満杯か
判定し(27222)、その場合次の3項目を実行す
る。
【0214】(1)ファイル書込み用コマンドワ−クN
ojを、先程獲得したコマンドワ−クNoであるiに設
定する(27223)。
【0215】(2)コマンドファイル書込みタスク処理
部26134(コマンドファイル書込み部23315)
による処理を、書込みモ−ド1で起動する(2722
4)。
【0216】(3)コマンドワ−クをコマンドワ−クリ
ザ−ブ機能を用いて獲得し、獲得したコマンドワ−クN
oをiとする(27225)。
【0217】2722から27225の処理の後、描画
タスク処理部26131(描画処理部2331)は、第
1実施例の場合と同様に、コマンドの解釈処理(272
3)を行う。
【0218】本解釈処理2723の後、コマンドバッフ
ァが空か判定し(2724)、空の場合再印刷エラ−フ
ラグ241がOFFか判定する(27241)。本フラ
グがOFF、つまり再印刷の必要なエラ−が未発生の場
合、本描画タスク処理部26131(描画処理部233
1)を、前記ホストコンピュ−タ2610によるコマン
ドバッファ格納待ち状態に、移す(27242)。
【0219】本フラグがON、つまり再印刷の必要なエ
ラ−が発生しておりファイル保存内容を用いたエラ−回
復モ−ドにある場合、コマンドファイル読出しタスク処
理部26133(コマンドファイル読出し部239)
を、コマンドバッファ空き待ち状態から解除した後(2
7243)、本描画タスク処理部26131(描画処理
部2331)を、前記コマンドファイル読出しタスク処
理部26133(コマンドファイル読出し部239)に
よるコマンドバッファ格納待ち状態に、移す(2724
4)。
【0220】その後、描画タスク処理部26131(描
画処理部2331)は、第1実施例の場合と同様にコマ
ンド実行(2730)を行う。
【0221】また本実施例では改頁の手順(2736)
から、第1実施例で設けたコマンドバッファ保存処理
(636−3)を削除する。代わりに本図27のよう
に、再印刷エラ−フラグ241がOFFであるか判定し
(27361)、OFFの場合以下の3項目を実行す
る。
【0222】(1)ファイル書込み用コマンドワ−クN
ojを、先程獲得したコマンドワ−クNoであるiに設
定する(27362)。
【0223】(2)コマンドファイル書込みタスク処理
部26134(コマンドファイル書込み部23315)
を、書込みモ−ド2で起動する(27363)。
【0224】(3)コマンドワ−クをコマンドワ−クリ
ザ−ブ機能を用いて獲得し、獲得したコマンドワ−クN
oをiとする(27364)。
【0225】印刷タスク処理部26132(印刷処理部
2332)の処理手順及びプリンタ制御部236におけ
る割込み処理の手順は、各々第1実施例に示した図7と
図8の処理手順と同じである。
【0226】タイマ制御部における処理手順は、排紙終
了監視タイマがタイムアウトした時排紙終了処理A(図
9の914)の代わりに排紙終了処理Cを起動する点以
外は、図9の場合と同様である。
【0227】次に図29を用いてコマンドファイル書込
みタスク処理部26134(コマンドファイル書込み部
23315)の処理手順を説明する。
【0228】(1)入力パラメ−タエリアから書込みモ
−ドを取り出す(291)。
【0229】(2)書込みモ−ドに応じて図30のよう
に定まる今回のファイル書込み総量が、書込み総限界値
以下か判定する(292)。以下の場合(3)に示す処
理を行い、そうでない場合(4)に示す処理を行なう。
【0230】(3)[今回のファイル書込み総量が書込
み総限界値以下の場合] 書込みモ−ド1から3に共通な処理として以下の(3−
1)〜(3−3)の処理を行い、コマンドワ−クのうち
コマンドが格納されている有効分のファイルへの書込み
を行う。
【0231】(3−1)ファイル書込み用コマンドワ−
クjの内容のうち、コマンドが格納されている有効分の
みを、前述のwriteSVCを用いてファイルに書込
む(2931)。
【0232】(3−2)コマンドワ−クjの内容をゼロ
クリアする(2932)。
【0233】(3−3)コマンドワ−クjを、コマンド
ワ−クフリ−機能を用いて解放する(2933)。
【0234】(3−4)書込みモ−ドが2又は3なら
ば、(3−4−1)から(3−4−2)の処理を行い、
コマンドバッファ内のコマンドワ−クへの未読出し分の
コマンド(以後、単にコマンドバッファ残り印刷コマン
ドと呼ぶ)を、ファイルに書込む。(3−4−1)コマ
ンドバッファ残り印刷コマンドのサイズを、コマンドフ
ァイル管理テ−ブル部23314の該当項目246に記
入する(29341)。
【0235】(3−4−2)コマンドバッファ残り印刷
コマンドを、ファイルに書込む(29342)。
【0236】(3−5)続いて、書込みモ−ドが2であ
るか判定し(2935)、書込みモ−ドが2ならば(3
−5−1)から(3−5−4)の処理を行い、前記描画
属性パラメ−タテ−ブルの内容をファイルに書込む。
【0237】(3−5−1)描画属性ワ−クテ−ブルを
描画属性ワ−クテ−ブルリザ−ブ機能を用いて獲得す
る。獲得した描画属性ワ−クテ−ブルNoをkとする。
ここで、描画属性ワ−クテ−ブルとは描画属性パラメ−
タテ−ブルのファイルへの格納の仲立ちをするためのバ
ッファメモリである。なお、本描画属性ワ−クテ−ブル
は2個用意し、一方への書込み時に他方からの読出しを
行い、書込みと読出しを並行処理できるようにした(2
9351)。
【0238】(3−5−2)獲得した描画属性ワ−クテ
−ブルkに、描画属性パラメ−タテ−ブルの内容をコピ
−する(29352)。
【0239】(3−5−3)描画属性ワ−クテ−ブルk
の内容を、前述のwriteSVCを用いてファイルに
書込む(29353)。
【0240】(3−5−4)描画属性ワ−クテ−ブルk
を、描画属性ワ−クテ−ブルフリ−機能を用いて、解放
する(29354)。
【0241】(4)[今回のファイル書込み総量が書込
み総限界値より大きい場合] 現保存ペ−ジについての総ファイル書込み量tが、頁当
りの書込み限界値l以下か判定する(2936)。以下
ならば、次の(4−1)と(4−2)を行い、そうでな
いならば(4−3)を行う。
【0242】(4−1)ファイル空き待ちサイズとし
て、前述の総ファイル書込み量tと頁当り書込み限界値
lの差の絶対値を、コマンドファイル管理テ−ブル部2
3314内の該当項目245に記入する(2936
1)。
【0243】(4−2)本コマンドファイル書込みタス
ク処理部26134(コマンドファイル書込み部233
15)を、ファイル空き待ち状態に移す。本待ち状態へ
の移行とそれからの解除は、前述のファイル空き待ち用
ECB244を用いて制御する(29362)。
【0244】(4−3)エラ−回復モ−ドをコマンドフ
ァイル保存エラ−回復モ−ドから他のモ−ドへ移す(2
9363)。
【0245】なお、エラ−回復モ−ドの移行を次のよう
に行った。
【0246】(1)ファイル満杯発生以前に保存されて
いたペ−ジについては、この保存ファイルの内容を用
い、本実施例で今まで説明してきた手順を用いてエラ−
回復を行い、再印刷を実行した。保存ファイルを利用し
たエラ−回復を終えた後、29363に示したエラ−回
復モ−ドの移行を行った。
【0247】(2)エラ−回復モ−ドは、(i)ペ−ジ
バッファ保存エラ−回復モ−ド又はコマンド保存エラ−
回復モ−ド等の主メモリを利用したエラ−回復モ−ド、
(ii)ホストコンピュ−タからのコマンド再送を利用
したエラ−回復モ−ド、又は(iii)エラ−非回復モ
−ドのいずれかへ移した。
【0248】(3)前述の頁当り書込み限界値lが小さ
く、エラ−回復モ−ド移行の発生確率が大きい印刷制御
装置では、(i)又は(ii)のモ−ドへ移した。頁当
り書込み限界値lが大きく、エラ−回復モ−ド移行の発
生確率が非常に小さい印刷制御装置では、(iii)の
モ−ドへ移した。
【0249】(4)ホストコンピュ−タから受信した全
印刷コマンド列、又はそのうちの先頭一文書についての
排紙終了を、印刷制御装置が確認した時点で、(i)〜
(iii)の移行後のエラ−回復モ−ドから、保存ファ
イルを利用した移行前のエラ−回復モ−ドへ戻した。
【0250】なお、以上説明してきた次に示す任意のエ
ラ−回復モ−ド同志の間で、モ−ドの移行を行なうよう
にすることもできる。
【0251】(a)コマンドバッファ保存エラ−回復モ
−ド (b)ペ−ジバッファ保存エラ−回復モ−ド (c)コマンドファイル保存エラ−回復モ−ド (d)前述の描画イメ−ジファイル保存方式を用いるエ
ラ−回復モ−ド (e)エラ−非回復モ−ド 次に図31を用いて排紙終了処理Cの処理手順を説明す
る。本処理では排紙完了ペ−ジ通し番号を更新した後
(311)、前記コマンドファイル管理テ−ブル部23
314を参照して、保存先頭ペ−ジ用のコマンドファイ
ルの実体と名称を、各々二次記憶装置部2381とコマ
ンドファイル管理テ−ブル部23314から削除する。
さらに、保存先頭ペ−ジ用の属性パラメ−タファイルの
実体と名称も、各々二次記憶装置部2381とコマンド
ファイル管理テ−ブル部23314から削除する(31
2)。その後、コマンドファイル書込みタスク処理部2
6134が前述のファイル空き待ち状態にあるかを判定
し(313)、ファイル空き待ち状態の場合、前述のフ
ァイル空き待ちサイズ245だけの空きが、前記314
のファイル削除により発生したかを判定する(31
4)。発生した場合コマンドファイル書込みタスク処理
部26134を、前述のファイル空き待ち状態から解除
する(315)。続いて、排紙終了監視を起動した印刷
タスクを前記排紙終了待ち状態から解除する(31
6)。
【0252】図32を用いて、異常処理部237の処理
手順を説明する。印刷制御装置の状態の印刷不可能状態
への設定等の処理(320)以後、エラ−原因除去まで
のプリンタエラ−状態の確認(3241)と確認エラ−
のユ−ザ操作パネル部26107への表示(3242)
は第1実施例の場合と同じである。続いて異常処理部2
37は、以下の処理を行う。
【0253】(1)紙ジャム、印刷途中でのプリンタド
アオ−プンのような再印刷が必要なエラ−か判定し(3
25)、そうであれば次の処理を行う。
【0254】(1−1)印刷タスク処理部26132
(印刷処理部2332)と描画タスク処理部26131
(描画処理部2331)の全ての処理を強制終了する
(3251)。
【0255】(1−2)再印刷準備Bを行う(325
2)。本再印刷準備Bでは図33に示すように、コマン
ドファイルとして排紙未完了のコマンドが保存されてい
るかを、前記保存コマンドファイル行列が空でないかで
判定する(331)。保存されていれば、再印刷エラ−
フラグをONに設定し(3321)、印刷制御装置の状
態をコマンド非受信状態にした後(3322)、コマン
ドファイル書込みタスク処理部26134(コマンドフ
ァイル書込み部23315)を書込みモ−ド3で起動す
る(3323)。
【0256】(1−3)その後、描画タスク処理部26
131(描画処理部2331)を起動する(325
3)。なお、先に説明したように、起動された描画タス
ク処理部26131は、再印刷エラ−フラグを3321
でONにセットしてあるため、図28に示した保存コマ
ンドファイル利用再描画・印刷準備処理282を実行す
る。
【0257】(2)再印刷が必要なエラ−でないなら、
次の処理を行う。
【0258】(2−1)印刷制御装置2310、261
0の状態を印刷可能状態(オンライン)に設定し、ユ−
ザ操作パネル部26107にその旨表示する(325
4)。(2−2)印刷処理部2332と描画処理部23
31の処理を再開する(3255)。
【0259】(3)タスク終了を発行する(325
6)。なお、タスク終了は印刷制御装置をマルチタスク
構成で実現する場合に必要になる。
【0260】次に図34から図37を用いて、コマンド
ファイル読出しタスク処理部26133(コマンドファ
イル読出し部239)の処理手順を説明する。
【0261】(1)本処理手順では、初めに前処理とし
て以下の処理を行う。
【0262】(a)変数iに1を設定する(34A
1)。
【0263】(b)保存第iペ−ジ用コマンドファイル
の読出し用パラメ−タである二つのパラメ−タを次のよ
うに設定する(34A2)。
【0264】(b−1)読出し開始バイト位置に1を設
定。
【0265】(b−2)未読出し容量を本ファイルの容
量とする。
【0266】(c)コマンドバッファ残り容量をコマン
ドバッファ総容量とする(34A3)。
【0267】(2)次にすべての保存コマンドファイル
の内容を、コマンドバッファ231へ格納し終るまで
(34B0)、以下の処理を繰り返す。
【0268】(2−1)最終コマンドファイルでない
(図37の371から372のファイル)か判定し、最
終コマンドファイルでないならば、以下の処理を行う
(34C0)。 (a)コマンドバッファ231が満杯
になるまで、次の処理を繰り返す(34 C1)。
【0269】(a−1)コマンドバッファ残り容量が、
保存第iペ−ジ用コマンドファイルの前記未読出し容量
以上か、判定する(34C2)。
【0270】(a−2)以上ならば、次の処理を行う。
【0271】(a−2−1)保存第iペ−ジ用コマンド
ファイルの内容を、コマンドバッファ231へ格納する
(34C3)。
【0272】(a−2−2)iに1を加える(34C
4)。
【0273】(a−2−3)保存第iペ−ジ用コマンド
ファイルの読出し用パラメ−タである二つのパラメ−タ
を次のように設定する(34C5)。
【0274】(a−2−3−1)読み出し開始バイト位
置に1を設定。
【0275】(a−2−3−2)未読出し容量を本ファ
イルの容量とする。
【0276】(a−3)判定34C2において、以上で
ないならば、次の処理を行う。
【0277】(a−3−1)保存第iペ−ジ用コマンド
ファイルの読出し開始バイト位置以後、コマンドバッフ
ァ残り容量分の内容を、コマンドバッファ231へ格納
する(34C6)。
【0278】(a−3−2)保存第iペ−ジ用コマンド
ファイルの読出し用パラメ−タである二つのパラメ−タ
を次のように設定する(34C7)。
【0279】(a−3−2−1)読み出し開始バイト位
置の値にコマンドバッファ残り容量の値を加える。。
【0280】(a−3−2−2)未読出し容量の値から
コマンドバッファ残り容量の値を引く。
【0281】(a−4)コマンドバッファ残り容量の値
を、(a−2)または(a−3)の処理の結果定まる値
に更新する(34C8)。
【0282】(b)コマンドバッファが満杯になった
ら、次の処理を行う。
【0283】(b−1)描画タスク処理部26131
(描画処理部2331)が、コマンドファイル読出しタ
スク処理部26133(コマンドファイル読出し部23
9)によるコマンドバッファ格納待ち状態ならば(34
D1)、本状態からから解除する(34D2)。
【0284】(b−2)本コマンドファイル読出しタス
ク処理部26133(コマンドファイル読出し部23
9)を、コマンバッファ空き待ち状態へ移す(34D
3)。
【0285】(2−2)最終コマンドファイル(図37
の373のファイル)ならば、最終コマンドファイルに
ついての処理(34E0)を、図35のように行う。
【0286】(3)すべての保存コマンドファイルの内
容を、コマンドバッファへ格納し終ったら、次の後処理
を行い、本コマンドファイル読出しタスク処理部の処理
を終える。
【0287】(a)再印刷エラ−フラグ241をOFF
にセットする(34F0)。
【0288】(b)印刷制御装置の状態を印刷コマンド
受信可能状態にする(34F1)。 (c)タスク終了を発行する(34F2)。なお、本タ
スク終了も本実施例を前述のようにマルチタスク構成と
して実現する場合に必要になる。
【0289】最終コマンドファイルについての処理(3
4E0)を、図35を用いて説明する。
【0290】(1)初めに、保存最終頁用コマンドファ
イルのうち、エラ−発生時点で既にファイルに保存され
ていた部分(図37の3731、容量a)についての回
復処理(351)を、図36の手順で行う。
【0291】(2)次に、本コマンドファイル読出しタ
スク処理部26133(コマンドファイル読出し部23
9)を、コマンドバッファ空き待ち状態へ移す(35
2)。
【0292】(3)保存最終頁用コマンドファイルのう
ち、コマンドワ−ク対応部分(図37の3732、容量
b、コマンドワ−クのうち有効コマンド部分を、コマン
ドファイル書込みタスク処理部26134が図29の処
理で前述のように格納、保存したもの)をコマンドバッ
ファへ転送する(353)。
【0293】(4)保存最終頁用コマンドファイルのう
ち、コマンドバッファ残り印刷コマンドエリア(図37
の3733、容量c)をコマンドバッファへ転送する
(354)。
【0294】(5)保存最終頁用コマンドファイルか
ら、上記コマンドワ−ク対応部分3732とコマンドバ
ッファ残り印刷コマンドエリア3733の部分を、削除
する(355)。
【0295】エラ−発生時点におけるファイル既保存部
分についての回復処理(351)を、図36を用いて説
明する。
【0296】(1)保存最終ペ−ジ用コマンドファイル
の読出し用パラメ−タである二つのパラメ−タを次のよ
うに設定する(34A2)。
【0297】(1−1)読出し開始バイト位置に1を設
定。
【0298】(1−2)未読出し容量を、前述のエラ−
発生時点におけるファイル既保存部分の容量aとする。
【0299】(2)コマンドバッファ残り容量を現在値
に更新する(362)。
【0300】(3)次に保存コマンドファイルのうち、
容量a分の内容を、コマンドバッファ231へ格納し終
るまで(363)、以下の処理を繰り返す。
【0301】(3−1)コマンドバッファ231が満杯
になるまで、次の処理を繰り返(364)。
【0302】(a)コマンドバッファ残り容量が、保存
最終ペ−ジ用コマンドファイルの前記未読出し容量以上
か判定し(3641)、以上ならば、保存最終ペ−ジ用
コマンドファイルの未読出し容量分の内容を、コマンド
バッファ231へ格納する(3642)。
【0303】(b)以上でないならば、保存最終ペ−ジ
用コマンドファイルの読出し開始バイト位置以後、コマ
ンドバッファ残り容量分の内容を、コマンドバッファ2
31へ格納する(3643)。
【0304】(c)保存最終ペ−ジ用コマンドファイル
の読出し用パラメ−タである二つのパラメ−タを次のよ
うに設定する(3644)。
【0305】(c−1)読み出し開始バイト位置の値に
コマンドバッファ残り容量の値を加える。
【0306】(c−2)未読出し容量の値からコマンド
バッファ残り容量の値を引く。
【0307】(d)コマンドバッファ残り容量の値を、
3642又は3643の処理の結果定まる値に更新する
(3645)。
【0308】(3−2)コマンドバッファ231が満杯
になったら、次の処理を行う。
【0309】(a)描画タスク処理部26131(描画
処理部2331)が、コマンドファイル読出しタスク処
理部26133(コマンドファイル読出し部239)に
よるコマンドバッファ格納待ち状態ならば(365)、
本状態からから解除する(366)。
【0310】(b)本コマンドファイル読出しタスク処
理部26133(コマンドファイル読出し部239)
を、コマンバッファ空き待ち状態へ移す(367)。
【0311】なお、コマンドファイル読出しタスク処理
部26133(コマンドファイル読出し部239)は前
記保存コマンドファイルのうち、コマンドバッファ残り
印刷コマンドエリアのみを削除する。それ以外のエリア
は、前記排紙終了処理部C23623が、図31の処理
手順を実行することにより、頁単位に削除する。
【0312】また、ファイル保存デ−タを用いた保存先
頭頁から保存最終頁迄についてのエラ−回復処理の最中
に、再印刷の必要なエラ−が再び発生したものとする。
この場合、異常処理部237による図32の処理手順を
再び起動し、再び同様に処理を行うようにした。つま
り、エラ−検出時点で残っているファイル保存デ−タを
用いて、回復処理を行うようにした。
【0313】ホストコンピュ−タ100の処理手順は、
図13の場合と同様である。
【0314】また印刷制御装置2310、2610のハ
ードウェア構成も図14の場合と同様である。
【0315】本実施例においては、コマンドバッファ容
量を減少することができ(最低1バイトでも動作可
能)、第1の従来技術のようにエラ−回復専用のコマン
ドバッファを前記最大保持枚数分用意する必要がないの
で、印刷制御装の費用対効果比を高めることができる。
また、前記各ペ−ジ用の属性パラメ−タファイルに各ペ
−ジの描画開始時のの描画属性パラメ−タを保存してい
るので、前記描画属性パラメ−タがペ−ジ間で引き継が
れる仕様のコマンドに対しても、エラ−回復時に印刷結
果が本来のものと異なることはなく、印刷制御装置の信
頼性と使い勝手を高めることができる。
【0316】また、第2の従来技術におけるホストコン
ピュ−タの処理負担の増大とプログラムの改造を解消す
ることもできる。
【0317】また、第3の従来技術におけるコマンド読
み飛ばし処理をなくすことができるので、印刷制御装置
の開発プログラム量の増大を解消することができる。
【0318】また複数種類のエラ−回復モ−ドを併用す
ることにより、性能と信頼性の高いエラ−回復機能を、
印刷制御装置のハ−ドウェア構成とそれの使用状況、特
に二次記憶装置部の使用状況に応じてユ−ザに提供する
こともできる。
【0319】次に本発明の第4実施例を説明する。本実
施例は、前述の第3実施例において、登録デ−タのエラ
−回復用保存方式に工夫を凝らしたものである。ここ
で、登録デ−タとは、印刷制御装置が描画処理で用いる
フォント/外字、書式、塗り潰しパタ−ン、線種パタ−
ン等のことであり、前述の描画属性パラメ−タの一種で
あるが、デ−タ量が大きい。
【0320】第3実施例では、これらの登録デ−タも他
の描画属性パラメ−タと同様に保存し、エラ−回復に利
用していた。つまり、保存デ−タを各ペ−ジ毎に別々に
保存していた。本実施例では、本登録デ−タを複数ペ−
ジについて共通的に保存できるようにし、保存に要する
ファイル容量を削減した。特に、フォント/外字につい
ては、各ペ−ジについて複数セット(最大Lセット)登
録できるようにした。それ以外の登録デ−タは、書式、
塗り潰しパタ−ン、線種パタ−ン等の種類毎に各ペ−ジ
についてまてめて一つのファイルに保存するようにし
た。
【0321】以上を実現するため、図40に示す登録デ
−タ保存管理テ−ブルを設け、これを用いながら登録デ
−タを図41のように保存、格納した。
【0322】例えば、ファイル名称403dに対応する
ファイル413に、1ペ−ジ分の書式デ−タを格納し、
それを利用開始ペ−ジ通し番号403bから利用終了ペ
−ジ通し番号403cの間について、共用するようにし
た。
【0323】フォント/外字にについても同様に、ファ
イル名称401dに対応するファイル411に、第1の
フォント/外字デ−タファイルを格納し、それを利用開
始ペ−ジ通し番号401bから利用終了ペ−ジ通し番号
401cの間について、共用するようにした。フォント
/外字にについては、さらにファイル名称402dに対
応するファイル412に、第2のフォント/外字デ−タ
ファイルを格納し、それを利用開始ペ−ジ通し番号40
2bから利用終了ペ−ジ通し番号402cの間につい
て、共用するようにし、1ペ−ジについて最大Lセット
のフォント/外字を保存できるようにした。
【0324】本実施例によれば、フォント/外字、書式
等の登録デ−タを複数ペ−ジについて共用して保存した
ことにより、第3実施例に比べ保存用のファイル容量を
削減することができた。従って、コストパフォ−マンス
の良い印刷制御装置を実現することができた。
【0325】以上の実施例においては、以下のいずれか
の方法を用いることにより、印刷制御装置をホストコン
ピュ−タの一機能として実現することもできる。
【0326】(1)印刷制御装置をホストコンピュ−タ
内の一つの印刷制御アダプタ又は印刷制御ボ−ドとして
実現し、本アダプタ又はボ−ドに前述のようなエラ−回
復機能を搭載する。
【0327】(2)印刷制御装置をホストコンピュ−タ
の主プロセッサによるソフトウェア処理として実現す
る。この時、本ソフトウェア処理に前述のようなエラ−
回復機能を搭載する。
【0328】
【発明の効果】前記コマンドバッファ保存方式において
は、コマンドバッファを用紙1枚分の印刷コマンドの格
納に必要な容量分だけ用意すればよく、第1の従来技術
のようにエラ−回復専用のコマンドバッファを前記最大
保持枚数分用意する必要がないので、印刷制御装置の費
用対効果比を高めることができるという効果がある。ま
た、前記コマンドバッファ排紙待ち行列部に各ペ−ジの
描画開始時のの描画属性パラメ−タを保存しているの
で、前記描画属性パラメ−タがペ−ジ間で引き継がれる
仕様のコマンドに対しても、エラ−回復時に印刷結果が
本来のものとは異なることはなく、印刷制御装置の信頼
性と使い勝手を高めることができるという効果がある。
【0329】また前記ペ−ジバッファ保存方式において
は、ペ−ジバッファを用紙1枚分だけ用意すればよく、
第1の従来技術のようにエラ−回復専用のコマンドバッ
ファを前記最大保持枚数分用意する必要がないので、印
刷制御装置の費用対効果比を高めることができるという
効果がある。また、前記ペ−ジバッファに描画結果その
ものを保存しているので、前記描画属性パラメ−タがペ
−ジ間で引き継がれる仕様のコマンドに対しても、エラ
−回復時に印刷結果が本来のものと異なることはなく、
印刷制御装置の信頼性と使い勝手を高めることができる
という効果がある。
【0330】また前記コマンドファイル保存方式におい
ては、コマンドバッファ容量を減少することができ(最
低1バイトでも動作可能)、第1の従来技術のようにエ
ラ−回復専用のコマンドバッファを前記最大保持枚数分
用意する必要がないので、印刷制御装の費用対効果比を
高めることができるという効果がある。また、前記各ペ
−ジ用の属性パラメ−タファイルに各ペ−ジの描画開始
時のの描画属性パラメ−タを保存しているので、前記描
画属性パラメ−タがペ−ジ間で引き継がれる仕様のコマ
ンドに対しても、エラ−回復時に印刷結果が本来のもの
と異なることはなく、印刷制御装置の信頼性と使い勝手
を高めることができるという効果がある。
【0331】また複数種類のエラ−回復モ−ドを併用す
ることにより、性能と信頼性の高いエラ−回復を、二次
記憶装置部の使用状況に応じてユ−ザに提供することも
できるという効果もある。
【0332】さらにフォント/外字、書式等の登録デ−
タを複数ペ−ジについて共用して保存したことにより、
保存用のファイル容量を削減することができた。従っ
て、コストパフォ−マンスの良い印刷制御装置を実現す
ることができるという効果もある。
【0333】また以上すべての発明において、第2の従
来技術におけるホストコンピュ−タの処理負担の増大と
プログラムの改造を解消することができるという効果も
ある。さらに、第3の従来技術におけるコマンド読み飛
ばし処理をなくすことができるので、印刷制御装置の開
発プログラム量の増大を解消することができるという効
果もある。
【図面の簡単な説明】
【図1】本発明の第1実施例を示す構成図である。
【図2】本発明の第1実施例におけるコマンドバッファ
管理テ−ブル部を説明するための図である。
【図3】本発明の第1実施例における正常時の動作手順
を説明するための図である。
【図4】本発明の第1実施例と第3実施例における異常
時の動作手順を説明するための図である。
【図5】本発明の第1実施例と第2実施例においてマル
チタスク制御方式を適用した場合の構成図である。
【図6】本発明の第1実施例における印刷制御装置各部
の処理手順を説明するための図である。
【図7】本発明の第1実施例における印刷制御装置各部
の処理手順を説明するための図である。
【図8】本発明の第1実施例における印刷制御装置各部
の処理手順を説明するための図である。
【図9】本発明の第1実施例における印刷制御装置各部
の処理手順を説明するための図である。
【図10】本発明の第1実施例における印刷制御装置各
部の処理手順を説明するための図である。
【図11】本発明の第1実施例における印刷制御装置各
部の処理手順を説明するための図である。
【図12】本発明の第1実施例における印刷制御装置各
部の処理手順を説明するための図である。
【図13】本発明におけるホストコンピュ−タの処理手
順を説明するための図である。
【図14】本発明のハ−ドウェア構成を説明するための
図である。
【図15】本発明の第2実施例を示す構成図である。
【図16】本発明の第2実施例におけるペ−ジバッファ
管理テ−ブル部を説明するための図である。
【図17】本発明の第2実施例における正常時の動作手
順を説明するための図である。
【図18】本発明の第2実施例における異常時の動作手
順を説明するための図である。
【図19】本発明の第2実施例における印刷制御装置各
部の処理手順を説明するための図である。
【図20】本発明の第2実施例における印刷制御装置各
部の処理手順を説明するための図である。
【図21】本発明の第2実施例における印刷制御装置各
部の処理手順を説明するための図である。
【図22】本発明の第2実施例における印刷制御装置各
部の処理手順を説明するための図である。
【図23】本発明の第3実施例を示す構成図である。
【図24】本発明の第3実施例におけるコマンドファイ
ル管理テ−ブル部を説明するための図である。
【図25】本発明の第3実施例における正常時の動作手
順を説明するための図である。
【図26】本発明の第3実施例においてマルチタスク制
御方式を適用した場合の構成図である。
【図27】本発明の第3実施例における印刷制御装置各
部の処理手順を説明するための図である。
【図28】本発明の第3実施例における印刷制御装置各
部の処理手順を説明するための図である。
【図29】本発明の第3実施例における印刷制御装置各
部の処理手順を説明するための図である。
【図30】本発明の第3実施例における書込みモ−ドと
今回ファイル書込み総量の関係を示す図である。
【図31】本発明の第3実施例における印刷制御装置各
部の処理手順を説明するための図である。
【図32】本発明の第3実施例における印刷制御装置各
部の処理手順を説明するための図である。
【図33】本発明の第3実施例における印刷制御装置各
部の処理手順を説明するための図である。
【図34】本発明の第3実施例における印刷制御装置各
部の処理手順を説明するための図である。
【図35】本発明の第3実施例における印刷制御装置各
部の処理手順を説明するための図である。
【図36】本発明の第3実施例における印刷制御装置各
部の処理手順を説明するための図である。
【図37】本発明の第3実施例における各ペ−ジ対応コ
マンドデ−タのファイルへの保存状態を説明するための
図である。
【図38】本発明に用いる印刷コマンド列の一例を示す
図である。
【図39】正常印刷における印刷結果と属性パラメータ
を考慮しない場合の再印刷における印刷結果の一例を示
す図である。
【図40】本発明の第4実施例を説明するための図であ
る。
【図41】本発明の第4実施例を説明するための図であ
る。
【符号の説明】
10・・・ホストコンピュ−タ、11・・・コマンドバ
ッファ部、12・・・コマンドバッファ管理部、121
・・・コマンドバッファ排紙待ち行列部、13・・・コ
マンド処理部、131・・・描画処理部、1311・・
・コマンドバッファ保存部、1312・・・保存コマン
ドバッファ利用再描画、印刷準備部、132・・・印刷
処理部、1321・・・印刷指示部、14・・・ペ−ジ
バッファ制御部、15・・・ペ−ジバッファ部、16・
・・プリンタ制御部、161・・・排紙終了監視部、1
621・・・排紙終了処理部1、17・・・異常処理
部、171・・・再印刷準備部A、120・・・プリン
タエンジン部、320・・・印刷コマンド列、331
0,3320,3330・・・正常印刷における印刷結
果、3340・・・再印刷における印刷結果。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 永田 近彦 神奈川県海老名市下今泉810番地株式会社 日立製作所オフィスシステム設計開発セン タ内 (72)発明者 麻生 忠彦 横浜市戸塚区吉田町292番地株式会社日立 マイクロソフトウェアシステムズ内

Claims (16)

    【特許請求の範囲】
  1. 【請求項1】印刷ページ順に配置され、文字、図形、イ
    メージ等の描画情報を示す描画用コマンドと、任意の位
    置に配置され、それ以後の該描画用コマンドに係る描画
    情報をイメージデータとして描画するための書式等を示
    す属性パラメータ設定コマンドとを少なくとも備えた印
    刷コマンド列をホストコンピュータから受信し、プリン
    タエンジン部に対して印刷制御を行うエラー回復機能付
    き印刷装置において、前記印刷コマンド列を受信する通
    信制御部と、 受信した前記印刷コマンド列を格納するためのコマンド
    バッファ部と、 正常時においては、前記コマンドバッファ部から前記印
    刷コマンド列を順次読み出し、該印刷コマンド列に従っ
    て描画処理を行なうとともに、異常発生時においては、
    異常発生時点の未排紙ページ以降の前記印刷コマンド列
    を再び順次読み出し、該印刷コマンド列に従って描画処
    理を行なう描画処理部と、 該描画処理部で描画されたドットイメージデータを格納
    するページバッファ部と、 該ページバッファ部内に格納された前記ドットイメージ
    データについての印刷を前記プリンタ制御部に指示する
    印刷処理部と、 該印刷処理部からの指示に従い、該ページバッファ部か
    らの前記ドットイメージデータを読み出し、前記プリン
    タエンジン部に対し印刷制御を行なうプリンタ制御部
    と、 前記プリンタエンジン部の異常を監視し、再印刷が必要
    な異常が発生した場合、前記描画処理部の再印刷処理を
    起動する異常処理部と、 前記描画処理部で読み出した印刷コマンド列に従って設
    定された属性パラメータをその属性パラメータに係るペ
    ージが全て排紙されるまで少なくとも格納する属性パラ
    メータテーブル部とを有し、 異常発生時に前記描画処理部は、前記属性パラメータテ
    ーブル部に格納されている再描画処理するページの属性
    パラメータにより描画処理を行なうことを特徴とする。
  2. 【請求項2】前記属性パラメータテーブル部に格納され
    る属性パラメータは、前記コマンドバッファ部における
    前記印刷コマンド列のページ毎の格納位置に対応して格
    納されることを特徴とする請求項1記載のエラー回復機
    能付き印刷装置。
  3. 【請求項3】前記属性パラメータテーブル部は、第1要
    素として、次のコマンドブロックへのポインタ、第2要
    素として、前記コマンドバッファ部の排紙待ちページの
    エンドを示すコマンドペ−ジエンドポインタ保存部、第
    3要素として、その時点での属性パラメ−タを保存する
    属性パラメ−タテ−ブル保存部からなるコマンドブロッ
    クの連なりで構成されることを特徴とする請求項2記載
    のエラー回復機能付き印刷装置。
  4. 【請求項4】文字、図形、イメージ等の描画情報及び該
    描画情報をイメージデータとして描画するための書式等
    を示す属性パラメータ設定情報を示す印刷コマンド列を
    ホストコンピュータから受信し、プリンタエンジン部に
    対して印刷制御を行うエラー回復機能付き印刷装置にお
    いて、 前記印刷コマンド列を受信する通信制御部と、 受信した前記印刷コマンド列を格納するためのコマンド
    バッファ部と、 前記コマンドバッファ部から前記印刷コマンド列を順次
    読み出し、該印刷コマンド列に従ってページ毎に描画処
    理を行なう描画処理部と、 該描画処理部で描画されたドットイメージデータを、そ
    のページの印刷が終了するまで格納するページバッファ
    部と、 該ページバッファ部内に格納された前記ドットイメージ
    データについての印刷を前記プリンタ制御部に指示する
    印刷処理部と、 該印刷処理部からの指示に従い、該ページバッファ部か
    らの前記ドットイメージデータを読み出し、前記プリン
    タエンジン部に対し印刷制御を行なうプリンタ制御部
    と、 前記プリンタエンジン部の異常を監視し、再印刷が必要
    な異常が発生した場合、前記プリンタ制御部の再印刷処
    理を起動する異常処理部と、 排紙待ちページの前記ページバッファでの記憶位置を示
    すページバッファ番号を保存するページバッファ番号保
    存部とを有し、 異常発生時に前記プリンタ制御部は、前記ページバッフ
    ァ番号保存部にある、異常が発生したページのページバ
    ッファ番号により、該異常が発生したページのドットイ
    メージデータを読み出し、プリンタエンジン部の印刷制
    御を行なうことを特徴とするエラー回復機能付き印刷装
    置。
  5. 【請求項5】前記ページバッファ番号保存部は、第1要
    素として、次のコマンドブロックへのポインタ、第2要
    素として、ページバッファ番号、第3要素として、前記
    プリンタ制御部の印刷タスク番号とからなるコマンドブ
    ロックの連なりで構成されることを特徴とする請求項4
    記載のエラー回復機能付き印刷装置。
  6. 【請求項6】請求項1記載のエラー回復機能付き印刷装
    置において、 さらに、前記コマンドバッファから受信した印刷コマン
    ド列を、各ページの印刷コマンドがそれぞれ記述された
    複数のコマンドファイルとして格納する二次記憶装置
    と、 該コマンドファイルの書き込み・読み出しを制御するコ
    マンドファイル保存制御部と、 該コマンドファイルの該二次記憶装置での格納位置を管
    理するコマンドファイル管理テーブル部とを有し、 前記異常処理部が前記描画処理部の再印刷処理を起動す
    る際、前記コマンドファイル保存制御部は、再印刷の必
    要なページのコマンドファイルを、前記コマンドファイ
    ル管理テーブル部により格納位置を認識することによ
    り、前記二次記憶装置から前記コマンドバッファへ読み
    出し、前記描画処理部は、前記コマンドバッファに新た
    に格納された印刷コマンド列により、再印刷のための描
    画処理を行うことを特徴とするエラー回復機能付き印刷
    装置。
  7. 【請求項7】請求項6記載のエラー回復機能付き印刷装
    置において、 前記コマンドファイル保存制御部は、さらに、各ページ
    描画開始時の属性パラメータを、属性パラメータファイ
    ルとして、前記二次記憶装置に格納することを特徴とす
    るエラー回復機能付き印刷装置。
  8. 【請求項8】請求項7記載のエラー回復機能付き印刷装
    置において、 前記コマンドファイル管理テーブル部は、各ページにつ
    いてのコマンドファイル名称と属性パラメータ名称を、
    各々受信し、印刷するページ順の待ち行列として記述さ
    れることを特徴とするエラー回復機能付き印刷装置。
  9. 【請求項9】請求項6記載のエラー回復機能付き印刷装
    置において、 ホストコンピュータから受信した印刷コマンドまたは印
    刷制御装置内操作パネルからのユーザ入力に従い、前記
    二次記憶装置を用いないエラー回復機能と前記二次記憶
    装置を用いるエラー回復機能とを切替るようにしたこと
    を特徴とするエラー回復機能付き印刷装置。
  10. 【請求項10】前記描画処理部と前記印刷処理部による
    処理をマルチタスク構成とし、並行処理または並列処理
    するようにしたことを特徴とする前記請求項1乃至請求
    項9に記載のエラー回復機能付き印刷装置。
  11. 【請求項11】エラー検出時の前記再印刷処理の開始
    を、ホストコンピュータからの指示に従って行なうこと
    を特徴とする前記請求項1乃至請求項9記載のエラー回
    復機能付き印刷装置。
  12. 【請求項12】印刷ページ順に配置され、文字、図形、
    イメージ等の描画情報を示す描画用コマンドと、任意の
    位置に配置され、それ以後の該描画用コマンドに係る描
    画情報をイメージデータとして描画するための書式等を
    示す属性パラメータ設定コマンドとを少なくとも備えた
    印刷コマンド列を制御部で受信し、コマンドバッファに
    一時格納し、該コマンドバッファの印刷コマンド列によ
    り描画処理、印刷制御をプリンタエンジン部に対して行
    なう印刷装置の印刷制御方法であって、 前記制御部が、前記描画用コマンドと、前記印刷コマン
    ド列を受信する第1のステップと、 受信した前記印刷コマンド列をコマンドバッファに格納
    する第2のステップと、 前記コマンドバッファから前
    記印刷コマンド列を順次読み出し、コマンド解釈を行う
    第3のステップと、 前記第3のステップでの前記属性パラメータ設定コマン
    ドのコマンド解釈によって得た属性パラメータをその属
    性パラメータが属する印刷コマンドの前記コマンドバッ
    ファにおける格納位置に対応させて記憶する第4のステ
    ップと、 前記第3のステップでのコマンド解釈に従い描画処理を
    行なう第5のステップと、 前記第5のステップで描画処理されたイメージデータに
    従い前記プリンタエンジン部にたいして印刷制御を行う
    第6のステップと、 前記第6のステップにおける異常を監視し、再印刷が必
    要な異常が発生した場合、再印刷が必要なページについ
    て、前記コマンドバッファから前記印刷コマンド列を順
    次読み出し、コマンド解釈を行うとともに、該再印刷が
    必要なページの印刷コマンドに対応させて前記第4のス
    テップで記憶した属性パラメータを呼出す第7のステッ
    プと、 前記第7のステップでのコマンド解釈と、呼び出した属
    性パラメータに従い再度描画処理を行なう第8のステッ
    プと、 前記第8のステップで描画処理されたイメージデータに
    従い再度印刷を行う第9のステップを有することを特徴
    とする印刷制御方法。
  13. 【請求項13】前記第6のステップにおける属性パラメ
    ータの記憶は、前記コマンドバッファにおける前記印刷
    コマンド列のページごとの格納位置に対応させて行なう
    ことを特徴とする請求項12記載の印刷制御方法。
  14. 【請求項14】前記第7のステップ乃至前記第9のステ
    ップの処理は、前記印刷コマンド列を送信するホストコ
    ンピュータからの指示に従って行なうことを特徴とする
    請求項13記載の印刷制御方法。
  15. 【請求項15】文字、図形、イメージ等の描画情報及び
    該描画情報をイメージデータとして描画するための書式
    等を示す属性パラメータ設定情報を示す印刷コマンド列
    を制御部にて受信し、該印刷コマンド列により描画処理
    を行ない、該描画処理により得たイメージデータをペー
    ジバッファに一時格納し、該ページバッファのイメージ
    データをプリンタエンジン部に対して印刷制御する印刷
    装置の印刷制御方法であって、 前記制御部が前記印刷コマンド列をホストコンピュータ
    から受信する第1のステップと、 受信した前記印刷コマンド列をコマンドバッファに格納
    する第2のステップと、 前記コマンドバッファから前
    記印刷コマンド列を順次読み出し、コマンド解釈を行う
    第3のステップと、 前記第3のステップでのコマンド解釈に従いページ毎に
    描画処理を行なう第4のステップと、 前記第5のステップで描画処理されたイメージデータを
    ページバッファに一時蓄積するとともに、該ページバッ
    ファにおけるページ毎のイメージデータの記憶位置を保
    存する第6のステップと、 前記第6のステップで蓄積されたイメージデータを読み
    出し、前記プリンタエンジン部にたいして印刷制御を行
    う第7のステップと、 前記第7のステップにおける異常を監視し、再印刷が必
    要な異常が発生した場合、再印刷が必要なページのイメ
    ージデータを、保存された前記記憶位置により再度前記
    ページバッファから読み出し、再度印刷を行う第8のス
    テップと、 前記第8のステップまたは第7のステップでの該当ペー
    ジの印刷の終了を確認した後、前記ページバッファにお
    ける該当ページの記憶位置のイメージデータを消去・更
    新するステップを有することを特徴とする印刷制御方
    法。
  16. 【請求項16】前記第7のステップの処理は、前記印刷
    コマンド列を送信するホストコンピュータからの指示に
    従って行なうことを特徴とする請求項15記載の印刷制
    御方法。
JP4226889A 1991-08-30 1992-08-26 エラー回復機能付き印刷制御装置及び印刷制御方法 Pending JPH05301429A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP21960691 1991-08-30
JP3-219606 1991-08-30

Publications (1)

Publication Number Publication Date
JPH05301429A true JPH05301429A (ja) 1993-11-16

Family

ID=16738168

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4226889A Pending JPH05301429A (ja) 1991-08-30 1992-08-26 エラー回復機能付き印刷制御装置及び印刷制御方法

Country Status (1)

Country Link
JP (1) JPH05301429A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5625757A (en) * 1993-12-24 1997-04-29 Hitachi, Ltd. Printing system
WO1998057296A1 (en) * 1993-05-14 1998-12-17 Dataproducts Corporation Image storage and retrieval for a printer
US6567621B2 (en) 2001-08-03 2003-05-20 Fuji Xerox Co., Ltd. Tandem printers system
US7826077B2 (en) 2005-05-10 2010-11-02 Konica Minolta Business Technologies, Inc. Apparatus, system and method for executing image processing based on job data stored in a portable storage medium

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998057296A1 (en) * 1993-05-14 1998-12-17 Dataproducts Corporation Image storage and retrieval for a printer
US5864652A (en) * 1993-05-14 1999-01-26 Dataproducts Corporation Image storage and retrieval for a printer
US5625757A (en) * 1993-12-24 1997-04-29 Hitachi, Ltd. Printing system
US6567621B2 (en) 2001-08-03 2003-05-20 Fuji Xerox Co., Ltd. Tandem printers system
US7826077B2 (en) 2005-05-10 2010-11-02 Konica Minolta Business Technologies, Inc. Apparatus, system and method for executing image processing based on job data stored in a portable storage medium
US8014010B2 (en) 2005-05-10 2011-09-06 Konica Minolta Business Technologies, Inc. Apparatus, system and method for executing image processing based on job data stored in a portable storage medium

Similar Documents

Publication Publication Date Title
US5664074A (en) Print control apparatus with error recovery function and its print control method
US5058037A (en) Method and apparatus for controlling printer
US7209256B2 (en) Document processing method
US7199890B2 (en) Print control method and apparatus
US5954436A (en) Printing apparatus and double-side printing control method
US5265209A (en) Print control apparatus for printing pages having different page sizes using one or more of a plurality of same-sized page buffers
JPH05301429A (ja) エラー回復機能付き印刷制御装置及び印刷制御方法
JPH0976606A (ja) 印刷障害処理方法および印刷システム
JP2816184B2 (ja) 印刷制御装置
JP3380598B2 (ja) 両面印刷制御方法および印刷制御装置
US5930462A (en) Printing apparatus
JP2776894B2 (ja) プリンタコントローラおよび印刷制御方法
JP3173721B2 (ja) プリンタ及びその動作方法
JP3474185B2 (ja) 両面印刷制御方法および印刷制御装置
JPH06253066A (ja) マルチアプリケーション調停装置
US5303335A (en) Image forming apparatus
JP3474184B2 (ja) 両面印刷制御方法および印刷制御装置
JPS6238930A (ja) 印字制御装置
JPH0997141A (ja) Windows用端末エミュレータ印刷方法
JP2564356B2 (ja) 印刷制御装置
JPH1078856A (ja) 優先度別割り込み印刷方法およびシステム
JP5062750B2 (ja) 画像形成装置
JP3174624B2 (ja) プリンタ装置における印刷情報の管理方法及びプリンタ装置
JP3248796B2 (ja) ネットワークプリンタシステム
JP3528976B2 (ja) 情報出力装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070905

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20080905

Year of fee payment: 11

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

Year of fee payment: 11

Free format text: PAYMENT UNTIL: 20080905

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

Year of fee payment: 12

Free format text: PAYMENT UNTIL: 20090905

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090905

Year of fee payment: 12