(57)【特許請求の範囲】
【請求項１】
印刷対象データに対して指定された印刷設定に応じて、識別コードの印刷位置を決定する位置決定手段と、
保存手段に保存されている前記印刷対象データを特定するためのリンク情報を含む前記識別コードを生成する識別コード生成手段と、
印刷対象データに基づいて生成されたビットマップデータにおける前記位置決定手段で決定された印刷位置に、前記生成された識別コードのビットマップデータを合成する合成手段と、
前記合成されたビットマップデータを出力する出力手段と
を備え、
前記印刷設定が、複数の論理ページを１つの物理ページに印刷し且つその印刷後の印刷物が物理ページごとに扱われることを前提とした縮小レイアウト印刷である場合、前記位置決定手段は、前記１つの物理ページにおいて、当該複数の論理ページに対応する印刷対象データを特定するためのリンク情報を含む１つの識別コードの印刷位置を決定し、且つ、前記識別コード生成手段は、当該複数の論理ページに対応する印刷対象データを特定するためのリンク情報を含む前記１つの識別コードを生成する
ことを特徴とする画像処理装置。
【請求項２】
前記印刷設定が印刷後の物理ページを裁断して利用することを前提とした裁断印刷である場合、前記位置決定手段は、裁断された後のページ毎に前記識別コードの印刷位置を決定し、且つ、前記識別コード生成手段は、裁断された後のページ毎に対応するそれぞれの識別コードを生成することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記位置決定手段は、前記印刷設定が、印刷後の複数の物理ページを繋ぎ合わせて利用することを前提としたポスター印刷であると判断した場合、当該繋ぎ合わせたときに所定位置になる物理ページにおいて前記識別コードの印刷位置を決定し、前記所定位置以外に繋ぎ合わせられる物理ページに対しては前記識別コードを印刷しないように決定することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記位置決定手段は、前記印刷設定が、印刷後の複数の物理ページがセットで扱われることを前提とした印刷であると判断した場合、該セットの先頭ページにおいて前記識別コードの印刷位置を決定し、該セットの先頭ページ以外のページに対しては前記識別コードを印刷しないように決定することを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記位置決定手段は、前記印刷設定が、両面印刷であると判断した場合、表面のページにおいて前記識別コードの印刷位置を決定することを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記位置決定手段は、前記印刷設定が、通常印刷であると判断した場合、物理ページごとに前記識別コードの印刷位置を決定することを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項７】
前記印刷対象データに関する情報を、前記位置決定手段で決定された前記識別コードの印刷位置の情報と関連付けて保存する保存手段を更に備え、
前記識別コードは、前記保存手段に保存される前記印刷対象データと前記識別コードの印刷位置の情報とを特定するためのリンク情報を含むことを特徴とする請求項１乃至６のいずれか１項に記載の画像処理装置。
【請求項８】
前記印刷対象データを中間ページ記述言語に変換する手段と、
前記中間ページ記述言語から前記ビットマップデータを生成する手段とを更に備え、
前記保存手段によって保存される前記印刷対象データに関する情報は、前記中間ページ記述言語を含むことを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記識別コードは、二次元コード、バーコード又は地紋であることを特徴とする請求項１乃至８のいずれか１項に記載の画像処理装置。
【請求項１０】
位置決定手段が、印刷対象データに対して指定された印刷設定に応じて、識別コードの印刷位置を決定する位置決定ステップと、
識別コード生成手段が、保存手段に保存されている前記印刷対象データを特定するためのリンク情報を含む前記識別コードを生成する識別コード生成ステップと、
合成手段が、印刷対象データに基づいて生成されたビットマップデータにおける前記位置決定ステップで決定された印刷位置に、前記生成された識別コードのビットマップデータを合成する合成ステップと、
出力手段が、前記合成されたビットマップデータを出力する出力ステップと、
を備え、
前記印刷設定が、複数の論理ページを１つの物理ページに印刷し且つその印刷後の印刷物が物理ページごとに扱われることを前提とした縮小レイアウト印刷である場合、前記位置決定ステップでは、前記１つの物理ページにおいて、当該複数の論理ページに対応する印刷対象データを特定するためのリンク情報を含む１つの識別コードの印刷位置を決定し、且つ、前記識別コード生成ステップでは、当該複数の論理ページに対応する印刷対象データを特定するためのリンク情報を含む前記１つの識別コードを生成する
ことを特徴とする画像処理方法。
【請求項１１】
コンピュータを、請求項１乃至９のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１２】
コンピュータを、請求項１乃至９のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オリジナルドキュメントを用いて高品質な印刷を行う技術に関する。
【背景技術】
【０００２】
スキャナで読み取った原稿のスキャンデータをドキュメントデータとして記憶装置に格納しておき、後にその原稿をコピーする際には、その原稿に対応するドキュメントデータを記憶装置から読み出して印刷するシステムがある。このシステムでは、ＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）等の画像処理装置を用いて原稿をコピーする際、原稿のスキャンデータではなく、その原稿に対応するドキュメントデータを印刷用のデータとして利用する。このシステムの一例として、特許文献１に開示された技術がある。特許文献１に開示された技術は次の通りである。
【０００３】
まず、原稿（原本）の印刷時にはドキュメントデータの文書管理情報を表す二次元コードを文書データと共に印刷しておく。次いで、それらのデータが印刷された紙文書のコピー時には、紙文書から検出された二次元コードに基づいて、原稿に対応するドキュメントデータを検索して印刷する。ここで、文書管理情報とは、ドキュメントデータの格納場所（記憶装置、記憶領域等）を特定する情報である。
【０００４】
一方、連続した複数ページの原稿データを１枚の用紙に縮小配置（縮小レイアウト、集約とも言う。）して印刷するページレイアウト印刷がある。ページレイアウト印刷は、ドラフト印刷、カタログ印刷などに有効な機能である。
【０００５】
特許文献２には、出力用紙サイズ・印刷の向き・集約条件などのプリント条件と文書書式とに関するデータを二次元バーコードにして印刷することが記載されている。そして、コピーを行う際に用紙に印刷されている二次元コードを利用して、ページのレイアウトを決定する技術が開示されている。特に、コピーを行う際、スキャンした原稿が既に２ｉｎ１印刷されていた場合、その原稿画像の更なる集約を禁止したり、画像の向きを揃えるような制御を行ったりすることが開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平１０−１４３４１４号公報
【特許文献２】特開２００７−８１９３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら上述した従来の技術には、印刷出力後の印刷物がどのように利用されるかまで考慮して二次元コードの印刷位置を決めるようなことは行っていなかった。
【０００８】
また、予め二次元コードが１ページごとに付与されている文書を、縮小レイアウト（２ｉｎ１、４ｉｎ１など）を行ってそのまま印刷すると、図１１に示すようなページレイアウトの印刷物が得られることになる。図１１からわかるように、二次元コード付きのページが縮小されて印刷されるため、１ページの中に縮小された二次元コードが複数個存在し、その結果、印刷物の見栄えが悪くなる。また、この場合、二次元コードが縮小されて印刷されるため、二次元コードが読み取りにくくなる。さらには、この場合、複数個の二次元コードを処理しなければならないため、印刷処理性能が低下する。
【０００９】
そこで、本発明は、原稿データに対して適切な態様で二次元コードを出力する画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、本願発明に係る画像処理装置は、印刷対象データに対して指定された印刷設定に応じて、識別コードの印刷位置を決定する位置決定手段と、保存手段に保存されている前記印刷対象データを特定するためのリンク情報を含む前記識別コードを生成する識別コード生成手段と、印刷対象データに基づいて生成されたビットマップデータにおける前記位置決定手段で決定された印刷位置に、前記生成された識別コードのビットマップデータを合成する合成手段と、前記合成されたビットマップデータを出力する出力手段とを備え、前記印刷設定が、複数の論理ページを１つの物理ページに印刷し且つその印刷後の印刷物が物理ページごとに扱われることを前提とした縮小レイアウト印刷である場合、前記位置決定手段は、前記１つの物理ページにおいて、当該複数の論理ページに対応する印刷対象データを特定するためのリンク情報を含む１つの識別コードの印刷位置を決定し、且つ、前記識別コード生成手段は、当該複数の論理ページに対応する印刷対象データを特定するためのリンク情報を含む前記１つの識別コードを生成することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、ページレイアウトされた複数ページの情報を管理するページレイアウト情報メタデータへのリンク情報を二次元コード等の識別コードに含ませることにより、ページレイアウト情報を簡単に呼び出すことができる。また、本発明によれば、印刷される二次元コード等の数をページレイアウトに応じた適切な数（例えば、１個）にするため、例えば、次に示す効果が得られる。
・二次元コード等の解析処理時間が短くてすむ。
・二次元コード等の大きさや二次元コード等が印刷される位置を固定でき、二次元コード等の読み取り時の認識率を上げることができる。
・見栄えのいい印刷物をユーザに提供することができる。
【図面の簡単な説明】
【００１２】
【図１】本実施形態を適用するのに好適なＭＦＰの構造例を示す図である。
【図２】本実施形態におけるＭＦＰのコントロールユニットの構成例を示すブロック図である。
【図３】本実施形態における画像処理システムの構成例を示すブロック図である。
【図４】ＭＦＰの動作を制御するコントローラソフトウェアの構成例を示すブロック図である。
【図５】本実施形態における、ＰＤＬプリントにおけるベクタデータ、ディスプレイリスト、メタデータとから構成されるドキュメントの生成処理の流れを示すデータフロー図である。
【図６】本実施形態におけるコピー処理の流れを示すデータフロー図である。
【図７】本実施形態におけるドキュメント印刷処理の流れを示すフローチャートである。
【図８】本実施形態における二次元コードを用いたコピー処理の流れを示すフローチャートである。
【図９】本実施形態におけるドキュメントのデータ構造の一例を示す図である。
【図１０】本実施形態における、図９に示した各種データが格納される記憶部の格納領域を示す図である。
【図１１】二次元コード出力例を表す図である。
【図１２】本実施形態における二次元コード出力例を表す図である。
【図１３】本実施形態におけるページレイアウト情報メタデータを説明するための図である。
【図１４】本実施形態におけるページレイアウト情報メタデータを説明するための図である。
【図１５】本実施形態におけるコピー処理の流れを示すデータフローを示す図である。
【図１６】本実施形態における、紙原稿をスキャンすることにより検出された二次元コードに基づいたドキュメント印刷処理の流れを示すフローチャートである。
【図１７】二次元コードの出力位置を決定するための処理を示すフローチャートである。
【発明を実施するための形態】
【００１３】
本発明を実施するための最良の形態について、図面を参照して説明する。
【００１４】
＜ＭＦＰの構造例＞
図１は、本実施形態を適用するのに好適なＭＦＰの構造例を示す図である。
【００１５】
原稿露光部（スキャナ部）は、原稿台に置かれた原稿を光学的に読み取り、画像データを生成する。
【００１６】
レーザ露光部は、画像データに応じて変調されたレーザ光を、等角速度で回転する回転多面鏡（ポリゴンミラー）に入射させ、反射した光を走査光として感光ドラムに照射し、感光ドラム上に潜像を形成する。
【００１７】
作像部は、電子写真プロセスを実行する。電子写真プロセスは、感光ドラムの回転駆動、帯電器による帯電、トナーによる潜像の現像、トナー像のシートへの転写、感光ドラム上に残った微小トナーの回収等といった一連のプロセスから成る。トナーによる潜像の現像は、シートが転写ベルトの所定位置に巻きつき４回転する間に、マゼンタ（Ｍ）、シアン（Ｃ）、イエロー（Ｙ）、ブラック（Ｋ）のトナーを各々有する現像ユニットにより行われる。この現像プロセスにより、ＹＭＣＫ各色のトナー像が感光ドラム上に形成される。次いで、転写プロセスにより、感光ドラム上に形成された４色のフルカラートナー像がシートに転写される。トナー像が転写されたシートは定着部へ搬送される。
【００１８】
定着部は、ローラ、ベルト及びハロゲンヒータ等の熱源を備え、シート上のトナーを熱と圧力によって溶解することによってシート上にトナー定着させる。
【００１９】
給紙／搬送部は、シートカセットやペーパーデッキ等のシート収納庫を少なくとも１つ備える。給紙／搬送部は、画像処理装置の制御部（図示せず）からの指示にしたがいシート収納庫に収納された複数のシートの中から一枚のシートを分離し、作像部と定着部へ搬送する。シートは、作像部の転写ベルトの所定位置に巻き付き４回転した後に定着部へ搬送される。シートが４回転する間に、ＹＭＣＫ各色のトナー像はシートに転写される。また、シートの両面に画像形成する場合は、定着部を通過したシートは、再度、搬送路を通って作像部に搬送される。
【００２０】
制御部は、スキャナ、レーザ露光部、作像部、定着部、給紙／搬送部等の動作を制御する。
【００２１】
＜システム構成例＞
図３は、本実施形態における画像処理システムの構成例を示すブロック図である。
【００２２】
図３において、画像処理システムは、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）１０等の通信ネットワーク、及び、通信ネットワークを介して通信可能なＭＦＰ３１０、ＭＦＰ３２０、ＭＦＰ３３０を備える。各ＭＦＰはＬＡＮを介して相互にデータ通信を行う。
【００２３】
各ＭＦＰは、記憶装置としてＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）３４０、３５０、３６０を備える。
【００２４】
各ＭＦＰの解像度はＭＦＰの機種毎に異なる。解像度とは、プリンタの印刷などの精細さを表す値である。プリンタでは、１インチ幅に印刷できる点（ドット）の数で解像度（単位はｄｐｉ）を表す。解像度が大きいほど文字や画像を精細に再現できる。また、スキャナでも、画像をどこまで細かく読み取れるかという性能を解像度としてｄｐｉで表す。ＭＦＰ３１０とＭＦＰ３３０のプリンタの解像度は６００ｄｐｉとし、ＭＦＰ３２０のプリンタの解像度は１２００ｄｐｉとする。ＭＦＰに搭載されているスキャナの解像度もＭＦＰ毎に異なる。ＭＦＰ３１０とＭＦＰ３２０のスキャナの解像度は６００ｄｐｉとし、ＭＦＰ３３０のスキャナの解像度は３００ｄｐｉとする。プリンタの処理能力もＭＦＰ毎に異なる。ＭＦＰ３１０とＭＦＰ３２０は、カラー印刷（Ｃｏｌｏｒ：  Ｆｕｌｌ）対応機器とし、ＭＦＰ３２０は、モノクロ印刷（Ｃｏｌｏｒ：  Ｍｏｎｏ）対応機器とする。
【００２５】
また、各ＭＦＰは、ラスタライザを搭載する。ラスタライザとは、コンピュータが扱う文字や画像を、プリンタで印刷できるように、色付きの小さな点の集まり（ビットマップデータ）で表現するハードウェア又はソフトウェアである。コンピュータ内部では、フォント(文字)や印刷用画像などを、点の座標とそれを結ぶ線や面の方程式のパラメータ、および塗りつぶしなどの描画情報をベクタ形式で記憶している。一方、プリンタは、画像を色のついた点(ピクセル)を縦横に並べた集合として扱うため、ベクタ形式の描画情報（ベクタデータ）をそのまま印刷することはできない。このため、ベクタ形式の描画情報をラスタ形式のビットマップデータに変換する必要がある。このようにベクタデータをビットマップデータに変換することをラスタライズとよぶ。
【００２６】
１ページ分のデータをまとめて印刷する機能を備えるＭＦＰを用いて印刷する場合、コンピュータはＰＤＬデータ（ページ記述言語データ）を生成し、生成したＰＤＬデータをネットワーク経由でＭＦＰに送信する。ＭＦＰは、ＰＤＬデータをベクタデータに変換し、さらに、そのベクタデータをディスプレイリスト（ＤＬ）に変換する。ＰＤＬデータとは、印刷対象となる「ページ」に関して、文字や図形をどのように配置するかを指定するためのページ記述言語（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）である。ディスプレイリストとは、ベクタデータをビットマップデータに変換する過程で生成される中間ページ記述言語である。ディスプレイリストには、描画命令が記述される。前述のラスタライザは、このディスプレイリストをビットマップデータに変換する。
【００２７】
尚、ＭＦＰ３１０〜ＭＦＰ３３０の機能、ＭＦＰの台数は図３に示したものに限定されず、また、ＬＡＮ１０にはＭＦＰ以外のコンピュータ等の情報処理装置を接続可能である。
【００２８】
＜コントローラユニットの構成例＞
図２は、本実施形態におけるＭＦＰのコントロールユニットの構成例を示すブロック図である。
【００２９】
コントロールユニット２００は、スキャナ２０１、プリンタエンジン２０２、操作部２１０と接続し、内蔵するＣＰＵを用いて、画像データの読み取り制御、画像処理、印刷出力制御、印刷設定等を行う。また、コントロールユニット２００は、外部装置（他のＭＦＰや、コンピュータ等の情報処理装置）との間で画像情報やデバイス情報の入出力制御を行う。
【００３０】
コントロールユニット２００は、システムバス２１３と、画像データを高速で転送する画像バス２１５とを備え、各バスには各種のコンポーネントが接続される。システムバス２１３と画像バス２１５は、イメージバスＩ／Ｆ２１４を介して接続される。イメージバスＩ／Ｆ２１４は、システムバス２１３と画像バス２１５とを接続するインタフェースである。
【００３１】
システムバス２１３には、ＣＰＵ２０５、ＲＡＭ２０６、ＲＯＭ２０７、ＨＤＤ２０８、操作部Ｉ／Ｆ２０９、ネットワークＩ／Ｆ２１１、モデム２１２が接続される。
【００３２】
ＣＰＵ２０５は、後述するコントローラソフトウェアに基づき動作する。ＲＡＭ２０６は、ＣＰＵ２０５が使用するシステムワークメモリであると共に、入力された画像データを一時記憶するための画像メモリでもある。ＲＯＭ２０７は、ブートＲＯＭであり、システムのブートプログラムを記憶する。ＨＤＤ２０８は、ハードディスクドライブであり、各種処理のためのコントローラソフトウェア及び入力された画像データ等を記憶する。
【００３３】
操作部Ｉ／Ｆ２０９は、操作画面をユーザに提示する操作部２１０に対して操作画面データを出力する。また、操作部Ｉ／Ｆ２０９は、ユーザが操作部２１０に対して入力した指示をＣＰＵ２０５に出力する。ネットワークＩ／Ｆ２１１は、コントロールユニット２００をＬＡＮ１０に接続するためのＬＡＮカード等であって、外部装置との間でデータの送受信を行う。モデム２１２は、コントロールユニット２００を公衆回線２０４に接続するための機器であって、外部装置との間でデータの送受信を行う。
【００３４】
画像バス２１５には、ラスタイメージプロセッサ（ＲＩＰ）２１０、デバイスＩ／Ｆ２１７、スキャナ画像処理部２１８、プリンタ画像処理部２１９、画像編集用画像処理部２２０、カラーマネージメントモジュール（ＣＭＭ）２３０が接続される。
【００３５】
ラスタイメージプロセッサ２１６は、ＰＤＬデータやベクタデータをビットマップデータに変換する。デバイスＩ／Ｆ２１７は、スキャナ２０１やプリンタエンジン２０２とコントロールユニット２００とを接続し、画像データの同期系／非同期系の変換を行う。
【００３６】
スキャナ画像処理部２１８は、スキャナ２０１から入力した画像データに対して、補正、加工、編集等の各種処理を行う。プリンタ画像処理部２１９は、印刷出力する画像データに対して、プリンタエンジン２０２に応じた補正、解像度変換等の処理を行う。画像編集用画像処理２２０は、画像データの回転や、画像データの圧縮伸長処理等の各種画像処理を行う。カラーマネージメントモジュール２３０は、画像データに対して、プロファイルやキャリブレーションデータに基づいた、色変換処理（又は色空間変換処理）を行う。プロファイルとは、例えば、装置に依存する色空間で表現したカラー画像データを、装置に依存しない色空間（例えばＬａｂなど）に変換するための関数である。キャリブレーションデータとは、スキャナ２０１やプリンタエンジン２０２の色再現特性を補正するためのデータである。
【００３７】
＜コントローラソフトウェア構成例＞
図４は、ＭＦＰの動作を制御するコントローラソフトウェアの構成例を示すブロック図である。
【００３８】
プリンタインターフェイス４００は、ネットワークを介して外部装置との間でデータの送受信を行う。プロトコル制御部４０１は、所定のネットワークプロトコルにしたがってデータ通信の制御を行う。
【００３９】
ベクタデータ生成部４０２は、ビットマップデータを解像度に依存しない描画記述であるベクタデータに変換する処理（ベクタライズ）を行う。メタデータ生成部４０３は、ベクタライズの過程で得られる副次情報をメタデータとして生成する。メタデータとは、画像検索用の付加データである。
【００４０】
ＰＤＬ解析部４０４は、ＰＤＬデータを解析して、ディスプレイリストに変換する。データ描画部４０５は、ＰＤＬ解析部４０４から受け取ったディスプレイリストをビットマップデータに変換する。ページメモリ４０６は、ビットマップデータを記憶する。パネル入出力Ｉ／Ｆ部４０７は、操作部２１０を制御する。
【００４１】
ドキュメント記憶部４０８はジョブ単位に、ベクタデータ、ディスプレイリスト、メタデータを含むデータファイルを記憶する。以下の説明では、このデータファイルのことを「ドキュメントファイル」（Ｄｏｃｕｍｅｎｔ）とよぶ。
【００４２】
スキャン制御部４０９は、スキャナ２０１から入力した画像データに対して、補正、加工、編集などの各種処理を行う。印刷制御部４１０は、ページメモリ４０６に記憶されているビットマップデータを画像信号に変換し、プリンタエンジン部４１１へ出力する。プリンタエンジン部４１１は、受け取った画像信号に基づき用紙に印刷する画像を生成する。
【実施例１】
【００４３】
＜ドキュメントファイルの生成処理及びドキュメント印刷処理＞
ＰＤＬプリントにおけるドキュメントファイルの生成処理を、図面を参照して説明する。
【００４４】
ＰＤＬプリントとは、ＭＦＰが、コンピュータに搭載されたプリンタドライバが生成した印刷対象データ（ＰＤＬデータ）を、ネットワークを介して受け取り、所定の画像処理を行った後に印刷出力する動作のことである。
【００４５】
以下に述べる実施例では、識別コードとして二次元コードを用いるが、バーコードや地紋などの識別コードであってもかまわない。
【００４６】
ＭＦＰは、前記印刷対象データであるＰＤＬデータと共に、ページレイアウト情報（印刷設定を含む）をコンピュータから受け取る。なお、後述する二次元コード出力位置情報（識別コード出力位置情報）は、ユーザにより指定された印刷設定（ページレイアウト）に基づいて決定されるものとする。本実施例では、この二次元コード出力位置決定処理はＭＦＰで行われるものとするが、コンピュータで行われるようにしてもよい。
【００４７】
ページレイアウト情報は、連続した複数ページ（論理ページ）を１枚の用紙（物理ページ）に縮小配置するにあたって、複数の論理ページをどのように１つの物理ページに配置するかを示す情報である。ページレイアウト情報には、例えば、物理ページの１ページ目の左側には論理ページの１ページ目を印刷し、その右側には論理ページの２ページ目を印刷する等の論理ページの配置情報が含まれる。
【００４８】
二次元コード出力位置情報は、各種印刷形態（裁断印刷、ポスター印刷、ジョブ印刷、両面印刷等）に応じて二次元コードを用紙のどの部分に印刷するかを示す情報である。
【００４９】
ここで二次元コードの出力位置情報の例をあげる。
【００５０】
二次元コードは、スキャナによって読み取られるコードであるため、読み取り精度を上げるには、ある程度の大きさが必要となる。一方、二次元コードは原稿上に表示されるものであるため、ユーザにとっては、原稿内の特定の領域になるべく少ない数の二次元コードが印刷されるのが見た目において望ましい。そこで、二次元コードは、以下に示すように出力されるのが望ましい。  
・本来の原稿データを隠さないような領域に二次元コードを出力する(例えば、ページの右下の空白部)。  
・出力する二次元コードの数はなるべく少なくする(例えば、１ページにつき１つの二次元コード)。  
・使用するスキャナが読み取れる最低限の大きさの二次元コードを出力する。  
【００５１】
基本的には、１ページにつき１つの二次元コードが出力されるのが望ましいが、ページレイアウト情報や、複数ページの扱い方に応じた二次元コードの出力位置が考えられる。本実施例では、図１７に示すように、ユーザによって指定された印刷設定に基づいて二次元コードの出力位置を決定するものとする。
【００５２】
図１７において、ステップＳ１７０１〜Ｓ１７０４では、ユーザによって指定された印刷設定（ページレイアウトの設定）の内容を判断する。印刷設定としては、裁断印刷、ポスター印刷、ＪＯＢ単位印刷（製本印刷やステイプル印刷など）、両面印刷、その他の印刷（通常レイアウト印刷（通常印刷）、縮小レイアウト（Ｎｕｐ）印刷など）がある。
・裁断印刷の場合には、印刷後に用紙が裁断されることが前提であるため、ステップＳ１７０５において、裁断された後のページ毎（論理ページ毎）に二次元コードを出力する位置を決定する。
・ポスター印刷の場合には、印刷後に用紙がつなぎ合わせられることが前提であるため、ステップＳ１７０６において、つなぎ合わせられた用紙内の特定の位置（例えば右下）のみに二次元コードが印刷されるように出力位置を決定する。例えば、繋ぎ合わせた時に右下になる物理ページにおいて、二次元コードの出力位置を決定する。
・ＪＯＢ印刷の場合（製本印刷、ステイプル印刷など、必ず複数ページがセットで扱われることが分かっている場合）ならば、ステップＳ１７０７において、先頭ページのみに全ページへの情報がリンクされた二次元コードの出力位置を決定する。
・両面印刷の場合には、ステップＳ１７０８において、裏面に含まれる情報を表面の二次元コードが指し示すページレイアウト情報メタデータ（後述する）に含ませて、表面のみに二次元コードを出力するように二次元コード出力位置を決定する。なお、両面印刷時に裏面が白紙になるページに対しては、裏面が白紙である情報をページレイアウト情報メタデータに含ませるようにしてもよい。
・それ以外の場合（印刷後、印刷物が物理ページごとに扱われる場合）は、ステップＳ１７０９において、物理ページごとに二次元コードの出力位置を決定する。例えば、通常レイアウト印刷の場合（論理ページが１ページずつ印刷される場合）は、当該印刷される論理ページの情報が格納された二次元コードの印刷位置を決定する。また、縮小レイアウト印刷（複数の論理ページが１つの物理ページに印刷される場合）は、当該印刷される複数の論理ページの情報を１つの二次元コードに格納し、物理ページにおいて、その二次元コードの印刷位置を決定する。
【００５３】
図５は、ドキュメントファイルの生成処理／印刷処理の流れを示すデータフロー図である。
【００５４】
本処理は、コントロールユニット２００が実行する。前述した通り、実施例１では、ＭＦＰは、ＰＤＬデータとページレイアウト情報と二次元コード出力位置情報とをコンピュータから受け取る。
【００５５】
ＰＤＬデータ解析処理ｄ５０１において、コントロールユニット２００は、ネットワークを介してコンピュータから受け取ったＰＤＬデータを解析し、ベクタデータとメタデータを生成する。
【００５６】
ディスプレイリスト生成処理ｄ５０２において、コントロールユニット２００は、ベクタデータをディスプレイリストに変換する。
【００５７】
ラスタライズ処理ｄ５０３において、コントロールユニット２００は、ディスプレイリストをビットマップデータに変換する。
【００５８】
二次元コード生成処理（識別コード生成処理）ｄ５０４において、コントロールユニット２００は、ＰＤＬデータと共に受け取ったページレイアウト情報や二次元コード出力位置情報に基づいて、二次元コードを生成する。なお、この二次元コード出力位置情報は前述した図１７の処理が行われて決定されたものである。
【００５９】
ラスタライズ処理ｄ５０５において、コントロールユニット２００は、生成された二次元コードをビットマップデータに変換する。
【００６０】
合成処理ｄ５０６において、コントロールユニット２００は、ラスタライズ処理ｄ５０３、ｄ５０５で得られたビットマップデータを合成する。
【００６１】
印刷処理ｄ５０７において、コントロールユニット２００は、合成されたビットマップデータを用紙に印刷する。これにより、原稿データと二次元コードとが印刷された印刷物が得られる。
【００６２】
ドキュメント生成処理ｄ５０８において、コントロールユニット２００は、ドキュメントファイルを生成し、生成したドキュメントファイルをドキュメント記憶部４０８に格納する。ドキュメントファイルには、上記の各処理の過程で生成されるベクタデータと、ディスプレイリストと、メタデータと、ページレイアウト情報等から生成されたページレイアウト情報メタデータとが関連付けられて登録される。
【００６３】
なお、印刷処理ｄ６０６により得られた印刷物を原稿露光部にセットすれば上記一連の処理を再び実行できる。
【００６４】
ここで、ページレイアウト情報メタデータについて説明する。
【００６５】
ページレイアウト情報メタデータとは、二次元コードが表すリンク情報が指し示すデータであってページレイアウトを示す付加情報である。
【００６６】
図１３と図１４は、ページレイアウト情報メタデータを説明するための図である。
【００６７】
図１３に示すように、２ＵＰ印刷（２ｉｎ１印刷：縮小して物理１ページに論理２ページ分印刷する）で、各物理ページに１つの二次元コードを印刷する場合、ページレイアウト情報メタデータには、以下の情報が記述される。
【００６８】
物理１ページ目のページレイアウト情報メタデータには、ページレイアウト情報と、そのディスプレイリストと、各ページのドキュメントデータを特定するためのリンク情報が記述される。ページレイアウト情報には、物理ページの１ページ目の左側には論理ページの１ページ目を印刷し、右側には論理ページの２ページ目を印刷するという設定が記述される。一方、物理ページの２ページ目のページレイアウト情報メタデータには、ページレイアウト情報と、そのディスプレイリストと、各ページのドキュメントデータを特定するためのリンク情報が記述される。ページレイアウト情報には、物理ページの２ページ目の左側には論理ページの３ページ目を印刷し、右側には論理ページの４ページ目を印刷するという設定が記述される。図１４に示すように、複数の物理ページからなる１つのドキュメントに対して二次元コードを１つ印刷する場合、ページレイアウト情報メタデータには、全ての物理ページのページレイアウト情報やドキュメントデータを特定するためのリンク情報が記述される。
【００６９】
図７は、ドキュメント印刷処理の流れを示すフローチャートである。本処理は、コントロールユニット２００が実行する。
【００７０】
ステップＳ７０３において、コントローラユニット２００は、コンピュータ上のプリンタドライバが生成したＰＤＬデータとページレイアウト情報とをネットワークを経由して受け取り、ＰＤＬデータ解析処理を行う。
【００７１】
ステップＳ７０４は、受け取ったＰＤＬデータ内のすべてのページ処理が終了するまでループするループ端である。ステップＳ７０５は、全てのページのページレイアウトが終了するまでループするループ端である。
【００７２】
ステップＳ７０６において、コントローラユニット２００は、ＰＤＬデータ中のベクタデータから、ページレイアウトしたディスプレイリストとメタデータとを生成する。
【００７３】
ステップＳ７０７は、全てのページに対してページレイアウトを行うループ端（Ｓ７０５に対するループ端）である。
【００７４】
ステップＳ７０８において、ステップＳ７０５からステップＳ７０７で生成されたページレイアウト済みディスプレイリストをラスタライズし、物理ページの１ページ目のデータをビットマップデータに変換する。
【００７５】
ステップ７１０において、コントローラユニット２００は、ページレイアウト情報と二次元コード出力位置情報とに基づいてページレイアウト情報メタデータを生成する。なお、この二次元コード出力位置情報は前述した図１７の処理で決定されたものである。
【００７６】
ステップ７１１において、コントローラユニット２００は、受け取った二次元コード出力位置情報に基づいて、ページレイアウト情報メタデータを指し示すリンク情報を表現する二次元コードを生成する。
【００７７】
ステップ７１２において、コントローラユニット２００は、生成された二次元コードをラスタライズしてビットマップデータに変換する。
【００７８】
ステップＳ７１３において、コントローラユニット２００は、ステップＳ７０８で生成されたページレイアウト済みのディスプレイリストのビットマップデータと、ステップＳ７１２で生成された二次元コードのビットマップデータを合成する。
【００７９】
ステップＳ７１４において、コントローラユニット２００は、合成されたビットマップデータを印刷する。これにより、ページレイアウトされ、かつ、二次元コードが印刷された印刷物が得られる。
【００８０】
ステップＳ７１５は、受け取ったＰＤＬデータの全ページの処理を行うループ端（Ｓ７０４に対するループ端）である。
【００８１】
ステップＳ７１６において、コントローラユニット２００は、ページレイアウト済みのディスプレイリストとメタデータ（Ｓ７０６）と、ページレイアウト情報メタデータ（Ｓ７１０）とを関連付けてドキュメント記憶部４０８に格納する。
【００８２】
〈二次元コードを用いたコピー処理〉
図６は、実施例１における二次元コードを用いたコピー処理の流れを示すデータフロー図である。
【００８３】
スキャン処理ｄ６０１において、コントロールユニット２００は、原稿露光部にセットされた紙原稿（ページレイアウト印刷された原稿）からスキャナが読み取った原稿画像データ（スキャン画像データ）をビットマップデータに変換する。紙原稿には二次元コードが原稿データと共に印刷されている。したがって、ビットマップデータには、その二次元コードのビットマップデータが含まれている。
【００８４】
二次元コード検出・解釈処理ｄ６０２において、コントロールユニット２００は、ビットマップデータに含まれる二次元コードのビットマップデータを検出し、解釈する。次いで、コントロールユニット２００は、検出した二次元コードから、ドキュメント記憶部４０８に格納されているページレイアウト情報メタデータを指し示すリンク情報を取得する。本処理により、ドキュメント記憶部４０８に格納されているページレイアウト情報メタデータが特定される（ｄ６０３）。
【００８５】
ラスタライズ処理ｄ６０４において、コントロールユニット２００は、ｄ６０３で特定されたページレイアウト情報メタデータに関連付けられているページレイアウト済みディスプレイリストをドキュメント記憶部４０８から読み出す。次いで、そのディスプレイリストをビットマップデータに変換する。
【００８６】
合成処理ｄ６０５において、コントロールユニット２００は、ラスタライズ処理ｄ６０４により得られたビットマップデータと、二次元コード検出・解釈処理ｄ６０２により検出された二次元コードのビットマップデータとを合成する。
【００８７】
印刷処理ｄ６０６において、コントロールユニット２００は、合成されたビットマップデータを用紙に印刷する。本処理によって、原稿データ（ページレイアウト済みの原稿データ）と二次元コードとが印刷された紙原稿のコピーが完了する。
【００８８】
図８は、二次元コードを用いたコピー処理の流れを示すフローチャートである。
【００８９】
ステップＳ８０２は、紙原稿のすべてのページ処理が終了するまでループするループ端である。
【００９０】
ステップＳ８０３において、コントローラユニット２００は、紙原稿（ページレイアウト印刷された原稿）に対してスキャン処理を行い、原稿画像データを得る。
【００９１】
ステップＳ８０４において、コントローラユニット２００は、ステップＳ８０３により得られた原稿画像データに含まれる二次元コードを検出し、二次元コードが表す情報を解釈する。次いで、コントローラユニット２００は、検出された二次元コードから、ドキュメント記憶部４０８に格納されているページレイアウト情報メタデータを指し示すリンク情報を取得する。本処理により、ドキュメント記憶部４０８に格納されているページレイアウト情報メタデータが特定される。
【００９２】
ステップＳ８０５において、コントローラユニット２００は、ステップ８０４で特定されたページレイアウト情報メタデータに関連付けられているページレイアウト済みディスプレイリストに対してラスタライズ処理を行い、ビットマップデータに変換する。
【００９３】
ステップＳ８０６において、コントローラユニット２００は、ステップＳ８０４で検出された二次元コードを解釈して得たデータに基づいて、印刷用の二次元コードのビットマップデータを生成する。
【００９４】
ステップＳ８０７において、コントローラユニット２００は、ステップＳ８０５で得られたディスプレイリストのビットマップデータと、ステップＳ８０６で得られた二次元コードのビットマップデータを合成する。
【００９５】
ステップＳ８０８において、コントローラユニット２００は、合成されたビットマップデータを印刷する。本処理によって、原稿データ（ページレイアウト済みの原稿データ）と二次元コードとが印刷された紙原稿の複写物が得られる。このとき、原稿データはスキャンして得た画像ではなく、ドキュメント記憶部に格納されていたオリジナルのドキュメントデータを使用してラスタライズしたので、より高画質に印刷することができる。
【００９６】
ステップＳ８０９は、入力原稿の全ページの処理を行うループ端であり、全てのページに対する上記の処理が終わったら、コピー処理を完了する。
【００９７】
＜ドキュメントファイルのデータ構造例＞
ドキュメントファイルのデータ構造例を図面を参照して説明する。
【００９８】
図９は、実施例１におけるドキュメントファイルのデータ構造の一例を示す図である。
【００９９】
ドキュメントファイルは、複数ページのデータを含み、ドキュメントヘッダ（ｘ１）をルートとする階層構造で表現される。ドキュメントは、ベクタデータ（ａ）、メタデータ（ｂ）、ディスプレイリスト（ｃ）、ページレイアウト済みディスプレイリスト（ｄ）、ページレイアウト情報メタデータ（ｅ）とから構成される。
【０１００】
ベクタデータ（ａ）は、ページヘッダ（ｘ２）、サマリ情報（ｘ３）、オブジェクト（ｘ４）から構成される。
【０１０１】
メタデータ（ｂ）は、ページ情報（ｘ５）と詳細情報（ｘ６）とから構成される。
【０１０２】
ディスプレイリスト（ｃ）は、ページヘッダ（ｘ７）と描画展開用のインストラクション（ｘ８）とから構成される。インストラクション（ｘ８）とは、解像度に依存する描画情報である。
【０１０３】
ドキュメントヘッダ（ｘ１）には、ベクタデータ（ａ）、ディスプレイリスト（ｃ）、ページレイアウト済ディスプレイリスト（ｄ）、ページレイアウト情報メタデータ（ｅ）の各々の格納領域が記述される。また、ベクタデータ（ａ）とディスプレイリスト（ｄ）はドキュメントヘッダ（ｘ１）によって関連付けられている。ベクタデータ（ａ）は、解像度に依存しない描画データである。ページヘッダ（ｘ２）には、ページの大きさや向きなどのページレイアウト情報が記述される。オブジェクト（ｘ４）には、ライン、多角形、ベジェ曲線などの描画データが記述され、それらが関連付けられている。さらに、複数のオブジェクトがまとめてサマリ情報（ｘ３）に関連付けられている。サマリ情報（ｘ３）は、複数のオブジェクトの特徴をまとめて表現するものであり、図１２に示す分割領域の属性情報などが記述される。
【０１０４】
メタデータ（ｂ）は描画処理には関係しない検索用の付加情報である。
【０１０５】
ページ情報（ｘ５）には、メタデータがビットマップデータから生成されたものなのか、ＰＤＬデータから生成されたものなのか等のページ情報が記述される。
【０１０６】
詳細情報（ｘ６）には、ＯＣＲ情報や画像情報として生成された文字列（文字コード列）が記述される。
【０１０７】
ベクタデータ（ａ）のサマリ情報（ｘ３）とメタデータ（ｂ）とが関連付けられているため、サマリ情報（ｘ３）からメタデータ（ｂ）内の詳細情報（ｘ６）を参照できる。
【０１０８】
ディスプレイリスト（ｃ）は、ビットマップデータを生成するための中間コードである。
【０１０９】
ページヘッダ（ｘ７）には、インストラクション（ｘ８）の管理テーブルが記述される。インストラクション（ｘ８）は、解像度に依存する描画情報で構成されている。
【０１１０】
通常の１ページのディスプレイリストに加えて、ページレイアウトが指定された場合、ページレイアウト済み描画情報の管理テーブル（ｘ９）が記述される。インストラクション（ｘ１０）は、解像度に依存する描画情報で構成されている。
【０１１１】
ページレイアウト情報メタデータ（ｅ）には、以下の情報が記述される。  
・ページレイアウト済データを構成する各ページへのリンク情報やページレイアウト情報（ｘ１１）。  
・ページレイアウト済ディスプレイリストへのリンク情報（ｘ１２）。  
・二次元コードの出力位置（ｘ１３）。  
・その他ページ出力設定情報（ｘ１４）。
【０１１２】
図１０は、実施例１における、図９に示した各種データが格納される記憶部の格納領域を示す図である。
【０１１３】
１０−１は、メモリに各種データが配置された状態を示す。ドキュメントのヘッダ、ベクタデータ、メタデータ、ディスプレイリストは、それぞれ、メモリ内のヘッダ領域（ａ１）、ベクタデータ領域（ａ２）、メタデータ領域（ａ３）、ディスプレイリスト領域（ａ４）に格納される。ベクタデータ領域（ａ２）には、ベクタデータが格納される。メタデータ領域（ａ３）には、描画処理には使用しない付加情報であるメタデータが格納される。ディスプレイリスト領域（ａ４）には、ディスプレイリストが格納される。
【０１１４】
１０−２は、ファイルに各種データが配置された状態を示す。ドキュメントのベクタデータ、メタデータ。ディスプレイリストは、連続するベクタデータ領域、メタデータ領域、ディスプレイリスト領域に配置される。
【０１１５】
図７、図８の処理は、ＰＤＬデータに対してページレイアウト情報と二次元コード出力位置情報を指定することにより二次元コード付きのページレイアウト印刷を行い、得られた印刷物をスキャナで読み込んでコピーする形態である。これとは別の実施形態として、得られた印刷物に対して、再度、新規のページレイアウト情報を指定して印刷する形態を以下に説明する。新規のページレイアウト情報（印刷設定）が指定された場合、図１７と同様の処理が行われて、新たな二次元コード出力位置情報も決定される。
【０１１６】
図１５は、新規のページレイアウト情報と二次元コード出力位置情報を指定して、二次元コードを用いたコピー処理を行うときの流れを示すデータフローを示す図である。
【０１１７】
本処理は、コントロールユニット２００が実行する。ＭＦＰは、ページレイアウト情報と二次元コード出力位置情報とをコンピュータから受け取る。
【０１１８】
スキャン処理ｄ１５０１において、コントロールユニット２００は、原稿露光部にセットされた紙原稿（ページレイアウト印刷された原稿）からスキャナが読み取った原稿画像データ（スキャン画像データ）をビットマップデータに変換する。紙原稿には二次元コードが原稿データと共に印刷されている。したがって、ビットマップデータには、その二次元コードのビットマップデータが含まれている。
【０１１９】
二次元コード検出・解釈処理ｄ１５０２において、コントロールユニット２００は、ビットマップデータに含まれる二次元コードを検出し、解釈する。次いで、コントロールユニット２００は、検出した二次元コードから、ドキュメント記憶部４０８に格納されているページレイアウト情報メタデータを指し示すリンク情報を取得する。本処理により、ドキュメント記憶部４０８に格納されているページレイアウト情報メタデータが特定される（ｄ１５０３）。
【０１２０】
ディスプレイリスト生成処理ｄ１５０４とメタデータ生成処理ｄ１５０６において、コントロールユニット２００は、新たに指定されたページレイアウト情報に基づき、ページレイアウト済のディスプレイリストとページレイアウト情報メタデータを生成する。
【０１２１】
ドキュメントへの追加処理ｄ１５０５において、コントロールユニット２００は、ページレイアウト済のディスプレイリストとページレイアウト情報メタデータをドキュメントファイルに追加する。
【０１２２】
ラスタライズ処理ｄ１５０７において、コントロールユニット２００は、ページレイアウト済のディスプレイリストをビットマップに変換する。また、それと同時に、二次元コード生成処理ｄ１５０８において、コントロールユニット２００は、二次元コード出力位置情報に基づいて、二次元コードを生成する。
【０１２３】
ラスタライズ処理ｄ１５０９において、コントロールユニット２００は、生成された二次元コードをビットマップに変換する。
【０１２４】
合成処理ｄ１５１０において、コントロールユニット２００は、ｄ１５０７でラスタライズされたディスプレイリストのビットマップデータと、ｄ１５０９でラスタライズされた二次元コードのビットマップデータとを合成する。
【０１２５】
印刷処理ｄ１５１１において、コントロールユニット２００は、合成されたビットマップデータを用紙に印刷する。本処理によって、原稿データ（ページレイアウト済みの原稿データ）と二次元コードとが印刷された紙原稿が、新たに指定されたページレイアウトでコピーされる。なお、印刷処理ｄ１５１１により得られた印刷物を原稿露光部にセットすれば上記一連の処理を再び実行できる。
【０１２６】
次に、紙原稿をスキャンすることにより検出された二次元コードに基づいたドキュメント印刷処理を図面を参照して説明する。
【０１２７】
図１６は、二次元コードを用いたコピー処理の流れを示すフローチャートである。本処理は、コントローラユニット２００が実行する。ここでは、紙原稿をスキャン台に置き、新たなページレイアウト情報と、二次元コード出力位置とがユーザにより指定された後、処理を開始する。
【０１２８】
ステップＳ１６０３は、紙原稿のすべてのページ処理が終了するまでループするループ端である。
【０１２９】
ステップＳ１６０４において、コントローラユニット２００は、紙原稿（ページレイアウト印刷された原稿）に対してスキャン処理を行い、原稿画像データを得る。
【０１３０】
ステップＳ１６０５において、コントローラユニット２００は、ステップＳ１６０４により得られた原稿画像データに含まれる二次元コードを検出し、二次元コードが表す情報を解釈する。次いで、コントローラユニット２００は、検出した二次元コードから、ドキュメント記憶部４０８に格納されているページレイアウト情報メタデータを指し示すリンク情報を取得する。本処理により、ドキュメント記憶部４０８に格納されているページレイアウト情報メタデータが特定される。
【０１３１】
ステップＳ１６０６において、コントローラユニット２００は、ステップ１６０４で特定されたページレイアウト情報メタデータに関連付けられているディスプレイリストがドキュメント記憶部４０８に存在するか否か判定する。ディスプレイリストに存在する場合、コントローラユニット２００は、ステップＳ１６１０の処理に進む。これに対して、ディスプレイリストに存在しない場合、コントローラユニット２００は、ステップＳ１６０７の処理に進む。
【０１３２】
ステップ１６０７において、コントローラユニット２００は、ページレイアウト情報に基づいて、ディスプレイリストとメタデータを生成する。
【０１３３】
ステップ１６０８において、コントローラユニット２００は、生成されたディスプレイリストに対してラスタライズ処理を行い、ディスプレイリストをビットマップデータに変換する。
【０１３４】
ステップＳ１６０９において、コントローラユニット２００は、ページレイアウト情報と二次元コード出力位置情報に基づいて、ページレイアウト情報メタデータを生成する。
【０１３５】
ステップＳ１６１０において、コントローラユニット２００は、生成されたページレイアウト情報メタデータを指し示すリンク情報を表す二次元コードを生成する。
【０１３６】
ステップＳ１６１１において、コントローラユニット２００は、生成された二次元コードのラスタライズ処理を行い、二次元コードをビットマップデータに変換する。
【０１３７】
ステップＳ１６１２において、コントローラユニット２００は、ディスプレイリストのビットマップデータと二次元コードのビットマップデータを合成する。
【０１３８】
ステップＳ１６１３において、コントローラユニット２００は、合成されたビットマップデータを印刷する。
【０１３９】
ステップＳ１６１４は、入力原稿の全ページの処理を行うループ端である。
【０１４０】
ステップＳ１６１５において、コントローラユニット２００は、現在処理しているページレイアウト情報が新たに指定されたページレイアウト情報であるか否かを判定する。新たに指定されたページレイアウト情報でない場合、コントローラユニット２００は、コピー処理を終了する。これに対して、新たに指定されたページレイアウト情報である場合、コントロールユニット２００は、ステップＳ１６１６の処理に進む。
【０１４１】
ステップＳ１６１６において、コントローラユニット２００は、ステップＳ１６０７で生成したディスプレイリストや、ステップＳ１６０９で生成したページレイアウト情報メタデータをドキュメント記憶部４０８に保存し、コピー処理を終了する。このように、新たなページレイアウト情報が指定された場合、このページレイアウト情報メタデータやページレイアウト済みディスプレイリストがドキュメントファイルに追加される。
【０１４２】
（他の実施例）
本発明は、システム、装置、方法、コンピュータプログラム又はコンピュータ読み取り可能な記録媒体の実施形態をとることができる。また、本発明は、複数の機器から構成されるシステム又は１つの装置に適用可能である。
【０１４３】
本発明の実施形態には、記録媒体又はネットワークを介して、前述した本発明の機能を実現するコンピュータプログラムをシステム又は装置に供給し、そのシステム又は装置が備えるコンピュータがそのプログラムを実行することが含まれる。記録媒体はコンピュータ読み取り可能な記録媒体である。よって、実施例には、本発明の機能を実現するコンピュータプログラム自体も含まれる。コンピュータプログラムは、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等を含む。記録媒体は、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ等である。プログラムの供給方法としては、例えば、クライアントコンピュータのブラウザを用いてインターネットからハードディスク等の記録媒体にダウンロードする方法がある。この方法では、インターネットからコンピュータプログラムのファイル、又は、圧縮され自動インストール機能を含むファイルをダウンロードする。また、実施形態には、コンピュータプログラムを構成するプログラムコードを複数のファイルに分割し、各ファイルを異なるサーバからダウンロードすることが含まれる。また、実施形態には、コンピュータプログラムのファイルを複数のユーザに対してダウンロードさせるサーバも含まれる。
【０１４４】
コンピュータが、コンピュータプログラムを実行することによって、前述した実施形態の機能が実現され得る。また、そのコンピュータプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行うことによっても、前述した実施形態の機能が実現され得る。
【０１４５】
記録媒体から読み出されたコンピュータプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後においても前述した実施形態の機能が実現され得る。すなわち、コンピュータプログラムの指示に基づき、機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行うことによっても前述した実施形態の機能が実現され得る。
【符号の説明】
【０１４６】
４００  プリンタI/F
４０１  プロトコル制御部
４０２  ベクタデータ生成部
４０３  メタデータ生成部
４０４  ＰＤＬ解析部
４０５  データ描画部
４０６  ページメモリ
４０７  パネル入出力部
４０８  ドキュメント記憶部
４０９  スキャン制御部
４１０  印刷制御部
４１１  プリンタエンジン
【図１】
0005265042.tif 000002
【図２】
0005265042.tif 000003
【図３】
0005265042.tif 000004
【図４】
0005265042.tif 000005
【図５】
0005265042.tif 000006
【図６】
0005265042.tif 000007
【図７】
0005265042.tif 000008
【図８】
0005265042.tif 000009
【図９】
0005265042.tif 000010
【図１０】
0005265042.tif 000011
【図１５】
0005265042.tif 000012
【図１６】
0005265042.tif 000013
【図１７】
0005265042.tif 000014
【図１１】
0005265042.tif 000015
【図１２】
0005265042.tif 000016
【図１３】
0005265042.tif 000017
【図１４】
0005265042.tif 000018