以下に本発明の実施の形態について図面を参照しながら詳細に説明する。
(実施形態1)
図1は、本実施形態1の印刷システム100の構成例、及び、印刷システム100を構成する印刷装置10の構成例を示す機能ブロック図である。印刷システム100は、図1に示すように、画像処理装置である一又は複数の印刷装置10と、印刷ジョブをユーザの指示に従って出力する一又は複数の情報端末装置20とを含み、印刷装置10と情報端末装置20は、ネットワークNWを介して相互に通信可能に接続されている。
本実施形態1における印刷装置10は、情報端末装置20により出力される印刷ジョブを処理して、白紙判定(詳しくは後述)の結果、白紙であると判定されたページ以外のページを紙などの印刷媒体上に印刷して出力する装置である。本実施形態1における印刷装置10は、図1に示すように、通信部11と、記憶部12と、表示部13と、操作部14と、センサ15と、プリンタ部16と、制御部17と、を備えて構成されている。
通信部11は、通信モジュールなどで構成され、ネットワークNWを介して、情報端末装置20との間で通信を行う。例えば、通信部11は、情報端末装置20により出力される印刷ジョブを受信する。
記憶部12は、RAM(Random Access Memory)、ROM(Read Only Memory)、不揮発性メモリなどで構成され、制御部17を構成するCPU(Central Processing Unit)のワークエリア、印刷装置10全体を制御するための動作プログラムなどの各種プログラムを格納するプログラムエリア、白紙判定済みの各ページの描画情報などの各種データを格納するデータエリアとして機能する。
また、記憶部12は、図1に示すように、除外情報記憶部12aと、テーブル記憶部12bとして機能する。除外情報記憶部12aは、特定処理部17d(詳しくは後述)により特定された除外情報(詳しくは後述)を格納するための記憶部である。テーブル記憶部12bは、テーブル類を格納する記憶部であり、本実施形態1においては、ページ管理テーブルT1を記憶している。
ここで、図2を参照して、本実施形態1におけるページ管理テーブルT1について説明する。図2は、本実施形態1におけるページ管理テーブルT1の構成例を示す図である。
本実施形態1におけるページ管理テーブルT1は、テーブル管理部17c(詳しくは後述)により管理され、例えば、RIP処理部17f(詳しくは後述)が処理対象の印刷ジョブをRIP(Raster Image Processor)処理する際に参照されるテーブルであり、図2に示すように、「ページ番号」毎に、「処理対象フラグ」と「白紙フラグ」とが対応付けられているテーブルである。
「ページ番号」は、処理対象の原稿データにおける物理的なページの順番を表す番号である。つまり、ユーザにより設定されているページ番号とは異なるものである。「処理対象フラグ」は、対応するページ番号のページが白紙判定の対象になったか否かを示すフラグである。本実施形態1においては、フラグ値“0”は処理対象となっていないことを示し、フラグ値“1”は、処置対象となったことを示している。なお、処理対象フラグの初期値は、“0”である。
「白紙フラグ」は、対応するページ番号のページが白紙であるか否かを示すフラグであり、白紙判定に基づいて、設定される。本実施形態1においては、フラグ値“0”は、白紙ではないことを示し、フラグ値“1”は、白紙であることを示している。なお、白紙フラグの初期値は、“0”である。
図1に戻り、表示部13は、LCD(Liquid Crystal Display)や有機EL(Electro-Luminescence)などの表示装置などで構成され、例えば、画像や各種のメッセージや各種機能ボタンなどを表示画面上に表示する。
操作部14は、テンキ−や表示部13の表示画面上に表示されるタッチパネルなどで構成され、ユーザは、操作部14を操作して、印刷装置10への指示を入力することで、所望の処理を実行させることが可能である。
センサ15は、色彩センサなどで構成され、例えば、給紙する印刷用紙を積載するための給紙トレイ内に配置され、積載されている印刷用紙の色(以下、用紙色という)を測定し、測定結果を、用紙色特定部17b(詳しくは後述)へ出力する。
プリンタ部16は、プリンタエンジンなどで構成され、RIP処理部17fによりラスタデータが生成されると、プリンタ部16は、生成されたラスタデータに基づいて、印刷媒体に印刷し出力する。
制御部17は、CPUなどで構成され、記憶部12のプログラムエリアに格納されている動作プログラムを実行して、図1に示すように、判定部17aと、用紙色特定部17bと、テーブル管理部17cと、特定処理部17dと、白紙判定部17eと、RIP処理部17fとしての機能を実現すると共に、印刷装置10全体を制御する制御処理や詳しくは後述の白紙判定処理などの処理を実行する。
判定部17aは、印刷ジョブを受信したか否かを判定する。また、判定部17aは、未処理のページが有るか否かを判定する。より具体的には、判定部17aは、ページ管理テーブルT1の「処理対象フラグ」欄を検索して、フラグ値が“0”のエントリが有るか否かを判定することで、未処理のページが有るか否かを判定する。つまり、判定部17aは、処理対象フラグのフラグ値が“0”のエントリが有れば、未処理のページがあると判定し、無ければ、未処理のページは無いと判定する。
用紙色特定部17bは、センサ15を制御し、用紙色を測定させ、測定結果を出力させる。そして、用紙色特定部17bは 、センサ15により出力された測定結果に基づいて、用紙色を特定する。
テーブル管理部17cは、ページ管理テーブルT1の管理を行う。より具体的には、テーブル管理部17cは、印刷ジョブを受信すると、ページ管理テーブルT1を初期化する。そして、テーブル管理部17cは 受信した印刷ジョブを解析し、処理対象の原稿データのページ数分のエントリを登録する。また、テーブル管理部17cは、特定処理部17dにより未処理のページに含まれるオブジェクトの描画命令(以下、ページの描画情報ともいう)が取得されると、取得されたページに対応する処理対象フラグのフラグ値を“1”にセットする。また、テーブル管理部17cは、白紙判定部17eにより処理対象のページが白紙であると判定されると、白紙であると判定されたページに対応する白紙フラグのフラグ値を“1”にセットする。
特定処理部17dは、ページに含まれる各オブジェクトの描画命令に基づいて、処理対象のページにおける除外情報を特定する処理を行う。ここで、除外情報は、白紙判定の対象から除外するオブジェクトを示す情報であり、本実施形態1における除外情報は、直前ページとの描画命令の積集合に含まれる描画命令に対応するオブジェクトを示す情報とする。このように、積集合に含まれる描画命令に対応するオブジェクトを示す情報を除外情報とするのは、積集合に含まれる描画命令に対応するオブジェクトは、ヘッダやフッタなどのフォームに属するオブジェクトである可能性が極めて高いからである。
より具体的には、特定処理部17dは、ページ管理テーブルT1の「処理対象フラグ」欄を検索して、未処理のページの内でページ番号が最小のページを特定する。そして、特定処理部17dは、受信した印刷ジョブを解析し、特定した未処理のページの描画情報を取得する。そして、特定した未処理のページが最初のページ(ページ1)以外である場合には、特定処理部17dは 直前ページとの描画命令の積集合を算出して、除外情報を特定する。
そして、算出した積集合が空集合でなく、除外情報記憶部12aに除外情報が記憶されている場合には、特定処理部17dは、記憶されている除外情報と比較し、異なる場合には、除外情報記憶部12aに記憶されている除外情報を、特定した除外情報で更新する。一方、算出した積集合が空集合でなく、除外情報記憶部12aに除外情報が記憶されていない場合には、特定処理部17dは、特定した除外情報を除外情報記憶部12aに記憶する。
例えば、図3を参照して、ページ3が処理対象のページだとする。この場合、直前ページであるページ2に含まれているオブジェクトはオブジェクトOB4〜OB9であり、ページ3に含まれるオブジェクトはオブジェクトOB4〜OB8である。したがって、この場合には、特定処理部17dは、オブジェクトOB4〜OB8を示す情報を、ページ3における除外情報として特定する。そして、図3に示すように、ページ1とページ2とのオブジェクトの積集合は空集合であり、除外情報記憶部12aに除外情報が記憶されていないことから、特定処理部17dは、特定した除外情報を除外情報記憶部12aに記憶する。ここで、図3は、本実施形態1における処理対象の原稿データの具体例である。
図1に戻り、白紙判定部17eは、処理対象のページに対し白紙か否かを判定する白紙判定を行う。より具体的には、白紙判定部17eは、除外情報記憶部12aに除外情報が記憶されている場合には、処理対象のページに含まれるオブジェクトから、記憶されている除外情報が示すオブジェクトと改行やスペースなどの空白文字(以下、単に空白文字という)とを除外したオブジェクト(以下、本文オブジェクトという)を特定する。この際、除外情報記憶部12aに除外情報が記憶されていない場合には、白紙判定部17eは、処理対象のページに含まれるオブジェクトから、空白文字を除外したオブジェクトを本文オブジェクトとして特定する。そして、本文オブジェクトが特定できなかった場合には、白紙判定部17eは、処理対象のページは白紙であると判定する。
つまり、本文オブジェクトが無い場合には、処理対象のページにそれ以外のオブジェクトがあったとしても、空白文字やフォームに属するオブジェクトである可能性が極めて高いことから、処理対象のページを白紙であると判定する。
一方、本文オブジェクトを特定できた場合には、白紙判定部17eは、オブジェクトの描画命令に基づいて、本文オブジェクトの色をそれぞれ特定する。そして、白紙判定部17eは、特定した本文オブジェクトの色と、用紙色特定部17bにより特定された用紙色とを比較し、用紙色と異なる色の本文オブジェクトが無い場合には、処理対象のページは白紙であると判定する。
つまり、白紙判定部17eは、処理対象のページに本文オブジェクトが有る場合であっても、それらの本文オブジェクトの色が用紙色と同じ場合には、印刷しても、本文オブジェクトは視認不可能なので、処理対象のページを白紙であると判定する。
RIP処理部17fは、ページ管理テーブルT1を参照して、白紙であると判定されたページ以外のページをRIP処理し、ラスタデータを生成する。例えば、図2の例においては、RIP処理部17fは、白紙フラグのフラグ値が、白紙ではないことを示す“0”であるページ1とページ2とページ4とページ6のラスタデータを生成する。
次に、図4を参照して、本実施形態1における白紙判定処理の流れについて説明する。図4は、本実施形態1における白紙判定処理のフローを説明するためのフローチャートの例である。本白紙判定処理は、印刷ジョブの受信をトリガとして開始される。
判定部17aは、印刷ジョブを受信したか否かを判定する(ステップS001)。判定部17aにより、印刷ジョブを受信していないと判定された場合には(ステップS001;NO)、処理は、ステップS001の処理を繰り返し、印刷ジョブの受信を待つ。
判定部17aにより、印刷ジョブを受信したと判定された場合には(ステップS001;YES)、用紙色特定部17bは、センサ15を制御して、用紙色を測定させ、測定結果を出力させる(ステップS002)。そして、用紙色特定部17bは、測定結果に基づいて、用紙色を特定する(ステップS003)。
そして、テーブル管理部17cは、ページ管理テーブルT1を初期化し(ステップS004)、処理対象の原稿データのページ数分のエントリをページ管理テーブルT1に登録する(ステップS005)。そして、特定処理部17dは、ページ管理テーブルT1を参照して、未処理のページを特定し、特定した未処理のページの描画情報を取得する(ステップS006)。
そして、テーブル管理部17cは、ページ管理テーブルT1の対応する処理対象フラグのフラグ値を“1”にセットする(ステップS007)。そして、特定処理部17dは、除外情報特定処理を実行する(ステップS008)。
そして、白紙判定部17eは、除外情報記憶部12aに記憶されている除外情報に基づいて、処理対象のページにおける本文オブジェクトを特定する(ステップS009)。この際、除外情報記憶部12aに除外情報が記憶されていない場合には、白紙判定部17eは、処理対象のページに含まれるオブジェクトから、空白文字を除外したオブジェクトを本文オブジェクトとして特定する。
そして、白紙判定部17eは、本文オブジェクトが特定できたか否かを判定する(ステップS010)。白紙判定部17eにより、本文オブジェクトが特定できなかったと判定された場合には(ステップS010;NO)、つまり、処理対象のページが白紙であると判定された場合には、テーブル管理部17cは、ページ管理テーブルT1の対応する白紙フラグのフラグ値を“1”にセットする(ステップS011)。そして、処理は、後述するステップS015の処理へと進む。
一方、本文オブジェクトを特定できたと判定した場合には(ステップS010;YES)、白紙判定部17eは、オブジェクトの描画命令に基づいて、本文オブジェクトの色をそれぞれ特定し(ステップS012)、特定した本文オブジェクトの色と、用紙色特定部17bにより特定された用紙色とを比較する(ステップS013)。
そして、白紙判定部17eは、用紙色と異なる色の本文オブジェクトが有るか否かを判定する(ステップS014)。白紙判定部17eにより、用紙色と異なる色の本文オブジェクトは無いと判定された場合には(ステップS014;NO)、つまり、処理対象のページが白紙であると判定された場合には、テーブル管理部17cは、ページ管理テーブルT1の対応する白紙フラグのフラグ値を“1”にセットする(ステップS011)。そして、処理は、後述するステップS015の処理へと進む。
一方、白紙判定部17eにより、用紙色と異なる色の本文オブジェクトが有ると判定された場合には(ステップS014;YES)、判定部17aは、未処理のページが有るか否かを判定する(ステップS015)。判定部17aにより、未処理のページが有ると判定された場合には(ステップS015;YES)、処理は、ステップS006の処理へと戻り、前述の処理を繰り返す。
一方、判定部17aにより、未処理のページは無いと判定された場合には(ステップS015;NO)、RIP処理部17fは、ページ管理テーブルT1を参照して、白紙であると判定されたページ以外のページをRIP処理し、ラスタデータを生成する(ステップS016)。そして、本処理は終了する。
次に、図5を参照して、本実施形態1における除外情報特定処理の流れについて説明する。図5は、本実施形態1における除外情報特定処理のフローを説明するためのフローチャートの例である。本除外情報特定処理は、白紙判定処理のステップS008の処理に対応する処理である。
特定処理部17dは、特定した未処理のページがページ1であるか否かを判定する(ステップS101)。ページ1であると判定した場合には(ステップS101;YES)、特定処理部17dは、除外情報記憶部12aを初期化する(ステップS102)。そして、本処理は終了し、白紙判定処理のステップS009の処理へと進む。
一方、ページ1ではないと判定した場合には(ステップS101;NO)、特定処理部17dは直前ページとの描画命令の積集合を算出して、除外情報を特定する(ステップS103)。そして、特定処理部17dは、算出した積集合が空集合であるか否かを判定する(ステップ104)。特定処理部17dにより、空集合であると判定された場合には(ステップ104;YES)、本処理は終了し、白紙判定処理のステップS009の処理へと進む。
一方、算出した積集合が空集合ではないと判定した場合には(ステップS104;NO)、特定処理部17dは、更に、除外情報記憶部12aに除外情報が記憶されているか否かを判定する(ステップS105)。記憶されていないと判定した場合には(ステップS105;NO)、特定処理部17dは、特定した除外情報を除外情報記憶部12aに記憶する(ステップS106)。そして、本処理は終了し、白紙判定処理のステップS009の処理へと進む。
一方、記憶されていると判定した場合には(ステップS105;YES)、特定処理部17dは、特定した除外情報と記憶されている除外情報とを比較し(ステップS107)、異なるか否かを判定する(ステップS108)。特定処理部17dにより、同じであると判定された場合には(ステップS108;NO)、本処理は終了し、白紙判定処理のステップS009の処理へと進む。
一方、異なると判定した場合には(ステップS108;YES)、特定処理部17dは、除外情報記憶部12aに記憶されている除外情報を、特定した除外情報で更新する(ステップS109)。そして、本処理は終了し、白紙判定処理のステップS009の処理へと進む。
次に、図2乃至図5を参照して、図3に示す具体例にしたがって、本実施形態1における白紙判定処理について説明する。
まず、ページ1は最初のページであることから(ステップS101;YES)、特定処理部17dは、除外情報記憶部12aを初期化する(ステップS102)。そして、白紙判定部17eは、オブジェクトOB1乃至OB3を本文オブジェクトとして特定する(ステップS009、S010;YES)。本例においては、ページ1の本文オブジェクトの色が用紙色と異なるとすると(ステップS014;YES)、白紙判定部17eは、ページ1は白紙であると判定しないことから、図2に示すように、ページ管理テーブルT1のページ1に対応する「白紙フラグ」のフラグ値は“0”のままである。
ページ2の処理において、直前ページであるページ1との積集合は、図3に示すように、空集合であることから(ステップS104;YES)、白紙判定部17eは、オブジェクトOB4乃至OB9を本文オブジェクトとして特定する(ステップS009、S010;YES)。本例においては、ページ2の本文オブジェクトの色が用紙色と異なるとすると(ステップS014;YES)、白紙判定部17eは、ページ2は白紙であると判定しないことから、図2に示すように、ページ管理テーブルT1のページ2に対応する「白紙フラグ」のフラグ値は“0”のままである。
ページ3の処理において、直前ページであるページ2との積集合は、図3に示すように、オブジェクトOB4乃至OB8であり(ステップS104;NO)、除外情報記憶部12aは、除外情報を記憶していないことから(ステップS105;NO)、特定処理部17dは、特定した除外情報(オブジェクトOB4乃至OB8を示す除外情報)を記憶する(ステップS106)。そして、白紙判定部17eは、オブジェクトOB4乃至OB8を示す除外情報に基づいて、本文オブジェクトを特定する(ステップS009)。そして、ページ3のオブジェクトはオブジェクトOB4乃至OB8であることから、白紙判定部17eは、本文オブジェクトを特定できないと判定する(ステップS010;NO)。つまり、白紙判定部17eは、ページ3は白紙であると判定する。そして、テーブル管理部17cは、ページ管理テーブルT1のページ3に対応する「白紙フラグ」のフラグ値を、図2に示すように、“1”にセットする(ステップS011)。
ページ4の処理において、直前ページであるページ3との積集合は、図3に示すように、空集合であることから(ステップS104;YES)、白紙判定部17eは、オブジェクトOB4乃至OB8を示す除外情報に基づいて、オブジェクトOB10を本文オブジェクトとして特定する(ステップS009、S010;YES)。本例においては、ページ4の本文オブジェクトの色が用紙色と異なるとすると(ステップS014;YES)、白紙判定部17eは、ページ4は白紙であると判定しないことから、図2に示すように、ページ管理テーブルT1のページ4に対応する「白紙フラグ」のフラグ値は“0”のままである。
ページ5の処理において、直前ページであるページ4との積集合は、図3に示すように、空集合であることから(ステップS104;YES)、白紙判定部17eは、オブジェクトOB4乃至OB8を示す除外情報に基づいて、本文オブジェクトを特定する(ステップS009)。そして、ページ5のオブジェクトはオブジェクトOB4乃至OB8であることから、白紙判定部17eは、本文オブジェクトを特定できないと判定する(ステップS010;NO)。つまり、白紙判定部17eは、ページ5は白紙であると判定する。そして、テーブル管理部17cは、ページ管理テーブルT1のページ5に対応する「白紙フラグ」のフラグ値を、図2に示すように、“1”にセットする(ステップS011)。
ページ6の処理において、直前ページであるページ5との積集合は、図3に示すように、オブジェクトOB4乃至OB8であり(ステップS104;NO)、除外情報記憶部12aに記憶されている除外情報と同じである(ステップS108;NO)。したがって、白紙判定部17eは、オブジェクトOB4乃至OB8を示す除外情報に基づいて、オブジェクトOB11を本文オブジェクトとして特定する(ステップS009、S010;YES)。本例においては、ページ6の本文オブジェクトの色が用紙色と異なるとすると(ステップS014;YES)、白紙判定部17eは、ページ6は白紙であると判定しないことから、図2に示すように、ページ管理テーブルT1のページ6に対応する「白紙フラグ」のフラグ値は“0”のままである。
そして、本例においては、図2に示すように、ページ1とページ2とページ4とページ6のみが印刷されることになる。
上記実施形態1によれば、印刷装置10は、処理対象のページに含まれるオブジェクトの描画命令と、処理対象のページとは異なるページに含まれるオブジェクトの描画命令との積集合を算出する。そして、処理対象のページに含まれるオブジェクトから、積集合に含まれる描画命令に対応するオブジェクトを除外した本文オブジェクトを特定する。そして、本文オブジェクトが特定できたか否かを判定し、本文オブジェクトが特定できないと判定されたページを除外して、ラスタデータを生成する。ヘッダやフッタを含むフォームは他のページと同じ場合が多いことから、フォームに属するオブジェクトの描画命令は、他のページとの描画命令の積集合に含まれる可能性が極めて高い。したがって、積集合に基づいて、本文オブジェクトを特定することで、フォームに属するオブジェクトが含まれない本文オブジェクトを特定することが可能となる。よって、白紙判定の対象とする領域を指定しなくても、フォームを考慮した白紙判定を行うことが可能となり、操作性を向上させることが可能となる。
また、上記実施形態1によれば、印刷装置10は、処理対象のページの処理において算出された積集合が空集合である場合には、他のページの処理において算出された空集合ではない積集合に基づいて、本文オブジェクトを特定する。このように構成することで、例えば、複数のフォームを含む原稿を処理する場合であっても、白紙判定の精度を向上させることが可能となる。
また、上記実施形態1によれば、印刷装置10は、用紙色と本文オブジェクトの色とを特定し、全ての本文オブジェクトの色が用紙色と同じページを除外して、ラスタデータを生成する。このように構成することで、印刷する用紙の色を考慮した白紙判定を行うことが可能となり、用紙の無駄を省くことが可能となる。
(実施形態2)
本実施形態2においては、直前ページとの描画命令の積集合が空集合ではない最初の除外情報に基づいて、最初の除外情報に対応するページより前のページに対して白紙判定を行うように構成し、白紙判定の精度を向上させる。
図6は、本実施形態2における印刷システム100を構成する印刷装置10の構成例を示す機能ブロック図である。
本実施形態2における印刷装置10の基本的な構成は、実施形態1の場合と同じである。但し、図6に示すように、制御部17が、更に、再白紙判定部17gを備える点で、実施形態1とは異なっている。また、判定部17aとテーブル管理部17cと特定処理部17dと白紙判定部17eとがそれぞれ果たす機能が、実施形態1の場合と若干異なっている。また、テーブル記憶部12bが、更に、除外情報管理テーブルT2を格納している点で、実施形態1とは異なっている。
ここで、図7を参照して、本実施形態2における除外情報管理テーブルT2について説明する。図7は、本実施形態2における除外情報管理テーブルT2の構成例を示す図である。
本実施形態2における除外情報管理テーブルT2は、直前ページとの描画命令の積集合が空集合ではない場合の除外情報とその除外情報が特定された際のページとを対応付けて管理するためのテーブルであり、例えば、テーブル管理部17cが、空集合ではない最初の除外情報に対応するページより前のページ管理テーブルT1のエントリにおける各フラグをリセットする際に参照されるテーブルである。本実施形態2における除外情報管理テーブルT2は、図7に示すように、「ページ番号」毎に、「除外情報識別子」を対応付けているテーブルである。
「除外情報識別子」は、直前ページとの描画命令の積集合が空集合ではない場合の除外情報を一意に識別可能な識別子であり、特定処理部17dにより生成され、テーブル管理部17cにより対応する「除外情報識別子」欄に格納される。
図6に戻り、制御部17は、CPUなどで構成され、記憶部12のプログラムエリアに格納されている動作プログラムを実行して、図6に示すように、判定部17aと、用紙色特定部17bと、テーブル管理部17cと、特定処理部17dと、白紙判定部17eと、RIP処理部17fと、再白紙判定部17gとしての機能を実現すると共に、印刷装置10全体を制御する制御処理や詳しくは後述の白紙判定処理などの処理を実行する。
判定部17aは、更に、直前ページとの描画命令の積集合が空集合ではない除外情報が有るか否かを判定する。より具体的には、判定部17aは、除外情報管理テーブルT2の「除外情報識別子」欄を検索して、除外情報識別子が登録されているか否かに基づいて、直前ページとの積集合が空集合ではない除外情報が有るか否かを判定する。つまり、判定部17aは、除外情報識別子が登録されている場合には、除外情報が有ると判定し、除外情報識別子が登録されていない場合には、除外情報は無いと判定する。
テーブル管理部17cは、ページ管理テーブルT1と除外情報管理テーブルT2の管理を行う。より具体的には、テーブル管理部17cは、印刷ジョブを受信すると、ページ管理テーブルT1と除外情報管理テーブルT2を初期化する。そして、テーブル管理部17cは受信した印刷ジョブを解析し、処理対象の原稿データのページ数分のエントリを各テーブルに登録する。また、テーブル管理部17cは、特定処理部17dにより未処理のページの描画情報が取得されると、取得されたページに対応する処理対象フラグのフラグ値を“1”にセットする。また、テーブル管理部17cは、処理対象のページが白紙であると判定されると、白紙であると判定されたページに対応する白紙フラグのフラグ値を“1”にセットする。
また、テーブル管理部17cは、判定部17aにより、直前ページとの描画命令の積集合が空集合ではない除外情報が有ると判定された場合に、空集合ではない最初の除外情報に対応するページより前のページ管理テーブルT1のエントリにおける各フラグをリセットする。つまり、未処理の状態に戻す処理を行う。例えば、図7を参照して、空集合ではない最初の除外情報はページ3の除外情報であることから、テーブル管理部17cは、ページ管理テーブルT1におけるページ1とページ2のエントリの各フラグをリセットする。
また、テーブル管理部17cは、特定された除外情報と除外情報記憶部12aに記憶されている除外情報とが異なる場合には、特定処理部17dにより生成された除外情報識別子を、除外情報管理テーブルT2の対応する欄に格納する。一方、除外情報記憶部12aに記憶されている除外情報の中に、特定された除外情報と同一の除外情報が有る場合には、テーブル管理部17cは、特定処理部17dにより特定された同一の除外情報の除外情報識別子を、除外情報管理テーブルT2の対応する欄に格納する。
特定処理部17dは、ページに含まれる各オブジェクトの描画命令に基づいて、処理対象のページにおける除外情報を特定する処理を行う。
より具体的には、特定処理部17dは、ページ管理テーブルT1の「処理対象フラグ」欄を検索して、未処理のページの内でページ番号が最小のページを特定する。そして、特定処理部17dは、受信した印刷ジョブを解析し、特定した未処理のページの描画情報を取得する。そして、特定した未処理のページが最初のページ(ページ1)以外である場合には、直前ページとの描画命令の積集合を算出して、除外情報を特定する。
そして、算出した積集合が空集合でなく、除外情報記憶部12aに除外情報が記憶されている場合には、特定処理部17dは、特定した除外情報と記憶されている除外情報とを比較する。比較の結果、異なる場合には、特定処理部17dは、特定した除外情報を一意に識別可能な除外情報識別子を生成し、生成した除外情報識別子を特定した除外情報に付加して除外情報記憶部12aに記憶する。また、算出した積集合が空集合でなく、除外情報記憶部12aに除外情報が記憶されていない場合には、特定処理部17dは、特定した除外情報を一意に識別可能な除外情報識別子を生成し、生成した除外情報識別子を特定した除外情報に付加して除外情報記憶部12aに記憶する。
一方、比較の結果、同一の除外情報が記憶されている場合には、特定処理部17dは、同一の除外情報に付加されている除外情報識別子を特定する。
白紙判定部17eは、処理対象のページに対し白紙か否かを判定する白紙判定を行う。より具体的には、白紙判定部17eは、除外情報記憶部12aに除外情報が記憶されている場合には、除外情報管理テーブルT2を参照して、除外情報記憶部12aに記憶されている除外情報の中から、最新の除外情報を特定する。例えば、図7を参照して、処理対象のページがページ5だとすると、ページ3に対応する除外情報を特定する。また、処理対象のページがページ6だとすると、ページ6に対応する除外情報を特定する。
そして、白紙判定部17eは特定した除外情報に基づいて、処理対象のページに含まれる本文オブジェクトを特定する。この際、除外情報記憶部12aに除外情報が記憶されていない場合には、白紙判定部17eは、処理対象のページに含まれるオブジェクトから、空白文字を除外したオブジェクトを本文オブジェクトとして特定する。そして、本文オブジェクトが特定できなかった場合には、白紙判定部17eは、処理対象のページは白紙であると判定する。
一方、本文オブジェクトを特定できた場合には、白紙判定部17eは、オブジェクトの描画命令に基づいて、本文オブジェクトの色をそれぞれ特定する。そして、白紙判定部17eは、特定した本文オブジェクトの色と、用紙色特定部17bにより特定された用紙色とを比較し、用紙色と異なる色の本文オブジェクトが無い場合には、処理対象のページは白紙であると判定する。
再白紙判定部17gは、直前ページとの描画命令の積集合が空集合ではない除外情報が有る場合に、空集合ではない最初の除外情報に対応するページより前のページに対して、白紙判定を実行する。
より具体的には、再白紙判定部17gは、空集合ではない最初の除外情報を特定し、特定した除外情報に基づいて、空集合ではない最初の除外情報に対応するページより前のページに含まれる本文オブジェクトをそれぞれ特定する。そして、本文オブジェクトが特定できなかった場合には、再白紙判定部17gは、処理対象のページは白紙であると判定する。
一方、本文オブジェクトを特定できた場合には、再白紙判定部17gは、オブジェクトの描画命令に基づいて、本文オブジェクトの色をそれぞれ特定する。そして、再白紙判定部17gは、特定した本文オブジェクトの色と、用紙色特定部17bにより特定された用紙色とを比較し、用紙色と異なる色の本文オブジェクトが無い場合には、処理対象のページは白紙であると判定する。
次に、図8を参照して、本実施形態2における白紙判定処理の流れについて説明する。図8は、本実施形態2における白紙判定処理のフローを説明するためのフローチャートの例である。本白紙判定処理は、印刷ジョブの受信をトリガとして開始される。
なお、実施形態1の場合と同じ処理については同じ符号を付し、ここでは、異なる処理の部分を中心に説明することとする。
テーブル管理部17cは、ページ管理テーブルT1と除外情報管理テーブルT2を初期化し(ステップS004A)、処理対象の原稿データのページ数分のエントリを各テーブルに登録する(ステップS005A)。そして、特定処理部17dは、ページ管理テーブルT1を参照して、未処理のページを特定し、特定した未処理のページの描画情報を取得する(ステップS006)。
そして、テーブル管理部17cは、ページ管理テーブルT1の対応する処理対象フラグのフラグ値を“1”にセットする(ステップS007)。そして、特定処理部17dは、除外情報特定処理を実行する(ステップS008)。
そして、白紙判定部17eは、除外情報記憶部12aに記憶されている除外情報の中から、最新の除外情報を特定し、特定した除外情報に基づいて、処理対象のページにおける本文オブジェクトを特定する(ステップS009A)。この際、除外情報記憶部12aに除外情報が記憶されていない場合には、白紙判定部17eは、処理対象のページに含まれるオブジェクトから、空白文字を除外したオブジェクトを本文オブジェクトとして特定する。そして、実施形態1において説明したステップS010の処理へと進む。
そして、ステップS015の処理において、未処理のページは無い判定した場合には(ステップS015;NO)、判定部17aは、更に、直前ページとの描画命令の積集合が空集合ではない除外情報が有るか否かを判定する(ステップS201)。判定部17aにより、直前ページとの描画命令の積集合が空集合ではない除外情報は無いと判定された場合には(ステップS201;NO)、処理は、実施形態1において説明したステップS016の処理へと進む。
一方、判定部17aにより、直前ページとの描画命令の積集合が空集合ではない除外情報が有ると判定された場合には(ステップS201;YES)、テーブル管理部17cは、空集合ではない最初の除外情報に対応するページより前のページ管理テーブルT1のエントリにおける各フラグをリセットする(ステップS202)。
そして、再白紙判定部17gは、空集合ではない最初の除外情報に対応するページより前のページに対して、白紙判定を実行する(ステップS203)。そして、RIP処理部17fは、ページ管理テーブルT1を参照して、白紙であると判定されたページ以外のページをRIP処理し、ラスタデータを生成する(ステップS016)。そして、本処理は終了する。
次に、図9を参照して、本実施形態2における除外情報特定処理の流れについて説明する。図9は、本実施形態2における除外情報特定処理のフローを説明するためのフローチャートの例である。本除外情報特定処理は、白紙判定処理のステップS008の処理に対応する処理である。なお、実施形態1と同じ処理については同じ符号を付し、ここでは、異なる処理の部分を中心に説明することとする。
一方、算出した積集合が空集合ではないと判定した場合には(ステップS104;NO)、特定処理部17dは、更に、除外情報記憶部12aに除外情報が記憶されているか否かを判定する(ステップS105)。特定処理部17dにより、記憶されていないと判定された場合には(ステップS105;NO)、処理は後述のステップS303の処理へと進む。
一方、記憶されていると判定した場合には(ステップS105;YES)、特定処理部17dは、特定した除外情報と記憶されている除外情報とを比較し(ステップS107)、異なるか否かを判定する(ステップS108)。同じであると判定した場合には(ステップS108;NO)、特定処理部17dは、同一の除外情報の除外情報識別子を特定する(ステップS301)。そして、テーブル管理部17cは、特定された除外識別子を、除外情報管理テーブルT2の対応する「除外情報識別子」欄に格納する(ステップS302)。そして、本処理は終了し、白紙判定処理のステップS009Aの処理へと進む。
一方、異なると判定した場合には(ステップS108;YES)、特定処理部17dは、特定した除外情報を一意に識別可能な除外情報識別子を生成し、生成した除外情報識別子を特定した除外情報に付加して除外情報記憶部12aに記憶する(ステップS303)。そして、テーブル管理部17cは、生成された除外情報識別子を、除外情報管理テーブルT2の対応する「除外情報識別子」欄に格納する(ステップS304)。そして、本処理は終了し、白紙判定処理のステップS009Aの処理へと進む。
次に、図10を参照して、本実施形態2における再白紙判定処理の流れについて説明する。図10は、本実施形態2における再白紙判定処理のフローを説明するためのフローチャートの例である。本再白紙判定処理は、本実施形態2における白紙判定処理のステップS203の処理に対応する処理である。
再白紙判定部17gは、空集合ではない最初の除外情報を特定する(ステップS401)。そして、テーブル管理部17cは、空集合ではない最初の除外情報に対応するページより前の処理対象のページに対応する処理対象フラグのフラグ値を“1”にセットする(ステップS402)。そして、再白紙判定部17gは、特定した除外情報に基づいて、処理対象のページに含まれる本文オブジェクトを特定する(ステップS403)。
そして、再白紙判定部17gは、本文オブジェクトが特定できたか否かを判定する(ステップS404)。再白紙判定部17gにより、本文オブジェクトが特定できなかったと判定された場合には(ステップS404;NO)、つまり、処理対象のページは白紙であると判定された場合には、テーブル管理部17cは、ページ管理テーブルT1の対応する白紙フラグのフラグ値を“1”にセットする(ステップS405)。そして、処理は、後述のステップS409の処理へと進む。
一方、本文オブジェクトが特定できたと判定した場合には(ステップS404;YES)、再白紙判定部17gは、オブジェクトの描画命令に基づいて、本文オブジェクトの色をそれぞれ特定する(ステップS406)。そして、再白紙判定部17gは、特定した本文オブジェクトの色と、用紙色特定部17bにより特定された用紙色とを比較し(ステップS407)、用紙色とは異なる色の本文オブジェクトが有るか否かを判定する(ステップS408)。
再白紙判定部17gにより、用紙色とは異なる色の本文オブジェクトは無いと判定された場合には(ステップS408;NO)、つまり、処理対象のページは白紙であると判定された場合には、テーブル管理部17cは、ページ管理テーブルT1の対応する白紙フラグのフラグ値を“1”にセットする(ステップS405)。そして、処理は、後述のステップS409の処理へと進む。
一方、再白紙判定部17gにより、用紙色とは異なる色の本文オブジェクトが有ると判定された場合には(ステップS408;YES)、判定部17aは、全てのページを処理したか否かを判定する(ステップS409)。判定部17aにより、全てのページを処理していないと判定された場合には(ステップS409;NO)、処理はステップS402の処理へと戻り、前述の処理を繰り返す。
一方、判定部17aにより、全てのページを処理したと判定された場合には(ステップS409;YES)、本処理は終了し、本実施形態2における白紙判定処理のステップS016の処理へと進む。
次に、図7乃至図12を参照して、図11に示す具体例にしたがって、本実施形態2における白紙判定処理について、再白紙判定処理を中心に説明する。図11は、本実施形態2における処理対象の原稿データの具体例であり、図12(A)乃至(C)は、いずれも、図11に例示の具体例に対応した、各処理時点におけるページ管理テーブルT1の状態を示す図である。
白紙判定処理のステップS015の処理において、判定部17aにより、未処理のページは無いと判定された時点におけるページ管理テーブルT1の状態が、図12(A)に示す状態であるとする。また、この時点における除外情報管理テーブルT2の状態が、図7に示す状態であるとする。つまり、直前ページとの描画命令の積集合が空集合ではない除外情報は、ページ3に対応する除外情報であるとする。
この場合、テーブル管理部17cは、ページ3より前のページ1とページ2に対応するページ管理テーブルT1のエントリにおける各フラグをリセットする(ステップS202)。つまり、本例では、ページ1とページ2が、再白紙判定処理の対象となり、図12(B)は、ページ1とページ2に対応するエントリにおける各フラグをリセットした後の状態を示している。
ページ1の処理において、再白紙判定部17gは、空集合ではない最初の除外情報として、ページ3に対応する除外情報(EX1)を特定する(ステップS401)。ページ3に対応する除外情報(EX1)は、図11に示すように、オブジェクトOB4乃至OB8を示す情報である。そして、テーブル管理部17cは、処理対象のページ1に対応する処理対象フラグのフラグ値を“1”にセットし(ステップS402)、再白紙判定部17gは、図11に示すように、特定した除外情報(EX1)に基づいて、オブジェクトOB1乃至OB3を本文オブジェクトとして特定する(ステップS403、ステップS404;YES)。本例においては、ページ1の本文オブジェクトの色は用紙色とは異なるとすると(ステップS408;YES)、再白紙判定部17gは、ページ1は白紙であると判定しないことから、図12(C)に示すように、ページ管理テーブルT1のページ1に対応する「白紙フラグ」のフラグ値は“0”のままである。
ページ2の処理において、テーブル管理部17cは、処理対象のページ2に対応する処理対象フラグのフラグ値を“1”にセットし(ステップS402)、再白紙判定部17gは、特定した除外情報(EX1)に基づいて、本文オブジェクトを特定する(ステップS403)。そして、図11に示すように、ページ2に含まれるオブジェクトはオブジェクトOB4乃至OB8であることから、再白紙判定部17gは、本文オブジェクトが特定できないと判定する(ステップS404;NO)。つまり、再白紙判定部17gは、ページ2は白紙であると判定する。そして、テーブル管理部17cは、ページ管理テーブルT1のページ2に対応する「白紙フラグ」のフラグ値を、図12(C)に示すように、“1”にセットする(ステップS405)。
図12(C)は、再白紙判定処理のステップS409の処理において、判定部17aにより、全てのページを処理したと判定された時点におけるページ管理テーブルT1の状態を示している。つまり、白紙判定部17eによる白紙判定処理において白紙ではないと判定されていたページ2が、再白紙判定処理において、白紙であると判定されたことを示している。実際、図11に示すように、ページ2に含まれるオブジェクトはフォームに属するオブジェクトのみであり、再白紙判定処理における判定の方が正しいことが分かる。
上記実施形態2によれば、印刷装置10は、他のページとの描画命令の積集合が空集合ではない最初の除外情報に基づいて、最初の除外情報に対応するページより前のページに対して白紙判定を行う。このように構成することで、適切に白紙判定されていない可能性が高いページにおける白紙判定の精度を向上させることが可能となる。
(実施形態3)
本実施形態3においては、白紙であると判定されたページに対して、当該ページより後のページにおいて直前ページとの描画命令の積集合が空集合ではない最初の除外情報に基づいて、白紙判定を再度行うように構成し、白紙判定の精度を向上させる。
図6は、本実施形態3における印刷システム100を構成する印刷装置10の構成例を示す機能ブロック図でもある。
本実施形態3における印刷装置10の基本的な構成は、実施形態1の場合と同じである。但し、図6に示すように、制御部17が、更に、再白紙判定部17gを備える点で、実施形態1とは異なっている。また、判定部17aとテーブル管理部17cと特定処理部17dと白紙判定部17eとがそれぞれ果たす機能が、実施形態1の場合と若干異なっている。また、テーブル記憶部12bが、更に、除外情報管理テーブルT2を格納している点で、実施形態1とは異なっている。
なお、本実施形態3における特定処理部17dと白紙判定部17eとがそれぞれ果たす機能は、実施形態2において説明した機能と同じである。また、本実施形態3における除外情報管理テーブルT2は実施形態2において説明した除外情報管理テーブルT2と同じである。
制御部17は、CPUなどで構成され、記憶部12のプログラムエリアに格納されている動作プログラムを実行して、図6に示すように、判定部17aと、用紙色特定部17bと、テーブル管理部17cと、特定処理部17dと、白紙判定部17eと、RIP処理部17fと、再白紙判定部17gとしての機能を実現すると共に、印刷装置10全体を制御する制御処理や詳しくは後述の白紙判定処理などの処理を実行する。
判定部17aは、更に、ページ管理テーブルT1を参照して、白紙フラグがセットされているか否かを判定する。つまり、判定部17aは、白紙判定処理において白紙と判定されたページが有るか否かを判定する。
テーブル管理部17cは、ページ管理テーブルT1と除外情報管理テーブルT2の管理を行う。より具体的には、テーブル管理部17cは、印刷ジョブを受信すると、ページ管理テーブルT1と除外情報管理テーブルT2を初期化する。そして、テーブル管理部17cは受信した印刷ジョブを解析し、処理対象の原稿データのページ数分のエントリを各テーブルに登録する。また、テーブル管理部17cは、特定処理部17dにより未処理のページの描画情報が取得されると、取得されたページに対応する処理対象フラグのフラグ値を“1”にセットする。また、テーブル管理部17cは、処理対象のページが白紙であると判定されると、白紙であると判定されたページに対応する白紙フラグのフラグ値を“1”にセットする。
また、テーブル管理部17cは、判定部17aにより、白紙フラグがセットされていると判定された場合に、白紙フラグがセットされているページ管理テーブルT1のエントリにおける各フラグをリセットする。つまり、未処理の状態に戻す処理を行う。
また、テーブル管理部17cは、特定された除外情報と除外情報記憶部12aに記憶されている除外情報とが異なる場合には、特定処理部17dにより生成された除外情報識別子を、除外情報管理テーブルT2の対応する欄に格納する。一方、除外情報記憶部12aに記憶されている除外情報の中に、特定された除外情報と同一の除外情報が有る場合には、テーブル管理部17cは、特定処理部17dにより特定された同一の除外情報の除外情報識別子を、除外情報管理テーブルT2の対応する欄に格納する。
再白紙判定部17gは、白紙判定部17eによる白紙判定処理において白紙であると判定されたページに対し、当該ページより後のページおいて直前ページとの描画命令の積集合が空集合ではない最初の除外情報に基づいて、白紙判定を再度実行する。
より具体的には、再白紙判定部17gは、白紙であると判定されたページより後のページおいて直前ページとの描画命令の積集合が空集合ではない最初の除外情報を特定する。そして、特定できた場合には、再白紙判定部17gは、特定した除外情報に基づいて、白紙であると判定された処理対象のページに含まれる本文オブジェクトをそれぞれ特定する。そして、本文オブジェクトが特定できなかった場合には、再白紙判定部17gは、処理対象のページは白紙であると判定する。
一方、本文オブジェクトを特定できた場合には、再白紙判定部17gは、オブジェクトの描画命令に基づいて、本文オブジェクトの色をそれぞれ特定する。そして、再白紙判定部17gは、特定した本文オブジェクトの色と、用紙色特定部17bにより特定された用紙色とを比較し、用紙色と異なる色の本文オブジェクトが無い場合には、処理対象のページは白紙であると判定する。
次に、図13を参照して、本実施形態3における白紙判定処理の流れについて説明する。図13は、本実施形態3における白紙判定処理のフローを説明するためのフローチャートの例である。本白紙判定処理は、印刷ジョブの受信をトリガとして開始される。
なお、実施形態1(又は、2)の場合と同じ処理については同じ符号を付し、ここでは、異なる処理の部分を中心に説明することとする。
ステップS015の処理において、未処理のページは無いと判定した場合には(ステップS015;NO)、判定部17aは、更に、白紙フラグがセットされているか否かを判定する(ステップS501)。判定部17aにより、白紙フラグはセットされていないと判定された場合には(ステップS501;NO)、処理は、実施形態1において説明したステップS016の処理へと進む。
一方、判定部17aにより、白紙フラグがセットされていると判定された場合には(ステップS501;YES)、テーブル管理部17cは、白紙フラグがセットされているページ管理テーブルT1のエントリにおける各フラグをリセットする(ステップS502)。
そして、再白紙判定部17gは、白紙判定部17eにより白紙であると判定されたページに対して、白紙判定を再度実行する(ステップS503)。そして、RIP処理部17fは、ページ管理テーブルT1を参照して、白紙であると判定されたページ以外のページをRIP処理し、ラスタデータを生成する(ステップS016)。そして、本処理は終了する。
次に、図14を参照して、本実施形態3における再白紙判定処理の流れについて説明する。図14は、本実施形態3における再白紙判定処理のフローを説明するためのフローチャートの例である。本再白紙判定処理は、本実施形態3における白紙判定処理のステップS503の処理に対応する処理である。
なお、実施形態2の場合と同じ処理については同じ符号を付し、ここでは、異なる処理の部分を中心に説明することとする。
再白紙判定部17gは、再白紙判定部17gは、白紙であると判定された処理対象のページより後のページおいて直前ページとの描画命令の積集合が空集合ではない最初の除外情報を特定する(ステップS601)。そして、テーブル管理部17cは、白紙であると判定された処理対象のページに対応する処理対象フラグのフラグ値を“1”にセットする(ステップS402A)。
そして、再白紙判定部17gは、除外情報を特定できたか否かを判定する(ステップS602)。再白紙判定部17gにより、除外情報を特定できなかったと判定された場合には(ステップS602;NO)、処理は、実施形態2において説明したステップS409の処理へと進む。
一方、除外情報を特定できたと判定した場合には(ステップS602;YES)、再白紙判定部17gは、特定した除外情報に基づいて、処理対象のページに含まれる本文オブジェクトを特定する(ステップS403)。そして、処理は、実施形態2において説明したステップS404の処理へと進む。
ステップS409の処理において、判定部17aは、全てのページを処理したか否かを判定する(ステップS409)。判定部17aにより、全てのページを処理していないと判定された場合には(ステップS409;NO)、処理はステップS601の処理へと戻り、前述の処理を繰り返す。
一方、判定部17aにより、全てのページを処理したと判定された場合には(ステップS409;YES)、本処理は終了し、本実施形態3における白紙判定処理のステップS016の処理へと進む。
次に、図13乃至図16を参照して、図15に示す具体例にしたがって、本実施形態3における白紙判定処理について、再白紙判定処理を中心に説明する。図15は、本実施形態3における処理対象の原稿データの具体例であり、図16(A)乃至(C)は、いずれも、図15に例示の具体例に対応した、各処理時点におけるページ管理テーブルT1の状態を示す図である。
白紙判定処理のステップS015の処理において、判定部17aにより、未処理のページは無いと判定された時点におけるページ管理テーブルT1の状態が、図16(A)に示す状態であるとする。
この場合、テーブル管理部17cは、空白フラグがセットされているページ3とページ5に対応するページ管理テーブルT1のエントリにおける各フラグをリセットする(ステップS502)。つまり、本例では、ページ3とページ5が、再白紙判定処理の対象となり、図16(B)は、ページ3とページ5に対応するエントリにおける各フラグをリセットした後の状態を示している。
ページ3の処理において、再白紙判定部17gは、処理対象のページ3より後のページおいて直前ページとの描画命令の積集合が空集合ではない最初の除外情報として、ページ6に対応する除外情報を特定する(ステップS601)。ページ6に対応する除外情報は、図15に示すように、オブジェクトOB4乃至OB8を示す情報である。そして、テーブル管理部17cは、処理対象のページ3に対応する処理対象フラグのフラグ値を“1”にセットする(ステップS402)。そして、除外情報を特定できたことから(ステップS602;YES)、再白紙判定部17gは、図15に示すように、特定した除外情報に基づいて、オブジェクトOB9を本文オブジェクトとして特定する(ステップS403、ステップS404;YES)。本例においては、オブジェクトOB9の色は用紙色とは異なるとすると(ステップS408;YES)、再白紙判定部17gは、ページ3は白紙であると判定しないことから、図16(C)に示すように、ページ管理テーブルT1のページ3に対応する「白紙フラグ」のフラグ値は“0”のままである。
ページ5の処理において、再白紙判定部17gは、処理対象のページ5より後のページおいて直前ページとの描画命令の積集合が空集合ではない最初の除外情報として、ページ6に対応する除外情報を特定する(ステップS601)。ページ6に対応する除外情報は、図15に示すように、オブジェクトOB4乃至OB8を示す情報である。そして、テーブル管理部17cは、処理対象のページ5に対応する処理対象フラグのフラグ値を“1”にセットする(ステップS402)。そして、除外情報を特定できたことから(ステップS602;YES)、再白紙判定部17gは、特定した除外情報に基づいて、本文オブジェクトを特定する(ステップS403)。図15に示すように、ページ5に含まれるオブジェクトは、オブジェクトOB4乃至OB8であることから、再白紙判定部17gは、本文オブジェクトを特定できないと判定する(ステップS404;NO)。つまり、再白紙判定部17gは、ページ5は白紙ページであると判定する。そして、テーブル管理部17cは、ページ管理テーブルT1のページ5に対応する「白紙フラグ」のフラグ値を、図16(C)に示すように、“1”にセットする(ステップS405)。
図16(C)は、再白紙判定処理のステップS409の処理において、判定部17aにより、全てのページを処理したと判定された時点におけるページ管理テーブルT1の状態を示している。つまり、白紙判定部17eによる白紙判定処理において白紙であると判定されたページ3が、再白紙判定処理において、白紙ではないと判定されたことを示している。実際、図15に示すように、ページ3に含まれるオブジェクトはフォーム以外のオブジェクトOB9が含まれおり、且つ、オブジェクトOB9の色は、上述したように、用紙色とは異なることから、再白紙判定処理における判定の方が正しいことが分かる。
上記実施形態3によれば、印刷装置10は、白紙であると判定されたページに対して、積集合が空集合ではない他の除外情報に基づいて、白紙判定を再度行う。このように構成することで、白紙判定の精度を向上させ、白紙でないページが白紙として処理させるのを抑制することが可能となる。
(実施形態4)
本実施形態4においては、所定ページ数分(以下、所定ページ単位という)のページの描画命令の積集合を算出し、算出した積集合に属する描画命令に対応するオブジェクトを示す情報を本実施形態4における除外情報とする。そして、このようにして特定した除外情報に基づいて、処理対象の所定ページ単位に属するページに対し、本文オブジェクトを特定する。
本構成は、実施形態1〜3のいずれに対しても適用可能であるが、ここでは、実施形態1に適用した場合について説明することとする。
本実施形態4における印刷装置10の基本的な構成は、実施形態1の場合と同じである。但し、判定部17aとテーブル管理部17cと特定処理部17dとがそれぞれ果たす機能が、実施形態1の場合と若干異なっている。
判定部17aは、更に、処理対象の所定ページ単位に含まれる全てのページを処理したか否かを判定する。例えば、処理対象の所定ページ単位がページ1乃至ページ3である場合には、判定部17aは、ページ1〜ページ3までの処理を行ったか否かを判定する。
テーブル管理部17cは、ページ管理テーブルT1の管理を行う。より具体的には、テーブル管理部17cは、印刷ジョブを受信すると、ページ管理テーブルT1を初期化する。そして、テーブル管理部17cは受信した印刷ジョブを解析し、処理対象の原稿データのページ数分のエントリを登録する。また、テーブル管理部17cは、処理対象のページに対応する処理対象フラグのフラグ値を“1”にセットする。また、テーブル管理部17cは、白紙判定部17eにより処理対象のページが白紙であると判定されると、白紙であると判定されたページに対応する白紙フラグのフラグ値を“1”にセットする。
特定処理部17dは、ページに含まれる各オブジェクトの描画命令に基づいて、処理対象のページにおける除外情報を特定する処理を行う。ここで、除外情報は、白紙判定の対象から除外するオブジェクトを示す情報であり、本実施形態4における除外情報は、上述したように、所定ページ単位に属する全ページの描画命令の積集合に含まれる描画命令に対応するオブジェクトを示す情報とする。例えば、所定ページ単位が3ページ分である場合には、特定処理部17dは、3ページ分の描画命令の積集合を算出し、算出した積集合に含まれる描画命令に対応するオブジェクトを示す情報を、除外情報として特定する。
より具体的には、特定処理部17dは、ページ管理テーブルT1の「処理対象フラグ」欄を検索して、未処理のページの内でページ番号が若い順に所定ページ単位分のページを特定する。そして、特定処理部17dは、受信した印刷ジョブを解析し、特定した未処理のページの描画情報をそれぞれ取得する。そして、特定処理部17dは、所定ページ単位における描画命令の積集合を算出して、除外情報を特定する。この際、最初の所定ページ単位、つまり、最初のページ(ページ1)を含む所定ページ単位である場合には、特定処理部17dは、除外情報記憶部12aを初期化する。
そして、算出した積集合が空集合でなく、除外情報記憶部12aに除外情報が記憶されている場合には、特定処理部17dは、記憶されている除外情報と比較し、異なる場合には、除外情報記憶部12aに記憶されている除外情報を、特定した除外情報で更新する。一方、算出した積集合が空集合でなく、除外情報記憶部12aに除外情報が記憶されていない場合には、特定処理部17dは、特定した除外情報を除外情報記憶部12aに記憶する。
次に、図17を参照して、本実施形態4における白紙判定処理の流れについて説明する。図17は、本実施形態4における白紙判定処理のフローを説明するためのフローチャートの例である。本白紙判定処理は、印刷ジョブの受信をトリガとして開始される。
なお、実施形態1の場合と同じ処理については同じ符号を付し、ここでは、異なる処理の部分を中心に説明することとする。
テーブル管理部17cは、ページ管理テーブルT1を初期化し(ステップS004)、処理対象の原稿データのページ数分のエントリをページ管理テーブルT1に登録する(ステップS005)。そして、特定処理部17dは、ページ管理テーブルT1を参照して、所定ページ単位分の未処理のページを特定し、特定した未処理のページの描画情報をそれぞれ取得する(ステップS701)。
そして、特定処理部17dは、除外情報特定処理を実行する(ステップS008)。そして、テーブル管理部17cは、処理対象のページに対応する処理対象フラグのフラグ値を“1”にセットする(ステップS702)。
そして、白紙判定部17eは、除外情報記憶部12aに記憶されている除外情報に基づいて、処理対象のページにおける本文オブジェクトを特定する(ステップS009)。この際、除外情報記憶部12aに除外情報が記憶されていない場合には、白紙判定部17eは、処理対象のページに含まれるオブジェクトから、空白文字を除外したオブジェクトを本文オブジェクトとして特定する。
そして、白紙判定部17eは、本文オブジェクトが特定できたか否かを判定する(ステップS010)。白紙判定部17eにより、本文オブジェクトが特定できなかったと判定された場合には(ステップS010;NO)、つまり、処理対象のページが白紙であると判定された場合には、テーブル管理部17cは、ページ管理テーブルT1の対応する白紙フラグのフラグ値を“1”にセットする(ステップS011)。そして、処理は、後述するステップS703の処理へと進む。
一方、白紙判定部17eにより、本文オブジェクトを特定できたと判定された場合には(ステップS010;YES)、処理は、実施形態1において説明したステップS012の処理へと進む。
そして、ステップS014の処理において、白紙判定部17eにより、用紙色と異なる色の本文オブジェクトが有ると判定された場合には(ステップS014;YES)、判定部17aは、所定ページ単位分の全ページを処理したか否かを判定する(ステップS703)。判定部17aにより、所定ページ単位分の全ページを処理していないと判定された場合には(ステップS703;NO)、処理は、ステップS702の処理へと戻り、前述の処理を繰り返す。
一方、所定ページ単位分の全ページを処理したと判定した場合には(ステップS703;YES)、判定部17aは、更に、未処理のページが有るか否かを判定する(ステップS015)。判定部17aにより、未処理のページが有ると判定された場合には(ステップS015;YES)、処理は、ステップS701の処理へと戻り、前述の処理を繰り返す。
一方、判定部17aにより、未処理のページは無いと判定された場合には(ステップS015;NO)、処理は、実施形態1において説明したステップS016の処理へと進む。
次に、図18を参照して、本実施形態4における除外情報特定処理の流れについて説明する。図18は、本実施形態4における除外情報特定処理のフローを説明するためのフローチャートの例である。本除外情報特定処理は、白紙判定処理のステップS008の処理に対応する処理である。
なお、実施形態1の場合と同じ処理については同じ符号を付し、ここでは、異なる処理の部分を中心に説明することとする。
特定処理部17dは、最初の所定ページ単位か否かを判定する(ステップS801)。最初の所定ページ単位であると判定した場合には(ステップS801;YES)、特定処理部17dは、除外情報記憶部12aを初期化する(ステップS802)。そして、処理は、後述のステップS803の処理へと進む。
一方、最初の所定ページ単位ではないと判定した場合には(ステップS801;NO)、特定処理部17dは、所定ページ単位分のページの描画命令の積集合を算出し、除外情報を特定する(ステップS803)。そして、処理は、実施形態1において説明したステップS104の処理へと進む。
(実施形態5)
本実施形態5においては、印刷対象のページにページ番号に対応するオブジェクト(描画命令)が含まれている場合であって、白紙であると判定され一部のページが印刷されない場合には、ページ番号が続き番号になるようにページ番号を補正するか否かをユーザに確認し、ユーザの指示に従って、ページ番号を補正するように構成する。
なお、本構成は、実施形態1〜4のいずれに対しても適用可能であるが、ここでは、実施形態1に適用した場合について説明する。
図19は、本実施形態5における印刷システム100を構成する印刷装置10の構成例を示す機能ブロック図である。本実施形態5における印刷装置10の基本的な構成は、実施形態1の場合と同じである。但し、図19に示すように、制御部17が、更に、通知部17hと補正部17iとを備える点で、実施形態1の場合と異なっている。また、判定部17aが果たす機能が、実施形態1の場合と若干異なっている。
制御部17は、CPUなどで構成され、記憶部12のプログラムエリアに格納されている動作プログラムを実行して、図19に示すように、判定部17aと、用紙色特定部17bと、テーブル管理部17cと、特定処理部17dと、白紙判定部17eと、RIP処理部17fと、通知部17hと、補正部17iとしての機能を実現すると共に、印刷装置10全体を制御する制御処理や詳しくは後述の白紙判定処理などの処理を実行する。
判定部17aは、更に、ページ管理テーブルT1を参照して、白紙フラグがセットされているか否かを判定する。また、判定部17aは、白紙フラグがセットされていると判定した場合には、更に、ページの描画情報に基づいて、印刷対象のページにページ番号の描画命令が含まれているか否かを判定する。
また、判定部17aは、ユーザがページ番号を補正することを選択したか否を判定する。例えば、確認通知を受信した情報端末装置20の表示画面上に確認画面(不図示)を表示させ、確認画面に従って補正が選択された場合に、判定部17aは、ユーザがページ番号を補正することを選択したと判定する。
通知部17hは、ページ番号が続き番号となるように補正するか否かをユーザに確認するための確認通知を生成する。そして、通知部17hは、通信部11を介して、処理対象の印刷ジョブの送信元の情報端末装置20へ生成した確認通知を送信する。
補正部17iは、ページ番号の補正がユーザにより選択された場合に、ページ番号が続き番号となるように補正する。このように、ユーザの指示に従って、ページ番号を補正するのは、例えば、目次がある場合などにおいては、ページ番号を補正すると、目次との対応関係が崩れてしまい、かえって不利益となるからである。
次に、図20を参照して、本実施形態5における白紙判定処理の流れについて説明する。図20は、本実施形態5における白紙判定処理のフローを説明するためのフローチャートの例の一部である。
ステップS015の処理において、未処理のページは無いと判定した場合には(ステップS015;NO)、判定部17aは、更に、ページ管理テーブルT1を参照して、白紙フラグがセットされているか否かを判定する(ステップS901)。判定部17aにより、白紙フラグがセットされていないと判定された場合には(ステップS901;NO)、処理は、実施形態1において説明したステップS016の処理へと進む。
一方、白紙フラグがセットされていると判定した場合には(ステップS901;YES)、判定部17aは、更に、印刷対象のページにページ番号の描画命令が含まれているか否かを判定する(ステップS902)。判定部17aにより、ページ番号の描画命令が含まれていないと判定された場合には(ステップS902;NO)、処理は、実施形態1において説明したステップS016の処理へと進む。
一方、判定部17aにより、ページ番号の描画命令が含まれていると判定された場合には(ステップS902;YES)、通知部17hは、確認通知を生成し、処理対象の印刷ジョブの送信元の情報端末装置20へ生成した確認通知を送信する(ステップS903)。
そして、判定部17aは、ユーザがページ番号を補正することを選択したか否を判定する(ステップS904)。判定部17aにより、ページ番号を補正することは選択されていないと判定された場合には(ステップS904;NO)、処理は、実施形態1において説明したステップS016の処理へと進む。
一方、判定部17aにより、ページ番号を補正することが選択されたと判定された場合には(ステップS904;YES)、補正部17iは、ページ番号が続き番号となるように補正する(ステップS905)。そして、RIP処理部17fは、ページ管理テーブルT1を参照して、白紙であると判定されたページ以外のページをRIP処理し、ラスタデータを生成する(ステップS016)。そして、本処理は終了する。
上記実施形態5によれば、印刷装置10は、ページ番号に対応するオブジェクトがページに含まれており、ラスタデータが生成される際に除外されるページがある場合に、ユーザの指示に従って、ページ番号が続き番号となるように補正する。このように構成することで、利便性を向上させることが可能となる。また、印刷物の見栄えを良くすることが可能となる。
なお、上記実施形態1乃至5において、白紙判定処理などの処理は印刷装置10側で実行されるものとして説明したが、これに限定されるものではなく、情報端末装置20側で実行するように構成し、白紙であると判定されたページを除外した印刷ジョブを生成し、印刷装置10へ出力するように構成してもよい。また、プリンタ部16の処理として実行させるように構成してもよい。
また、上記実施形態において、全ページの白紙判定が終了した後に、RIP処理を行うものとして説明したが、これに限定されるものではなく、白紙であると判定されなかったページについては、白紙判定が終了したページから順次RIP処理するように構成してもよい。
また、上記実施形態1乃至3において、除外情報を特定する際に、直前ページとの描画命令の積集合を算出すると説明したが、これに限定されるものではなく、処理対象のページとの積集合を算出するページは任意であってもよい。また、この場合、処理対象のページとの積集合を算出するページを、ユーザが指定できるように構成してもよい。
また、上記実施形態1乃至5において、センサ15の測定結果に基づいて用紙色を特定するものとして説明したが、これに限定されるものではなく、例えば、用紙色の一覧から印刷に使用する印刷用紙の用紙色をユーザにより特定させるように構成しても良い。また、使用される印刷用紙が常に同じ場合には、その印刷用紙の用紙色を登録するように構成してもよい。
また、上記実施形態1乃至5において、ページに含まれる全てのオブジェクトを、白紙判定の対象とするのではなく、例えば、所定の領域(例えば、ヘッダ・フッタの領域に挟まれている本文領域)内のオブジェクトのみを白紙判定の対象とするように構成してもよい。この場合、所定の領域は、ユーザにより指定できるように構成してもよい。このように構成することで、処理の高速化を図ることが可能となる。
なお、上記動作を実行するための動作プログラムを、フレキシブルディスク、CD−ROM(Compact Disk-Read Only Memory)、DVD(Digital Versatile Disk)、MO(Magneto Optical disk)などのコンピュータで読み取り可能な記録媒体に記憶して配布し、これを印刷装置10、又は、情報端末装置20のコンピュータにインストールすることにより、上述の処理を実行するように構成してもよい。さらに、インターネット上のサーバ装置が有するディスク装置等にプログラムを記憶しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するものとしてもよい。
以上本発明の実施形態について説明したが、本発明は、以上に述べた実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成又は実施形態を取ることができる。