(57)【要約】【課題】複数種類のコード画像を１枚の紙に印刷する場合、当該コード画像の読み取り時に各コード画像を正しく読み取り可能になるよう、各コード画像を印刷する画像処理技術を提供する。【解決手段】印刷アプリ１００は、電子文書を表す情報、印刷条件及び埋め込みデータリストを受け取ると、エンコード対象のデータをキャリアの種類に分類し、分類した各データのエンコードを、各々対応するエンコーダ２００〜２０２に要求する。印刷アプリ１００は、当該要求に従って生成されたコード画像を取得して、種類毎のレイヤを生成し、当該レイヤの重ね合わせの順序を示すレイヤ画像情報リストを画像合成部２０３に渡して各レイヤの合成を要求し、当該要求に応じて合成された画像を、ユーザにより指示された印刷条件に従って、紙に印刷する。【選択図】        図３
2008205540.tif 000002
【特許請求の範囲】
【請求項１】
画像として印刷される印刷対象情報と、エンコード対象の所定の情報とを取得する印刷情報取得手段と、
前記印刷情報取得手段が取得した前記所定の情報を、所定のエンコード規則に従って各々エンコードして複数種類のコード画像を各々生成するコード画像生成手段と、
前記コード画像生成手段が生成した前記コード画像を前記種類毎に含む複数種類のレイヤ画像を生成するレイヤ画像生成手段と、
前記レイヤ画像生成手段が生成した複数種類の前記レイヤ画像を所定の重ね合わせ規則に従って重ね合わせて合成画像を生成する合成画像生成手段と、
前記合成画像生成手段が生成した前記合成画像を紙媒体に印刷する印刷手段とを備える
ことを特徴とする画像処理装置。
【請求項２】
前記印刷情報取得手段は、前記所定の情報をエンコードして生成する前記コード画像の前記種類を少なくとも２つ以上指定する種類指定情報を取得し、
前記コード画像生成手段は、前記印刷情報取得手段が取得した前記種類指定情報によって指定される前記種類毎に、前記所定の情報をエンコードして前記コード画像を各々生成する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記コード画像生成手段は、前記所定の情報をエンコードして前記コード画像を生成する種類別コード画像生成手段を前記種類毎に有し、
前記印刷情報取得手段が取得した前記所定の情報を、前記種類指定情報によって指定される各種類に分類し、当該各種類に対応する前記種類別コード画像生成手段に対して、前記所定の情報のエンコード及び前記コード画像の生成を要求する印刷制御手段を更に備える
ことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記所定の情報は、前記種類毎にエンコードする情報として各々異なる種類別エンコード対象情報を含み、
前記印刷制御手段は、前記所定の情報に含まれる各前記種類別エンコード対象情報を前記種類指定情報によって指定される各種類に分類し、当該各種類に対応する前記種類別コード画像生成手段に対して、前記種類別エンコード対象情報のエンコード及び前記コード画像の生成を各々要求する
ことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記複数種類に分類されるコード画像は、更に複数の第２種類のコード画像に分類され、
前記所定のエンコード規則は、前記各第２種類に対応するエンコード規則を各々有し、
前記種類指定情報は、前記所定の情報をエンコードして生成される前記コード画像の前記種類として前記第２種類を少なくとも２つ以上指定する情報であり、
前記コード画像の種類と前記第２種類との対応関係と、前記コード画像の種類に対して予め割り当てられている前記重ね合わせの順序とを示す対応関係情報と記憶する記憶手段とを更に備え、
前記印刷制御手段は、前記印刷情報取得手段が取得した前記種類指定情報によって指定される前記第２種類を、前記記憶手段に記憶された前記対応関係情報を参照して、前記コード画像の種類に分類し、当該各種類に対応する前記種類別コード画像生成手段に対して、前記所定の情報のエンコード及び前記コード画像の生成を要求し、
各前記種類別コード画像生成手段は、前記第２種類に対応する前記エンコード規則に従って、前記所定の情報をエンコードして前記コード画像を生成する
ことを特徴とする請求項３に記載の画像処理装置。
【請求項６】
情報処理装置とデータ通信を行う通信手段を更に備え、
前記印刷情報取得手段は、前記通信手段を介して、前記印刷対象情報、前記所定の情報及び前記種類指定情報のうち少なくとも１つを前記情報処理装置から取得する
ことを特徴とする請求項２に記載の画像処理装置。
【請求項７】
複写対象の紙媒体を走査手段が走査することにより読み取った画像を取得する読取手段と、
前記エンコード対象の前記所定の情報を指定する第１操作入力と、前記所定の情報をエンコードして生成される前記コード画像の前記種類を少なくとも２つ以上指定する第２操作入力とを受け付ける入力受付手段とを更に備え、
前記印刷情報取得手段は、前記読取手段が読み取った前記画像を前記印刷対象情報として取得し、前記入力受付手段が受け付けた前記第１操作入力及び前記第２操作入力に基づいて、前記所定の情報及び前記種類指定情報を取得する
ことを特徴とする請求項２に記載の画像処理装置。
【請求項８】
前記所定の重ね合わせ規則を示す重ね合わせ規則情報を記憶する記憶手段を更に備え、
前記合成画像生成手段は、前記記憶手段に記憶された前記重ね合わせ規則情報を用いて、前記レイヤ画像の重ね合わせの順序を決定する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項９】
前記コード画像の配置位置及び配置領域のうち少なくとも一方を示す位置情報を記憶する記憶手段を更に備え、
前記レイヤ画像生成手段は、前記記憶手段に記憶された前記位置情報を用いて、前記種類毎に、前記コード画像生成手段が生成した前記コード画像を配置した前記レイヤ画像を各々生成する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項１０】
前記レイヤ画像生成手段は、前記コード画像生成手段が同一種類のコード画像を複数生成した場合、当該種類の前記レイヤ画像の生成において、前記記憶手段に記憶された前記位置情報を用いて、複数の前記コード画像の配置位置を各々求め、求めた各位置に当該各コード画像を配置した前記レイヤ画像を生成する
ことを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
前記コード画像生成手段、前記レイヤ画像生成手段及び前記合成画像生成手段のうち少なくとも１つは、前記コード画像に対してエッジ強調処理、細線化処理、太線化処理及び平滑化処理のうち少なくとも１つを行わない
ことを特徴とする請求項１に記載の画像処理装置。
【請求項１２】
前記コード画像生成手段が生成する前記コード画像の種類は、バーコード、地紋画像、印刷対象の画像を加工した画像のうち少なくとも１種類を含む
ことを特徴とする請求項１に記載の画像処理装置。
【請求項１３】
画像として印刷される印刷対象情報と、エンコード対象の所定の情報とを取得する印刷情報取得ステップと、
前記印刷情報取得ステップで取得した前記所定の情報を、所定のエンコード規則に従って各々エンコードして複数種類のコード画像を各々生成するコード画像生成ステップと、
前記コード画像生成ステップで生成した前記コード画像を前記種類毎に含む複数種類のレイヤ画像を生成するレイヤ画像生成ステップと、
前記レイヤ画像生成ステップで生成した複数種類の前記レイヤ画像を所定の重ね合わせ規則に従って重ね合わせて合成画像を生成する合成画像生成ステップと、
前記合成画像生成ステップで生成した前記合成画像を紙媒体に印刷する印刷ステップとを備える
ことを特徴とする画像処理方法。
【請求項１４】
請求項１３に記載された画像処理方法をコンピュータで実行させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷対象の紙をスキャナにより読み取った画像又は電子文書に対するパーソナルコンピュータなどからの印刷命令に基づいて、印刷画像を形成して紙に印刷する画像処理装置、画像処理方法及び画像処理プログラムに関するものである。
【背景技術】
【０００２】
従来より、コンピュータが可読なコード画像を文書画像と共に紙に印刷する技術がある（例えば、特許文献１参照）。また、文書画像と共に、このようなコード画像を複数種類重ねて１枚の紙に印刷する技術がある（例えば、特許文献２参照）。紙にこのように印刷された各コード画像は、例えば、当該紙の複写の際に読み取られ、エンコードされて、適宜処理に用いられる。
【０００３】
【特許文献１】特開２００６−６０８０５号公報
【特許文献２】特開２００６−２７９３２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、複数種類のコード画像が１枚の紙に重ねて印刷されている場合、画像が重なり合うため、当該コード画像の読み取り時に、各コード画像を各々判別できず、各コード画像を正しく読み取れない恐れがある。
【０００５】
本発明は、上記に鑑みてなされたものであって、複数種類のコード画像を１枚の紙に印刷する場合、当該コード画像の読み取り時に各コード画像を正しく読み取り可能になるよう、各コード画像を印刷する画像処理装置、画像処理方法、及び画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、請求項１にかかる発明は、画像処理装置であって、画像として印刷される印刷対象情報と、エンコード対象の所定の情報とを取得する印刷情報取得手段と、前記印刷情報取得手段が取得した前記所定の情報を、所定のエンコード規則に従って各々エンコードして複数種類のコード画像を各々生成するコード画像生成手段と、前記コード画像生成手段が生成した前記コード画像を前記種類毎に含む複数種類のレイヤ画像を生成するレイヤ画像生成手段と、前記レイヤ画像生成手段が生成した複数種類の前記レイヤ画像を所定の重ね合わせ規則に従って重ね合わせて合成画像を生成する合成画像生成手段と、前記合成画像生成手段が生成した前記合成画像を紙媒体に印刷する印刷手段とを備えることを特徴とする。
【０００７】
請求項２にかかる発明は、請求項１にかかる発明において、前記印刷情報取得手段は、前記所定の情報をエンコードして生成する前記コード画像の前記種類を少なくとも２つ以上指定する種類指定情報を取得し、前記コード画像生成手段は、前記印刷情報取得手段が取得した前記種類指定情報によって指定される前記種類毎に、前記所定の情報をエンコードして前記コード画像を各々生成することを特徴とする。
【０００８】
請求項３にかかる発明は、請求項２にかかる発明において、前記コード画像生成手段は、前記所定の情報をエンコードして前記コード画像を生成する種類別コード画像生成手段を前記種類毎に有し、前記印刷情報取得手段が取得した前記所定の情報を、前記種類指定情報によって指定される各種類に分類し、当該各種類に対応する前記種類別コード画像生成手段に対して、前記所定の情報のエンコード及び前記コード画像の生成を要求する印刷制御手段を更に備えることを特徴とする。
【０００９】
請求項４にかかる発明は、請求項３にかかる発明において、前記所定の情報は、前記種類毎にエンコードする情報として各々異なる種類別エンコード対象情報を含み、前記印刷制御手段は、前記所定の情報に含まれる各前記種類別エンコード対象情報を前記種類指定情報によって指定される各種類に分類し、当該各種類に対応する前記種類別コード画像生成手段に対して、前記種類別エンコード対象情報のエンコード及び前記コード画像の生成を各々要求することを特徴とする。
【００１０】
請求項５にかかる発明は、請求項３にかかる発明において、前記複数種類に分類されるコード画像は、更に複数の第２種類のコード画像に分類され、前記所定のエンコード規則は、前記各第２種類に対応するエンコード規則を各々有し、前記種類指定情報は、前記所定の情報をエンコードして生成される前記コード画像の前記種類として前記第２種類を少なくとも２つ以上指定する情報であり、前記コード画像の種類と前記第２種類との対応関係と、前記コード画像の種類に対して予め割り当てられている前記重ね合わせの順序とを示す対応関係情報と記憶する記憶手段とを更に備え、前記印刷制御手段は、前記印刷情報取得手段が取得した前記種類指定情報によって指定される前記第２種類を、前記記憶手段に記憶された前記対応関係情報を参照して、前記コード画像の種類に分類し、当該各種類に対応する前記種類別コード画像生成手段に対して、前記所定の情報のエンコード及び前記コード画像の生成を要求し、各前記種類別コード画像生成手段は、前記第２種類に対応する前記エンコード規則に従って、前記所定の情報をエンコードして前記コード画像を生成することを特徴とする。
【００１１】
請求項６にかかる発明は、請求項２にかかる発明において、情報処理装置とデータ通信を行う通信手段を更に備え、前記印刷情報取得手段は、前記通信手段を介して、前記印刷対象情報、前記所定の情報及び前記種類指定情報のうち少なくとも１つを前記情報処理装置から取得することを特徴とする。
【００１２】
請求項７にかかる発明は、請求項２にかかる発明において、複写対象の紙媒体を走査手段が走査することにより読み取った画像を取得する読取手段と、前記エンコード対象の前記所定の情報を指定する第１操作入力と、前記所定の情報をエンコードして生成される前記コード画像の前記種類を少なくとも２つ以上指定する第２操作入力とを受け付ける入力受付手段とを更に備え、前記印刷情報取得手段は、前記読取手段が読み取った前記画像を前記印刷対象情報として取得し、前記入力受付手段が受け付けた前記第１操作入力及び前記第２操作入力に基づいて、前記所定の情報及び前記種類指定情報を取得することを特徴とする。
【００１３】
請求項８にかかる発明は、請求項１にかかる発明において、前記所定の重ね合わせ規則を示す重ね合わせ規則情報を記憶する記憶手段を更に備え、前記合成画像生成手段は、前記記憶手段に記憶された前記重ね合わせ規則情報を用いて、前記レイヤ画像の重ね合わせの順序を決定することを特徴とする。
【００１４】
請求項９にかかる発明は、請求項１にかかる発明において、前記コード画像の配置位置及び配置領域のうち少なくとも一方を示す位置情報を記憶する記憶手段を更に備え、前記レイヤ画像生成手段は、前記記憶手段に記憶された前記位置情報を用いて、前記種類毎に、前記コード画像生成手段が生成した前記コード画像を配置した前記レイヤ画像を各々生成することを特徴とする。
【００１５】
請求項１０にかかる発明は、請求項９にかかる発明において、前記レイヤ画像生成手段は、前記コード画像生成手段が同一種類のコード画像を複数生成した場合、当該種類の前記レイヤ画像の生成において、前記記憶手段に記憶された前記位置情報を用いて、複数の前記コード画像の配置位置を各々求め、求めた各位置に当該各コード画像を配置した前記レイヤ画像を生成することを特徴とする。
【００１６】
請求項１１にかかる発明は、請求項１にかかる発明において、前記コード画像生成手段、前記レイヤ画像生成手段及び前記合成画像生成手段のうち少なくとも１つは、前記コード画像に対してエッジ強調処理、細線化処理、太線化処理及び平滑化処理のうち少なくとも１つを行わないことを特徴とする。
【００１７】
請求項１２にかかる発明は、請求項１にかかる発明において、前記コード画像生成手段が生成する前記コード画像の種類は、バーコード、地紋画像、印刷対象の画像を加工した画像のうち少なくとも１種類を含むことを特徴とする。
【００１８】
請求項１３にかかる発明は、画像処理方法であって、画像として印刷される印刷対象情報と、エンコード対象の所定の情報とを取得する印刷情報取得ステップと、前記印刷情報取得ステップで取得した前記所定の情報を、所定のエンコード規則に従って各々エンコードして複数種類のコード画像を各々生成するコード画像生成ステップと、前記コード画像生成ステップで生成した前記コード画像を前記種類毎に含む複数種類のレイヤ画像を生成するレイヤ画像生成ステップと、前記レイヤ画像生成ステップで生成した複数種類の前記レイヤ画像を所定の重ね合わせ規則に従って重ね合わせて合成画像を生成する合成画像生成ステップと、前記合成画像生成ステップで生成した前記合成画像を紙媒体に印刷する印刷ステップとを備えることを特徴とする。
【００１９】
請求項１４にかかる発明は、画像処理プログラムであって、請求項１３に記載された画像処理方法をコンピュータで実行させることを特徴とする。
【発明の効果】
【００２０】
本発明によれば、画像として印刷される印刷対象情報と、エンコード対象の所定の情報をエンコードしコード画像を種類毎に含む複数種類のレイヤ画像を生成し、当該複数種類のレイヤ画像を所定の重ね合わせ規則に従って重ね合わせて合成画像を生成することにより、各レイヤ画像が重ね合わさっていても、各コード画像を正確に読み取り可能であり、従って、正確にデコードすることが可能になる。
【発明を実施するための最良の形態】
【００２１】
以下に添付図面を参照して、この発明にかかる画像処理装置、画像処理方法及び画像処理プログラムの最良な実施の形態を詳細に説明する。
【００２２】
（１）構成
＜画像処理システムの構成＞
図１は、本実施の形態にかかる画像処理システム全体の構成を示すブロック図である。本図に示すように、画像処理システムは、複写機ＭＦＰ１とパーソナルコンピュータＰＣ１とがＬＡＮやＵＳＢなどの接続手段（図示せず）を介して接続されて構成される。
【００２３】
＜パーソナルコンピュータＰＣの構成＞
次に、パーソナルコンピュータＰＣ１の構成について説明する。パーソナルコンピュータＰＣは、パーソナルコンピュータＰＣ全体を制御するＣＰＵ(Central Processing Unit)と、各種制御プログラムや各種データなどを記憶するＲＯＭ（Read Only Memory）と、ＲＡＭ(Random Access Memory)と、各種アプリケーションプログラムや各種データを記憶するＨＤＤ(Hard Disk Drive)と、外部装置とのデータ通信を制御する通信部と、これらを接続するバス（いずれも図示せず）とを有する一般的なコンピュータの構成を有している。更に、パーソナルコンピュータＰＣ１には、有線又は無線の接続手段を介して、モニタなどの表示部と、キーボードなどの操作部（いずれも図示せず）とが接続される。また、パーソナルコンピュータＰＣ１のＲＯＭにはプリンタドライバが記憶される。このプリンタドライバがＣＰＵにより起動されると、ユーザからの印刷指示に応じて、通信部を介して、複写機ＭＦＰ１に印刷命令を送信する。
【００２４】
＜ＭＦＰの構成＞
次に、複写機ＭＦＰ１の構成について説明する。図２は、複写機ＭＦＰのハードウェア構成を示すブロック図である。本図に示すように、複写機ＭＦＰは、コントローラ１０とエンジン部（Engine）６０とをＰＣＩ（Peripheral Component Interconnect）バスで接続した構成となる。コントローラ１０は、複写機ＭＦＰ１全体の制御と描画、通信、図示しない操作部からの入力を制御するコントローラである。エンジン部６０は、ＰＣＩバスに接続可能なプリンタエンジン等であり、スキャナなどの走査部を備えると共に、たとえば白黒プロッタ、１ドラムカラープロッタ、４ドラムカラープロッタ等の印刷部（いずれも図示せず）を備える。なお、このエンジン部６０には、プロッタ等のいわゆるエンジン部分に加えて、誤差拡散やガンマ変換等の画像処理部分が含まれる。その他、複写機ＭＦＰ１は、紙をスキャンして画像を読み取るスキャナなどの画像読取部を備える。また、複写機ＭＦＰ１は、ユーザからの操作が入力される操作装置と情報を表示する表示装置とを一体的に形成した操作パネル２０を備える。操作パネル２０は、ＡＳＩＣ１６に接続される。また、コントローラ１０の有するＣＰＵ１１は、計時機能を有し、現在日時を計時する。このような複写機ＭＦＰ１の詳細な構成については、例えば特開２００６−１７７９９０に開示されているため、その説明を省略する。次に、このＣＰＵ１１がＲＯＭ（Read Only Memory）１２ａに記憶された各種プログラムを実行することにより実現される機能、即ち、複写機ＭＦＰ１の機能的構成について説明する。
【００２５】
図３は、複写機ＭＦＰ１の機能的構成を示すブロック図である。複写機ＭＦＰ１の機能は、アプリケーション層Ｍ１と、モジュール層Ｍ２と、データ層Ｍ３とに大別される。アプリケーション層Ｍ１は、印刷アプリ１００とスキャンアプリ１０１とを有する。モジュール層Ｍ２は、シンボル系エンコーダ２００と、コンテンツ加工系エンコーダ２０１と、地紋系エンコーダ２０２と、画像合成部２０３とを有する。データ層Ｍ３は、レイヤ割当情報テーブル３００と、シンボル重畳位置情報テーブル３０１と、コンテンツ加工領域情報テーブル３０２と、地紋領域情報テーブル３０３とを有する。これらのＤＢ３００〜３０３は、ＨＤＤなどに記憶されている。
【００２６】
印刷アプリ１００は、各エンコーダ２００〜２０２と画像合成部２０３とを用いて、各印刷対象の画像の印刷を印刷部により行なう。また、印刷アプリ１００は、スキャンアプリ１０１からの印刷命令により、複写対象の画像の印刷を印刷部により行う。スキャンアプリ１０１は、複写対象の紙を走査部がスキャンすることにより読み取った画像の印刷命令を印刷アプリ１００に渡す。シンボル系エンコーダ２００、コンテンツ加工系エンコーダ２０１、地紋系エンコーダ２０２は、エンコード対象の情報をそれぞれシンボル系、コンテンツ加工系、地紋系のうち少なくとも１つのキャリア（情報担体）にエンコードしてコード画像を生成する。尚、各エンコーダ２００〜２０２は、種々の公知技術を用いて構成することができる。画像合成部２０３は、各エンコーダ２００〜２０２で生成されたコード画像を合成する。
【００２７】
＜シンボル系エンコーダの構成＞
次に、シンボル系エンコーダ２００について説明する。シンボル系エンコーダ２００は、エンコード対象の文字列やバイト配列などのデータと、画像の大きさなどの生成パラメータとを用いて、特徴的な幾何学パターン（シンボル）を表すコード画像を出力する。図４は、シンボル系エンコーダ２００が出力するコード画像を例示する図である。シンボル系エンコーダ２００が出力するコード画像の具体例としては、図４に示されるような２次元コードや、その他、１次元バーコードなどがある。１次元バーコードとしてはCode39、Code128、EAN-8、EAN-13、NW-7、Code128などがあり、２次元コードとしてはQR、DataMatrix、PDF417などがある。
【００２８】
＜コンテンツ加工系エンコーダの構成＞
次に、コンテンツ加工系エンコーダ２０１について説明する。コンテンツ加工系エンコーダ２０１は、印刷対象の画像データと、エンコード対象の文字列やバイト配列などのデータと、埋め込み強度などの生成パラメータとを用いて、印刷対象の画像に対して人の目に分かりにくいような加工を施し、加工した画像をコード画像として出力する。図５は、コンテンツ加工系エンコーダ２０１が出力するコード画像を例示する図である。コンテンツ加工系エンコーダ２０１が行うコンテンツ加工の具体例としては、画像のエッジ部分にボイド（欠けのようなもの）やスポット（斑点のようなもの）を埋め込んだり、文字間隔を微小にずらしたりするものがある。
【００２９】
＜地紋系エンコーダの構成＞
次に、地紋系エンコーダ２０２について説明する。地紋系エンコーダ２０２は、エンコード対象の文字列やバイト配列などのデータと地紋の濃度などの生成パラメータとを用いて、微細なドットパターンを表す地紋画像をコード画像として出力する。図６は、地紋系エンコーダ２０２が出力するコード画像を例示する図である。ドットパターンの具体例としては、アノトパターンなどがある。
【００３０】
＜画像合成部の構成＞
次に、画像合成部２０３について説明する。尚、各エンコーダ２００〜２０２で生成された各コード画像を用いて、後述する印刷アプリが生成した各画像をレイヤとみなし、各々地紋レイヤ、コンテンツ加工レイヤ、シンボルレイヤとする。画像合成部２０３は、各レイヤを上記した順に重ね合わせることによって、各コード画像を合成した合成画像を作成する。このとき、シンボルレイヤにおいて、シンボル自体を表すための白地部分とシンボルレイヤにおける背景部分とは区別されているものとする。又は、地紋レイヤ及びコンテンツ加工レイヤにおいてシンボルを表すコード画像が重なる部分を白抜きした後に、シンボルレイヤを地紋レイヤ及びコンテンツ加工レイヤに重ね合わせる。このようにすることで、複数種類の各コード画像を正確に読み取り且つ正確にデコード可能な合成画像を生成することができる。
【００３１】
＜印刷アプリの構成＞
次に、印刷アプリ１００について説明する。印刷アプリ１００は、印刷命令元の違いに応じた２つの機能がある。具体的には、ドライバ印刷機能と、スキャン印刷機能とである。ドライバ印刷機能は、パーソナルコンピュータＰＣ１のプリンタドライバからの印刷命令を受け付け、当該印刷命令に従って印刷する機能である。スキャン印刷機能は、当該複写機ＭＦＰ１において複写対象の紙をスキャンした後述のスキャンアプリ１０１からの印刷命令を受け付け、当該印刷命令に従って印刷する機能である。
【００３２】
いずれの機能においても、印刷アプリ１００は、印刷対象の画像の情報と、印刷条件と、エンコード対象のデータに関する埋め込みデータリストとを取得する。埋め込みデータリストとは、エンコード対象のデータと、エンコードの種類を示す上述のキャリアとの対応関係をリスト化した情報である。図７は、埋め込みデータリストのデータ構成を例示する図である。同図においては、キャリアとして、上述のシンボル系に分類されるコードＡ，Ｂと、上述のコンテンツ加工系に分類されるコンテンツ加工Ａ，Ｂと、上述の地紋系に分類されるドットパターンＡ，Ｂとが、エンコード対象の各データと対応付けられている。また、図８は、データ層Ｍ３のレイヤ割当情報テーブル３００のデータ構成を例示する図である。印刷アプリ１００は、印刷対象の画像のレンダリングを行うと共に、このレイヤ割当情報テーブル３００を参照して、埋め込みデータリストにあるエンコード対象のデータをシンボル系、コンテンツ加工系、地紋系のいずれかの種類に分類し、分類した種類毎に各データのエンコードを、当該種類に対応するエンコーダ２００〜２０２に対して要求する。
【００３３】
ここで、印刷アプリ１００は、コンテンツ加工系エンコーダ２０１に対してデータのエンコードを要求する場合、データ層Ｍ３の有するコンテンツ加工領域情報テーブル３０２を参照して、コード画像として生成する画像の大きさを決定して、当該大きさのコード画像となるよう当該データのエンコードを要求する。そして、印刷アプリ１００は、コンテンツ加工領域情報テーブル３０２を参照して、コンテンツ加工系エンコーダ２０１により生成されたコード画像の配置位置を決定し、当該コード画像を配置したコンテンツ加工レイヤを生成する。図９は、コンテンツ加工領域情報テーブル３０２のデータ構成を示す図である。このコンテンツ加工領域情報テーブル３０２には、「開始位置」と、「幅、高さ」とを含む加工領域情報がコンテンツ加工ＮＯ毎に記憶されている。この加工領域情報を用いた上述の処理の詳細については後述する。
【００３４】
また、地紋系エンコーダ２０２に対してデータのエンコードを要求する場合、データ層Ｍ３の有する地紋領域情報テーブル３０３を参照して、コード画像として生成する画像の大きさを決定して、当該大きさのコード画像となるよう当該データのエンコードを要求する。そして、印刷アプリ１００は、地紋領域情報テーブル３０３を参照して、地紋系エンコーダ２０２により生成されたコード画像の配置位置を決定し、当該コード画像を配置した地紋レイヤを生成する。図１０は、地紋領域情報テーブル３０３のデータ構成を示す図である。この地紋領域情報テーブル３０３には、「開始位置」と、「幅、高さ」とを含む加工領域情報が地紋ＮＯ毎に記憶されている。この加工領域情報を用いた上述の処理の詳細については後述する。
【００３５】
また、印刷アプリ１００は、シンボル系エンコーダ２００によりコード画像が生成されると、シンボル重畳位置情報テーブル３０１を参照して、当該コード画像の配置位置を決定し、当該コード画像を配置したシンボルレイヤを生成する。図１１は、シンボル重畳位置情報テーブル３０１のデータ構成を示す図である。このシンボル重畳位置情報テーブル３０１には、コード画像の「重畳位置」を含む位置情報がシンボルＮＯ毎に記憶されている。この位置情報を用いた上述の処理の詳細については後述する。
【００３６】
そして、印刷アプリ１００は、生成した各レイヤの重ね合わせの順序を示すレイヤ画像情報リストを生成する。図１２は、レイヤ画像情報リストのデータ構成を示す図である。印刷アプリ１００は、同図に示されるようなレイヤ画像情報リストを画像合成部２０３に渡して各レイヤの合成を要求し、当該要求に応じて合成された画像を、ユーザにより指示された印刷条件に従って、紙に印刷する。
【００３７】
＜スキャンアプリの構成＞
次に、スキャンアプリ１０１について説明する。スキャンアプリ１０１は、複写機ＭＦＰに複写対象の紙がセットされ、当該複写機ＭＦＰの操作パネル２０においてユーザからの印刷指示、印刷条件及びエンコード対象のデータに関する情報が入力されることにより、走査部が当該紙をスキャンして読み取った画像（スキャン画像）を取得し、当該スキャン画像と印刷条件と上述の埋め込みデータリストとを印刷命令と共に印刷アプリ１００に渡す。
【００３８】
（２）動作
＜ドライバ印刷＞
次に、本実施の形態における複写機ＭＦＰ１の動作について説明する。まず、パーソナルコンピュータＰＣ１のプリンタドライバから印刷命令を受け取る場合の印刷処理の手順について説明する。図１３は、当該印刷処理の手順を示すフローチャートである。ユーザは、パーソナルコンピュータＰＣ１を操作して、エンコード対象のデータを指定する。図１４は、エンコード対象のデータを指定するためのユーザインターフェースとしてパーソナルコンピュータＰＣ１の表示部に表示される画面例である。図１５は、図１４の画面例において表示されるボタンＢ１又はＢ２がユーザによりクリックされた場合に表示部に表示される画面例である。図１４又は１５に示されるような画面において、ユーザは、エンコード対象のデータ及びそのキャリアの種類を選択する。ここでは、例えば、コードＡ，Ｂ，Ｃ（第２種類）は、シンボル系のキャリアの種類を示し、加工Ａ，Ｂ（第２種類）は、コンテンツ加工系のキャリアの種類を示し、ドットパターンＡ（第２種類）は、地紋系のキャリアの種類を示している。このような画面においてユーザによりエンコード対象のデータ及びそのキャリアの種類が選択されると、パーソナルコンピュータＰＣ１のプリンタドライバは、その対応関係を示す埋め込みデータリストを生成する。また、ユーザにより、印刷対象の電子文書が指定され、印刷対象の紙の大きさや紙の種類や集約・割付やカラー印刷又は白黒印刷などの各種の印刷条件が指定されると、プリンタドライバは、当該電子文書を表す情報、印刷条件及び埋め込みデータリストを印刷命令と共に複写機ＭＦＰ１に対して送信する。ここでは、図７に示した埋め込みデータリストが送信されるものとする。また、例えば、コードＡに対応するデータは、印刷対象の電子文書のファイル名であり、コードＢに対応するデータは、印刷対象の電子文書のファイルサイズであり、加工Ａに対応するデータは、印刷日時であり、加工Ｂに対応するデータは、印刷回数であり、ドットパターンＡに対応するデータは、印刷命令の送り先の複写機ＭＦＰ１の機器名であり、ドットパターンＢに対応するデータは、印刷命令の送り先の複写機ＭＦＰ１に対して付与されているアドレスであるものとする。また、印刷対象の電子文書のファイル名及びファイルサイズと、印刷日時及び印刷回数と、印刷命令の送り先の複写機ＭＦＰ１の機器名及び当該複写機ＭＦＰ１に対して付与されているアドレスとは、プリンタドライバが取得して上述の印刷条件に含ませるものとする。
【００３９】
複写機ＭＦＰ１の印刷アプリ１００は、パーソナルコンピュータＰＣ１のプリンタドライバを介して、印刷命令と共に印刷対象の電子文書を表す情報と印刷条件と埋め込みデータリストとを受け取る（ステップＳ１）。そして、印刷アプリ１００は、印刷対象の電子文書を表す情報を用いてレンダリングを行ない、印刷対象の電子文書のページ毎にレンダリング画像を生成する（ステップＳ２）。このとき、印刷アプリ１００は、エッジ強調処理、細線化処理、太線化処理、平滑化処理の種々の画像処理を実行して、レンダリング画像を生成する。図１６は、印刷アプリ１００が生成したレンダリング画像を例示する図である。
【００４０】
次いで、印刷アプリ１００は、シンボル系エンコーダ２００に対するコード画像生成要求処理を行い（ステップＳ３）、シンボル系エンコーダ２００がエンコード対象のデータをエンコードしてコード画像を生成し、当該コード画像を印刷アプリ１００に返す（ステップＳ４）。印刷アプリ１００は、コード画像を取得すると（ステップＳ５）、これを用いてシンボルレイヤを生成する（ステップＳ６）。尚、印刷アプリ１００は、コード画像及びこれを用いて生成したシンボルレイヤに対しては上記ステップＳ２で例示した画像処理を行わない。ここで、ステップＳ３〜Ｓ６の処理について詳細に説明する。図１７は、ステップＳ３〜Ｓ６の処理の詳細な手順を示すフローチャートである。同図におけるステップＳ３Ａ〜３ＤがステップＳ３の処理の詳細を示す。まず、ステップＳ３Ａでは、印刷アプリ１００は、レイヤ割当情報テーブル３００を参照して、ステップＳ１で取得した埋め込みデータリストのうち「キャリア属性」が“シンボル”であるデータを抽出する。該当するデータがある場合（ステップＳ３Ｂ：ＹＥＳ）、図１３のステップＳ２で生成したレンダリング画像と同じ大きさで無地のプレーン画像を生成する（ステップＳ３Ｃ）。尚、プレーン画像の背景色には、シンボルを表すために用いる白色及び黒色以外のグレーなどの色を用いることが好ましい。また、ここでは、「キャリア属性」が“シンボル”のデータは、２つ存在し、各々印刷対象の電子文書のファイル名及びファイルサイズを示すものであるものとする。次いで、印刷アプリ１００は、シンボル系エンコーダ２００に対して、ステップＳ３Ａで抽出した全てのデータについて当該データと生成パラメータとを渡し、各データのエンコードを要求する（ステップＳ３Ｄ）。尚、ここでシンボル系エンコーダ２００に対して渡される生成パラメータは、印刷アプリ１００が予め定めたものであり、例えばＲＯＭ１２ａやＨＤＤ１８に記憶されているものとする。
【００４１】
シンボル系エンコーダ２００は、印刷アプリ１００から渡されたデータ及び生成パラメータを用いて、上述の構成欄で説明したようにエンコードを行い、各データに対応するコード画像を生成し、生成したコード画像を印刷アプリ１００に渡す（ステップＳ４）。印刷アプリ１００は、各コード画像（ここでは、コードＡ、Ｂに各々対応する２つのコード画像）を受け取ると（ステップＳ５）、シンボル重畳位置情報テーブル３０１の位置情報を参照して、各コード画像の配置位置を決定して、ステップＳ３Ｃで生成したプレーン画像における各配置位置に各コード画像を配置して、シンボルレイヤを生成する（ステップＳ６）。具体的には、ここでは、コード画像が２つあるため、図１１に示されるシンボル重畳位置情報テーブル３０１において、印刷アプリ１００は、「シンボルＮＯ」が“１”及び“２”の位置情報に含まれる「重畳位置」を参照して、各コード画像を各位置に配置する。いずれの位置に各コード画像を配置するかは、任意に決定しても良いし、コードＡ，Ｂの順に「シンボルＮＯ」“１”及び“２”を対応させて配置するようにしても良い。図１８は、印刷アプリ１００が生成したシンボルレイヤを例示する図である。同図においては、シンボル系エンコーダ２００が、コードＡ，Ｂの各キャリアにエンコードしたコード画像ＧＳ１，ＧＳ２が各々現れている。また、印刷アプリ１００は、レイヤ割当情報テーブル３００の「レイヤＮＯ」を参照して、当該シンボルレイヤに対して「レイヤＮＯ」として“１”を対応付けてＲＡＭ１２ｂに一時的に記憶させる。
【００４２】
図１３に戻り、次いで、印刷アプリ１００は、コンテンツ加工系エンコーダ２０１に対するコード画像生成要求処理を行い（ステップＳ７）、コンテンツ加工系エンコーダ２０１がエンコード対象のデータをエンコードしてコード画像を生成し、当該コード画像を印刷アプリ１００に返す（ステップＳ８）。印刷アプリ１００は、コード画像を取得すると（ステップＳ９）、これを用いてコンテンツ加工レイヤを生成する（ステップＳ１０）。尚、印刷アプリ１００は、コード画像及びこれを用いて生成したコンテンツ加工レイヤに対しては上記ステップＳ２で例示した画像処理を行わない。ここで、ステップＳ７〜Ｓ１０の処理について詳細に説明する。図１９は、ステップＳ７〜Ｓ１０の処理の詳細な手順を示すフローチャートである。同図におけるステップＳ７Ａ〜７ＥがステップＳ３の処理の詳細を示す。まず、ステップＳ７Ａでは、印刷アプリ１００は、ステップＳ１で取得した埋め込みデータリストのうち「キャリア属性」が“コンテンツ加工”であるデータを抽出する。該当するデータがある場合（ステップＳ７Ｂ：ＹＥＳ）、コンテンツ加工領域情報テーブル３０２に記憶されている加工領域情報を参照して、ステップＳ２で生成したレンダリング画像（図１６参照）を用いて、該当するデータの個数の加工領域情報に示される領域に該当する部分のレンダリング画像（部分画像）を生成する（ステップＳ７Ｃ）。この部分画像の背景色は、白色とする。また、ここでは、図８に示されるように「キャリア属性」が“コンテンツ加工”のデータは、加工Ａ、Ｂのキャリアに各々対応する２つのデータである。尚、「キャリア属性」が“コンテンツ加工”のデータは、印刷対象の印刷日時及び印刷回数である。このステップＳ７Ｃでは、具体的に、印刷アプリ１００は、コンテンツ加工領域情報テーブル３０２に記憶されている加工領域情報の「コンテンツＮＯ」が“１”及び“２”の「開始位置」及び「幅、高さ」の値を各々参照して、当該各開始位置を基点とし当該幅及び高さを有する領域を加工領域として、当該加工領域に対応するレンダリング画像の部分を部分画像として生成する。図２０は、加工領域情報によって領域毎に分割するレンダリング画像を例示する図である。同図に示されるように、加工領域情報の「コンテンツ加工ＮＯ」が“１”及び“２”のデータに基づいて、レンダリング画像における領域を高さ方向に２つに等分した領域ＡＲ１，ＡＲ２が求められ、当該各領域に対応するレンダリング画像の部分画像が生成される。
【００４３】
次いで、印刷アプリ１００は、コンテンツ加工系エンコーダ２０１に対して、ステップＳ７Ｃで生成した各レンダリング画像と、ステップＳ７Ａで抽出した全てのデータについて当該データと生成パラメータとを渡し、各データのエンコードを要求する（ステップＳ７Ｄ）。尚、ここでコンテンツ加工系エンコーダ２０１に対して渡される生成パラメータは、印刷アプリ１００が予め定めたものであり、例えばＲＯＭ１２ａやＨＤＤ１８に記憶されているものとする。
【００４４】
コンテンツ加工系エンコーダ２０１は、印刷アプリ１００から渡されたレンダリング画像、データ及び生成パラメータを用いて、上述の構成欄で説明したようにエンコードを行い、各データに対応するコード画像を生成し、生成したコード画像を印刷アプリ１００に渡す（ステップＳ８）。図２１は、コンテンツ加工系エンコーダ２０１が生成したコード画像を例示する図である。図２１に示されるように、図２０において示した領域ＡＲ１，ＡＲ２に各々対応するコード画像が生成される。このような各コード画像を印刷アプリ１００は受け取ると（ステップＳ９）、上述したコンテンツ加工領域情報テーブル３０２の加工領域情報を参照して、各コード画像の配置位置を決定して、各配置位置に各コード画像を配置して、図２９に示されるようなコンテンツ加工レイヤを生成する（ステップＳ１０）。また、印刷アプリ１００は、レイヤ割当情報テーブル３００の「レイヤＮＯ」を参照して、当該コンテンツ加工レイヤに対して「レイヤＮＯ」として“２”を対応付けてＲＡＭ１２ｂに一時的に記憶させる。尚、ステップＳ７Ｂの判定結果が否定的である場合、印刷アプリ１０は、ステップＳ２でレンダリングしたレンダリング画像自体をコンテンツ加工レイヤとし、これに対して「レイヤＮＯ」として“２”を対応付けてＲＡＭ１２ｂに一時的に記憶させる。
【００４５】
図１３に戻り、次いで、印刷アプリ１００は、地紋系エンコーダ２０２に対するコード画像生成要求処理を行い（ステップＳ１１）、地紋系エンコーダ２０２がエンコード対象のデータをエンコードしてコード画像を生成し、当該コード画像を印刷アプリ１００に返す（ステップＳ１２）。印刷アプリ１００はコード画像を取得すると（ステップＳ１３）、これを用いて地紋レイヤを生成する（ステップＳ１４）。尚、印刷アプリ１００は、コード画像及びこれを用いて生成した地紋レイヤに対しては上記ステップＳ２で例示した画像処理を行わない。ここで、ステップＳ１１〜Ｓ１４の処理について詳細に説明する。図２２は、ステップＳ１１〜Ｓ１４の処理の詳細な手順を示すフローチャートである。同図におけるステップＳ１１Ａ〜１１ＤがステップＳ１１の処理の詳細を示す。まず、ステップＳ１１Ａでは、印刷アプリ１００は、レイヤ割当情報テーブル３００を参照して、ステップＳ１で取得した埋め込みデータリストのうち「キャリア属性」が“地紋”であるデータを抽出する（ステップＳ１１Ａ）。該当するデータがある場合（ステップＳ１１Ｂ：ＹＥＳ）、ステップＳ２で生成したレンダリング画像と同じ大きさで無地のプレーン画像を生成する（ステップＳ１１Ｃ）。ここで生成するプレーン画像の背景色は白色であるとする。また、ここでは、「キャリア属性」が“地紋”のデータは、ドットパターンＡ，Ｂに対応する２つのデータであり、当該印刷を行う複写機ＭＦＰ１の機器名及び複写機ＭＦＰ１に付与されているアドレスであるとする。
【００４６】
また、印刷アプリ１００は、レイヤ割当情報テーブル３００に記憶されている加工領域情報を参照して、該当するデータの個数の各加工領域情報の「開始位置」及び「幅、高さ」の値を参照して、当該開始位置を基点とし当該幅及び高さを有する各領域を加工領域として、当該加工領域の大きさ、即ち、生成されるコード画像の大きさを求める。図２３は、加工領域の大きさを例示する図である。図２３に示されるように、加工領域情報の「地紋ＮＯ」が“１”及び“２”のデータに基づいて、レンダリング画像における領域を幅方向に２つに等分した領域ＡＲ３，ＡＲ４が求められ、この大きさのコード画像が生成されることになる。次いで、印刷アプリ１００は、地紋系エンコーダ２０２に対して、ステップＳ１１Ａで抽出した全てのデータについて当該データとコード画像の大きさと、生成パラメータとを渡し、各データのエンコードを要求する（ステップＳ１１Ｄ）。尚、ここで地紋系エンコーダ２０２に対して渡される生成パラメータは、印刷アプリ１００が予め定めたものであり、例えばＲＯＭ１２ａやＨＤＤ１８に記憶されているものとする。
【００４７】
地紋系エンコーダ２０２は、印刷アプリ１００から渡されたデータ、加工領域の大きさ及び生成パラメータを用いて、上述の構成欄で説明したようにエンコードを行い、各データに対応するコード画像を生成し、生成したコード画像を印刷アプリ１００に渡す（ステップＳ１２）。図２４は、地紋系エンコーダ２０２が生成したコード画像を例示する図である。図２４に示されるように、図２３において示した領域ＡＲ３，ＡＲ４に各々対応するコード画像が生成される。このような各コード画像を印刷アプリ１００は受け取ると、地紋領域情報テーブル３０３を参照して、各コード画像の配置位置を決定して、ステップＳ１１で生成したプレーン画像における各配置位置に各コード画像を配置して、図３０に示されるような地紋レイヤを生成する。また、印刷アプリ１００は、レイヤ割当情報テーブル３００の「レイヤＮＯ」を参照して、当該地紋レイヤに対して「レイヤＮＯ」として“３”を対応付ける。
【００４８】
図１３に戻り、次いで、印刷アプリ１００は、生成した各レイヤと、当該各レイヤと対応付けた「レイヤＮＯ」の値と、「透過色」とを各々対応付けたレイヤ画像情報リスト（図１２参照）を生成する。「透過色」とは、各レイヤを生成したときの背景色を示す。図１２においては、「レイヤＮＯ」が“１”に対応するレイヤは、シンボルレイヤであり、「レイヤＮＯ」が“２”に対応するレイヤは、コンテンツ加工レイヤであり、「レイヤＮＯ」が“３”に対応するレイヤは、地紋レイヤである。そして、印刷アプリ１００は、当該レイヤ画像情報リストを画像合成部２０３に渡し、画像の合成を要求する（ステップＳ１５）。
【００４９】
画像合成部２０３は、画像の合成処理を実行する（ステップＳ１６）。ここで、ステップＳ１６の処理について詳細に説明する。図２５は、ステップＳ１６の処理の詳細な手順を示すフローチャートである。印刷アプリ１００は、レイヤ画像情報リストを受け取ると（ステップＳ１６Ａ）、当該レイヤ画像情報リストの「レイヤＮＯ」の最大値を調べ、当該最大値の「レイヤＮＯ」をカレントレイヤＮＯとし（ステップＳ１６Ｂ）、当該カレントレイヤＮＯに対応付けられているレイヤを合成先の画像（合成先画像という）とする（ステップＳ１６Ｃ）。次いで、画像合成部２０３は、レイヤ画像情報リストにおいて、カレントレイヤＮＯの次に小さい値の「レイヤＮＯ」を調べ（ステップＳ１６Ｄ）、該当する値がある場合（ステップＳ１６Ｅ：ＹＥＳ）、これをカレントＮＯとして（ステップＳ１６Ｆ）、当該カレントＮＯに対応付けられているレイヤを合成元の画像（合成元画像という）とする（ステップＳ１６Ｇ）。そして、画像合成部２０３は、合成元画像と合成先画像との合成処理を行う（ステップＳ１６Ｈ）。具体的には、画像合成部２０３は、合成先画像の各画素について、当該画素に対応する合成元の画素の色が透過色でない場合、合成先画像の画素の画素値を合成元画像の画素の画素値に置き換える。即ち、画像合成部２０３は、合成元画像の画素の色が透過色である場合、当該画素に対応する合成先画像の画素値を合成元画像の画素値に置き換えず、合成先画像の画素値を用いる。次いで、画像合成部２０３は、合成処理の結果、合成先の画像と合成元の画像との合成画像を得て、当該合成画像を合成先画像として（ステップＳ１６Ｉ）、ステップＳ１６Ｄの処理を行う。そして、カレントレイヤＮＯの次に小さい値の「レイヤＮＯ」が存在しない場合（ステップＳ１６Ｅ：ＮＯ）、ステップＳ１６Ｉで最終的に得た合成画像を印刷アプリ１００に渡す（ステップＳ１６Ｊ）。この結果、ステップＳ１５で生成されたレイヤ画像情報リストにおいて、「レイヤＮＯ」が“３”、“２”、“１”の順でレイヤが重ね合わせられて合成画像が生成される。図２６は、生成される合成画像を例示する図である。図２６に示される画像においては、図１８に示されるシンボルレイヤ、図２９に示されるコンテンツ加工レイヤ、図３０に示されるような地紋レイヤが合成される。
【００５０】
図１３に戻り、印刷アプリ１００は、合成画像を受け取ると（ステップＳ１７）、ステップＳ１で取得した印刷条件に従って、当該画像を紙に印刷する（ステップＳ１８）。この結果、図２６に示されるような画像が紙に印刷される。図２６においては、印刷対象の電子文書のファイル名及びファイルサイズがシンボル系のキャリアに各々エンコードされたコード画像ＧＳ１，ＧＳ２が印刷され、領域ＡＲ１，ＡＲ２においては、印刷日時及び印刷回数がコンテンツ加工系のキャリアに各々エンコードされたコード画像が印刷され、領域ＡＲ３，ＡＲ４においては、複写機ＭＦＰ１の機器名及び当該複写機ＭＦＰ１に対して付与されているアドレスが地紋系のキャリアに各々エンコードされたコード画像が印刷されている。
【００５１】
以上のような構成により、各キャリアの種類毎にレイヤが生成され、各レイヤが所定の順序で重ね合わせられて印刷対象の画像が生成される。この結果、各レイヤが重ね合わさっていても、各コード画像を正確に読み取り可能であり、従って、正確にデコードすることが可能になる。また、各種レイヤ画像に対して、エッジ強調、細線化、太線化、平滑化等の読み取り品質に影響を及ぼすような画像処理を行わないので、正確にデコードすることができる。
【００５２】
＜スキャン印刷＞
次に、スキャンアプリ１０１を介して印刷アプリ１００が印刷処理を行う場合の処理の手順について説明する。複写機ＭＦＰ１において電源が投入され、スキャンアプリ１０１が起動すると、印刷条件を設定する項目とスキャンを指示するためのスキャンボタンとを操作パネル２０に表示させる。そして、ユーザが、複写機ＭＦＰ１のスキャン部（図示せず）に紙をセットして、操作パネル２０において、印刷条件を設定し、更に、上述の図１４〜１５に示すような表示画面においてエンコード対象のデータを指定して、スキャンボタンを押下する操作入力を行うと、スキャンアプリ１０１は、当該操作入力を受け付け、印刷条件及びエンコード対象のデータを指定する情報を取得する。また、スキャンアプリ１０１は、スキャン部にセットされた紙のスキャンを実行する。そして、スキャンアプリ１０１は、印刷条件及びエンコード対象のデータを指定する情報を用いて、上述と同様の埋め込みデータリストを生成する。そして、スキャンアプリ１０１は、生成した埋め込みデータリストと、印刷条件と、スキャンの結果得られるスキャン画像とを印刷命令と共に印刷アプリ１００に渡す。以降、印刷アプリ１００は、上述と同様にして、図１３に示したステップＳ１〜１８の処理を行う。
【００５３】
（３）変形例
また、上述した各実施の形態に限定されるものではなく、以下に例示するような種々の変形が可能である。
【００５４】
＜変形例１＞
上述した実施の形態の複写機ＭＦＰ１で実行される各種プログラムを、ＲＯＭ１２ａではなく、ＨＤＤ１８に記憶させるように構成しても良い。また、当該各種プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、当該各種プログラムを、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Digital Versatile Disk）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成しても良い。
【００５５】
＜変形例２＞
また、上述した実施の形態の複写機ＭＦＰ１の機能的構成においては、シンボル系エンコーダ２００、コンテンツ加工系エンコーダ２０１及び地紋系エンコーダ２０２を有するように構成したが、エンコーダの種類及びその数は上述のものに限定されない。
【００５６】
また、上述の実施の形態においては、シンボル系、コンテンツ加工系及び地紋系の順にコード画像を生成するように構成したが、コード画像を生成する順序は、この順に限らない。
【００５７】
また、上述の実施の形態においては、１つのデータに対して１つのコード画像を生成するように構成したが、２つ以上のデータを１つのキャリアにエンコードして１つのコード画像を生成するように構成しても良い。
【００５８】
また、ステップＳ３，Ｓ７，Ｓ１１のコード画像生成要求処理において、印刷アプリ１００は、エンコード対象のデータを一度に各エンコーダ２００〜２０２に渡し、各エンコーダ２００〜２０２が生成したコード画像を一度に受け取るように構成したが、データ毎にコード画像生成要求処理を行うように構成し、データ毎に各エンコーダ２００〜２０２に対してコード画像の生成を要求して、生成されたコード画像を受け取るように構成しても良い。
【００５９】
また、各キャリアにエンコードするデータやそのデータの数は上述のものに限らず、そのデータをプリンタドライバが印刷条件に含ませるものに限らない。
【００６０】
また、上述の実施の形態においては、シンボルレイヤ、コンテンツレイヤ及び地紋レイヤを生成したが、これらのうち少なくとも２つ以上を生成すれば良く、また、レイヤ画像情報リストにおいては、生成されたレイヤのみに関する情報を含ませるように構成すれば良い。
【００６１】
また、上述の実施の形態におけるシンボル重畳位置、コンテンツ加工領域、地紋領域は、ユーザが任意に指定したものを用いるようにしても良い。
【００６２】
＜変形例３＞
上述の実施の形態の複写機ＭＦＰ１の機能的構成において、モジュール層Ｍ２に更にエンコーダラッパを備えるように構成しても良い。図２７はエンコーダラッパを備える複写機ＭＦＰの機能的構成を示すブロック図である。同図に示されるように、印刷アプリ１００と各エンコーダ２００〜２０２及び画像合成部２０３との間にエンコーダラッパ２０４が備わる。エンコーダラッパ２０４は、上述の印刷アプリ１００に代わって、各エンコーダ２００〜２０２及び画像合成部２０３を用いて、上述した各レイヤの生成及び合成画像の生成要求を行う機能である。図２８は、本変形例に係る動作の手順を示すフローチャートである。印刷アプリ１００は、上述の実施の形態と同様にして、ステップＳ１〜Ｓ２の処理を行った後、ステップＳ１で取得した埋め込み情報データリストと、ステップＳ２で生成したレンダリング画像とをエンコーダラッパ２０４に渡し、合成画像の生成を要求する（ステップＳ１００）。エンコーダラッパ２０４は、レンダリング画像及び埋め込みデータリストを受け取ると、上述のステップＳ３の処理を行う。以降、ステップＳ４〜Ｓ１６までの処理は、上述と同様にして行われる。尚、ステップＳ１６では、画像合成部２０３は、生成した合成画像をエンコーダラッパ２０４に渡す。エンコーダラッパ２０４は、合成画像を受け取ると、当該合成画像を印刷アプリ１００に渡す（ステップＳ１０１）。印刷アプリ１００は、合成画像を受け取ると（ステップＳ１０２）、上述のステップＳ１８と同様にして、印刷を行う。
【００６３】
以上のように、エンコーダラッパ２０４を用いることにより、印刷アプリ１００は各レイヤの生成及び各レイヤの合成の制御を行う必要がなくなり、コード画像を印刷するための印刷処理が容易になる。
【００６４】
＜変形例４＞
上述の実施の形態においては、印刷する電子文書の総ページ数、あるいはスキャンする紙の枚数は１枚であるとしたが、ページ数は複数であっても良いし、印刷枚数は複数枚であっても良い。この場合、ステップＳ２によるレンダリング画像の生成、ステップＳ３〜Ｓ１４による各レイヤの生成及びステップＳ１５〜Ｓ１７による合成画像の取得の各処理を印刷枚数と同じ回数行うようにすれば良い。また、このとき、複数の全ての紙に各々異なる情報がエンコードされたコード画像を印刷するようにしても良いし、同じ情報がコード化されたコード画像を印刷するようにしても良い。又は、複数枚の紙のうち最初に印刷する紙のみにコード画像を印刷するようにしても良い。
【００６５】
＜変形例５＞
尚、エンコード対象のデータや、コード画像を生成するための生成パラメータは、予め定められたものであっても良いし、ユーザが任意に設定したものを用いるようにしても良い。この場合、印刷アプリ１００は、パーソナルコンピュータＰＣ１又は複写機ＭＦＰ１においてユーザが設定した情報を、プリンタドライバ又はスキャンアプリ１０１を介して取得するように構成すれば良い。このような構成によれば、エンコードしたい情報をユーザが任意に設定することができ、ユーザの利便性を向上させることができる。
【産業上の利用可能性】
【００６６】
以上のように、本発明にかかる画像処理装置、画像処理方法及び画像処理プログラムは、印刷対象の紙をスキャナにより読み取った画像又は電子文書に対するパーソナルコンピュータなどからの印刷命令に基づいて、印刷画像を形成して紙に印刷する画像処理技術に用いて好適である。
【図面の簡単な説明】
【００６７】
【図１】本発明の一実施の形態にかかる画像処理システム全体の構成を示すブロック図である。
【図２】同実施の形態にかかる複写機ＭＦＰ１のハードウェア構成を示すブロック図である。
【図３】同実施の形態にかかる複写機ＭＦＰ１の機能的構成を示すブロック図である。
【図４】同実施の形態にかかるシンボル系エンコーダ２００が出力するコード画像を例示する図である。
【図５】同実施の形態にかかるコンテンツ加工系エンコーダ２０１が出力するコード画像を例示する図である。
【図６】同実施の形態にかかる地紋系エンコーダ２０２が出力するコード画像を例示する図である。
【図７】同実施の形態にかかる埋め込みデータリストのデータ構成を例示する図である。
【図８】同実施の形態にかかるデータ層Ｍ３のレイヤ割当情報テーブル３００のデータ構成を例示する図である。
【図９】同実施の形態にかかるコンテンツ加工領域情報テーブル３０２のデータ構成を示す図である。
【図１０】同実施の形態にかかる地紋領域情報テーブル３０３のデータ構成を示す図である。
【図１１】同実施の形態にかかるシンボル重畳位置情報テーブル３０１のデータ構成を示す図である。
【図１２】同実施の形態にかかるレイヤ画像情報リストのデータ構成を示す図である。
【図１３】同実施の形態にかかるパーソナルコンピュータＰＣ１のプリンタドライバから印刷命令を受け取る場合の印刷処理の手順を示すフローチャートである。
【図１４】同実施の形態にかかるエンコード対象のデータを指定するためのユーザインターフェースとしてパーソナルコンピュータＰＣ１の表示部に表示される画面例を示す図である。
【図１５】同実施の形態にかかる図１４の画面例において表示されるボタンＢ１又はＢ２がユーザによりクリックされた場合に表示部に表示される画面例を示す図である。
【図１６】同実施の形態にかかる印刷アプリ１００が生成したレンダリング画像を例示する図である。
【図１７】同実施の形態にかかるステップＳ３〜Ｓ６の処理の詳細な手順を示すフローチャートである。
【図１８】同実施の形態にかかる印刷アプリ１００が生成したシンボルレイヤを例示する図である。
【図１９】同実施の形態にかかるステップＳ７〜Ｓ１０の処理の詳細な手順を示すフローチャートである。
【図２０】同実施の形態にかかる加工領域情報によって領域毎に分割するレンダリング画像を例示する図である。
【図２１】同実施の形態にかかるコンテンツ加工系エンコーダ２０１が生成したコード画像を例示する図である。
【図２２】同実施の形態にかかるステップＳ１１〜Ｓ１４の処理の詳細な手順を示すフローチャートである。
【図２３】同実施の形態にかかる加工領域の大きさを例示する図である。
【図２４】同実施の形態にかかる地紋系エンコーダ２０２が生成したコード画像を例示する図である。
【図２５】同実施の形態にかかるステップＳ１６の処理の詳細な手順を示すフローチャートである。
【図２６】同実施の形態にかかる紙に印刷される画像を例示する図である。
【図２７】本発明の変形例にかかるエンコーダラッパを備える複写機ＭＦＰの機能的構成を示すブロック図である。
【図２８】本発明の変形例にかかる動作の手順を示すフローチャートである。
【図２９】本発明の一実施の形態にかかる印刷アプリ１００が生成したコンテンツ加工レイヤを例示する図である。
【図３０】同実施の形態にかかる印刷アプリ１００が生成した地紋レイヤを例示する図である。
【符号の説明】
【００６８】
１０  コントローラ
１１  ＣＰＵ
１２ａ  ＲＯＭ
１２ｂ  ＲＡＭ
２０  操作パネル
６０  エンジン部
１００  印刷アプリ（印刷手段）
１０１  スキャンアプリ（読取手段）
２００  シンボル系エンコーダ
２０１  コンテンツ加工系エンコーダ
２０２  地紋系エンコーダ
２０３  画像合成部
２０４  エンコーダラッパ
３００  レイヤ割当情報テーブル
３０１  シンボル重畳位置情報テーブル
３０２  コンテンツ加工領域情報テーブル
３０３  地紋領域情報テーブル
ＭＦＰ１  複写機
ＰＣ１  パーソナルコンピュータ
【図１】
2008205540.tif 000003
【図２】
2008205540.tif 000004
【図３】
2008205540.tif 000005
【図４】
2008205540.tif 000006
【図５】
2008205540.tif 000007
【図６】
2008205540.tif 000008
【図７】
2008205540.tif 000009
【図８】
2008205540.tif 000010
【図９】
2008205540.tif 000011
【図１０】
2008205540.tif 000012
【図１１】
2008205540.tif 000013
【図１２】
2008205540.tif 000014
【図１３】
2008205540.tif 000015
【図１４】
2008205540.tif 000016
【図１５】
2008205540.tif 000017
【図１６】
2008205540.tif 000018
【図１７】
2008205540.tif 000019
【図１８】
2008205540.tif 000020
【図１９】
2008205540.tif 000021
【図２０】
2008205540.tif 000022
【図２１】
2008205540.tif 000023
【図２２】
2008205540.tif 000024
【図２３】
2008205540.tif 000025
【図２４】
2008205540.tif 000026
【図２５】
2008205540.tif 000027
【図２６】
2008205540.tif 000028
【図２７】
2008205540.tif 000029
【図２８】
2008205540.tif 000030
【図２９】
2008205540.tif 000031
【図３０】
2008205540.tif 000032