画像形成装置、画像形成装置の制御方法およびコンピュータプログラム
【課題】印刷対象の印刷データが含む文書の階層構造を解析し、解析結果に基づいて、印刷物へのインデックス紙の挿入箇所を自動で決定する画像形成装置を提供する。
【解決手段】画像形成装置10が、クライアントPC40から印刷データを受信し、受信した印刷データが含む文章の区切りを示す項目に関する階層構造を解析する。画像形成装置10が、上記階層構造の解析結果に基づいて、印刷データの印刷物へのインデックス紙の挿入箇所に関する情報を生成する。そして、画像形成装置10が、印刷物へのインデックス紙の挿入箇所に関する情報に基づいて、印刷物の挿入箇所にインデックス紙を挿入して出力する。
【解決手段】画像形成装置10が、クライアントPC40から印刷データを受信し、受信した印刷データが含む文章の区切りを示す項目に関する階層構造を解析する。画像形成装置10が、上記階層構造の解析結果に基づいて、印刷データの印刷物へのインデックス紙の挿入箇所に関する情報を生成する。そして、画像形成装置10が、印刷物へのインデックス紙の挿入箇所に関する情報に基づいて、印刷物の挿入箇所にインデックス紙を挿入して出力する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像形成装置、画像形成装置の制御方法およびコンピュータプログラムに関する。
【背景技術】
【0002】
ユーザが指定した任意のページでインデックス紙を挿入し、本文を分割する処理を行う画像形成装置が提案されている。インデックス紙は、通常の矩形の用紙にインデックス部(耳)を付加して形成される形状を有する。一般的に、インデックス部の位置が異なる複数枚のインデックス紙によって、インデックス紙の1つのセットが構成される。インデックス紙のセットにおいては、インデックス部の位置が異なる複数枚のインデックス紙が、インデックス部の位置が順次ずれるように重ねられている。インデックス紙が備えるインデックス部が通常の用紙サイズからはみ出ることによって、紙束の章分けなどを行ったりすることができる。インデックス紙が挿入された出力物を手にとったユーザは、インデックス紙のインデックス部の位置に基づいて任意のページを参照することが可能である。
【0003】
画像形成装置は、印刷ジョブが印刷対象とする先頭のインデックス紙のインデックス部の位置が最上段となるように1枚目を給紙する。挿入するインデックス紙の枚数とインデックス紙の束の枚数に差異が出た場合、画像形成装置は、ジョブ終了時等に残りのインデックス紙を機外排出して、次の印刷ジョブのために、インデックス紙のセットの頭出しを行う。この処理を、残インデックス紙排出処理という。
【0004】
また、近年では、複数種類のインデックス紙をユーザが指定した任意のページに挿入することにより、章や節といった多階層の文章構造に対応して本文を分割することが行われている。例えば、特許文献1は、章・節の区切りをユーザが指定し、それぞれに色の異なるインデックス紙を用いて、印刷物を区分けする画像形成装置を開示する。
【0005】
また、特許文献2は、印刷対象の文書のインデックスデータを検出して文書の構造を解析し、解析結果に応じて、インデックスの内容を表示する画像形成装置を開示する。この画像形成装置のユーザが、表示されたインデックスの内容に基づいて、インデックスを指定する。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2006−248672号公報
【特許文献2】特開2007―283675号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
特許文献1、2に代表されるような従来の画像形成装置では、多階層の文章構造を有する印刷ジョブにインデックス紙を挿入する場合において、印刷ジョブのどのページが章・節の区切りに当たるかをユーザが明示的に指定する必要があった。従って、複雑な文章構造を有する印刷データや、多数の章・節を有する印刷データの印刷において、ユーザの作業負荷が特に高くなり、印刷効率の低減や、作業ミスの要因になりうるという問題があった。
【0008】
本発明は、印刷対象の印刷データが含む文書の階層構造を解析し、解析結果に基づいて、印刷物へのインデックス紙の挿入箇所を自動で決定する画像形成装置の提供を目的とする。
【課題を解決するための手段】
【0009】
本発明の一実施形態の画像形成装置は、印刷データを受信する受信手段と、前記受信した印刷データの、該印刷データが含む文章の区切りを示す項目に関する階層構造を解析する解析手段と、前記階層構造の解析結果に基づいて、前記印刷データの印刷物へのインデックス紙の挿入箇所に関する情報を生成する生成手段と、前記生成された印刷物へのインデックス紙の挿入箇所に関する情報に基づいて、前記印刷物の挿入箇所に前記インデックス紙を挿入して出力する出力手段とを備える。
【発明の効果】
【0010】
本発明の画像形成装置によれば、印刷対象の印刷データが含む文書の階層構造を解析し、解析結果に基づいて、印刷物へのインデックス紙の挿入箇所を自動で決定することができる。例えば、多階層の文章構造を有する印刷ジョブにインデックス紙を挿入する場合において、章・節の区切りの位置を文章構造から検出して、多階層の文章構造に適したインデックス紙を挿入することができる。これにより、印刷ジョブのどのページが章・節の区切りに当たるかをユーザが明示的に指定する必要がなくなる。その結果、ユーザが所望する出力物を従来よりも短手番で得ることができる。
【図面の簡単な説明】
【0011】
【図1】本実施形態のシステム構成例を示す図である。
【図2】画像形成装置の構成例を示す図である。
【図3】画像形成装置が備えるコントロールユニットの構成例を示す図である。
【図4】画像形成装置の操作部の構成例を示す図である。
【図5】ジョブ投入画面の一例を示す図である。
【図6】印刷データの文章構造の一例を示す図である。
【図7】PDFのOutlinesによる印刷データの文章構造の記述例である。
【図8】印刷データの文章構造の記述例を説明する模式図である。
【図9】インデックス紙挿入テーブルと必要インデックス数テーブルの例である。
【図10】画像形成装置の動作処理を説明するフローチャートの例である。
【図11】インデックス紙挿入テーブル作成処理を示すフローチャートである。
【図12】印刷処理の詳細を説明するフローチャートの例である。
【図13】挿入インデックス紙変更画面の例を示す図である。
【図14】実施例1における印刷物の出力例を示す図である。
【図15】実施例2におけるジョブ投入画面の例を示す図である。
【図16】実施例2における印刷物の出力例を示す図である。
【発明を実施するための形態】
【0012】
図1は、本実施形態のシステム構成例を示す図である。図1に示すシステムは、画像形成装置10、プリントサーバ20、ファイルサーバ30、クライアントPC(Personal Computer)40を備える。画像形成装置10乃至クライアントPC40は、ネットワーク50を通じて互いに通信する。ネットワーク50は、例えば、LAN(Local Area Network),WAN(Wide Area Network )等である。
【0013】
画像形成装置10は、本実施形態の画像形成装置である。画像形成装置10は、例えば、スキャン、プリント、コピーなどの様々な機能を有するMFP(Multi Function Peripheral)である。本実施形態に特有の動作として、画像形成装置10は、クライアントPC40から、印刷ジョブの投入を受ける。印刷ジョブは、画像形成装置10が、印刷データを受信して、印刷を行い、必要な終了処理を行うまでの一連の処理のまとまりを指す。本実施形態において、印刷ジョブは、多階層の文章構造(階層構造)を有する文書データを含む。画像形成装置10は、投入された印刷ジョブに基づいて、印刷ジョブが含む文書データに対応する印刷物に、インデックス紙を挿入して出力する。
【0014】
プリントサーバ20は、入力された印刷ジョブや、ネットワーク50を介して接続されている画像形成装置10を管理する。プリントサーバ20は、画像形成装置10と印刷ジョブの状況を監視するとともに、印刷ジョブの一時停止、設定変更、印刷再開、あるいはジョブの複製、移動、削除などの制御を行う。
【0015】
ファイルサーバ30は、バリアブル印刷に使用するバリアブルデータに係るデータベースを保管する。ファイルサーバ30は、例えば宛先、住所、氏名などの顧客データを有する顧客データベースを保管する。クライアントPC40は、アプリケーションファイルの編集や印刷指示を行う機能を有する。また、クライアントPC40は、プリントサーバ20が管理している画像形成装置10や印刷ジョブの監視や制御を補佐する機能を有する。クライアントPCは、ジョブ投入画面を表示し、ジョブ投入画面上でのユーザの操作に応じて、画像形成装置10に対してジョブ(例えば、印刷ジョブ)を投入する。クライアントPC40のユーザは、クライアントPC40を利用して、ジョブのステータスなどを確認することができる。
【0016】
図2は、画像形成装置の構成例を示す図である。図2に示す画像形成装置10はMFPである。画像形成装置10は、スキャナ部、レーザ露光部、感光ドラム、作像部、定着部、給紙/搬送部、および、これらを制御する不図示のプリンタ制御部を備える。
【0017】
スキャナ部は、原稿台に置かれた原稿に対して、照明を当てて原稿画像を光学的に読み取り、その像を電気信号に変換して画像データを作成する。レーザ露光部は、前記画像データに応じて変調されたレーザ光などの光線を等角速度で回転する回転多面鏡(ポリゴンミラー)に入射させ、反射走査光として感光ドラムに照射する。
【0018】
作像部は、電子写真プロセスを実行する。すなわち、作像部は、感光ドラムを回転駆動し、帯電器によって帯電させ、前記レーザ露光部によって感光ドラム上に形成された潜像をトナーによって現像化し、そのトナー像をシート(用紙)に転写する。また、作像部は、転写されずに感光ドラム上に残った微小トナーを回収する。シートが転写ベルトの所定位置に巻きつき、4回転する間に、マゼンタ(M)、シアン(C)、イエロー(Y)、ブラック(K)のトナーを持つそれぞれの現像ユニット(現像ステーション)が入れ替わりつつ、順次電子写真プロセスが繰り返し実行される。4回転の後、4色のフルカラートナー像を転写されたシートは、転写ドラムを離れ、定着部へ搬送される。
【0019】
定着部は、ローラやベルトの組み合わせによって構成される。定着部は、ハロゲンヒータなどの熱源を内蔵しており、作像部によってトナー像が転写されたシート上のトナーを、熱と圧力によって溶解、定着させる。
【0020】
給紙/搬送部は、シートカセットやペーパーデッキに代表されるシート収納庫(給紙段)を一つ以上備える。本実施形態において、所定の給紙段は、インデックスセットが載置される給紙部として機能する。インデックスセットは、各々のインデックス紙が備えるインデックス部が順次ずれるように重ねられた複数のインデックス紙を含む。
【0021】
給紙/搬送部は、プリンタ制御部の指示に応じて、シート収納庫に収納された複数のシートの中から一枚分離し、作像部・定着部へ搬送する。シートは、作像部の転写ドラムに巻きつけられ、4回転した後に定着部へ搬送される。4回転する間にYMCK各色のトナー像がシートに転写される。また、シートの両面に画像形成する場合は、給紙/搬送部は、定着部を通過したシートが再度作像部へ搬送する搬送経路を通るように制御する。
【0022】
プリンタ制御部は、MFPとしての画像形成装置10全体を制御するMFP制御部(不図示)と通信し、MFP制御部からの指示に応じて制御を実行する。また、プリンタ制御部は、スキャナ部、レーザ露光部、作像部、定着部、給紙/搬送各部の状態を管理しながら、全体が調和を保って円滑に動作できるように制御する。
【0023】
図3は、画像形成装置が備えるコントロールユニットの構成例を示す図である。コントロールユニット200は、画像入力デバイスであるスキャナ201や画像出力デバイスであるプリンタエンジン202と接続し、画像データの読み取りやプリント出力のための制御を行う。また、コントロールユニット200は、ネットワーク50や公衆回線204と接続することで、画像情報やデバイス情報をネットワーク50経由で入出力するための制御を行う。本実施形態の画像形成装置の制御方法は、コントロールユニット200の機能によって実現される。
【0024】
コントロールユニット200が備えるCPU(Central Processing Unit)205は、画像形成装置10全体を制御する中央処理装置である。RAM(Random Access Memory)206は、CPU205が動作するためのシステムワークメモリである。RAM206は、入力された画像データを一時記憶するための画像メモリでもある。
【0025】
ROM(Read Only Memory)207は、ブートROMであり、システムのブートプログラムが格納されている。HDD(Hard Disk Drive)208はハードディスクドライブである。HDD208は、各種処理のためのシステムソフトウェア及び入力された画像データ等を格納する。また、HDD208には、本実施形態の画像形成装置の制御方法を実現するコンピュータプログラムが予め格納されている。CPU205が、HDD208に格納されたこのコンピュータプログラムをRAM206に読み出した上で実行する。操作部I/F(Interface)209は、画像データ等を表示可能な表示画面を有する操作部210に対するインタフェース部である。操作部I/F209は、操作部210に対して操作画面データを出力する。また、操作部I/F209は、操作部210から操作者が入力した情報をCPU205に伝える。
【0026】
ネットワークインタフェース211は、例えばLANカード等を備える。ネットワークインタフェース211は、ネットワーク50に接続して外部装置との間で情報の入出力を行う。モデム212は公衆回線204に接続し、外部装置との間で情報の入出力を行う。以上のユニットがシステムバス213上に配置されている。
【0027】
イメージバスI/F214は、システムバス213と画像データを高速で転送する画像バス215とを接続するためのインタフェースであり、データ構造を変換するバスブリッジである。画像バス215上には、ラスタイメージプロセッサ216、デバイスI/F217、スキャナ画像処理部218、プリンタ画像処理部219、画像編集用画像処理部220、CMM230が接続される。CMMは、Color Management Moduleの略称である。
【0028】
RIP(Raster Image Processor)216は、ラスタイメージプロセッサである。RIP216は、ページ記述言語(Page Description Language :PDL)をラスタイメージに展開する。なお、一般に、RIP処理は、PDLを中間データ(DL)に変換するインタープリット処理と、ラスタイメージに変換するレンダリング処理という2通りの意味で使用される。本実施形態の説明では、説明の便宜上、RIPされたデータはラスタイメージに展開されるものとして説明するが、一旦中間データ(DL)に変換される形態も本発明の対象に含まれることは言うまでもない。デバイスI/F部217は、スキャナ201やプリンタエンジン202とコントロールユニット200とを接続し、画像データの同期系/非同期系の変換を行う。
【0029】
スキャナ画像処理部218は、スキャナ201から入力した画像データに対して、補正、加工、編集等の各種処理を行う。プリンタ画像処理部219は、プリント出力する画像データに対して、プリンタエンジンに応じた補正、解像度変換等の処理を行う。画像編集用画像処理220は、画像データの回転や、画像データの圧縮伸長処理等の各種画像処理を行う。CMM(Color Management Module)230は、画像データに対して、プロファイルやキャリブレーションデータに基づいた、色変換処理(色空間変換処理ともいう)を施す専用ハードウェアモジュールである。プロファイルは、機器に依存した色空間で表現したカラー画像データを機器に依存しない色空間(例えばLabなど)に変換するための関数のような情報である。キャリブレーションデータは、カラー複合機3におけるスキャナ部201やプリンタエンジン202の色再現特性を修正するためのデータである。
【0030】
図4は、画像形成装置の操作部の構成例を示す図である。図4(A)は、操作部210の外観を示す。図4(B)は、図4(A)に示す操作部の部分拡大図である。図4(A)に示すように、操作部210は、ハードキーによるユーザ操作を受付け可能なキー入力部402を備える。また、操作部210は、ソフトキー(表示キー)によるユーザ操作を受付可能な表示ユニットの一例としてのタッチパネル部401を有する。
【0031】
図4(A)に示すように、キー入力部402は、操作部電源スイッチ501を備える。CPU205は、スイッチ501に対するユーザ操作に応じて、スタンバイモードとスリープモードを選択的に切り換える制御を実行する。スタンバイモードは、通常動作状態であり、スリープモードは、ネットワーク印刷やファクシミリなどに備えて割り込み待ち状態でプログラムを停止して、消費電力を抑えている状態である。CPU205は、システム全体の電源供給を行う主電源スイッチ(不図示)がON状態の場合に、スイッチ501のユーザ操作が受け付け可能となるように制御する。
【0032】
スタートキー503は、処理対象となるジョブのコピー動作や送信動作等、ユーザにより指示されたジョブ処理を印刷装置に開始させる指示をユーザから受け付け可能にするキーである。ストップキー502は、受け付けたジョブの処理を印刷装置に中断させる指示をユーザから受け付け可能にするキーである。テンキー506は、各種設定の置数の設定をするキーである。クリアキー507は、キー506を介してユーザにより設定された置数等の各種パラメータを解除するキーである。リセットキー504は、ユーザにより処理対象のジョブに対して設定された各種設定を全て無効にするキーである。また、リセットキー504は、設定値をデフォルト状態に戻す指示をユーザから受け付けるキーである。ユーザモードキー505は、ユーザ毎のシステム設定画面を表示するためのキーである。
【0033】
図5は、クライアントPCが表示するジョブ投入画面の一例を示す図である。本実施形態では、ユーザは、ジョブ投入画面上で、印刷データのファイル名と、文章構造に合わせてインデックス紙を挿入するか否かと、各階層に使用するインデックス紙の給紙段とを指定することができる。クライアントPC40は、ジョブ投入画面上でのユーザの指定操作に応じた指定情報を生成する。指定情報は、給紙段と階層との対応情報であって、各階層に対応する挿入箇所に挿入されるインデックス紙をどの給紙部から給紙するかを指定する情報である。クライアントPC40は、指定情報を含む印刷ジョブを生成して画像形成装置10に投入する。これにより、画像形成装置10に対して、各階層に使用するインデックス紙の給紙段が指定される。画像形成装置10のCPU205は、印刷ジョブが含む指定情報に従って、給紙段に載置されたインデックスセットが含むインデックス紙を順次給紙して各階層に対応する挿入箇所に挿入する。
【0034】
「ファイル名」は、画像形成装置10に印刷させるファイルの名称を指定する項目である。この「ファイル名」として指定されたファイルが、印刷データとしてクライアントPC40から画像形成装置10にネットワーク50を介して送信される。画像形成装置10のCPU205が、クライアントPC40から送信された印刷データを受信する受信手段として機能する。そして、CPU205は、受信した印刷データを1つの印刷ジョブとして、印刷処理を行う。「文書構造に合わせてインデックス紙を挿入」は、印刷データの文書構造に合わせて、出力物にインデックス紙を挿入するか否かを指定する項目である。該指定項目において「する」が指定された場合、各階層に使用するインデックス紙の給紙段が指定できるようになる。
【0035】
ジョブ投入画面は、各階層に使用するインデックス紙の給紙段を指定する項目として、「第1階層のインデックス紙」、「第2階層のインデックス紙」、「第3階層のインデックス紙」を有する。「第1階層のインデックス紙」は、文章構造の第1階層に挿入されるインデックス紙のセットを載置する給紙段を指定する項目である。「第2階層のインデックス紙」は、文章構造の第2階層に挿入されるインデックス紙のセットを載置する給紙段を指定する項目である。「第3階層のインデックス紙」は、文章構造の第3階層に挿入されるインデックス紙のセットを載置する給紙段を指定する項目である。図5では、インデックス紙が挿入する階層を最大で3階層とした場合の指定項目を示しているが、インデックス紙が挿入する階層の数は、3階層に限定されない。
【0036】
図6は、画像形成装置が処理対象とする印刷データの文章構造の一例を示す図である。図6に示す印刷データは、画像形成10のCPU205がクライアント装置40から受信した印刷データであり、この例では、OutlinedDocument.pdfという文章データである。この印刷データは、20ページ分のページ(オブジェクト)を含み、最大で3階層の文章構造を有する。印刷データが含むページのうち、1ページ目は表紙である。Chapter1は、1章である。Chapter1.1は、1.1節である。Chapter1.2は、1.2節である。Chapter1.2.1は、1.2.1節である。Chapter1.2.2は、1.2.2節である。Chapter1.3は、1.3節である。Chapter2は、2章である。Chapter2.1は、2.1節である。Chapter2.1.1は、2.1.1節である。Chapter3は、3章である。
【0037】
Chapter1、Chapter1.1、...、Chapter3は、印刷データが含む文章の区切りを示す項目である。Chapter1は、2ページ目で開始し、5ページ目で終了する。Chapter1.1は、6ページ目で開始し、8ページ目で終了する(以下のChapterも同様に解釈される)。章の開始ページと章の終了ページとが同じである場合がある(例えば、Chapter1.2.1)。また、前の章の終了ページと、次の章の開始ページとが同じである場合がある(例えば、Chapter1.2.2とChapter1.3)。また、同じページの中に、複数の章の開始ページが含まれる場合がある(例えば、Chapter1.3からChapter2.1.1)。
【0038】
図7は、図6に示す印刷データの文章構造の、PDFのOutlinesによる記述例である。PDFはPortable Document Formatの略であり、Adobe Systems Incorporatedの米国ならびにその他における商標または登録商標である。画像形成装置10は、クライアントPC40から受信した印刷データ(PDF)を解析して、図7に示す文章構造を抽出する。
【0039】
図8は、図7に示す印刷データの文章構造の記述例を説明する模式図である。図7に示す文章構造は、図8に示すように、ルートノードN21と、ノードN22〜N31がリンクで結ばれた階層構造を有する。各ノード間は、親ノード(Parent)、最初の子ノード(First)、最後の子ノード(Last)、次のノード(Next)、前のノード(Prev)というリンクで結ばれている。各ノードは、章のタイトル(Chapter1など)、子ノードの数(Count)、参照ページ(Dest)といった属性を持つ。Destは、印刷データの文章が含むページのうち、ノードに対応するChapterが最初に出現するページ、すなわち、当該Chapterによって文章が区切られる箇所に対応するページを示す。本実施形態では、各階層が含むノードの「Dest」に設定されたページが、当該階層に対応する挿入箇所である。
【0040】
図8に示す例では、ノードN22、N28、N31が、第1階層である。ノードN23、N24、N27、N29が、第2階層である。ノードN25、N26、N30が、第3階層である。すなわち、画像形成装置10が備えるCPU205は、印刷データの、該印刷データが含む文章の区切りを示す項目に関する階層構造を解析する解析手段として機能する。
【0041】
本発明が適用する印刷データおよび文章構造は、図6乃至7に示す印刷データおよび文章構造に限定されない。例えば、本発明の画像形成装置10は、PDF/VTなど内部的に文章構造を有する他の種類の印刷データフォーマットにも適用することができる。また、画像形成装置10が、例えば、印刷データとは別に、文章構造を表す文章構造データを参照して、当該印刷データの文章構造を解析するようにしてもよい。
【0042】
図9は、インデックス紙挿入テーブルと必要インデックス数テーブルの例を示す図である。インデックス紙挿入テーブルと必要インデックス数テーブルとは、印刷データの印刷物へのインデックス紙の挿入箇所に関する情報を格納する。インデックス紙挿入テーブルは、印刷物へのインデックス紙の挿入箇所と、この挿入箇所の階層との対応情報(第1の対応情報)を格納する。必要インデックス数テーブルは、インデックス紙の挿入箇所の階層と該階層に対応する挿入箇所に挿入されるインデックス紙の数の最大値との対応情報(第2の対応情報)を格納する。画像形成装置10のCPU205が、上記文章の階層構造の解析結果に基づいて、インデックス紙挿入テーブルと必要インデックス数テーブルを作成し、RAM206に格納する。
【0043】
図9(A)は、インデックス紙挿入テーブルの例を示す。インデックス紙挿入テーブル1001は、エントリ番号(i)1002、インデックス紙挿入ページ(Ii)1003、インデックス紙階層(Li)1004といったデータ項目を有する。エントリ番号(i)1002は、インデックス紙挿入テーブル1001のエントリ(1行分のデータ)を一意に識別する番号である。エントリ番号は、1から開始して、エントリの順番に1ずつ増加する。インデックス紙挿入ページ(Ii)1003は、i番目のエントリに対応するインデックス紙挿入ページの番号である。インデックス紙挿入ページは、インデックス紙を挿入するページである。インデックス紙階層(Li)1004は、i番目のエントリに対応するインデックス紙階層である。インデックス紙階層は、インデックス紙挿入ページに対応する階層である。例えば、図8に示す第1階層のノードのDestを参照すると、ページ2、ページ17、ページ19が、第1階層におけるインデックス紙挿入ページである。従って、インデックス紙階層「1」が、これらのインデックス紙挿入ページに対応する。
【0044】
図9(A)に示すインデックス紙挿入テーブル1001は、図8を参照して説明した印刷データの文章構造に基づいて生成される。インデックス紙挿入テーブルの具体的な生成方法については、図11を参照して後述する。
【0045】
図9(B)は、必要インデックス数テーブルの例を示す。必要インデックス数テーブル1101は、インデックス紙階層(L)1102、必要インデックス数(TL)1103といったデータ項目を有する。インデックス紙階層(L)1102は、文章データの階層を示す。インデックス紙階層(L)1102は、1から開始して、階層の深さに応じて1ずつ増加する。必要インデックス数(TL)1103は、階層Lにおける区切りの数の最大値、すなわち、階層Lに対応する挿入箇所に挿入されるインデックス紙の数の最大値である。
【0046】
図9(B)に示す必要インデックス数テーブル1101は、図8を参照して説明した印刷データの文章構造に基づいて生成される。インデックス紙挿入テーブルの具体的な生成方法については、図12を参照して後述する。
【0047】
図10は、画像形成装置の動作処理を説明するフローチャートの例である。まず、CPU205が、ネットワーク50を介して、クライアントPC40から印刷データを受信して、HDD208に格納する(ステップS1)。続いて、CPU205が、HDD208に格納された印刷データを抽出する。そして、CPU205が、抽出した印刷データの文章構造であって、項目とページとの対応付けに関する階層構造を解析する解析手段として機能する(ステップS2)。例えば、CPU205は、図8に示す階層構造を解析結果として取得する。
【0048】
次に、CPU205が、ステップS2における階層構造の解析結果に基づいて、テーブル作成処理を実行する(ステップS3)。テーブル作成処理は、インデックス紙挿入テーブルの作成処理と必要インデックス数テーブルの作成処理である。そして、CPU205が、ステップS3において作成したインデックス紙挿入テーブルと必要インデックス数テーブルとに基づいて、印刷処理を実行する(ステップS4)。
【0049】
図11は、図10のステップS3において実行されるテーブル作成処理を説明するフローチャートの例である。この例では、CPU205は、図8に示す印刷データの文章構造の解析結果に基づいて、インデックス紙挿入テーブルの作成処理と、必要インデックス数テーブルの作成処理とを実行する。まず、CPU205が、後の処理で使用する変数の初期化を行う(ステップS31)。具体的には、CPU205が、処理中の階層Lを0に初期化する。また、CPU205が、必要インデックス数TL(L=1,2,…)を0に初期化する。
【0050】
次に、CPU205が、処理対象のノードをルートノードに変更する(ステップS32)。図9に示す文章構造の記述例では、ルートノードは、ノードN21である。また、図7に示すPDFのフォーマットの例では、TypeにOutlinesの属性を持つオブジェクトがルートノードである。
【0051】
次に、CPU205が、処理対象のノードに子ノードがあるかを判断する(ステップS33)。具体的には、CPU205は、処理対象のノードのCountが1以上であるかを判断し、処理対象のノードのCountが1以上である場合に、処理対象のノードに子ノードがあると判断する。CPU205は、処理対象のノードのCountが1以上でない場合に、処理対象のノードに子ノードがないと判断する。
【0052】
CPU205が、処理対象のノードに子ノードがあると判断した場合は、ステップS34に進む。処理対象ノードに子ノードがないと判定された場合、ステップS209に進む。CPU205が、処理対象のノードに子ノードがないと判断した場合は、ステップS39に進む。
【0053】
ステップS34において、CPU205が、処理対象のノードを最初の子ノードに変更する(ステップS34)。最初の子ノードは、処理対象のノードのFirstのリンクが指すノードである。続いて、CPU205が、処理中の階層Lに1を増分する(ステップS35)。
【0054】
次に、CPU205が、インデックス紙挿入テーブル1001にエントリを追加する(ステップS36)。具体的には、CPU205は、当該エントリに対応するエントリ番号(i)1002に、直前のエントリ番号に1を増分した値を設定する。また、CPU205は、インデックス紙挿入ページ(Ii)1003に、処理対象のノードの参照ページ(Dest)を設定する。また、CPU205は、インデックス紙階層(Li)1004に、処理中の階層Lを設定する。
【0055】
次に、CPU205が、処理対象のノードの子ノードの数(Count)が、必要インデックス数テーブル1101に格納された、階層Lに対応する必要インデックス数(TL)1103より大きいかを判断する(ステップS37)。CPU205が、処理対象のノードの子ノードの数が階層Lに対応する必要インデックス数(TL)1103より大きいと判断した場合は、ステップS38に進む。CPU205が、処理対象のノードの子ノードの数が階層Lに対応する必要インデックス数(TL)1103より大きくないと判断した場合は、ステップS33に戻り、CPU205が、以降のノードに対して処理を続行する。
【0056】
ステップS38において、CPU205が、必要インデックス数テーブル1101における、階層Lに対応する必要インデックス数(TL)1103を、処理対象のノードの子ノードの数(Count)に設定する(ステップS38)。そして、処理がステップS33に戻り、CPU205が、以降のノードに対して処理を続行する。
【0057】
ステップS39において、CPU205が、処理対象のノードに次のノードがあるかを判断する(ステップS39)。次のノードとは、処理対象のノードのNextのリンクが指すノードである。CPU205が、処理対象のノードに次のノードがあると判断した場合は、CPU205が、処理対象のノードを次のノードに変更する(ステップS40)。そして、処理がステップS36に進んで、インデックス紙挿入テーブル1001にエントリが追加される。
【0058】
CPU205が、処理対象のノードに次のノードがないと判断した場合は、CPU205が、処理対象のノードを親ノードに変更する(ステップS41)。親ノードは、処理対象のノードのParentのリンクが指すノードである。続いて、CPU205が、処理中の階層Lから1を減分する(ステップS42)。
【0059】
次に、CPU205が、処理対象のノードがルートノードであるかを判断する(ステップS43)。具体的には、CPU205が、処理対象のノードがTypeにOutlinesの属性を持つオブジェクトであるかを判断する。CPU205が、処理対象のノードがTypeにOutlinesの属性を持つオブジェクトであると判断した場合、CPU205は、当該処理対象のノードがルートノードであると判断する。CPU205が、処理対象のノードがTypeにOutlinesの属性を持つオブジェクトでないと判断した場合、CPU205は、当該処理対象のノードがルートノードでないと判断する。
【0060】
CPU205が、処理対象のノードがルートノードでないと判断した場合は、ステップS39に戻る。CPU205が、処理対象のノードがルートノードであると判断した場合は、処理を終了する。
【0061】
図12は、印刷処理の詳細を説明するフローチャートの例である。図12を参照して、実施例1について説明する。実施例1では、図5に示すように、クライアントPC40のユーザは、ジョブ投入画面上で、第1階層に対応する給紙段として給紙段1を指定する。また、ユーザは、第2階層に対応する給紙段として給紙段2を指定する。また、ユーザは、第3階層に対応する給紙段として給紙段3を指定する。
【0062】
CPU205が、ジョブ投入画面上で指定された、各階層に使用するインデックス紙の給紙段に載置されているインデックス紙の数と、必要インデックス数テーブル1101に格納された必要インデックス数(TL)とに基づき、以下の処理を実行する。給紙段にセットされたインデックス紙のインデックス数は、各給紙段に載置されているインデックス紙の数は、予め登録されている。
【0063】
CPU205が、全ての階層Lについて、該階層Lに対応する給紙段として指定された給紙段に載置されているインデックスの数が、必要インデックス数(TL)以上であるかを判断する(ステップS51)。すなわち、CPU205は、ジョブ投入画面上での指定操作に応じた指定情報と必要インデックス数テーブル1101に格納された情報とに基づいて、以下の処理を実行する。CPU205は、指定情報が指定する給紙段のうち、給紙段に載置されたインデックス紙の数が該給紙段に対応する階層に対応するインデックス紙の数の最大値未満である給紙段があるかを判断する。
【0064】
全ての階層Lについて、該階層Lに対応する給紙段として指定された給紙段に載置されているインデックスの数が、必要インデックス数(TL)以上である場合は、ステップS54に進む。いずれかの階層Lについて、該階層Lに対応する給紙段として指定された給紙段に載置されているインデックスの数が、必要インデックス数(TL)未満である場合は、ステップS52に進む。
【0065】
次に、CPU205が、操作部210(図4(A))に挿入インデックス紙変更画面を表示し、ユーザに、挿入するインデックス紙を選択させる(ステップS52)。すなわち、CPU205は、給紙段に載置されたインデックス紙の数が該給紙段に対応する階層に対応するインデックス紙の数の最大値未満である給紙部があると判断した場合に、該給紙段に載置されたインデックス紙の数が不足していることを表示する。
【0066】
図13は、挿入インデックス紙変更画面の例を示す図である。この例では、必要インデックス数(T2)は、3である。また、指定された第2階層の給紙段2に載置されているインデックスの数は、2である。従って、CPU205は、挿入インデックス紙変更画面上に、第2階層のインデックス数が不足しており、必要インデックス数分(3枚分)のインデックス紙をセットするようにユーザに促す表示を行う。
【0067】
図13に示す挿入インデックス紙変更画面上には、各給紙段を示すアイコンが表示されている。この例では、CPU205は、給紙段2を示すアイコン100を、給紙段2のインデックス数が不足していることを示す表示形式で表示する。また、この例では、給紙段5に載置されているインデックスの数が、必要インデックス数の3以上であるものとする。従って、CPU205は、CPU205は、給紙段5を示すアイコン200を、当該給紙段5が給紙段2に代替できることを示す表示形式で表示する。すなわち、CPU205は、載置されたインデックス紙の数が給紙段に対応する階層に対応するインデックス紙の数の最大値以上である給紙段を示す情報を表示する。ユーザが処理続行指示をする場合、ユーザは、挿入インデックス紙変更画面上のOKボタンを押し下げする。
【0068】
次に、CPU205が、ユーザによる処理続行指示が行われたかを判断する(ステップS53)。ユーザによる処理続行指示が行われない場合は、ステップS53に戻る。ユーザによる処理続行指示が行われた場合は、ステップS54に進む。
【0069】
ステップS54において、CPU205が、後の処理で使用する変数の初期化を行う(ステップS54)。具体的には、CPU205が、処理対象ページNを1に初期化する。また、CPU205が、処理中の階層Lを1に初期化する。また、CPU205が、インデックス紙挿入テーブルの処理中のエントリ番号iを1に初期化する。
【0070】
次に、CPU205が、印刷データ中にNページ目が存在するかを判断する(ステップS55)。印刷データ中にNページ目が存在しない場合は、処理を終了する。印刷データ中にNページ目が存在する場合は、ステップS56に進み、CPU205が、Nページ目の印刷処理を続行する。
【0071】
ステップS56において、CPU205が、i番目のインデックス紙挿入ページ(Ii)1003と処理対象ページNとが等しいかを判断する(ステップS56)。インデックス紙挿入ページ(Ii)1003と処理対象ページNとが等しい場合は、ステップS57に進んで、インデックス紙の挿入処理に移行する。インデックス紙挿入ページ(Ii)1003と処理対象ページNとが等しくない場合は、ステップS64に進み、Nページ目の印刷処理に移行する。
【0072】
ステップS57において、CPU205が、i番目のインデックス紙階層(Li)1004が、処理中の階層Lよりも小さいかを判断する(ステップS57)。i番目のインデックス紙階層(Li)1004が、処理中の階層Lよりも小さい場合、現在の階層Lより上位階層で文章の区切りすなわちインデックス紙の挿入箇所があることを意味する。つまり、この場合には、インデックス紙の挿入箇所に対応する階層が、下位の階層から上位の階層に切り替わる。従って、この場合には、ステップS58以降のインデックス紙の排出処理に移行する。i番目のインデックス紙階層(Li)1004が、処理中の階層L以上である場合、ステップS61以降のインデックス紙の挿入処理に移行する。
【0073】
ステップS58において、CPU205が、現在の階層Lに対応するインデックス紙と階層Lの1つ上位の階層である階層L−1に対応するインデックス紙とが同一であるかを判断する(ステップS58)。すなわち、CPU205は、下位の階層の挿入箇所に挿入されたインデックス紙と上位の階層の挿入箇所に挿入されるインデックス紙とが同じであるかを判断する。具体的には、CPU205は、ジョブ投入画面上で指定された各階層に対応する給紙段の情報に基づいて、階層Lに対応する給紙段と階層L−1に対応する給紙段とが同一であるかを判断する。
【0074】
階層Lに対応する給紙段と階層L−1に対応する給紙段とが同一である場合、CPU205は、階層Lに対応するインデックス紙と階層L−1に対応するインデックス紙とが同一であると判断する。階層Lに対応する給紙段と階層L−1に対応する給紙段とが同一でない場合、CPU205は、階層Lに対応するインデックス紙と階層L−1に対応するインデックス紙とが同一でないと判断する。
【0075】
階層Lに対応するインデックス紙と階層L−1に対応するインデックス紙とが同一である場合は、ステップS60に進む。階層Lに対応するインデックス紙と階層L−1に対応するインデックス紙とが同一でない場合は、ステップS59に進む。そして、CPU205が、階層Lに対応する給紙段に残ったインデックス紙を排出する(ステップS59)。すなわち、CPU205は、指定情報が指定する給紙段に載置されたインデックスセットが含むインデックス紙のうち、印刷物に挿入されていないインデックス紙を排出する排出手段として機能する。そして、CPU205は、下位の階層の挿入箇所に挿入されたインデックス紙と上位の階層の挿入箇所に挿入されるインデックス紙とが同じでないと判断した場合に、下位の階層の挿入箇所に挿入されていないインデックス紙を排出する。このインデックス紙の排出処理によって、以降の処理で再び階層Lに対応するインデックス紙が挿入される場合には、1枚目のインデックス紙が挿入される。続いて、CPU205が、処理中の階層Lから1を減分し、ステップS59に戻る。
【0076】
ステップS61において、CPU205が、処理中の階層Lをi番目のインデックス紙階層(Li)1004に設定する(ステップS61)。CPU205が、プリンタエンジン202を用いて、階層Lに対応する給紙段からインデックス紙を1枚挿入する(ステップS62)。CPU205は、インデックス紙挿入テーブル1001に格納された情報に基づいて、階層Lに対応する挿入箇所にインデックス紙を挿入する。そして、CPU205が、処理中のエントリ番号iに1を増分して、ステップS56に戻る。
【0077】
ステップS64において、CPU205が、プリンタエンジン202を用いて、Nページ目を印刷出力する(ステップS64)。そして、CPU205が、処理対象ページNに1を増分して(ステップS65)、ステップS55に戻る。
【0078】
以上説明した印刷処理によって、インデックス紙挿入テーブル1001の内容に応じた箇所にインデックス紙が挿入された印刷物が出力される。すなわち、CPU205は、インデックス紙挿入テーブルと必要インデックス数テーブルとに格納された情報に基づいて、印刷物の挿入箇所にインデックス紙を挿入して出力する出力手段として機能する。
【0079】
図14は、実施例1における印刷物の出力例を示す図である。図14に示すように、12.1節に対応するインデックスのインデックス部の位置は、先頭の位置である。また、2.1.1節に対応するインデックスのインデックス部の位置も、先頭の位置である。すなわち、インデックス紙のインデックス部の位置が、第3階層における先頭の節と一対一に対応する。本実施例では、第2階層に対応する給紙段と第3階層に対応する給紙段とが異なる(図5)。従って、CPU205は、図14中の1.2.2節に対応するインデックス紙を挿入して出力した後、1.3節に対応するインデックス紙の挿入処理に移行する前に、第3階層に対応するインデックス紙の排出処理を実行する(図12のS58,S59)。これにより、第3階層における節の番号とインデックス部の位置とが一対一に対応するのである。
【0080】
以下に、実施例1の効果について説明する。従来の技術では、多階層の文章構造を有する印刷ジョブにインデックス紙を挿入する場合において、印刷ジョブのどのページが章・節の区切りに当たるかをユーザが明示的に指定する必要があった。従って、複雑な文章構造を有する文章や、多数の章・節を有する文章の印刷において、ユーザの作業負荷が特に高くなり、印刷効率の低減や、作業ミスの要因になりうるという問題があった。実施例1によれば、多階層の文章構造を有する印刷ジョブにインデックス紙を挿入する場合において、章・節の区切りの位置を文章構造から検出して、多階層の文章構造に適したインデックス紙を挿入することができる。これにより、印刷ジョブのどのページが章・節の区切りに当たるかをユーザが明示的に指定する必要がなくなり、所望の出力物を従来よりも短手番で得ることができる。
【0081】
また、従来の技術では、章・節の区切りの数がインデックス紙のセットの耳の数より多い場合にも、特に警告等を行わず、2セット目以降のインデックス紙を用いて印刷を行っていた。そのため、章・節の区切りの数がインデックス紙の1セットの耳の数より非常に多い印刷ジョブにおいては、耳の位置が何周もしてしまい、出力物を手に取ったユーザが目的の章・節を探すのに時間がかかるという問題があった。実施例1によれば、印刷開始前に章・節の区切りの数を検出して、1セットの耳の数が章・節の区切りの数よりも多いインデックス紙を選択することができる。また、実施例1によれば、図14を参照して説明したように、インデックス紙の耳の位置が章・節の番号と一対一で対応するようにできる。従って、容易に目的の章・節を参照できる出力物を得ることができる。
【0082】
また、従来の技術では、1つのページに複数の章・節の区切りの数が含まれる場合、インデックス紙を1枚だけ挿入して印刷を行っていた。そのため、1つのページに複数の章・節の区切りの数がある印刷ジョブにおいては、耳の位置がずれてしまい、出力物を手に取ったユーザが目的の章・節を探すのに時間がかかるという問題があった。実施例1によれば、1つのページに複数の章・節の区切りの数が含まれる場合、該ページの前に、該当する章・節の区切りに対応する複数枚のインデックス紙を挿入して印刷を行うことができる。
【0083】
例えば、図9(A)に示すインデックス紙挿入テーブル1001において、処理中のエントリ番号iが、7から8、8から9に順次移行した場合を想定する。この場合、インデックス紙階層(Li)が、第1階層から第2階層、第2階層から第3階層へと順次移行する。従って、図12のステップS57の判断処理がNoとなる。そして、ステップS62において、第2階層のインデックス紙(図14に示す2.1節のインデックス紙)、第3階層のインデックス紙(図14に示す2.1.1節のインデックス紙)が順次挿入される。
【0084】
図15は、実施例2におけるジョブ投入画面の例を示す図である。実施例2では、クライアントPC40のユーザは、ジョブ投入画面上で、第1階層に対応する給紙段として給紙段1を指定する。また、ユーザは、第2階層に対応する給紙段として給紙段2を指定する。また、ユーザは、第3階層に対応する給紙段として給紙段2を指定する。
【0085】
図16は、実施例2における印刷物の出力例を示す図である。実施例2においても、実施例1と同様に、画像形成装置10は、図12に示すフローチャートが示す処理を実行する。ここで、図15を参照して説明したように、実施例2においては、第2階層に対応する給紙段と、第3階層に対応する給紙段は、同じ給紙段2である。従って、インデックス紙階層(Li)が第3階層から第2階層に移行した場合(図12のS57でYes)に引き続いて実行されるステップS58の判断処理はYesとなる。これにより、インデックス紙の排出が抑制される。その結果、第2階層と第3階層とを通じて、インデックス紙の耳の位置が連続するように、インデックス紙が挿入される。
【0086】
従来の技術では、文章のそれぞれの階層に、耳の大きさ・色などが異なる複数種のインデックス紙を用いることが前提となっていた。そのため、少ない種類のインデックス紙のみを用いて、多階層の区別を有する出力物を作成することが難しいという問題があった。実施例2によれば、連続する階層に同じ種類のインデックス紙を使用する場合に、該階層間の切り替えにおけるインデックス紙の排出を抑制することができる。これにより、連続する階層を通じて、耳の位置が連続するようにインデックス紙が挿入される。その結果、少ない種類のインデックス紙のみを用いて、多階層の区別を有する出力物を作成することができる。
【0087】
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【0088】
10 画像形成装置
20 プリントサーバ
【技術分野】
【0001】
本発明は、画像形成装置、画像形成装置の制御方法およびコンピュータプログラムに関する。
【背景技術】
【0002】
ユーザが指定した任意のページでインデックス紙を挿入し、本文を分割する処理を行う画像形成装置が提案されている。インデックス紙は、通常の矩形の用紙にインデックス部(耳)を付加して形成される形状を有する。一般的に、インデックス部の位置が異なる複数枚のインデックス紙によって、インデックス紙の1つのセットが構成される。インデックス紙のセットにおいては、インデックス部の位置が異なる複数枚のインデックス紙が、インデックス部の位置が順次ずれるように重ねられている。インデックス紙が備えるインデックス部が通常の用紙サイズからはみ出ることによって、紙束の章分けなどを行ったりすることができる。インデックス紙が挿入された出力物を手にとったユーザは、インデックス紙のインデックス部の位置に基づいて任意のページを参照することが可能である。
【0003】
画像形成装置は、印刷ジョブが印刷対象とする先頭のインデックス紙のインデックス部の位置が最上段となるように1枚目を給紙する。挿入するインデックス紙の枚数とインデックス紙の束の枚数に差異が出た場合、画像形成装置は、ジョブ終了時等に残りのインデックス紙を機外排出して、次の印刷ジョブのために、インデックス紙のセットの頭出しを行う。この処理を、残インデックス紙排出処理という。
【0004】
また、近年では、複数種類のインデックス紙をユーザが指定した任意のページに挿入することにより、章や節といった多階層の文章構造に対応して本文を分割することが行われている。例えば、特許文献1は、章・節の区切りをユーザが指定し、それぞれに色の異なるインデックス紙を用いて、印刷物を区分けする画像形成装置を開示する。
【0005】
また、特許文献2は、印刷対象の文書のインデックスデータを検出して文書の構造を解析し、解析結果に応じて、インデックスの内容を表示する画像形成装置を開示する。この画像形成装置のユーザが、表示されたインデックスの内容に基づいて、インデックスを指定する。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2006−248672号公報
【特許文献2】特開2007―283675号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
特許文献1、2に代表されるような従来の画像形成装置では、多階層の文章構造を有する印刷ジョブにインデックス紙を挿入する場合において、印刷ジョブのどのページが章・節の区切りに当たるかをユーザが明示的に指定する必要があった。従って、複雑な文章構造を有する印刷データや、多数の章・節を有する印刷データの印刷において、ユーザの作業負荷が特に高くなり、印刷効率の低減や、作業ミスの要因になりうるという問題があった。
【0008】
本発明は、印刷対象の印刷データが含む文書の階層構造を解析し、解析結果に基づいて、印刷物へのインデックス紙の挿入箇所を自動で決定する画像形成装置の提供を目的とする。
【課題を解決するための手段】
【0009】
本発明の一実施形態の画像形成装置は、印刷データを受信する受信手段と、前記受信した印刷データの、該印刷データが含む文章の区切りを示す項目に関する階層構造を解析する解析手段と、前記階層構造の解析結果に基づいて、前記印刷データの印刷物へのインデックス紙の挿入箇所に関する情報を生成する生成手段と、前記生成された印刷物へのインデックス紙の挿入箇所に関する情報に基づいて、前記印刷物の挿入箇所に前記インデックス紙を挿入して出力する出力手段とを備える。
【発明の効果】
【0010】
本発明の画像形成装置によれば、印刷対象の印刷データが含む文書の階層構造を解析し、解析結果に基づいて、印刷物へのインデックス紙の挿入箇所を自動で決定することができる。例えば、多階層の文章構造を有する印刷ジョブにインデックス紙を挿入する場合において、章・節の区切りの位置を文章構造から検出して、多階層の文章構造に適したインデックス紙を挿入することができる。これにより、印刷ジョブのどのページが章・節の区切りに当たるかをユーザが明示的に指定する必要がなくなる。その結果、ユーザが所望する出力物を従来よりも短手番で得ることができる。
【図面の簡単な説明】
【0011】
【図1】本実施形態のシステム構成例を示す図である。
【図2】画像形成装置の構成例を示す図である。
【図3】画像形成装置が備えるコントロールユニットの構成例を示す図である。
【図4】画像形成装置の操作部の構成例を示す図である。
【図5】ジョブ投入画面の一例を示す図である。
【図6】印刷データの文章構造の一例を示す図である。
【図7】PDFのOutlinesによる印刷データの文章構造の記述例である。
【図8】印刷データの文章構造の記述例を説明する模式図である。
【図9】インデックス紙挿入テーブルと必要インデックス数テーブルの例である。
【図10】画像形成装置の動作処理を説明するフローチャートの例である。
【図11】インデックス紙挿入テーブル作成処理を示すフローチャートである。
【図12】印刷処理の詳細を説明するフローチャートの例である。
【図13】挿入インデックス紙変更画面の例を示す図である。
【図14】実施例1における印刷物の出力例を示す図である。
【図15】実施例2におけるジョブ投入画面の例を示す図である。
【図16】実施例2における印刷物の出力例を示す図である。
【発明を実施するための形態】
【0012】
図1は、本実施形態のシステム構成例を示す図である。図1に示すシステムは、画像形成装置10、プリントサーバ20、ファイルサーバ30、クライアントPC(Personal Computer)40を備える。画像形成装置10乃至クライアントPC40は、ネットワーク50を通じて互いに通信する。ネットワーク50は、例えば、LAN(Local Area Network),WAN(Wide Area Network )等である。
【0013】
画像形成装置10は、本実施形態の画像形成装置である。画像形成装置10は、例えば、スキャン、プリント、コピーなどの様々な機能を有するMFP(Multi Function Peripheral)である。本実施形態に特有の動作として、画像形成装置10は、クライアントPC40から、印刷ジョブの投入を受ける。印刷ジョブは、画像形成装置10が、印刷データを受信して、印刷を行い、必要な終了処理を行うまでの一連の処理のまとまりを指す。本実施形態において、印刷ジョブは、多階層の文章構造(階層構造)を有する文書データを含む。画像形成装置10は、投入された印刷ジョブに基づいて、印刷ジョブが含む文書データに対応する印刷物に、インデックス紙を挿入して出力する。
【0014】
プリントサーバ20は、入力された印刷ジョブや、ネットワーク50を介して接続されている画像形成装置10を管理する。プリントサーバ20は、画像形成装置10と印刷ジョブの状況を監視するとともに、印刷ジョブの一時停止、設定変更、印刷再開、あるいはジョブの複製、移動、削除などの制御を行う。
【0015】
ファイルサーバ30は、バリアブル印刷に使用するバリアブルデータに係るデータベースを保管する。ファイルサーバ30は、例えば宛先、住所、氏名などの顧客データを有する顧客データベースを保管する。クライアントPC40は、アプリケーションファイルの編集や印刷指示を行う機能を有する。また、クライアントPC40は、プリントサーバ20が管理している画像形成装置10や印刷ジョブの監視や制御を補佐する機能を有する。クライアントPCは、ジョブ投入画面を表示し、ジョブ投入画面上でのユーザの操作に応じて、画像形成装置10に対してジョブ(例えば、印刷ジョブ)を投入する。クライアントPC40のユーザは、クライアントPC40を利用して、ジョブのステータスなどを確認することができる。
【0016】
図2は、画像形成装置の構成例を示す図である。図2に示す画像形成装置10はMFPである。画像形成装置10は、スキャナ部、レーザ露光部、感光ドラム、作像部、定着部、給紙/搬送部、および、これらを制御する不図示のプリンタ制御部を備える。
【0017】
スキャナ部は、原稿台に置かれた原稿に対して、照明を当てて原稿画像を光学的に読み取り、その像を電気信号に変換して画像データを作成する。レーザ露光部は、前記画像データに応じて変調されたレーザ光などの光線を等角速度で回転する回転多面鏡(ポリゴンミラー)に入射させ、反射走査光として感光ドラムに照射する。
【0018】
作像部は、電子写真プロセスを実行する。すなわち、作像部は、感光ドラムを回転駆動し、帯電器によって帯電させ、前記レーザ露光部によって感光ドラム上に形成された潜像をトナーによって現像化し、そのトナー像をシート(用紙)に転写する。また、作像部は、転写されずに感光ドラム上に残った微小トナーを回収する。シートが転写ベルトの所定位置に巻きつき、4回転する間に、マゼンタ(M)、シアン(C)、イエロー(Y)、ブラック(K)のトナーを持つそれぞれの現像ユニット(現像ステーション)が入れ替わりつつ、順次電子写真プロセスが繰り返し実行される。4回転の後、4色のフルカラートナー像を転写されたシートは、転写ドラムを離れ、定着部へ搬送される。
【0019】
定着部は、ローラやベルトの組み合わせによって構成される。定着部は、ハロゲンヒータなどの熱源を内蔵しており、作像部によってトナー像が転写されたシート上のトナーを、熱と圧力によって溶解、定着させる。
【0020】
給紙/搬送部は、シートカセットやペーパーデッキに代表されるシート収納庫(給紙段)を一つ以上備える。本実施形態において、所定の給紙段は、インデックスセットが載置される給紙部として機能する。インデックスセットは、各々のインデックス紙が備えるインデックス部が順次ずれるように重ねられた複数のインデックス紙を含む。
【0021】
給紙/搬送部は、プリンタ制御部の指示に応じて、シート収納庫に収納された複数のシートの中から一枚分離し、作像部・定着部へ搬送する。シートは、作像部の転写ドラムに巻きつけられ、4回転した後に定着部へ搬送される。4回転する間にYMCK各色のトナー像がシートに転写される。また、シートの両面に画像形成する場合は、給紙/搬送部は、定着部を通過したシートが再度作像部へ搬送する搬送経路を通るように制御する。
【0022】
プリンタ制御部は、MFPとしての画像形成装置10全体を制御するMFP制御部(不図示)と通信し、MFP制御部からの指示に応じて制御を実行する。また、プリンタ制御部は、スキャナ部、レーザ露光部、作像部、定着部、給紙/搬送各部の状態を管理しながら、全体が調和を保って円滑に動作できるように制御する。
【0023】
図3は、画像形成装置が備えるコントロールユニットの構成例を示す図である。コントロールユニット200は、画像入力デバイスであるスキャナ201や画像出力デバイスであるプリンタエンジン202と接続し、画像データの読み取りやプリント出力のための制御を行う。また、コントロールユニット200は、ネットワーク50や公衆回線204と接続することで、画像情報やデバイス情報をネットワーク50経由で入出力するための制御を行う。本実施形態の画像形成装置の制御方法は、コントロールユニット200の機能によって実現される。
【0024】
コントロールユニット200が備えるCPU(Central Processing Unit)205は、画像形成装置10全体を制御する中央処理装置である。RAM(Random Access Memory)206は、CPU205が動作するためのシステムワークメモリである。RAM206は、入力された画像データを一時記憶するための画像メモリでもある。
【0025】
ROM(Read Only Memory)207は、ブートROMであり、システムのブートプログラムが格納されている。HDD(Hard Disk Drive)208はハードディスクドライブである。HDD208は、各種処理のためのシステムソフトウェア及び入力された画像データ等を格納する。また、HDD208には、本実施形態の画像形成装置の制御方法を実現するコンピュータプログラムが予め格納されている。CPU205が、HDD208に格納されたこのコンピュータプログラムをRAM206に読み出した上で実行する。操作部I/F(Interface)209は、画像データ等を表示可能な表示画面を有する操作部210に対するインタフェース部である。操作部I/F209は、操作部210に対して操作画面データを出力する。また、操作部I/F209は、操作部210から操作者が入力した情報をCPU205に伝える。
【0026】
ネットワークインタフェース211は、例えばLANカード等を備える。ネットワークインタフェース211は、ネットワーク50に接続して外部装置との間で情報の入出力を行う。モデム212は公衆回線204に接続し、外部装置との間で情報の入出力を行う。以上のユニットがシステムバス213上に配置されている。
【0027】
イメージバスI/F214は、システムバス213と画像データを高速で転送する画像バス215とを接続するためのインタフェースであり、データ構造を変換するバスブリッジである。画像バス215上には、ラスタイメージプロセッサ216、デバイスI/F217、スキャナ画像処理部218、プリンタ画像処理部219、画像編集用画像処理部220、CMM230が接続される。CMMは、Color Management Moduleの略称である。
【0028】
RIP(Raster Image Processor)216は、ラスタイメージプロセッサである。RIP216は、ページ記述言語(Page Description Language :PDL)をラスタイメージに展開する。なお、一般に、RIP処理は、PDLを中間データ(DL)に変換するインタープリット処理と、ラスタイメージに変換するレンダリング処理という2通りの意味で使用される。本実施形態の説明では、説明の便宜上、RIPされたデータはラスタイメージに展開されるものとして説明するが、一旦中間データ(DL)に変換される形態も本発明の対象に含まれることは言うまでもない。デバイスI/F部217は、スキャナ201やプリンタエンジン202とコントロールユニット200とを接続し、画像データの同期系/非同期系の変換を行う。
【0029】
スキャナ画像処理部218は、スキャナ201から入力した画像データに対して、補正、加工、編集等の各種処理を行う。プリンタ画像処理部219は、プリント出力する画像データに対して、プリンタエンジンに応じた補正、解像度変換等の処理を行う。画像編集用画像処理220は、画像データの回転や、画像データの圧縮伸長処理等の各種画像処理を行う。CMM(Color Management Module)230は、画像データに対して、プロファイルやキャリブレーションデータに基づいた、色変換処理(色空間変換処理ともいう)を施す専用ハードウェアモジュールである。プロファイルは、機器に依存した色空間で表現したカラー画像データを機器に依存しない色空間(例えばLabなど)に変換するための関数のような情報である。キャリブレーションデータは、カラー複合機3におけるスキャナ部201やプリンタエンジン202の色再現特性を修正するためのデータである。
【0030】
図4は、画像形成装置の操作部の構成例を示す図である。図4(A)は、操作部210の外観を示す。図4(B)は、図4(A)に示す操作部の部分拡大図である。図4(A)に示すように、操作部210は、ハードキーによるユーザ操作を受付け可能なキー入力部402を備える。また、操作部210は、ソフトキー(表示キー)によるユーザ操作を受付可能な表示ユニットの一例としてのタッチパネル部401を有する。
【0031】
図4(A)に示すように、キー入力部402は、操作部電源スイッチ501を備える。CPU205は、スイッチ501に対するユーザ操作に応じて、スタンバイモードとスリープモードを選択的に切り換える制御を実行する。スタンバイモードは、通常動作状態であり、スリープモードは、ネットワーク印刷やファクシミリなどに備えて割り込み待ち状態でプログラムを停止して、消費電力を抑えている状態である。CPU205は、システム全体の電源供給を行う主電源スイッチ(不図示)がON状態の場合に、スイッチ501のユーザ操作が受け付け可能となるように制御する。
【0032】
スタートキー503は、処理対象となるジョブのコピー動作や送信動作等、ユーザにより指示されたジョブ処理を印刷装置に開始させる指示をユーザから受け付け可能にするキーである。ストップキー502は、受け付けたジョブの処理を印刷装置に中断させる指示をユーザから受け付け可能にするキーである。テンキー506は、各種設定の置数の設定をするキーである。クリアキー507は、キー506を介してユーザにより設定された置数等の各種パラメータを解除するキーである。リセットキー504は、ユーザにより処理対象のジョブに対して設定された各種設定を全て無効にするキーである。また、リセットキー504は、設定値をデフォルト状態に戻す指示をユーザから受け付けるキーである。ユーザモードキー505は、ユーザ毎のシステム設定画面を表示するためのキーである。
【0033】
図5は、クライアントPCが表示するジョブ投入画面の一例を示す図である。本実施形態では、ユーザは、ジョブ投入画面上で、印刷データのファイル名と、文章構造に合わせてインデックス紙を挿入するか否かと、各階層に使用するインデックス紙の給紙段とを指定することができる。クライアントPC40は、ジョブ投入画面上でのユーザの指定操作に応じた指定情報を生成する。指定情報は、給紙段と階層との対応情報であって、各階層に対応する挿入箇所に挿入されるインデックス紙をどの給紙部から給紙するかを指定する情報である。クライアントPC40は、指定情報を含む印刷ジョブを生成して画像形成装置10に投入する。これにより、画像形成装置10に対して、各階層に使用するインデックス紙の給紙段が指定される。画像形成装置10のCPU205は、印刷ジョブが含む指定情報に従って、給紙段に載置されたインデックスセットが含むインデックス紙を順次給紙して各階層に対応する挿入箇所に挿入する。
【0034】
「ファイル名」は、画像形成装置10に印刷させるファイルの名称を指定する項目である。この「ファイル名」として指定されたファイルが、印刷データとしてクライアントPC40から画像形成装置10にネットワーク50を介して送信される。画像形成装置10のCPU205が、クライアントPC40から送信された印刷データを受信する受信手段として機能する。そして、CPU205は、受信した印刷データを1つの印刷ジョブとして、印刷処理を行う。「文書構造に合わせてインデックス紙を挿入」は、印刷データの文書構造に合わせて、出力物にインデックス紙を挿入するか否かを指定する項目である。該指定項目において「する」が指定された場合、各階層に使用するインデックス紙の給紙段が指定できるようになる。
【0035】
ジョブ投入画面は、各階層に使用するインデックス紙の給紙段を指定する項目として、「第1階層のインデックス紙」、「第2階層のインデックス紙」、「第3階層のインデックス紙」を有する。「第1階層のインデックス紙」は、文章構造の第1階層に挿入されるインデックス紙のセットを載置する給紙段を指定する項目である。「第2階層のインデックス紙」は、文章構造の第2階層に挿入されるインデックス紙のセットを載置する給紙段を指定する項目である。「第3階層のインデックス紙」は、文章構造の第3階層に挿入されるインデックス紙のセットを載置する給紙段を指定する項目である。図5では、インデックス紙が挿入する階層を最大で3階層とした場合の指定項目を示しているが、インデックス紙が挿入する階層の数は、3階層に限定されない。
【0036】
図6は、画像形成装置が処理対象とする印刷データの文章構造の一例を示す図である。図6に示す印刷データは、画像形成10のCPU205がクライアント装置40から受信した印刷データであり、この例では、OutlinedDocument.pdfという文章データである。この印刷データは、20ページ分のページ(オブジェクト)を含み、最大で3階層の文章構造を有する。印刷データが含むページのうち、1ページ目は表紙である。Chapter1は、1章である。Chapter1.1は、1.1節である。Chapter1.2は、1.2節である。Chapter1.2.1は、1.2.1節である。Chapter1.2.2は、1.2.2節である。Chapter1.3は、1.3節である。Chapter2は、2章である。Chapter2.1は、2.1節である。Chapter2.1.1は、2.1.1節である。Chapter3は、3章である。
【0037】
Chapter1、Chapter1.1、...、Chapter3は、印刷データが含む文章の区切りを示す項目である。Chapter1は、2ページ目で開始し、5ページ目で終了する。Chapter1.1は、6ページ目で開始し、8ページ目で終了する(以下のChapterも同様に解釈される)。章の開始ページと章の終了ページとが同じである場合がある(例えば、Chapter1.2.1)。また、前の章の終了ページと、次の章の開始ページとが同じである場合がある(例えば、Chapter1.2.2とChapter1.3)。また、同じページの中に、複数の章の開始ページが含まれる場合がある(例えば、Chapter1.3からChapter2.1.1)。
【0038】
図7は、図6に示す印刷データの文章構造の、PDFのOutlinesによる記述例である。PDFはPortable Document Formatの略であり、Adobe Systems Incorporatedの米国ならびにその他における商標または登録商標である。画像形成装置10は、クライアントPC40から受信した印刷データ(PDF)を解析して、図7に示す文章構造を抽出する。
【0039】
図8は、図7に示す印刷データの文章構造の記述例を説明する模式図である。図7に示す文章構造は、図8に示すように、ルートノードN21と、ノードN22〜N31がリンクで結ばれた階層構造を有する。各ノード間は、親ノード(Parent)、最初の子ノード(First)、最後の子ノード(Last)、次のノード(Next)、前のノード(Prev)というリンクで結ばれている。各ノードは、章のタイトル(Chapter1など)、子ノードの数(Count)、参照ページ(Dest)といった属性を持つ。Destは、印刷データの文章が含むページのうち、ノードに対応するChapterが最初に出現するページ、すなわち、当該Chapterによって文章が区切られる箇所に対応するページを示す。本実施形態では、各階層が含むノードの「Dest」に設定されたページが、当該階層に対応する挿入箇所である。
【0040】
図8に示す例では、ノードN22、N28、N31が、第1階層である。ノードN23、N24、N27、N29が、第2階層である。ノードN25、N26、N30が、第3階層である。すなわち、画像形成装置10が備えるCPU205は、印刷データの、該印刷データが含む文章の区切りを示す項目に関する階層構造を解析する解析手段として機能する。
【0041】
本発明が適用する印刷データおよび文章構造は、図6乃至7に示す印刷データおよび文章構造に限定されない。例えば、本発明の画像形成装置10は、PDF/VTなど内部的に文章構造を有する他の種類の印刷データフォーマットにも適用することができる。また、画像形成装置10が、例えば、印刷データとは別に、文章構造を表す文章構造データを参照して、当該印刷データの文章構造を解析するようにしてもよい。
【0042】
図9は、インデックス紙挿入テーブルと必要インデックス数テーブルの例を示す図である。インデックス紙挿入テーブルと必要インデックス数テーブルとは、印刷データの印刷物へのインデックス紙の挿入箇所に関する情報を格納する。インデックス紙挿入テーブルは、印刷物へのインデックス紙の挿入箇所と、この挿入箇所の階層との対応情報(第1の対応情報)を格納する。必要インデックス数テーブルは、インデックス紙の挿入箇所の階層と該階層に対応する挿入箇所に挿入されるインデックス紙の数の最大値との対応情報(第2の対応情報)を格納する。画像形成装置10のCPU205が、上記文章の階層構造の解析結果に基づいて、インデックス紙挿入テーブルと必要インデックス数テーブルを作成し、RAM206に格納する。
【0043】
図9(A)は、インデックス紙挿入テーブルの例を示す。インデックス紙挿入テーブル1001は、エントリ番号(i)1002、インデックス紙挿入ページ(Ii)1003、インデックス紙階層(Li)1004といったデータ項目を有する。エントリ番号(i)1002は、インデックス紙挿入テーブル1001のエントリ(1行分のデータ)を一意に識別する番号である。エントリ番号は、1から開始して、エントリの順番に1ずつ増加する。インデックス紙挿入ページ(Ii)1003は、i番目のエントリに対応するインデックス紙挿入ページの番号である。インデックス紙挿入ページは、インデックス紙を挿入するページである。インデックス紙階層(Li)1004は、i番目のエントリに対応するインデックス紙階層である。インデックス紙階層は、インデックス紙挿入ページに対応する階層である。例えば、図8に示す第1階層のノードのDestを参照すると、ページ2、ページ17、ページ19が、第1階層におけるインデックス紙挿入ページである。従って、インデックス紙階層「1」が、これらのインデックス紙挿入ページに対応する。
【0044】
図9(A)に示すインデックス紙挿入テーブル1001は、図8を参照して説明した印刷データの文章構造に基づいて生成される。インデックス紙挿入テーブルの具体的な生成方法については、図11を参照して後述する。
【0045】
図9(B)は、必要インデックス数テーブルの例を示す。必要インデックス数テーブル1101は、インデックス紙階層(L)1102、必要インデックス数(TL)1103といったデータ項目を有する。インデックス紙階層(L)1102は、文章データの階層を示す。インデックス紙階層(L)1102は、1から開始して、階層の深さに応じて1ずつ増加する。必要インデックス数(TL)1103は、階層Lにおける区切りの数の最大値、すなわち、階層Lに対応する挿入箇所に挿入されるインデックス紙の数の最大値である。
【0046】
図9(B)に示す必要インデックス数テーブル1101は、図8を参照して説明した印刷データの文章構造に基づいて生成される。インデックス紙挿入テーブルの具体的な生成方法については、図12を参照して後述する。
【0047】
図10は、画像形成装置の動作処理を説明するフローチャートの例である。まず、CPU205が、ネットワーク50を介して、クライアントPC40から印刷データを受信して、HDD208に格納する(ステップS1)。続いて、CPU205が、HDD208に格納された印刷データを抽出する。そして、CPU205が、抽出した印刷データの文章構造であって、項目とページとの対応付けに関する階層構造を解析する解析手段として機能する(ステップS2)。例えば、CPU205は、図8に示す階層構造を解析結果として取得する。
【0048】
次に、CPU205が、ステップS2における階層構造の解析結果に基づいて、テーブル作成処理を実行する(ステップS3)。テーブル作成処理は、インデックス紙挿入テーブルの作成処理と必要インデックス数テーブルの作成処理である。そして、CPU205が、ステップS3において作成したインデックス紙挿入テーブルと必要インデックス数テーブルとに基づいて、印刷処理を実行する(ステップS4)。
【0049】
図11は、図10のステップS3において実行されるテーブル作成処理を説明するフローチャートの例である。この例では、CPU205は、図8に示す印刷データの文章構造の解析結果に基づいて、インデックス紙挿入テーブルの作成処理と、必要インデックス数テーブルの作成処理とを実行する。まず、CPU205が、後の処理で使用する変数の初期化を行う(ステップS31)。具体的には、CPU205が、処理中の階層Lを0に初期化する。また、CPU205が、必要インデックス数TL(L=1,2,…)を0に初期化する。
【0050】
次に、CPU205が、処理対象のノードをルートノードに変更する(ステップS32)。図9に示す文章構造の記述例では、ルートノードは、ノードN21である。また、図7に示すPDFのフォーマットの例では、TypeにOutlinesの属性を持つオブジェクトがルートノードである。
【0051】
次に、CPU205が、処理対象のノードに子ノードがあるかを判断する(ステップS33)。具体的には、CPU205は、処理対象のノードのCountが1以上であるかを判断し、処理対象のノードのCountが1以上である場合に、処理対象のノードに子ノードがあると判断する。CPU205は、処理対象のノードのCountが1以上でない場合に、処理対象のノードに子ノードがないと判断する。
【0052】
CPU205が、処理対象のノードに子ノードがあると判断した場合は、ステップS34に進む。処理対象ノードに子ノードがないと判定された場合、ステップS209に進む。CPU205が、処理対象のノードに子ノードがないと判断した場合は、ステップS39に進む。
【0053】
ステップS34において、CPU205が、処理対象のノードを最初の子ノードに変更する(ステップS34)。最初の子ノードは、処理対象のノードのFirstのリンクが指すノードである。続いて、CPU205が、処理中の階層Lに1を増分する(ステップS35)。
【0054】
次に、CPU205が、インデックス紙挿入テーブル1001にエントリを追加する(ステップS36)。具体的には、CPU205は、当該エントリに対応するエントリ番号(i)1002に、直前のエントリ番号に1を増分した値を設定する。また、CPU205は、インデックス紙挿入ページ(Ii)1003に、処理対象のノードの参照ページ(Dest)を設定する。また、CPU205は、インデックス紙階層(Li)1004に、処理中の階層Lを設定する。
【0055】
次に、CPU205が、処理対象のノードの子ノードの数(Count)が、必要インデックス数テーブル1101に格納された、階層Lに対応する必要インデックス数(TL)1103より大きいかを判断する(ステップS37)。CPU205が、処理対象のノードの子ノードの数が階層Lに対応する必要インデックス数(TL)1103より大きいと判断した場合は、ステップS38に進む。CPU205が、処理対象のノードの子ノードの数が階層Lに対応する必要インデックス数(TL)1103より大きくないと判断した場合は、ステップS33に戻り、CPU205が、以降のノードに対して処理を続行する。
【0056】
ステップS38において、CPU205が、必要インデックス数テーブル1101における、階層Lに対応する必要インデックス数(TL)1103を、処理対象のノードの子ノードの数(Count)に設定する(ステップS38)。そして、処理がステップS33に戻り、CPU205が、以降のノードに対して処理を続行する。
【0057】
ステップS39において、CPU205が、処理対象のノードに次のノードがあるかを判断する(ステップS39)。次のノードとは、処理対象のノードのNextのリンクが指すノードである。CPU205が、処理対象のノードに次のノードがあると判断した場合は、CPU205が、処理対象のノードを次のノードに変更する(ステップS40)。そして、処理がステップS36に進んで、インデックス紙挿入テーブル1001にエントリが追加される。
【0058】
CPU205が、処理対象のノードに次のノードがないと判断した場合は、CPU205が、処理対象のノードを親ノードに変更する(ステップS41)。親ノードは、処理対象のノードのParentのリンクが指すノードである。続いて、CPU205が、処理中の階層Lから1を減分する(ステップS42)。
【0059】
次に、CPU205が、処理対象のノードがルートノードであるかを判断する(ステップS43)。具体的には、CPU205が、処理対象のノードがTypeにOutlinesの属性を持つオブジェクトであるかを判断する。CPU205が、処理対象のノードがTypeにOutlinesの属性を持つオブジェクトであると判断した場合、CPU205は、当該処理対象のノードがルートノードであると判断する。CPU205が、処理対象のノードがTypeにOutlinesの属性を持つオブジェクトでないと判断した場合、CPU205は、当該処理対象のノードがルートノードでないと判断する。
【0060】
CPU205が、処理対象のノードがルートノードでないと判断した場合は、ステップS39に戻る。CPU205が、処理対象のノードがルートノードであると判断した場合は、処理を終了する。
【0061】
図12は、印刷処理の詳細を説明するフローチャートの例である。図12を参照して、実施例1について説明する。実施例1では、図5に示すように、クライアントPC40のユーザは、ジョブ投入画面上で、第1階層に対応する給紙段として給紙段1を指定する。また、ユーザは、第2階層に対応する給紙段として給紙段2を指定する。また、ユーザは、第3階層に対応する給紙段として給紙段3を指定する。
【0062】
CPU205が、ジョブ投入画面上で指定された、各階層に使用するインデックス紙の給紙段に載置されているインデックス紙の数と、必要インデックス数テーブル1101に格納された必要インデックス数(TL)とに基づき、以下の処理を実行する。給紙段にセットされたインデックス紙のインデックス数は、各給紙段に載置されているインデックス紙の数は、予め登録されている。
【0063】
CPU205が、全ての階層Lについて、該階層Lに対応する給紙段として指定された給紙段に載置されているインデックスの数が、必要インデックス数(TL)以上であるかを判断する(ステップS51)。すなわち、CPU205は、ジョブ投入画面上での指定操作に応じた指定情報と必要インデックス数テーブル1101に格納された情報とに基づいて、以下の処理を実行する。CPU205は、指定情報が指定する給紙段のうち、給紙段に載置されたインデックス紙の数が該給紙段に対応する階層に対応するインデックス紙の数の最大値未満である給紙段があるかを判断する。
【0064】
全ての階層Lについて、該階層Lに対応する給紙段として指定された給紙段に載置されているインデックスの数が、必要インデックス数(TL)以上である場合は、ステップS54に進む。いずれかの階層Lについて、該階層Lに対応する給紙段として指定された給紙段に載置されているインデックスの数が、必要インデックス数(TL)未満である場合は、ステップS52に進む。
【0065】
次に、CPU205が、操作部210(図4(A))に挿入インデックス紙変更画面を表示し、ユーザに、挿入するインデックス紙を選択させる(ステップS52)。すなわち、CPU205は、給紙段に載置されたインデックス紙の数が該給紙段に対応する階層に対応するインデックス紙の数の最大値未満である給紙部があると判断した場合に、該給紙段に載置されたインデックス紙の数が不足していることを表示する。
【0066】
図13は、挿入インデックス紙変更画面の例を示す図である。この例では、必要インデックス数(T2)は、3である。また、指定された第2階層の給紙段2に載置されているインデックスの数は、2である。従って、CPU205は、挿入インデックス紙変更画面上に、第2階層のインデックス数が不足しており、必要インデックス数分(3枚分)のインデックス紙をセットするようにユーザに促す表示を行う。
【0067】
図13に示す挿入インデックス紙変更画面上には、各給紙段を示すアイコンが表示されている。この例では、CPU205は、給紙段2を示すアイコン100を、給紙段2のインデックス数が不足していることを示す表示形式で表示する。また、この例では、給紙段5に載置されているインデックスの数が、必要インデックス数の3以上であるものとする。従って、CPU205は、CPU205は、給紙段5を示すアイコン200を、当該給紙段5が給紙段2に代替できることを示す表示形式で表示する。すなわち、CPU205は、載置されたインデックス紙の数が給紙段に対応する階層に対応するインデックス紙の数の最大値以上である給紙段を示す情報を表示する。ユーザが処理続行指示をする場合、ユーザは、挿入インデックス紙変更画面上のOKボタンを押し下げする。
【0068】
次に、CPU205が、ユーザによる処理続行指示が行われたかを判断する(ステップS53)。ユーザによる処理続行指示が行われない場合は、ステップS53に戻る。ユーザによる処理続行指示が行われた場合は、ステップS54に進む。
【0069】
ステップS54において、CPU205が、後の処理で使用する変数の初期化を行う(ステップS54)。具体的には、CPU205が、処理対象ページNを1に初期化する。また、CPU205が、処理中の階層Lを1に初期化する。また、CPU205が、インデックス紙挿入テーブルの処理中のエントリ番号iを1に初期化する。
【0070】
次に、CPU205が、印刷データ中にNページ目が存在するかを判断する(ステップS55)。印刷データ中にNページ目が存在しない場合は、処理を終了する。印刷データ中にNページ目が存在する場合は、ステップS56に進み、CPU205が、Nページ目の印刷処理を続行する。
【0071】
ステップS56において、CPU205が、i番目のインデックス紙挿入ページ(Ii)1003と処理対象ページNとが等しいかを判断する(ステップS56)。インデックス紙挿入ページ(Ii)1003と処理対象ページNとが等しい場合は、ステップS57に進んで、インデックス紙の挿入処理に移行する。インデックス紙挿入ページ(Ii)1003と処理対象ページNとが等しくない場合は、ステップS64に進み、Nページ目の印刷処理に移行する。
【0072】
ステップS57において、CPU205が、i番目のインデックス紙階層(Li)1004が、処理中の階層Lよりも小さいかを判断する(ステップS57)。i番目のインデックス紙階層(Li)1004が、処理中の階層Lよりも小さい場合、現在の階層Lより上位階層で文章の区切りすなわちインデックス紙の挿入箇所があることを意味する。つまり、この場合には、インデックス紙の挿入箇所に対応する階層が、下位の階層から上位の階層に切り替わる。従って、この場合には、ステップS58以降のインデックス紙の排出処理に移行する。i番目のインデックス紙階層(Li)1004が、処理中の階層L以上である場合、ステップS61以降のインデックス紙の挿入処理に移行する。
【0073】
ステップS58において、CPU205が、現在の階層Lに対応するインデックス紙と階層Lの1つ上位の階層である階層L−1に対応するインデックス紙とが同一であるかを判断する(ステップS58)。すなわち、CPU205は、下位の階層の挿入箇所に挿入されたインデックス紙と上位の階層の挿入箇所に挿入されるインデックス紙とが同じであるかを判断する。具体的には、CPU205は、ジョブ投入画面上で指定された各階層に対応する給紙段の情報に基づいて、階層Lに対応する給紙段と階層L−1に対応する給紙段とが同一であるかを判断する。
【0074】
階層Lに対応する給紙段と階層L−1に対応する給紙段とが同一である場合、CPU205は、階層Lに対応するインデックス紙と階層L−1に対応するインデックス紙とが同一であると判断する。階層Lに対応する給紙段と階層L−1に対応する給紙段とが同一でない場合、CPU205は、階層Lに対応するインデックス紙と階層L−1に対応するインデックス紙とが同一でないと判断する。
【0075】
階層Lに対応するインデックス紙と階層L−1に対応するインデックス紙とが同一である場合は、ステップS60に進む。階層Lに対応するインデックス紙と階層L−1に対応するインデックス紙とが同一でない場合は、ステップS59に進む。そして、CPU205が、階層Lに対応する給紙段に残ったインデックス紙を排出する(ステップS59)。すなわち、CPU205は、指定情報が指定する給紙段に載置されたインデックスセットが含むインデックス紙のうち、印刷物に挿入されていないインデックス紙を排出する排出手段として機能する。そして、CPU205は、下位の階層の挿入箇所に挿入されたインデックス紙と上位の階層の挿入箇所に挿入されるインデックス紙とが同じでないと判断した場合に、下位の階層の挿入箇所に挿入されていないインデックス紙を排出する。このインデックス紙の排出処理によって、以降の処理で再び階層Lに対応するインデックス紙が挿入される場合には、1枚目のインデックス紙が挿入される。続いて、CPU205が、処理中の階層Lから1を減分し、ステップS59に戻る。
【0076】
ステップS61において、CPU205が、処理中の階層Lをi番目のインデックス紙階層(Li)1004に設定する(ステップS61)。CPU205が、プリンタエンジン202を用いて、階層Lに対応する給紙段からインデックス紙を1枚挿入する(ステップS62)。CPU205は、インデックス紙挿入テーブル1001に格納された情報に基づいて、階層Lに対応する挿入箇所にインデックス紙を挿入する。そして、CPU205が、処理中のエントリ番号iに1を増分して、ステップS56に戻る。
【0077】
ステップS64において、CPU205が、プリンタエンジン202を用いて、Nページ目を印刷出力する(ステップS64)。そして、CPU205が、処理対象ページNに1を増分して(ステップS65)、ステップS55に戻る。
【0078】
以上説明した印刷処理によって、インデックス紙挿入テーブル1001の内容に応じた箇所にインデックス紙が挿入された印刷物が出力される。すなわち、CPU205は、インデックス紙挿入テーブルと必要インデックス数テーブルとに格納された情報に基づいて、印刷物の挿入箇所にインデックス紙を挿入して出力する出力手段として機能する。
【0079】
図14は、実施例1における印刷物の出力例を示す図である。図14に示すように、12.1節に対応するインデックスのインデックス部の位置は、先頭の位置である。また、2.1.1節に対応するインデックスのインデックス部の位置も、先頭の位置である。すなわち、インデックス紙のインデックス部の位置が、第3階層における先頭の節と一対一に対応する。本実施例では、第2階層に対応する給紙段と第3階層に対応する給紙段とが異なる(図5)。従って、CPU205は、図14中の1.2.2節に対応するインデックス紙を挿入して出力した後、1.3節に対応するインデックス紙の挿入処理に移行する前に、第3階層に対応するインデックス紙の排出処理を実行する(図12のS58,S59)。これにより、第3階層における節の番号とインデックス部の位置とが一対一に対応するのである。
【0080】
以下に、実施例1の効果について説明する。従来の技術では、多階層の文章構造を有する印刷ジョブにインデックス紙を挿入する場合において、印刷ジョブのどのページが章・節の区切りに当たるかをユーザが明示的に指定する必要があった。従って、複雑な文章構造を有する文章や、多数の章・節を有する文章の印刷において、ユーザの作業負荷が特に高くなり、印刷効率の低減や、作業ミスの要因になりうるという問題があった。実施例1によれば、多階層の文章構造を有する印刷ジョブにインデックス紙を挿入する場合において、章・節の区切りの位置を文章構造から検出して、多階層の文章構造に適したインデックス紙を挿入することができる。これにより、印刷ジョブのどのページが章・節の区切りに当たるかをユーザが明示的に指定する必要がなくなり、所望の出力物を従来よりも短手番で得ることができる。
【0081】
また、従来の技術では、章・節の区切りの数がインデックス紙のセットの耳の数より多い場合にも、特に警告等を行わず、2セット目以降のインデックス紙を用いて印刷を行っていた。そのため、章・節の区切りの数がインデックス紙の1セットの耳の数より非常に多い印刷ジョブにおいては、耳の位置が何周もしてしまい、出力物を手に取ったユーザが目的の章・節を探すのに時間がかかるという問題があった。実施例1によれば、印刷開始前に章・節の区切りの数を検出して、1セットの耳の数が章・節の区切りの数よりも多いインデックス紙を選択することができる。また、実施例1によれば、図14を参照して説明したように、インデックス紙の耳の位置が章・節の番号と一対一で対応するようにできる。従って、容易に目的の章・節を参照できる出力物を得ることができる。
【0082】
また、従来の技術では、1つのページに複数の章・節の区切りの数が含まれる場合、インデックス紙を1枚だけ挿入して印刷を行っていた。そのため、1つのページに複数の章・節の区切りの数がある印刷ジョブにおいては、耳の位置がずれてしまい、出力物を手に取ったユーザが目的の章・節を探すのに時間がかかるという問題があった。実施例1によれば、1つのページに複数の章・節の区切りの数が含まれる場合、該ページの前に、該当する章・節の区切りに対応する複数枚のインデックス紙を挿入して印刷を行うことができる。
【0083】
例えば、図9(A)に示すインデックス紙挿入テーブル1001において、処理中のエントリ番号iが、7から8、8から9に順次移行した場合を想定する。この場合、インデックス紙階層(Li)が、第1階層から第2階層、第2階層から第3階層へと順次移行する。従って、図12のステップS57の判断処理がNoとなる。そして、ステップS62において、第2階層のインデックス紙(図14に示す2.1節のインデックス紙)、第3階層のインデックス紙(図14に示す2.1.1節のインデックス紙)が順次挿入される。
【0084】
図15は、実施例2におけるジョブ投入画面の例を示す図である。実施例2では、クライアントPC40のユーザは、ジョブ投入画面上で、第1階層に対応する給紙段として給紙段1を指定する。また、ユーザは、第2階層に対応する給紙段として給紙段2を指定する。また、ユーザは、第3階層に対応する給紙段として給紙段2を指定する。
【0085】
図16は、実施例2における印刷物の出力例を示す図である。実施例2においても、実施例1と同様に、画像形成装置10は、図12に示すフローチャートが示す処理を実行する。ここで、図15を参照して説明したように、実施例2においては、第2階層に対応する給紙段と、第3階層に対応する給紙段は、同じ給紙段2である。従って、インデックス紙階層(Li)が第3階層から第2階層に移行した場合(図12のS57でYes)に引き続いて実行されるステップS58の判断処理はYesとなる。これにより、インデックス紙の排出が抑制される。その結果、第2階層と第3階層とを通じて、インデックス紙の耳の位置が連続するように、インデックス紙が挿入される。
【0086】
従来の技術では、文章のそれぞれの階層に、耳の大きさ・色などが異なる複数種のインデックス紙を用いることが前提となっていた。そのため、少ない種類のインデックス紙のみを用いて、多階層の区別を有する出力物を作成することが難しいという問題があった。実施例2によれば、連続する階層に同じ種類のインデックス紙を使用する場合に、該階層間の切り替えにおけるインデックス紙の排出を抑制することができる。これにより、連続する階層を通じて、耳の位置が連続するようにインデックス紙が挿入される。その結果、少ない種類のインデックス紙のみを用いて、多階層の区別を有する出力物を作成することができる。
【0087】
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【0088】
10 画像形成装置
20 プリントサーバ
【特許請求の範囲】
【請求項1】
印刷データを受信する受信手段と、
前記受信した印刷データの、該印刷データが含む文章の区切りを示す項目に関する階層構造を解析する解析手段と、
前記階層構造の解析結果に基づいて、前記印刷データの印刷物へのインデックス紙の挿入箇所に関する情報を生成する生成手段と、
前記生成された印刷物へのインデックス紙の挿入箇所に関する情報に基づいて、前記印刷物の挿入箇所に前記インデックス紙を挿入して出力する出力手段とを備える
ことを特徴とする画像形成装置。
【請求項2】
各々のインデックス紙が備えるインデックス部が順次ずれるように重ねられた複数のインデックス紙を含むインデックスセットが載置される給紙部を備え、
前記出力手段は、前記給紙部と前記階層構造が含む階層との対応情報であって、各階層に対応する挿入箇所に挿入されるインデックス紙をどの給紙部から給紙するかを指定する指定情報に従って、前記給紙部に載置されたインデックスセットが含むインデックス紙を順次給紙して各階層に対応する挿入箇所に挿入する
ことを特徴とする請求項1に記載の画像形成装置。
【請求項3】
前記生成手段は、印刷物へのインデックス紙の挿入箇所と、前記階層構造が含む階層との対応情報である第1の対応情報と、前記挿入箇所の階層と該階層に対応する挿入箇所に挿入されるインデックス紙の数の最大値との対応情報である第2の対応情報とを生成し、
前記出力手段は、前記指定情報と前記第2の対応情報とに基づいて、前記指定情報が指定する給紙部のうち、給紙部に載置されたインデックス紙の数が該給紙部に対応する階層に対応する前記インデックス紙の数の最大値未満である給紙部があるかを判断し、給紙部に載置されたインデックス紙の数が該給紙部に対応する階層に対応する前記インデックス紙の数の最大値未満である給紙部があると判断した場合に、該給紙部に載置されたインデックス紙の数が不足していることを表示する
ことを特徴とする請求項2に記載の画像形成装置。
【請求項4】
前記出力手段は、給紙部に載置されたインデックス紙の数が該給紙部に対応する階層に対応する前記インデックス紙の数の最大値未満である給紙部があると判断した場合に、該給紙部に載置されたインデックス紙の数が不足していることを表示するとともに、載置されたインデックス紙の数が前記給紙部に対応する階層に対応する前記インデックス紙の数の最大値以上である給紙部を示す情報を表示する
ことを特徴とする請求項3に記載の画像形成装置。
【請求項5】
前記指定情報が指定する給紙部に載置されたインデックスセットが含むインデックス紙のうち、前記印刷物に挿入されていないインデックス紙を排出する排出手段を備え、
前記出力手段は、
前記第1の対応情報に基づいて、各階層の挿入箇所にインデックス紙を挿入し、
前記インデックス紙の挿入箇所に対応する階層が、下位の階層から上位の階層に切り替わる場合に、該下位の階層の挿入箇所に挿入されたインデックス紙と該上位の階層の挿入箇所に挿入されるインデックス紙とが同じであるかを判断し、
前記排出手段は、前記下位の階層の挿入箇所に挿入されたインデックス紙と該上位の階層の挿入箇所に挿入されるインデックス紙とが同じでないと判断された場合に、該下位の階層の挿入箇所に挿入されていないインデックス紙を排出する
ことを特徴とする請求項2乃至4のいずれか1項に記載の画像形成装置。
【請求項6】
文書データを受信する工程と、
前記受信した印刷データの、該印刷データが含む文章の区切りを示す項目に関する階層構造を解析する工程と、
前記階層構造の解析結果に基づいて、前記文書データの印刷物へのインデックス紙の挿入箇所に関する情報を生成する工程と、
前記生成された印刷物へのインデックス紙の挿入箇所に関する情報に基づいて、前記印刷物の挿入箇所に前記インデックス紙を挿入して出力する工程とを有する
ことを特徴とする画像形成装置の制御方法。
【請求項7】
請求項6に記載の画像形成装置の制御方法をコンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項1】
印刷データを受信する受信手段と、
前記受信した印刷データの、該印刷データが含む文章の区切りを示す項目に関する階層構造を解析する解析手段と、
前記階層構造の解析結果に基づいて、前記印刷データの印刷物へのインデックス紙の挿入箇所に関する情報を生成する生成手段と、
前記生成された印刷物へのインデックス紙の挿入箇所に関する情報に基づいて、前記印刷物の挿入箇所に前記インデックス紙を挿入して出力する出力手段とを備える
ことを特徴とする画像形成装置。
【請求項2】
各々のインデックス紙が備えるインデックス部が順次ずれるように重ねられた複数のインデックス紙を含むインデックスセットが載置される給紙部を備え、
前記出力手段は、前記給紙部と前記階層構造が含む階層との対応情報であって、各階層に対応する挿入箇所に挿入されるインデックス紙をどの給紙部から給紙するかを指定する指定情報に従って、前記給紙部に載置されたインデックスセットが含むインデックス紙を順次給紙して各階層に対応する挿入箇所に挿入する
ことを特徴とする請求項1に記載の画像形成装置。
【請求項3】
前記生成手段は、印刷物へのインデックス紙の挿入箇所と、前記階層構造が含む階層との対応情報である第1の対応情報と、前記挿入箇所の階層と該階層に対応する挿入箇所に挿入されるインデックス紙の数の最大値との対応情報である第2の対応情報とを生成し、
前記出力手段は、前記指定情報と前記第2の対応情報とに基づいて、前記指定情報が指定する給紙部のうち、給紙部に載置されたインデックス紙の数が該給紙部に対応する階層に対応する前記インデックス紙の数の最大値未満である給紙部があるかを判断し、給紙部に載置されたインデックス紙の数が該給紙部に対応する階層に対応する前記インデックス紙の数の最大値未満である給紙部があると判断した場合に、該給紙部に載置されたインデックス紙の数が不足していることを表示する
ことを特徴とする請求項2に記載の画像形成装置。
【請求項4】
前記出力手段は、給紙部に載置されたインデックス紙の数が該給紙部に対応する階層に対応する前記インデックス紙の数の最大値未満である給紙部があると判断した場合に、該給紙部に載置されたインデックス紙の数が不足していることを表示するとともに、載置されたインデックス紙の数が前記給紙部に対応する階層に対応する前記インデックス紙の数の最大値以上である給紙部を示す情報を表示する
ことを特徴とする請求項3に記載の画像形成装置。
【請求項5】
前記指定情報が指定する給紙部に載置されたインデックスセットが含むインデックス紙のうち、前記印刷物に挿入されていないインデックス紙を排出する排出手段を備え、
前記出力手段は、
前記第1の対応情報に基づいて、各階層の挿入箇所にインデックス紙を挿入し、
前記インデックス紙の挿入箇所に対応する階層が、下位の階層から上位の階層に切り替わる場合に、該下位の階層の挿入箇所に挿入されたインデックス紙と該上位の階層の挿入箇所に挿入されるインデックス紙とが同じであるかを判断し、
前記排出手段は、前記下位の階層の挿入箇所に挿入されたインデックス紙と該上位の階層の挿入箇所に挿入されるインデックス紙とが同じでないと判断された場合に、該下位の階層の挿入箇所に挿入されていないインデックス紙を排出する
ことを特徴とする請求項2乃至4のいずれか1項に記載の画像形成装置。
【請求項6】
文書データを受信する工程と、
前記受信した印刷データの、該印刷データが含む文章の区切りを示す項目に関する階層構造を解析する工程と、
前記階層構造の解析結果に基づいて、前記文書データの印刷物へのインデックス紙の挿入箇所に関する情報を生成する工程と、
前記生成された印刷物へのインデックス紙の挿入箇所に関する情報に基づいて、前記印刷物の挿入箇所に前記インデックス紙を挿入して出力する工程とを有する
ことを特徴とする画像形成装置の制御方法。
【請求項7】
請求項6に記載の画像形成装置の制御方法をコンピュータに実行させることを特徴とするコンピュータプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【公開番号】特開2013−1100(P2013−1100A)
【公開日】平成25年1月7日(2013.1.7)
【国際特許分類】
【出願番号】特願2011−138087(P2011−138087)
【出願日】平成23年6月22日(2011.6.22)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成25年1月7日(2013.1.7)
【国際特許分類】
【出願日】平成23年6月22日(2011.6.22)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]