JP2007215135A - 画像処理装置、画像処理方法、及びプログラム - Google Patents

画像処理装置、画像処理方法、及びプログラム Download PDF

Info

Publication number
JP2007215135A
JP2007215135A JP2006035610A JP2006035610A JP2007215135A JP 2007215135 A JP2007215135 A JP 2007215135A JP 2006035610 A JP2006035610 A JP 2006035610A JP 2006035610 A JP2006035610 A JP 2006035610A JP 2007215135 A JP2007215135 A JP 2007215135A
Authority
JP
Japan
Prior art keywords
data
page
command
interpretation
unit
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.)
Granted
Application number
JP2006035610A
Other languages
English (en)
Other versions
JP4706495B2 (ja
Inventor
Yozo Kashima
洋三 鹿島
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2006035610A priority Critical patent/JP4706495B2/ja
Publication of JP2007215135A publication Critical patent/JP2007215135A/ja
Application granted granted Critical
Publication of JP4706495B2 publication Critical patent/JP4706495B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Record Information Processing For Printing (AREA)
  • Facsimiles In General (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

【課題】オリジナルの印刷データに手を加えることなく、付加的な情報の追加描画を効率的に行う。
【解決手段】印刷装置300は、ホストコンピュータ311から基本ページデータ201及びユーザ名を受信するデータ入力部312と、ユーザ名と日付を描画するページ加工データ202を生成するページ加工データ生成部310と、基本ページデータ201とページ加工データ202を記憶する入力データ記憶部301と、基本ページデータ201とページ加工データ202を解釈するPDLデータ解釈部303と、その解釈の中断、再開、対象データを制御する制御部302とを含む。この解釈結果に基づいて、中間データ生成部304が中間データを生成して中間データ記憶部305に記憶し、中間データ展開部306が中間データをラスタデータに展開してラスタデータ記憶部307に記憶し、印刷制御部308がラスタデータを印刷エンジン309に出力する。
【選択図】図3

Description

本発明は、文書データの印刷を指示する印刷データをラスタデータに変換して文書画像を生成する画像処理装置等に関する。
ホストコンピュータで作成された文書データは、例えば、ページ記述言語(Page Description Language)で記述されたデータ(以下、「PDLデータ」という)としてプリンタに送られることにより、印刷が可能となる。ところで、近年、このようにホストコンピュータからプリンタへPDLデータが送信された後に、このPDLデータに基づく画像データに対し、プリンタ側で何らかの加工を施して印刷する機能への要望が高まっている。例えば、情報漏洩の抑止効果を狙い、印刷を要求した時刻やユーザを特定する情報を画像データに強制的に付加する機能等である。
ここで、ホストコンピュータから送出されるPDLデータに基づく画像データに対し、プリンタ側で画像データを付加する技術として、スキャナプリンタで入力された画像データを付加するものがある(例えば、特許文献1参照)。この特許文献1の技術では、PDLデータを一旦ビットマップに変換し、このビットマップとスキャナ入力された画像データとを合成している。
特開平6−214923号公報
しかしながら、特許文献1の手法では、PDLデータに基づくラスタデータ及びスキャナ入力されたラスタデータについて画素単位でマージ処理を行わなければならないため、処理に時間がかかるという問題点があった。また、場合によっては、ラスタデータを保存する記憶領域が2ページ分必要となり、システム構成が大規模になってしまうという問題点もあった。
本発明は、以上のような技術的課題を解決するためになされたものであって、その目的は、オリジナルの印刷データに手を加えることなく、付加的な情報の追加描画を効率的に行うことにある。
かかる目的のもと、本発明では、印刷データをラスタデータに変換する場合、印刷データの解釈時に特定の命令を検知すると解釈を一時停止し、解釈対象のデータの読込み先を切り替えるようにした。即ち、本発明の画像処理装置は、文書画像の印刷を指示する印刷データを入力する入力手段と、文書画像に付加する付加画像の印刷のための付加データを格納する格納手段と、印刷データを解釈し、その印刷データ中に特定の命令を検出すると、その印刷データの解釈を中断し、付加データを解釈することにより、付加画像が付加された文書画像を生成する解釈手段とを備えている。ここで、特定の命令としては、ページの開始を指示する命令、ページの終了を指示する命令、印刷ジョブの開始を指示する命令、印刷ジョブの終了を指示する命令が例示される。或いは、印刷データの解釈の中断点として機能する命令として予め登録された命令であってもよい。
また、本発明は、このような画像処理の方法として捉えることもできる。その場合、本発明の画像処理方法は、文書画像の印刷を指示する印刷データを入力する入力ステップと、文書画像に付加する付加画像の印刷のための付加データを生成する生成ステップと、印刷データ中に特定の命令を検出するまでその印刷データを解釈する第1の解釈ステップと、印刷データ中に特定の命令を検出した後は、付加データを解釈する第2の解釈ステップと、第1の解釈ステップでの解釈結果と第2の解釈ステップでの解釈結果とに基づいて、付加画像が付加された文書画像を生成するステップとを含んでいる。
一方、本発明は、コンピュータに画像処理を実行させるプログラムとして捉えることもできる。その場合、本発明のプログラムは、コンピュータに、文書画像の印刷を指示する印刷データ中に特定の命令を検出するまでその印刷データを解釈する機能と、印刷データ中に特定の命令を検出した後は、文書画像に付加する付加画像の印刷のための付加データを解釈する機能とを実現させるためのものである。
本発明によれば、オリジナルの印刷データに手を加えることなく、付加的な情報の追加描画を効率的に行うことが可能となる。
以下、添付図面を参照して、本発明を実施するための最良の形態(以下、「実施の形態」という)について詳細に説明する。
[第1の実施の形態]
本実施の形態は、ホストコンピュータで作成された文書(オリジナルの文書)を印刷装置で印刷する際に、印刷装置側で、文書を印刷した日付と文書の印刷を指示したユーザ名とを追加描画するものである。
まず、本実施の形態における処理のイメージについて説明する。
図1は、本実施の形態における画像の具体例を示したものである。
このうち、図1(a)は、基本ページ画像101を示している。この基本ページ画像101は、ホストコンピュータで作成され、印刷装置での印刷が指示される文書画像であり、印刷装置側では何の加工も行われていないオリジナルの文書画像である。
また、図1(b)は、ページ加工画像102を示している。このページ加工画像102は、基本ページ画像101に対して施される加工処理を表した画像である。具体的には、ページ上部に、文書を印刷した日付を描画し、ページ下部に、文書を印刷した者の名前(ユーザ名)を描画するページ加工画像102が示されている。
更に、図1(c)は、加工済みページ画像103を示している。この加工済みページ画像103は、基本ページ画像101に対して、ページ加工画像102をマージした結果の画像である。
次に、基本ページ画像101を描画するためのPDLデータ(以下、「基本ページデータ」という)201、及び、ページ加工画像に対応するPDLデータ(以下、「ページ加工データ」という)202について説明する。
図2は、基本ページデータ201及びページ加工データ202を示したものである。
このうち、図2(a)は、基本ページデータ201を示している。
基本ページデータ201は、ジョブ開始命令で始まり、ジョブ終了命令で終わる。ジョブ開始命令とジョブ終了命令の間には、ページを表現するデータが含まれる。本実施の形態では、1ページ分のデータしか含めていないが、複数ページ分のデータを含めることも可能である。本実施の形態における1ページ分のPDLデータは、ページ開始命令で始まり、3つの文字描画命令及び1つのイメージ描画命令を含み、ページ出力命令で終わる。ページ開始命令とページ出力命令で囲まれた部分がページを記述した命令群である。ページ出力命令が現れた時点で、ページ開始命令以降の描画命令を1つのページに描画した結果が用紙に印刷される。
また、図2(b)は、ページ加工データ202を示している。
ページ加工データ202は、日付とユーザ名を描画するための2つの文字列描画命令、及び、文字列の背景を描画する2つの矩形描画命令から構成されている。尚、ページ加工データ202は、基本ページデータ201とは異なり、ジョブ開始命令、ジョブ終了命令、ページ開始命令、及び、ページ出力命令を含まない。
本実施の形態は、図1に示した基本ページ画像101とページ加工画像102とから、加工済みページ画像103を得る機能を実現させるためのものである。
図3は、本実施の形態が適用されるコンピュータシステムの構成を示している。
図示するように、このコンピュータシステムは、印刷装置300と、ホストコンピュータ311とを含んでいる。ホストコンピュータ311としては、PCが例示されるが、印刷装置300に対して印刷指示を送信可能なコンピュータであれば、如何なるものであってもよい。また、ホストコンピュータ311は、印刷指示と共に、プリンタドライバによって生成された基本ページデータ201(図2参照)と、印刷指示をしたユーザ名とを印刷装置300に対して送出する。一方、印刷装置300は、ホストコンピュータ311とネットワークを介して接続されており、ホストコンピュータ311が送信した印刷指示を、ネットワークを通じて受信する。
ここで、印刷装置300の内部構成について詳細に説明する。
図示するように、印刷装置300は、データ入力部312と、ページ加工データ生成部310と、入力データ記憶部301と、制御部302と、PDLデータ解釈部303とを含んでいる。また、中間データ生成部304と、中間データ記憶部305と、中間データ展開部306と、ラスタデータ記憶部307と、印刷制御部308と、印刷エンジン309とを含む。
データ入力部312は、ホストコンピュータ311から基本ページデータ201及び印刷を指示したユーザ名を受信し、基本ページデータ201は入力データ記憶部301に保存し、ユーザ名はページ加工データ生成部310に送る。また、制御部302に対し、PDLデータ解釈部303に対する各種制御を指示する。
ページ加工データ生成部310は、ユーザ名と印刷指示を受信した日付とを含んだページ加工データ202を作成し、入力データ記憶部301に保存する。
入力データ記憶部301は、データ入力部312が入力した基本ページデータ201と、ページ加工データ生成部310が生成したページ加工データ202とを記憶する。
制御部302は、PDLデータ解釈部303に対し、処理の中断及び再開の制御を指示する。また、PDLデータ解釈部303に対し、読込み先のデータの切替えを指示する。
PDLデータ解釈部303は、入力データ記憶部301に保存されている基本ページデータ201及びページ加工データ202を解釈し、解釈した結果を中間データ生成部304に送信する。また、制御部302の指示に従い、基本ページデータ201又はページ加工データ202のどちらからデータを読み込むかを判断する。更に、制御部302の指示に従い、処理の中断及び再開も行う。
中間データ生成部304は、PDLデータ解釈部303より送信された解釈結果を中間データに変換する。中間データとは、PDL形式の入力データと比較して、より抽象度の低い描画命令群である。
中間データ記憶部305は、中間データ生成部304によって生成された中間データを記憶する。
中間データ展開部306は、中間データ記憶部305に1ページ分の中間データが記憶されると、その1ページ分の中間データを1ライン毎にラスタデータに展開する。
ラスタデータ記憶部307は、中間データ展開部306によって生成されたラスタデータを記憶する。
印刷制御部308は、印刷エンジン309を起動し、ラスタデータ記憶部307に記憶されたラスタデータを印刷エンジン309に送信する。その際、ラスタデータを印刷エンジン309に適合するような色に変換する色変換処理や、多値で表現されたラスタデータを2値データに変換する中間調処理等を実行する。
印刷エンジン309は用紙にラスタデータを印刷する。この印刷エンジン309としては、電子写真方式を用いた印刷エンジンが例示されるが、その他の如何なる方式を採用した印刷エンジンであっても構わない。
尚、これらの機能は、ソフトウェアとハードウェア資源とが協働することにより実現される。即ち、データ入力部312、ページ加工データ生成部310、制御部302、PDLデータ解釈部303、中間データ生成部304、中間データ展開部306、印刷制御部308は、印刷装置300の図示しないCPUが、これらの機能を実現するプログラムを、例えばハードディスク等の外部記憶装置からメインメモリに読み込むことにより実現される。
また、入力データ記憶部301、中間データ記憶部305、ラスタデータ記憶部307は、半導体メモリ、磁気ディスク等の種々の記憶媒体を用いて実現することができる。
次に、本実施の形態の動作について説明する。
本実施の形態では、ホストコンピュータ311から基本ページデータ201及び印刷を指示したユーザ名が送られると、データ入力部312がこれらを受信する。そして、基本ページデータ201を入力データ記憶部301に記憶し、ユーザ名をページ加工データ生成部310に送る。これにより、ページ加工データ生成部310は、ユーザ名と印刷指示を受信した日付とを含んだページ加工データ202を生成し、入力データ記憶部301に記憶する。
このようにして基本ページデータ201及びページ加工データ202が入力データ記憶部301に保持されると、PDLデータ解釈部303の動作が開始する。
図4は、PDLデータ解釈部303の動作を示したフローチャートである。
処理が開始すると、PDLデータ解釈部303は、データの読込み先を判定する(ステップ402)。尚、データの読込み先は、後述するように、制御部302が設定している。
まず、ステップ402において読込み先が基本ページデータ201であると判定された場合について説明する。
この場合、PDLデータ解釈部303は、基本ページデータ201中に次に読み込むべき命令が存在するかどうかを判定する(ステップ403)。ここで、次に読み込むべき命令がないと判定されれば、処理を終了するが、次に読み込むべき命令があると判定されれば、その命令を読み込む(ステップ405)。そして、読み込んだ命令がページ出力命令であるかどうかを判定する(ステップ406)。
その結果、読み込んだ命令がページ出力命令であると判定された場合、PDLデータ解釈部303は、ページ出力命令を処理してよいかを制御部302に問い合わせる(ステップ407)。そして、この問い合わせに対する回答(問い合わせ結果)を制御部302から受信するまで、処理は中断する。その後、制御部302から回答を受信すると、PDLデータ解釈部303は、問い合わせ結果の内容を判定する(ステップ408)。ここで、判定結果が処理可能である場合、PDLデータ解釈部303は、中間データ生成部304にページ出力命令を送る(ステップ409)。また、判定結果が処理不可である場合、PDLデータ解釈部303は、ページ出力命令の読込みを取り消し、処理しなかったものとする(ステップ410)。そして、ステップ409、ステップ410の処理後は、いずれの場合もステップ402に戻り、次の命令の処理に移る。
一方、読み込んだ命令がページ出力命令でないと判定された場合、PDLデータ解釈部303は、中間データ生成部304に描画命令(解釈結果)を送り(ステップ413)、その後、ステップ402に戻る。
次に、ステップ402において読込み先がページ加工データ202であると判定された場合について説明する。
この場合、PDLデータ解釈部303は、ページ加工データ202中に次に読み込むべき命令が存在するかどうかを判定する(ステップ411)。ここで、次に読み込むべき命令があると判定されれば、その命令を読み込む(ステップ412)。そして、中間データ生成部304に描画命令(解釈結果)を送り(ステップ413)、その後、ステップ402に戻る。また、読み込むべき命令がないと判定されれば、「データなし」を制御部302に通知する(ステップ414)。そして、制御部302からの処理継続許可を待つ(ステップ415)。その後、制御部302から処理継続許可を受信したら、ステップ402に進み、次の命令の処理に移る。
以上により、PDLデータ解釈部303の動作の説明を終了する。
ところで、このPDLデータ解釈部303に対し、基本ページデータ201とページ加工データ202のいずれからデータを読み込むべきかを指示していたのは、制御部302であった。また、PDLデータ解釈部303がページ出力命令を検出して中断した基本ページデータ201の解釈処理を再開してよいかどうか、或いは、ページ加工データ202のデータがなくなった際に処理を継続してよいかの指示も、制御部302が行っていた。
そこで、次に、この制御部302の動作について説明する。
図5は、制御部302の動作を示したフローチャートである。
まず、制御部302は、PDLデータ解釈部303に対し、読込み先を基本ページデータ201に設定する(ステップ502)。図2のPDLデータを例にとると、図2(a)の基本ページデータ201が読込み先として設定される。そして、制御部302は、PDLデータ解釈部303に解釈開始を指示する(ステップ503)。尚、PDLデータ解釈部303は、この指示を受け、ステップ403以降の基本ページデータ201の解釈処理を行うことになる。
その後、制御部302は、PDLデータ解釈部303からのページ出力命令の処理可否問い合わせを待つ(ステップ504)。尚、PDLデータ解釈部303は、ページ出力命令を検知すると、ステップ407で制御部302に処理可否問い合わせを行い、制御部302からの返答が得られるまで処理を中断している。
このように、PDLデータ解釈部303から問い合わせが発生すると、制御部302は、未処理のページ加工データ202が存在するかどうかを判定する(ステップ505)。
その結果、未処理のページ加工データ202が存在すると判定された場合は、PDLデータ解釈部303に対し、読込み先をページ加工データ202に設定する(ステップ506)。図2のPDLデータを例にとると、図2(b)のページ加工データ202が読込み先として設定される。そして、PDLデータ解釈部303からのページ出力命令の処理可否問い合わせに対して「処理不可」を返す(ステップ507)。尚、PDLデータ解釈部303は、この回答を受信した時点で処理を再開する。但し、PDLデータ解釈部303は、ステップ410でページ出力命令の読込みを取り消し、ステップ402で読込み先がページ加工データ202と判定されるので、ステップ411以降のページ加工データ202の解釈処理を行うことになる。
その後、制御部302は、PDLデータ解釈部303から「データなし」通知を待つ(ステップ508)。尚、PDLデータ解釈部303は、ページ加工データ202を全て解釈し終わると、ステップ414で制御部302に「データなし」を通知する。
制御部302は、「データなし」通知を受信すると、PDLデータ解釈部303に対し、読込み先を基本ページデータ201に設定する(ステップ509)。そして、PDLデータ解釈部303に「処理継続許可」を送り(ステップ510)、ステップ504に戻る。
一方、未処理のページ加工データ202が存在しないと判定された場合は、PDLデータ解釈部303からのページ出力命令の処理可否問い合わせに対して「処理可能」を返す(ステップ511)。このような場合としては、例えば、元々ページ加工データ202が存在しない場合、即ち、オリジナルの文書を全く加工せずに印刷する場合がある。或いは、基本ページデータ201に対するページ加工が完了した場合もある。即ち、ページ加工が完了すると、ステップ505での判定が「No」となり、ステップ511を経て、処理は終了する。
以上により、制御部302の動作の説明を終了する。
このように、本実施の形態では、印刷データをラスタデータに変換するに当たり、印刷データの解釈時にページ出力命令を検知すると解釈を一時停止し、解釈対象のデータの読込み先を切り替えるようにした。これにより、オリジナルの印刷データに手を加えることなく、ページに対する情報の追加描画を効率的に行えるようになった。即ち、一度作成したPDLデータ内のページ出力命令の直前に情報の描画命令を挿入するには、一度PDLデータを解釈し、命令の挿入のためにPDLデータを移動又はコピーする手法も考えられるが、本実施の形態によれば、かかる手法よりも格段に効率的な手法が得られる。
尚、本実施の形態では、ページ出力命令の直前に情報の描画命令を挿入することとしたため、検出対象の命令をページ出力命令としたが、これに限るものではない。1ページ分のPDLデータの先頭に付加的な情報の描画命令を挿入するものとすれば、ページ開始命令の次の命令を検出対象の命令としてもよい。また、図2の例において、ページ出力命令は、ページの終了を指示する命令とページの出力を指示する命令とを兼ねた命令となっているため、本実施の形態では、ページ出力命令を検出対象の命令としたが、ページの終了を指示する命令とページの出力を指示する命令とが別々の命令である場合は、ページの終了を指示する命令を検出対象の命令としてもよい。
[第2の実施の形態]
本実施の形態は、ホストコンピュータで作成された文書(オリジナルの文書)を印刷装置で印刷する際に、バナーページ(例えば、印刷開始ページや印刷終了ページ)を文書の前後に挿入するものである。
まず、本実施の形態における処理のイメージについて説明する。
図6は、本実施の形態におけるバナーページ画像の具体例を示したものである。尚、本実施の形態において、基本ページ画像は任意のページ画像でよいが、例えば、図1(a)に示した基本ページ画像101を用いるものとする。
このうち、図6(a)は、印刷開始ページ画像601を示している。この印刷開始ページ画像601は、基本ページ画像101を印刷する前に印刷される画像である。具体的には、ページ上部に、印刷を開始した日付と時刻を描画し、その下に、ユーザ名(印刷者の名前)を描画し、更にその下に、「Start」という文字列を描画したものとなっている。
また、図6(b)は、印刷終了ページ画像602を示している。この印刷終了ページ画像602は、基本ページ画像101を印刷した後に印刷される画像である。具体的には、ページ上部に、印刷を終了した日付と時刻を描画し、その下に、ユーザ名(印刷者の名前)を描画し、更にその下に、「End」という文字列を描画したものとなっている。
尚、本実施の形態では、基本ページ画像101には加工処理は施されない。
次に、バナーページ画像を描画するためのPDLデータについて説明する。
図7は、印刷開始ページ画像601を描画するためのPDLデータ(以下、「印刷開始ページデータ」という)701、及び、印刷終了ページ画像602を描画するためのPDLデータ(以下、「印刷終了ページデータ」という)702を示したものである。
このうち、図7(a)は、印刷開始ページデータ701を示している。
印刷開始ページデータ701は、ページ開始命令と、ページ出力命令と、印刷を開始した日付及び時刻、ユーザ名、文字列「Start」を印刷するための3つの文字列描画命令と、文字列の背景を描画する2つの矩形描画命令とから構成されている。
また、図7(b)は、印刷終了ページデータ702を示している。
印刷終了ページデータ702は、ページ開始命令と、ページ出力命令と、印刷を終了した日付及び時刻、ユーザ名、文字列「End」を印刷するための3つの文字列描画命令と、文字列の背景を描画する2つの矩形描画命令とから構成されている。
ところで、印刷開始ページデータ701及び印刷終了ページデータ702は、ページ開始命令とページ出力命令とを含んでいることから、独立したページを表現していることが分かる。但し、ジョブ開始命令及びジョブ終了命令は含んでいない。尚、印刷開始ページデータ701及び印刷終了ページデータ702において、文字列描画命令の引数の文字列内に、「日付取得()」及び「時刻取得()」という関数が使われている。これは、PDLデータの解釈中に日付と時刻を取得する命令である。
本実施の形態は、図6に示した印刷開始ページ画像601及び印刷終了ページ画像602を、基本ページ画像101の前後に挿入する機能を実現させるためのものである。
図8は、本実施の形態が適用されるコンピュータシステムの構成を示している。
図示するように、このコンピュータシステムは、印刷装置800と、ホストコンピュータ811とを含んでいる。ホストコンピュータ811としては、PCが例示されるが、印刷装置800に対して印刷指示を送信可能なコンピュータであれば、如何なるものであってもよい。また、ホストコンピュータ811は、印刷指示と共に、プリンタドライバによって生成された基本ページデータ201(図2参照)と、印刷指示をしたユーザ名とを印刷装置800に対して送出する。一方、印刷装置800は、ホストコンピュータ811とネットワークを介して接続されており、ホストコンピュータ811が送信した印刷指示を、ネットワークを通じて受信する。
ここで、印刷装置800の内部構成について詳細に説明する。
図示するように、印刷装置800は、データ入力部812と、バナーページデータ生成部810と、入力データ記憶部801と、制御部802と、PDLデータ解釈部803とを含んでいる。また、中間データ生成部804と、中間データ記憶部805と、中間データ展開部806と、ラスタデータ記憶部807と、印刷制御部808と、印刷エンジン809とを含む。
データ入力部812は、ホストコンピュータ811から基本ページデータ201及び印刷を指示したユーザ名を受信し、基本ページデータ201は入力データ記憶部801に保存し、ユーザ名はバナーページデータ生成部810に送る。また、制御部802に対し、PDLデータ解釈部803に対する各種制御を指示する。
バナーページデータ生成部810は、ユーザ名と印刷開始時刻とを含んだ印刷開始ページデータ701、及び、ユーザ名と印刷終了時刻とを含んだ印刷終了ページデータ702を生成し、入力データ記憶部801に保存する。
入力データ記憶部801は、データ入力部812が入力した基本ページデータ201と、バナーページデータ生成部810が生成した印刷開始ページデータ701及び印刷終了ページデータ702とを記憶する。
制御部802は、PDLデータ解釈部803に対し、処理の中断及び再開の制御を指示する。また、PDLデータ解釈部803に対し、読込み先のデータの切替えを指示する。
PDLデータ解釈部803は、入力データ記憶部801に保存されている基本ページデータ201、印刷開始ページデータ701、印刷終了ページデータ702を解釈し、解釈した結果を中間データ生成部804に送信する。また、制御部802の指示に従い、基本ページデータ201、印刷開始ページデータ701、或いは、印刷終了ページデータ702のどちらからデータを読み込むかを判断する。更に、制御部802の指示に従い、処理の中断及び再開も行う。
一方、中間データ生成部804、中間データ記憶部805、中間データ展開部806、ラスタデータ記憶部807、印刷制御部808、及び、印刷エンジン809については、それぞれ、第1の実施の形態における中間データ生成部304、中間データ記憶部305、中間データ展開部306、ラスタデータ記憶部307、印刷制御部308、及び、印刷エンジン309と同様であるため、ここでの詳しい説明は省略する。
尚、これらの機能は、ソフトウェアとハードウェア資源とが協働することにより実現される。即ち、データ入力部812、バナーページデータ生成部810、制御部802、PDLデータ解釈部803、中間データ生成部804、中間データ展開部806、印刷制御部808は、印刷装置800の図示しないCPUが、これらの機能を実現するプログラムを、例えばハードディスク等の外部記憶装置からメインメモリに読み込むことにより実現される。
また、入力データ記憶部801、中間データ記憶部805、ラスタデータ記憶部807は、半導体メモリ、磁気ディスク等の種々の記憶媒体を用いて実現することができる。
次に、本実施の形態の動作について説明する。
本実施の形態では、ホストコンピュータ811から基本ページデータ201及び印刷を指示したユーザ名が送られると、データ入力部812がこれらを受信する。そして、基本ページデータ201を入力データ記憶部801に記憶し、ユーザ名をバナーページデータ生成部810に送る。これにより、バナーページデータ生成部810は、ユーザ名と印刷開始時刻とを含んだ印刷開始ページデータ701、及び、ユーザ名と印刷終了時刻とを含んだ印刷終了ページデータ702を生成し、入力データ記憶部801に記憶する。
このようにして基本ページデータ201、印刷開始ページデータ701、印刷終了ページデータ702が入力データ記憶部801に保持されると、PDLデータ解釈部803の動作が開始する。
図9は、PDLデータ解釈部803の動作を示したフローチャートである。
処理が開始すると、PDLデータ解釈部803は、データの読込み先を判定する(ステップ902)。尚、データの読込み先は、後述するように、制御部802が設定している。
まず、ステップ902において読込み先が基本ページデータ201であると判定された場合について説明する。
この場合、PDLデータ解釈部803は、基本ページデータ201中に次に読み込むべき命令が存在するかどうかを判定する(ステップ903)。ここで、次に読み込むべき命令がないと判定されれば、処理を終了するが、次に読み込むべき命令があると判定されれば、その命令を読み込む(ステップ905)。そして、読み込んだ命令がジョブ開始命令の次の命令(以下、「ジョブ開始後命令」という)又はジョブ終了命令であるかどうかを判定する(ステップ906)。
その結果、読み込んだ命令がジョブ開始後命令又はジョブ終了命令であると判定された場合、PDLデータ解釈部803は、ジョブ開始後命令又はジョブ終了命令を処理してよいかを制御部802に問い合わせる(ステップ907)。そして、この問い合わせに対する回答(問い合わせ結果)を制御部802から受信するまで、処理は中断する。その後、制御部802から回答を受信すると、PDLデータ解釈部803は、問い合わせ結果の内容を判定する(ステップ908)。ここで、判定結果が処理可能である場合、PDLデータ解釈部803は、中間データ生成部804にジョブ開始後命令又はジョブ終了命令を送る(ステップ909)。また、判定結果が処理不可である場合、PDLデータ解釈部803は、ジョブ開始後命令又はジョブ終了命令の読込みを取り消し、処理しなかったものとする(ステップ910)。そして、ステップ909、ステップ910の処理後は、いずれの場合もステップ902に戻り、次の命令の処理に移る。
一方、読み込んだ命令がジョブ開始後命令又はジョブ終了命令でないと判定された場合、PDLデータ解釈部803は、中間データ生成部804に描画命令(解釈結果)を送り(ステップ913)、その後、ステップ902に戻る。
次に、ステップ902において読込み先が印刷開始ページデータ701又は印刷終了ページデータ702であると判定された場合について説明する。
この場合、PDLデータ解釈部803は、印刷開始ページデータ701又は印刷終了ページデータ702中に次に読み込むべき命令が存在するかどうかを判定する(ステップ911)。ここで、次に読み込むべき命令があると判定されれば、その命令を読み込む(ステップ912)。そして、中間データ生成部804に描画命令(解釈結果)を送り(ステップ913)、その後、ステップ902に戻る。また、読み込むべき命令がないと判定されれば、「データなし」を制御部802に通知する(ステップ914)。そして、制御部802からの処理継続許可を待つ(ステップ915)。その後、制御部802から処理継続許可を受信したら、ステップ902に進み、次の命令の処理に移る。
以上により、PDLデータ解釈部803の動作の説明を終了する。
ところで、このPDLデータ解釈部803に対し、基本ページデータ201、印刷開始ページデータ701、印刷終了ページデータ702のいずれからデータを読み込むべきかを指示していたのは、制御部802であった。また、PDLデータ解釈部803がジョブ開始後命令又はジョブ終了命令を検出して中断した基本ページデータ201の解釈処理を再開してよいかどうか、或いは、印刷開始ページデータ701又は印刷終了ページデータ702のデータがなくなった際に処理を継続してよいかの指示も、制御部802が行っていた。
そこで、次に、この制御部802の動作について説明する。
図10は、制御部802の動作を示したフローチャートである。
まず、制御部802は、PDLデータ解釈部803に対し、読込み先を基本ページデータ201に設定する(ステップ1002)。図2のPDLデータを例にとると、図2(a)の基本ページデータ201が読込み先として設定される。そして、制御部802は、PDLデータ解釈部803に解釈開始を指示する(ステップ1003)。尚、PDLデータ解釈部803は、この指示を受け、ステップ903以降の基本ページデータ201の解釈処理を行うことになる。
その後、制御部802は、PDLデータ解釈部803からのジョブ開始後命令の処理可否問い合わせを待つ(ステップ1004)。尚、PDLデータ解釈部803は、ジョブ開始後命令を検知した時点で制御部802に処理可否問い合わせを行い、制御部802からの返答が得られるまで処理を中断している。
このように、PDLデータ解釈部803から問い合わせが発生すると、制御部802は、未処理の印刷開始ページデータ701が存在するかどうかを判定する(ステップ1005)。
その結果、未処理の印刷開始ページデータ701が存在すると判定された場合は、PDLデータ解釈部803に対し、読込み先を印刷開始ページデータ701に設定する(ステップ1006)。図7のPDLデータを例にとると、図7(a)の印刷開始ページデータ701が読込み先として設定される。そして、PDLデータ解釈部803からのジョブ開始後命令の処理可否問い合わせに対して「処理不可」を返す(ステップ1007)。尚、PDLデータ解釈部803は、この回答を受信した時点で処理を再開する。但し、PDLデータ解釈部803は、ステップ910でジョブ開始後命令の読込みを取り消し、ステップ902で読込み先が印刷開始ページデータ701と判定されるので、ステップ911以降の印刷開始ページデータ701の解釈処理を行うことになる。
その後、制御部802は、PDLデータ解釈部803から「データなし」通知を待つ(ステップ1008)。尚、PDLデータ解釈部803は、印刷開始ページデータ701を全て解釈し終わると、ステップ914で制御部802に「データなし」を通知する。
制御部802は、「データなし」通知を受信すると、PDLデータ解釈部803に対し、読込み先を基本ページデータ201に設定する(ステップ1009)。そして、PDLデータ解釈部803に「処理継続許可」を送り(ステップ1010)、ステップ1004に戻る。
一方、未処理の印刷開始ページデータ701が存在しないと判定された場合は、PDLデータ解釈部803からのジョブ開始後命令の処理可否問い合わせに対して「処理可能」を返す(ステップ1011)。このような場合としては、例えば、元々印刷開始ページデータ701が存在しない場合、即ち、オリジナルの文書をバナーページを挿入せずに印刷する場合がある。或いは、印刷開始ページデータ701の挿入が完了した場合もある。
その後、制御部802は、PDLデータ解釈部803からのジョブ終了命令の処理可否問い合わせを待つ(ステップ1012)。尚、PDLデータ解釈部803は、ジョブ終了命令を検知すると、ステップ907で制御部802に処理可否問い合わせを行い、制御部802からの返答が得られるまで処理を中断している。
このように、PDLデータ解釈部803から問い合わせが発生すると、制御部802は、未処理の印刷終了ページデータ702が存在するかどうかを判定する(ステップ1013)。
その結果、未処理の印刷終了ページデータ702が存在すると判定された場合は、PDLデータ解釈部803に対し、読込み先を印刷終了ページデータ702に設定する(ステップ1014)。図7のPDLデータを例にとると、図7(b)の印刷終了ページデータ702が読込み先として設定される。そして、PDLデータ解釈部803からのジョブ終了命令の処理可否問い合わせに対して「処理不可」を返す(ステップ1015)。尚、PDLデータ解釈部803は、この回答を受信した時点で処理を再開する。但し、PDLデータ解釈部803は、ステップ910でジョブ終了命令の読込みを取り消し、ステップ902で読込み先が印刷終了ページデータ702と判定されるので、ステップ911以降の印刷終了ページデータ702の解釈処理を行うことになる。
その後、制御部802は、PDLデータ解釈部803から「データなし」通知を待つ(ステップ1008)。尚、PDLデータ解釈部803は、印刷終了ページデータ702を全て解釈し終わると、ステップ914で制御部802に「データなし」を通知する。
制御部802は、「データなし」通知を受信すると、PDLデータ解釈部803に対し、読込み先を基本ページデータ201に設定する(ステップ1009)。そして、PDLデータ解釈部803に「処理継続許可」を送り(ステップ1010)、ステップ1004に戻る。
一方、未処理の印刷終了ページデータ702が存在しないと判定された場合は、PDLデータ解釈部803からのジョブ終了命令の処理可否問い合わせに対して「処理可能」を返す(ステップ1016)。このような場合としては、例えば、元々印刷終了ページデータ702が存在しない場合、即ち、オリジナルの文書をバナーページを挿入せずに印刷する場合がある。或いは、印刷終了ページデータ702の挿入が完了した場合もある。即ち、印刷終了ページデータ702の挿入が完了すると、ステップ1009、1010でPDLデータ解釈部803に対し基本ページデータ201の命令を処理させることにより、処理待ち状態になっていたジョブ終了命令が処理される。そして、ステップ1005での判定、及び、ステップ1013での判定が共に「No」となり、ステップ1016を経て、処理は終了する。
以上により、制御部802の動作の説明を終了する。
このように、本実施の形態では、印刷データをラスタデータに変換するに当たり、印刷データの解釈時にジョブ開始後命令又はジョブ終了命令を検知すると解釈を一時停止し、解釈対象のデータの読込み先を切り替えるようにした。これにより、オリジナルの印刷データに手を加えることなく、バナーページの追加を効率的に行えるようになった。即ち、一度作成したPDLデータの前後にバナーページを描画する命令を挿入するには、一度PDLデータを解釈し、命令の挿入のためにPDLデータを移動又はコピーする手法も考えられるが、本実施の形態によれば、かかる手法よりも格段に効率的な手法が得られる。
[第3の実施の形態]
本実施の形態は、基本ページデータ201の任意の命令の前後に付加的なPDLデータを挿入するものである。即ち、付加的なPDLデータを挿入する基本ページデータ201中の位置として、第1の実施の形態では、ページ出力命令の直前を採用し、第2の実施の形態では、ジョブ開始後命令及びジョブ終了命令の直前を採用したが、ここではこのような位置には限らないものとする。
このように任意の位置へPDLデータを挿入するためには、例えば、図3のPDLデータ解釈部303に対し、処理を中断すべき条件を登録する機構を設ければよい。この場合、PDLデータ解釈部303は、中断条件を検出した時点で、制御部302に中断条件を通知し、処理継続可能かどうかを問い合わせる。制御部302は、中断条件を解析し、付加的なPDLデータを追加すべきと判定すれば、PDLデータ解釈部803に対して読込み先として付加的なPDLデータを設定し、「処理不可」を通知すればよい。
ここで、中断条件としては、命令の種類を登録することもできるし、命令の種類と引数とを組み合わせたものを登録することもできる。例えば、全ての基本ページ画像101の前に白紙を挿入したいときは、ページ開始命令という命令の種類を中断条件として登録すればよい。一方、特定のサイズの基本ページ画像101の前だけに白紙を挿入したいときは、ページ開始命令とその命令の引数である用紙サイズを中断条件として登録すればよい。
尚、第1から第3の実施の形態では、基本ページデータ201の解釈時に特定の命令を検出すると、その命令を解釈せずに、付加的なPDLデータを解釈するようにした。しかしながら、特定の命令を検出した場合に、その命令を解釈してから、付加的なPDLデータを解釈するような構成としてもよい。このような構成において、第1の実施の形態のようにページ出力命令の直前に付加的なPDLデータを挿入する場合、ページ出力命令の直前の命令が検出対象の命令となる。一方、第2の実施の形態のようにジョブ開始後命令及びジョブ終了命令の直前に付加的なPDLデータを挿入する場合、ジョブ開始命令、及び、ジョブ終了命令の直前の命令が検出対象の命令となる。
また、第1から第3の実施の形態では、文書の印刷を指示する印刷データとして、PDLデータを例示したが、ホストコンピュータから印刷装置へ送られる文書データを印刷データとしてもよい。
本発明の第1の実施の形態で処理される画像の例を示した図である。 本発明の第1の実施の形態で処理されるPDLデータの例を示した図である。 本発明の第1の実施の形態が適用されるコンピュータシステムの構成を示した図である。 本発明の第1の実施の形態におけるPDLデータ解釈部の動作例を示したフローチャートである。 本発明の第1の実施の形態における制御部の動作例を示したフローチャートである。 本発明の第2の実施の形態で処理される画像の例を示した図である。 本発明の第2の実施の形態で処理されるPDLデータの例を示した図である。 本発明の第2の実施の形態が適用されるコンピュータシステムの構成を示した図である。 本発明の第2の実施の形態におけるPDLデータ解釈部の動作例を示したフローチャートである。 本発明の第2の実施の形態における制御部の動作例を示したフローチャートである。
符号の説明
300,800…印刷装置、301,801…入力データ記憶部、302,802…制御部、303,803…PDLデータ解釈部、304,804…中間データ生成部、305,805…中間データ記憶部、306,806…中間データ展開部、307,807…ラスタデータ記憶部、308,808…印刷制御部、309,809…印刷エンジン、310…ページ加工データ生成部、311,811…ホストコンピュータ、312,812…データ入力部、810…バナーページデータ生成部

Claims (14)

  1. 文書画像の印刷を指示する印刷データを入力する入力手段と、
    前記文書画像に付加する付加画像の印刷のための付加データを格納する格納手段と、
    前記印刷データを解釈し、当該印刷データ中に特定の命令を検出すると、当該印刷データの解釈を中断し、前記付加データを解釈することにより、前記付加画像が付加された前記文書画像を生成する解釈手段と
    を備えたことを特徴とする画像処理装置。
  2. 前記解釈手段による前記印刷データの解釈の中断に応じて、前記付加データを解釈するよう当該解釈手段に指示する制御手段を更に備えたことを特徴とする請求項1記載の画像処理装置。
  3. 前記特定の命令は、ページの開始を指示する命令、又は、ページの終了を指示する命令であることを特徴とする請求項1記載の画像処理装置。
  4. 前記特定の命令は、印刷ジョブの開始を指示する命令、又は、印刷ジョブの終了を指示する命令であることを特徴とする請求項1記載の画像処理装置。
  5. 前記特定の命令は、前記印刷データの解釈の中断点として機能する命令として予め登録された命令であることを特徴とする請求項1記載の画像処理装置。
  6. 前記解釈手段は、前記印刷データを読み込んで解釈し、前記特定の命令を読み込むと、当該印刷データの解釈を中断し、当該特定の命令の読込みを取り消すことを特徴とする請求項1記載の画像処理装置。
  7. 文書画像の印刷を指示する印刷データを入力する入力ステップと、
    前記文書画像に付加する付加画像の印刷のための付加データを生成する生成ステップと、
    前記印刷データ中に特定の命令を検出するまで当該印刷データを解釈する第1の解釈ステップと、
    前記印刷データ中に前記特定の命令を検出した後は、前記付加データを解釈する第2の解釈ステップと、
    前記第1の解釈ステップでの解釈結果と前記第2の解釈ステップでの解釈結果とに基づいて、前記付加画像が付加された前記文書画像を生成するステップと
    を含むことを特徴とする画像処理方法。
  8. 前記特定の命令は、ページの開始を指示する命令、又は、ページの終了を指示する命令であることを特徴とする請求項7記載の画像処理方法。
  9. 前記特定の命令は、印刷ジョブの開始を指示する命令、又は、印刷ジョブの終了を指示する命令であることを特徴とする請求項7記載の画像処理方法。
  10. 前記特定の命令は、前記印刷データの解釈の中断点として機能する命令として予め登録された命令であることを特徴とする請求項7記載の画像処理方法。
  11. コンピュータに、
    文書画像の印刷を指示する印刷データ中に特定の命令を検出するまで当該印刷データを解釈する機能と、
    前記印刷データ中に前記特定の命令を検出した後は、前記文書画像に付加する付加画像の印刷のための付加データを解釈する機能と
    を実現させるためのプログラム。
  12. 前記特定の命令は、ページの開始を指示する命令、又は、ページの終了を指示する命令であることを特徴とする請求項11記載のプログラム。
  13. 前記特定の命令は、印刷ジョブの開始を指示する命令、又は、印刷ジョブの終了を指示する命令であることを特徴とする請求項11記載のプログラム。
  14. 前記特定の命令は、前記印刷データの解釈の中断点として機能する命令として予め登録された命令であることを特徴とする請求項11記載のプログラム。
JP2006035610A 2006-02-13 2006-02-13 画像処理装置、画像処理方法、及びプログラム Expired - Fee Related JP4706495B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006035610A JP4706495B2 (ja) 2006-02-13 2006-02-13 画像処理装置、画像処理方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006035610A JP4706495B2 (ja) 2006-02-13 2006-02-13 画像処理装置、画像処理方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2007215135A true JP2007215135A (ja) 2007-08-23
JP4706495B2 JP4706495B2 (ja) 2011-06-22

Family

ID=38493134

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006035610A Expired - Fee Related JP4706495B2 (ja) 2006-02-13 2006-02-13 画像処理装置、画像処理方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP4706495B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015208968A (ja) * 2014-04-30 2015-11-24 理想科学工業株式会社 画像処理装置、及び、プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11170655A (ja) * 1997-12-12 1999-06-29 Canon Inc 画像出力装置及び方法
JP2000216986A (ja) * 1999-01-26 2000-08-04 Canon Inc 出力デ―タ作成装置、出力デ―タ処理装置、デ―タ処理システム、デ―タ処理方法及び記憶媒体
JP2002171400A (ja) * 2000-05-10 2002-06-14 Fuji Xerox Co Ltd 画像処理装置
JP2002248829A (ja) * 2001-02-23 2002-09-03 Fuji Xerox Co Ltd 画像処理装置および画像処理プログラムを記録した記憶媒体

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11170655A (ja) * 1997-12-12 1999-06-29 Canon Inc 画像出力装置及び方法
JP2000216986A (ja) * 1999-01-26 2000-08-04 Canon Inc 出力デ―タ作成装置、出力デ―タ処理装置、デ―タ処理システム、デ―タ処理方法及び記憶媒体
JP2002171400A (ja) * 2000-05-10 2002-06-14 Fuji Xerox Co Ltd 画像処理装置
JP2002248829A (ja) * 2001-02-23 2002-09-03 Fuji Xerox Co Ltd 画像処理装置および画像処理プログラムを記録した記憶媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015208968A (ja) * 2014-04-30 2015-11-24 理想科学工業株式会社 画像処理装置、及び、プログラム

Also Published As

Publication number Publication date
JP4706495B2 (ja) 2011-06-22

Similar Documents

Publication Publication Date Title
US6894800B2 (en) Information processing apparatus and information display method for displaying job information relating to an output job
US8472043B2 (en) Information processing apparatus and its control method for managing distributed processing
JP2003216361A (ja) 印刷システム及び印刷装置
JP3907362B2 (ja) 印刷制御方法及び装置および印刷システム
JP3962606B2 (ja) 印刷命令生成装置及び方法、印刷装置及びその制御方法、情報処理装置及び印刷システム
JP2007329919A (ja) 画像形成装置およびその制御方法
JP2004157982A (ja) プリントシステム、情報処理装置、印刷制御方法、コンピュータプログラム、及びコンピュータ読み取り可能な記憶媒体
US6804028B1 (en) Image processing apparatus and method, and storage medium storing computer-readable program
JP2006155308A (ja) 画像形成装置
JP4577907B2 (ja) 画像処理装置、画像形成装置、及び印刷システム
JP4706495B2 (ja) 画像処理装置、画像処理方法、及びプログラム
US8259313B2 (en) Image processing apparatus, method, and computer-readable medium storing the program thereof
JP4564732B2 (ja) 印刷制御装置、印刷制御方法、プリントシステム、プログラム
JP4147928B2 (ja) 画像形成に関する制御装置
JP4706884B2 (ja) 画像処理装置、画像処理プログラムおよび印刷装置
JP2002248829A (ja) 画像処理装置および画像処理プログラムを記録した記憶媒体
JP2010105191A (ja) 画像処理装置
JP2007073005A (ja) ページ記述言語データ解釈装置
JP4132634B2 (ja) 文書印刷処理システム及びそのプログラムを記録した記録媒体
JP3284457B2 (ja) プリンタ
JP5104446B2 (ja) 印刷制御装置、プログラム、及びシステム
JP4399701B2 (ja) 画像形成装置及び画像形成方法
JP4290711B2 (ja) 印刷装置
JP2000263873A (ja) 印刷方法及び装置並びに記憶媒体
JP2007182021A (ja) 画像保存装置、画像保存方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081225

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100924

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100928

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101214

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110125

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110215

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110228

LAPS Cancellation because of no payment of annual fees