(57)【要約】【課題】着色剤の色ごとに画像データが分版されている印刷ジョブデータを効率的に処理する。【解決手段】対象ページの画像データが着色剤の色ごとに分版された背景部画像データを各版分取得する。対象ページの画像データが着色剤の色ごとに分版された可変部画像データを取得する。各版の背景部画像データを背景部バッファーメモリーに格納し、可変部画像データの存在する版においては、画素ごとに、背景部バッファーメモリーから当該版の背景部画像データを読み出し当該版の可変部画像データと合成して合成結果を合成結果バッファーメモリーに書き込み、少なくとも可変部画像データの存在しない版においては、背景部バッファーメモリーから当該版の背景部画像データを画素ごとに読み出さずに背景部バッファーメモリーから合成結果バッファーメモリーに少なくとも当該版の背景部画像データを一括コピーする。合成結果バッファーメモリーに格納された画像データに基づいて記録媒体に対象ページの画像を形成する。【選択図】図６
2013159061.tif 000002
【特許請求の範囲】
【請求項１】
背景部バッファーメモリーと、
合成結果バッファーメモリーと、
対象ページの画像データが着色剤の色ごとに分版された画像データであって、他ページと共通する画像要素を含んで構成される背景部画像データを各版分取得する背景部画像データ取得手段と、
前記分版された画像データであって、ページごとに異なる画像要素を含んで構成される可変部画像データを取得する可変部画像データ取得手段と、
各版の前記背景部画像データを前記背景部バッファーメモリーに格納し、前記可変部画像データの存在する版においては、画素ごとに、前記背景部バッファーメモリーから当該版の前記背景部画像データを読み出し当該版の前記可変部画像データと合成して合成結果を前記合成結果バッファーメモリーに書き込み、少なくとも前記可変部画像データの存在しない版においては、前記背景部バッファーメモリーから当該版の前記背景部画像データを画素ごとに読み出さずに前記背景部バッファーメモリーから前記合成結果バッファーメモリーに少なくとも当該版の前記背景部画像データを一括コピーする合成手段と、
前記合成結果バッファーメモリーに格納された画像データに基づいて記録媒体に前記対象ページの画像を形成する画像形成制御手段と、
を備える画像形成装置。
【請求項２】
前記背景部バッファーメモリーおよび前記合成結果バッファーメモリーは、同一画素を構成する各版の値を格納するメモリー領域が連続する構成であり、
前記合成手段は、全ての版において前記背景部画像データを前記背景部バッファーメモリーから前記合成結果バッファーメモリーへ一括コピーした後に、前記可変部画像データが存在する版においてのみ、画素ごとに前記背景部バッファーメモリーまたは前記合成結果バッファーメモリーから前記背景部画像データを読み出し前記可変部画像データと合成して合成結果を前記合成結果バッファーメモリーに書き込む、
請求項１に記載の画像形成装置。
【請求項３】
前記背景部バッファーメモリーおよび前記合成結果バッファーメモリーは、同じ版の各画素の値を格納するメモリー領域が連続する構成であり、
前記合成手段は、前記可変部画像データの存在しない版においてのみ、当該版ごとに、前記背景部バッファーメモリーから前記合成結果バッファーメモリーに前記背景部画像データを一括コピーし、前記可変部画像データの存在する版においては、画素ごとに前記背景部バッファーメモリーから前記背景部画像データを読み出し前記可変部画像データと合成して合成結果を前記合成結果バッファーメモリーに書き込む、
請求項１に記載の画像形成装置。
【請求項４】
前記合成手段は、
前記可変部画像データが存在する版の数が所定数以下の場合には、前記背景部バッファーメモリーに格納された全ての版の前記背景部画像データを前記合成結果バッファーメモリーに一括コピーした後に、前記可変部画像データが存在する版についてのみ前記背景部画像データを前記背景部バッファーメモリーまたは前記合成結果バッファーメモリーから画素ごとに読み出して前記可変部画像データと合成し合成結果を前記合成結果バッファーメモリーに書き込み、
前記可変部画像データが存在する版の数が前記所定数よりも多い場合には、前記可変部画像データが存在する版においては、画素ごとに、前記背景部バッファーメモリーから前記背景部画像データを読み出し前記可変部画像データと合成して合成結果を前記合成結果バッファーメモリーに書き込み、前記可変部画像データが存在しない版においては、画素ごとに前記背景部画像データを前記背景部バッファーメモリーから読み出し前記合成結果バッファーメモリーに書き込む、
請求項２に記載の画像形成装置。
【請求項５】
ページごとに、版ごとの前記背景部画像データを含む版ごとの背景部画像データファイルの指定と、版ごとの前記可変部画像データを含む版ごとの可変部画像データファイルの指定と、が記述されたジョブ情報を取得するジョブ情報取得手段を備え、
前記合成手段は、前記ジョブ情報を参照して前記対象ページにおいて版ごとの前記可変部画像データの有無を判断する、
請求項１〜請求項４のいずれかに記載の画像形成装置。
【請求項６】
前記合成手段は、前記背景部画像データと前記可変部画像データとの合成において、
当該可変部画像データにおける画素の値が最も着色剤の濃度が薄いことを示す第一の値である画素については、当該背景部画像データの当該画素の値を合成結果とし、
当該可変部画像データにおける画素の値が前記第一の値より前記着色剤の濃度が１階調濃い第二の値である画素については、前記第一の値を当該画素の合成結果とし、
当該可変部画像データにおける画素の値が前記第二の値より前記着色剤の濃度が濃い値である画素については、当該可変部画像データの当該画素の値を合成結果とする、
請求項１〜請求項５のいずれかに記載の画像形成装置。
【請求項７】
前記合成手段は、複数ページを含んで構成されるフレームごとに、前記フレーム内の各ページにおいて前記可変部画像データが存在する版の数が所定数以下で、かつ、前記可変部画像データが存在する版が前記フレーム内の各ページにおいて一致しているか否かを判定し、判定結果に応じて前記合成結果バッファーメモリーへのデータの書き込み方法を切り換える、
請求項４に記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置に関し、特に印刷ジョブデータの処理に関する。
【背景技術】
【０００２】
従来、印刷データをマスターデータと可変データとに分けた状態で印刷ジョブとしてプリンターに受け渡し、プリンター側ではマスターデータに可変データを合成して印刷データを生成し当該印刷データを印刷エンジンに受け渡して印刷を実行する手法が知られている（例えば特許文献１）。例えばｘページに渡って背景画像が共通である場合に、１ページ分のマスターデータ（背景画像）とｘページ分の可変データ（各ページで異なる画像）とを含む印刷ジョブを生成することによって、マスターデータと可変データとに分けない状態でｘページ分の印刷データを含む印刷ジョブを生成する場合と比較して、印刷ジョブのデータサイズを削減することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許第６５４９２９４号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、プリンターに受け渡す印刷ジョブに含まれる画像データは分版後のデータであることもある。すなわち、印刷ジョブデータに複数ページ分の画像データが含まれ、なおかつ各ページの画像データは、プリンターが用いる着色剤の色毎に別のファイルに分けられているという構成である。ページ毎に異なる画像要素がある特定の着色剤の色で表現される場合には、印刷データに含まれる画像がこのような構成になっていると好都合である。具体的には例えば、ブラックインクで表される文字やバーコード等の画像要素のみがページ毎に異なり、その他の領域は各ページで共通であると仮定する。この場合に各ページの画像データがインク色ごとに分けられていると、ブラックインクの版のみページ数分の可変データと一種類のマスターデータとを準備し、それ以外のインク色の版はそれぞれ一種類のマスターデータのみ準備することで、印刷ジョブ全体のデータサイズを削減することができる。しかし分版後の画像データを含む印刷ジョブであってこのような構成の印刷ジョブを受け付けた場合にプリンター側で印刷ジョブを効率的に処理する方法について特許文献１では特に考慮されていない。
本発明は、上記課題にかんがみてなされたもので、着色剤の色ごとに画像データが分版されている印刷ジョブデータを効率的に処理することを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するための画像形成装置は、背景部バッファーメモリーと、合成結果バッファーメモリーと、背景部画像データ取得手段と、可変部画像データ取得手段と、合成手段と、画像形成制御部と、を備える。背景部バッファーメモリーは後述する背景部画像データを格納するバッファーメモリーである。合成結果バッファーメモリーは、合成手段による処理結果の画像データを格納するためのバッファーメモリーである。背景部画像データ取得手段は、対象ページの画像データが着色剤の色ごとに分版された画像データであって、他ページと共通する画像要素を含んで構成される背景部画像データを各版分取得する。可変部画像データ取得手段は、対象ページの画像データが着色剤の色ごとに分版された画像データであって、ページごとに異なる画像要素を含んで構成される可変部画像データを取得する。ページごとに異なる画像要素がない版については背景部画像データが存在していれば可変部画像データは存在していなくてよい。合成手段は、各版の背景部画像データを背景部バッファーメモリーに格納する。また合成手段は、可変部画像データが存在する版においては、画素ごとに、背景部バッファーメモリーから当該版の背景部画像データを読み出し当該版の可変部画像データと合成して合成結果を合成結果バッファーメモリーに書き込む。また合成手段は、少なくとも可変部画像データが存在しない版においては、背景部バッファーメモリーから当該版の背景部画像データを画素ごとに読み出さずに背景部バッファーメモリーから合成結果バッファーメモリーに少なくとも当該版の背景部画像データを一括コピーする。画像形成制御手段は、合成結果バッファーメモリーに格納された画像データに基づいて記録媒体に対象ページの画像を形成する。
【０００６】
可変部画像データが存在する版においては、背景部画像データと可変部画像データとの合成を画素ごとに行う必要があるため、背景部バッファーメモリーから対象画素の値を読み出すとともに可変部画像データの対象画素の値を読み出して合成を行う。しかし、可変部画像データが存在しない版においては背景部画像データをそのまま合成結果として用いるため画素ごとに読み出す必要がない。したがって本発明が以上のような構成を備えることにより、可変部画像データが存在しない版（すなわち背景部画像データと可変部画像データとの合成の必要のない版）においても、画素ごとに背景部バッファーメモリーから背景部画像データを読み出して合成結果バッファーメモリーに書き込む構成と比較して、合成結果バッファーメモリーに背景部画像データを格納するのに要する時間を短縮することができる。同じ画素数分の値をコピーする際に、一画素ずつ画素数分コピーを行うよりも、全画素数分の値を一括でコピーする方が処理時間を短縮できるためである。その結果、背景部画像データや可変部画像データを取得してから合成結果バッファーメモリーに格納された画像データに基づいて画像を形成するまでに要する時間を短縮することができる。
なお、合成手段においては、可変部画像データが存在する版において画素ごとに前記背景部画像データを読み出す際、背景部バッファーメモリーから合成結果バッファーメモリーを経由して読み出すようにしてもよい。すなわち背景部バッファーメモリーから合成結果バッファーメモリーに一括コピーされた後、合成結果バッファーメモリーから背景部画像データを読み出されてもよい。
【０００７】
さらに上記目的を達成するための画像形成装置において、背景部バッファーメモリーおよび合成結果バッファーメモリーは、同一画素を構成する各版の値を格納するメモリー領域が連続する構成であってもよい。その場合に合成手段は、全ての版について背景部画像データを背景部バッファーメモリーから合成結果バッファーメモリーへ一括コピーした後に、可変部画像データが存在する版においてのみ、画素ごとに背景部バッファーメモリーまたは合成結果バッファーメモリーから背景部画像データを読み出し可変部画像データと合成して合成結果を合成結果バッファーメモリーに書き込む。
【０００８】
連続するメモリー領域に格納された複数の値は一括で読み出しや書き込みをする方が一つずつ読み出しや書き込みをする場合より処理時間を短縮できる。１画素を構成する各版の値を格納するメモリー領域が連続している場合、仮に、可変部画像データが存在する版を除いて他の版（可変部画像データが存在しない版）の値だけを背景部バッファーメモリーから読み出して合成結果バッファーメモリーに書き込もうとすると、読み書きしたい値のメモリー領域が不連続であるため一括で読み書きできず、１画素ごとに値を背景部バッファーメモリーから読み出して合成結果バッファーメモリーに書き込むという処理を行う必要がある。一方で本構成のように、可変部画像データが存在する版も含めて全ての版の値を複数画素分（例えば１ページ分）まとめて背景部バッファーメモリーから合成結果バッファーメモリーにコピーし、その後で可変部画像データが存在する版についてのみ画素ごとに合成して合成結果を書き込む方が、可変部画像データが存在する版については合成結果バッファーメモリーに２度データが書き込まれることにはなるが、処理時間が前者の構成と比較して短縮できる場合がある。
【０００９】
ここで版数がｍ個であり、そのうち可変部画像データが存在する版がｎ個であるとする。また、１画素を構成するｍ色分の値のうち１色分の値を背景部バッファーメモリーから合成結果バッファーメモリーにコピーするのに要する時間をｔ１とする。また、画像データに含まれる画素数をｐとする。また、１画素を構成するｍ色分の値のうち１色分の値を背景部バッファーメモリーから読み出して、当該色の版の可変部画像データから当該画素の値を読み出して合成し、合成結果を合成結果バッファーメモリーに書き込むのに要する時間をｔ２とする。また１画素がｍ色分の値で構成されるｐ画素の画像データを一括でコピーするのに要する時間をｔ３とする。｛ｔ１×（ｍ−ｎ）×ｐ｝＋｛ｔ２×ｎ×ｐ｝＞ｔ３＋（ｔ２×ｎ×ｐ）となる場合は、本発明の構成のように一括コピー後に可変部画像データが存在する色のみ画素ごとに合成して書き込む方が、画像データを構成するｐ画素分の値を合成結果バッファーメモリーに書き込むのに要する時間を短縮できる。なお上記不等式の左辺は、可変部画像データが存在しない版において一画素ずつｐ画素分背景部バッファーメモリーから背景部画像データを読み出し合成結果バッファーメモリーに書き込むのに要する時間と、可変部画像データが存在する版において一画素ずつｐ画素分背景部バッファーメモリーから背景部画像データを読み出し可変部画像データと合成し合成結果を合成結果バッファーメモリーに書き込みするのに要する時間と、を足し合わせた合計時間である。上記不等式の右辺は、１画素がｍ色分の値で構成されるｐ画素分の背景部画像データを背景部バッファーメモリーから一括で読み出し合成結果バッファーメモリーに書き込むのに要する時間と、可変部画像データが存在する版においてのみ一画素ずつｐ画素分背景部画像データを背景部バッファーメモリーから読み出し可変部画像データと合成し合成結果バッファーメモリーに書き込みするのに要する時間と、を足し合わせた合計時間である。
【００１０】
さらに本発明の画像形成装置において、背景部バッファーメモリーおよび合成結果バッファーメモリーは、同じ版の各画素の値を格納するメモリー領域が連続する構成であってもよい。その場合に合成手段は、可変部画像データの存在しない版においてのみ、当該版ごとに、背景部バッファーメモリーから合成結果バッファーメモリーに背景部画像データを一括コピーする。また合成手段は、可変部画像データの存在する版においては、画素ごとに背景部バッファーメモリーから背景部画像データを読み出し可変部画像データと合成して合成結果を合成結果バッファーメモリーに書き込む。
【００１１】
画像データがｐ個の画素で構成されており１画素はｍ色分の値で構成されているとする。本構成のように、ｍ個の版ごとに、１画素目の値からｐ画素目の値が連続するメモリー領域に格納されている構成である場合は、可変部画像データが存在しない版においてｐ個の画素を背景部バッファーメモリーから合成結果バッファーメモリーに一括コピーし（版ごとに各画素の値が連続しているので少なくとも版ごとに一括コピーが可能）、可変部画像データが存在する版のみ背景部バッファーメモリーから画素ごとに背景部画像データを読み出し可変部画像データと合成して合成結果を合成結果バッファーメモリーに書き込む。そうすることで、ｍ個の版についてｐ個の画素の値を背景部バッファーメモリーから合成結果バッファーメモリーに一括コピーした後に、可変部画像データが存在する版のみ背景部バッファーメモリーまたは合成結果バッファーメモリーから背景部画像データを画素ごとに読み出し可変部画像データの当該画素と合成し合成結果を合成結果バッファーメモリーに上書きする構成と比較して処理時間を短縮できる。
【００１２】
さらに上記目的を達成するための画像形成装置において、合成手段は、可変部画像データが存在する版の数が所定数以下の場合と可変部画像データが存在する版の数が所定数よりも多い場合とで次のように処理を切り換えてもよい。すなわち合成手段は、可変部画像データが存在する版の数が所定数以下の場合には、背景部バッファーメモリーに格納された全ての版の背景部画像データを合成結果バッファーメモリーに一括コピーした後に、可変部画像データが存在する版についてのみ背景部画像データを背景部バッファーメモリーまたは合成結果バッファーメモリーから画素ごとに読み出して可変部画像データと合成し合成結果を合成結果バッファーメモリーに書き込む（Ａ）。また合成手段は、可変部画像データが存在する版の数が所定数よりも多い場合には、可変部画像データが存在する版においては、画素ごとに、背景部バッファーメモリーから背景部画像データを読み出し可変部画像データと合成して合成結果を合成結果バッファーメモリーに書き込み、可変部画像データが存在しない版においては、画素ごとに背景部画像データを背景部バッファーメモリーから読み出し合成結果バッファーメモリーに書き込む（Ｂ）。
【００１３】
可変部画像データが存在する版の数が所定数以下の場合は、上記（Ａ）の処理の方が上記（Ｂ）の処理よりも所要時間が短い。可変部画像データが存在する版の数が所定数より多い場合は、上記（Ａ）の処理の所要時間と上記（Ｂ）の処理の所要時間とが同等か、上記（Ａ）の処理の方が上記（Ｂ）の処理よりも遅い。「所定数」はこの関係を満たすように予め設定される値である。例えば上記不等式を満たすｎが所定数として設定される。このように可変部画像データが存在する版の数に応じて処理方法を切り換えることにより、所要時間を短縮できる方の処理を選択することができる。
【００１４】
さらに上記目的を達成するための画像形成装置は、ページごとに、版ごとの背景部画像データを含む版ごとの背景部画像データファイルの指定と、版ごとの可変部画像データを含む版ごとの可変部画像データファイルの指定と、が記述されたジョブ情報を取得するジョブ情報取得手段を備えても良い。その場合に合成手段は、ジョブ情報を参照して対象ページにおいて版ごとの可変部画像データの有無を判断してもよい。
【００１５】
仮に上記のようなジョブ情報を参照しない構成の場合、例えばファイル名による可変部画像データファイルの検索（予めファイルの命名規則が決められており当該規則に基づいて検索）や、あるいはファイル内のデータの解析を行って、可変部画像データの有無を版ごとに判断するという方法が考えられる。しかし本構成のように予め作成されたジョブ情報を参照する場合、ジョブ情報においてページごとに記述されたファイルの指定に基づいて各ページの版ごとに可変部画像データの有無を判断することができる。そのため、ファイル名による検索を行う場合と比較すると、本構成の場合は、ファイル名の変更や命名規則の変更などがあってもその影響を受けることなく可変部画像データの有無を判断できる。またファイル内のデータ解析を行う場合と比較して本構成の場合は、容易に（短い処理時間で）可変部画像データの有無を判断することができる。
【００１６】
さらに上記目的を達成するための画像形成装置において、合成手段は、背景部画像データと可変部画像データとの合成において、可変部画像データにおける画素の値が最も着色剤の濃度が薄いことを示す第一の値である画素については、背景部画像データの当該着色剤に対応する版の当該画素の値を合成結果とし、可変部画像データにおける画素の値が第一の値より着色剤の濃度が１階調濃い第二の値である画素については、第一の値を当該画素の合成結果とし、可変部画像データにおける画素の値が第二の値より着色剤の濃度が濃い値である画素については、可変部画像データの当該画素の濃度値を合成結果としてもよい。
【００１７】
すなわち本構成では、可変部画像データの各画素の取り得る濃度値の最大階調数のうち１つの値（着色剤の濃度が最も薄い（すなわち着色剤の色を使用しない）ことを示す第一の値）を背景部画像データの該当画素の値を合成結果として採用することを示す値として予め取り決められている。すなわち、可変部画像データにおいては濃度値の階調を１階調犠牲にし、その１階調の値を背景部画像データの濃度値の採用を指定する値としている。なお、本構成においては、背景部画像データにおける濃度値の最大階調数や合成結果における濃度値の最大階調数は、可変部画像データにおける濃度値の最大階調数と同じである。
【００１８】
そのため、可変部画像データにおいて濃度値が第一の値である画素については、背景部画像データの当該画素の値を合成結果として用いる。可変部画像データにおいて濃度値が第一の値以外（第一の値より濃度が濃い、すなわち着色剤の色を使用する）の画素については、可変部画像データの当該画素の値を基本的にはそのまま合成結果として用いる（可変部画像データにおいて濃度値が第二の値の画素は例外である）。前述のように可変部画像データの画素における濃度値の階調数は最大階調数より１少ない。したがって可変部画像データにおいては第二の値が着色剤の濃度が最も薄い（着色剤の色を使用しない）ことを示す値に相当する。しかし可変部画像データの画素の濃度値が第二の値である場合、第二の値をそのまま当該画素の合成結果とすると、合成後の画像処理においてはその値は最も薄い濃度値（着色剤の色を使用しない）を表す値としては扱われない。その結果、合成結果の濃度値に基づいてハーフトーン処理等の処理を行い、処理後のデータに基づいて印刷される画像の色に影響を与えてしまう。それを避けるために、可変部画像データにおいて濃度値が第二の値である画素は、第一の値を合成結果とすることで、当該画素の値は最も薄い濃度値であるとしてその後の画像処理において扱われるようにすることができる。その結果、本来第一の値で表される画素を第二の値のまま合成結果とすることによって、印刷結果の画像において本来表現されるべき色と微妙に異なる色が表現されることを防止することができる。
【００１９】
さらに上記目的を達成するための画像形成装置において、合成手段は、複数ページを含んで構成されるフレームごとに、フレーム内の各ページにおいて可変部画像データが存在する版の数が所定数以下で、かつ、可変部画像データが存在する版がフレーム内の各ページにおいて一致しているか否かを判定し、判定結果に応じて合成結果バッファーメモリーへのデータの書き込み方法を切り換えてもよい。すなわち、フレーム内の各ページにおいて可変部画像データが存在する版の数が所定数以下で、かつ、可変部画像データが存在する版がフレーム内の各ページにおいて一致している場合は、フレーム内の各ページにおいて、上記（Ａ）の処理を行う。また、フレーム内の各ページにおいて可変部画像データが存在する版の数が所定数より多いか、または、可変部画像データが存在する版がフレーム内の各ページにおいて同一ではない場合は、フレーム内の各ページにおいて、上記（Ｂ）の処理を行う。
【００２０】
例えば可変部画像データの存在する版の数や版の種類が同一印刷ジョブ中であまり変化しないことが予め分かっている場合、複数ページ（フレーム）ごとに上記判定を行い、判定結果に応じてフレーム内の各ページに関して上述した２種類の書き込み方法（（Ａ）とＢ））を切り換えるようにしてもよい。その結果、複数ページごとに印刷ジョブ全体の処理時間短縮のために対処することができる。
【００２１】
なお、請求項に記載された各手段の機能は、構成自体で機能が特定されるハードウェア資源、プログラムにより機能が特定されるハードウェア資源、又はそれらの組み合わせにより実現される。また、これら各手段の機能は、各々が物理的に互いに独立したハードウェア資源で実現されるものに限定されない。さらに、本発明は画像形成方法としても、画像形成プログラムとしても、画像形成プログラムの記録媒体としても成立する。むろん、そのコンピュータプログラムの記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体であってもよい。
【図面の簡単な説明】
【００２２】
【図１】本発明の実施形態にかかるプリンターの構成を示すブロック図。
【図２】本発明の実施形態にかかる印刷ジョブデータの構成例を示す模式図。
【図３】本発明の実施形態にかかるジョブチケットファイルの例を示す図。
【図４】本発明の実施形態にかかる印刷ジョブデータ処理のフローチャート。
【図５】第一実施形態にかかる可変部合成処理のフローチャート。
【図６】第一実施形態にかかるバッファーメモリーの構成を示す模式図。
【図７】（７Ａ）は第一実施形態にかかる合成処理１のフローチャート、（７Ｂ）は第一実施形態にかかる合成処理２のフローチャート。
【図８】第一実施形態にかかるＤＴ１とＤＴ２の演算処理のフローチャート。
【図９】第二実施形態にかかるバッファーメモリーの構成を示す模式図。
【図１０】（１０Ａ）は第三実施形態にかかるフレームを示す模式図、（１０Ｂ）は第三実施形態にかかるバッファーメモリーの構成を示す模式図。
【図１１】第三実施形態にかかる可変部合成処理のフローチャート。
【図１２】（１２Ａ）は第三実施形態にかかる合成処理１のフローチャート、（１２Ｂ）は第三実施形態にかかる合成処理２のフローチャート。
【図１３】他の実施形態にかかるＤＴ１とＤＴ２の演算処理のフローチャート。
【発明を実施するための形態】
【００２３】
以下、本発明の実施の形態を添付図面を参照しながら説明する。尚、各図において対応する構成要素には同一の符号が付され、重複する説明は省略される。
１．第一実施形態
１−１．構成
図１は本発明の一実施形態にかかる画像形成装置としてのプリンター３の構成を示すブロック図である。プリンター３は、ＣＰＵ３１，ＲＡＭ３２，ＲＯＭ３３等を備えた制御部３０と、ＨＤＤ（Hard Disk Drive）３４と、通信部３５と印刷部３６とを備えている。ＣＰＵ３１は、ＲＯＭ３３やＨＤＤ３４に記録されている各種のプログラムをＲＡＭ３２にロードして実行することができる。また、ＲＡＭ３２には後述する印刷ジョブデータ処理が実行される際に背景部バッファーメモリーM_bkgrと合成結果バッファーメモリーM_compが確保される。プリンター３はＨＤＤの代わりにＳＳＤ（Solid State Drive）を備えていても良い。プリンター３はＬＡＮ（Local Area Network）２に接続している。通信部３５は、ＬＡＮ２を経由して受信する信号をプロトコルに従って変換してプリンター３の内部バスに送出し、また、内部バスから取り込んだ信号をプロトコルに従って変換してＬＡＮ２に送出する。印刷部３６は、本実施形態においてはインクジェット方式で様々な種類の記録媒体に画像を形成するためのアクチュエーターやセンサーや駆動回路や機械部品を備えている。
【００２４】
ＬＡＮ２にはＰＣ（Personal Computer）１も接続されており、ＰＣ１はプリンター３とＬＡＮ２を介して通信可能である。プリンター３のＨＤＤ３４には共有フォルダーが作成されており、ＰＣ１のユーザーは当該共有フォルダーの配下にサブフォルダーを作成できるとともに各種ファイルを保存することができる。ＰＣ１には、プリンター３に印刷させる印刷ジョブデータを生成するための印刷ジョブデータ生成プログラムがインストールされており、当該プログラムを用いてユーザーはプリンター３に印刷させる印刷ジョブデータを作成し、プリンター３の共有フォルダーの配下に印刷ジョブごとに作成されたサブフォルダーに保存することができる。このように印刷ジョブデータがＨＤＤ３４に保存されることによりプリンター３は印刷ジョブデータを取得することができる。この場合にＨＤＤ３４や制御部３０は、「背景部画像データ取得手段」、「可変部画像データ取得手段」および「ジョブ情報取得手段」として機能する。
【００２５】
１−２．印刷ジョブデータの構成
本実施形態においてＰＣ１からプリンター３に受け渡される印刷ジョブデータは、複数の画像データファイルと一つのジョブチケットファイルとを含んでいる。画像データファイルは、インク色毎の版に分かれてそれぞれ別ファイルとして存在している。さらにインク色毎の画像データは背景部画像データと可変部画像データとに分けられている版があり、その場合は背景部画像データファイルと可変部画像データファイルとして別のファイルとして存在している。
【００２６】
図２は、印刷ジョブデータに含まれる背景部画像データファイルと可変部画像データファイルの構成例を示している。この例では、文字やバーコード等の画像要素の領域だけがページ毎に異なりその他の領域は各ページにおいて共通である場合の画像データファイルの構成例を示している。本実施形態ではこの構成例を用いて以降の説明を行う。本構成例では、文字やバーコードはブラックインクを用いて形成される。そのためブラックの版においては、ページごとに異なる可変部画像データと複数ページにおいて共通な背景部画像データとに分けられている。ブラックの版において可変部画像データは、文字やバーコードの領域だけにページごとに異なる文字やバーコードの画像要素を配置してそれ以外の領域の画素は濃度値が最も薄いことを示す値（白色）となっている。
【００２７】
本実施形態では可変部画像データは、ページごとに別の可変部画像データファイルとして作成されている。具体的には例えば、SampleB_P000001_K.tif（１ページ目の可変部画像データファイル）、SampleB_P000002_K.tif（２ページ目の可変部画像データファイル）、SampleB_P000003_K.tif（３ページ目の可変部画像データファイル）、…として作成されている。またブラックの版の背景部画像データは、各ページにおいて画像が共通する領域に当該共通の画像が配置されており、背景部画像データファイル（例：SampleB_Base_K.tif）として作成されている。可変部画像データも背景部画像データも解像度は同じである。他のインク色（シアン、マジェンタ、イエロー）の画像データはページごとに異なる要素は存在せず各ページにおいて共通であるので、それぞれ背景部画像データファイル（例：SampleB_Base_C.tif、SampleB_Base_M.tif、SampleB_Base_Y.tif）として作成される。ＣＭＹＫ各色の背景部画像データの解像度は同じである。
【００２８】
図３は、「ジョブ情報」としてのジョブチケットファイル（SampleB.jdf）の例を示す図である。本実施形態においてはファイル拡張子「jdf」はジョブチケットファイルを示す。ジョブチケットファイルは、印刷ジョブに関する様々な情報がＸＭＬ（eXtensible Markup Language）で記述されたテキストファイルである。具体的にはジョブチケットファイルには、印刷ジョブに含まれるページ毎に当該ページの画像を形成するために用いる画像データファイルの指定が記述されている。図３には、１ページ目と２ページ目のみを抜粋して示している。同図は、１ページ目および２ページ目においてシアン・マジェンタ・イエローについては背景部画像データファイルのみの指定が記述され、ブラックについては背景部画像データファイルと可変部画像データファイルの指定が記述されていることを示している。ページごとおよび版ごとに背景部画像データや可変部画像データの指定が記述されているジョブチケットファイルが印刷ジョブデータに含まれていることにより、含まれていない場合と比較して容易に可変部画像データの有無を特定でき、また、合成に用いる各ファイルを特定することができる。
【００２９】
このように、ブラックの版の画像データを、ページごとに異なる可変部を抽出した可変部画像データと各ページで共通な背景部を抽出した背景部画像データとに分けて、可変部画像データのみページごとに準備することで、印刷ジョブに含まれるブラックの版における画像データの合計サイズを削減できる。なぜなら、可変部画像データは可変部の領域以外は白色の空白の領域であるため、空白の領域が可変部の領域と比較して面積が広ければ（画素数が多ければ）ＬＺＷやＺｉｐ形式で圧縮することによってサイズを大幅に小さくすることができるためである。
【００３０】
ここで、ブラックの版の背景部画像データファイルのサイズがＳ１で、１ページ分の圧縮後の可変部画像データファイルのサイズがＳ２（＜Ｓ１）で、共通の背景部画像データを使用するページ数がｘページであるとすると、ｘページ分のブラックの版の画像データの合計サイズは（Ｓ１＋Ｓ２×ｘ）である。仮にブラックの版の画像データを可変部画像データと背景部画像データに分けないでｘページ分準備した場合にブラックの画像データの合計サイズは（Ｓ１×ｘ）である。可変部画像データファイル圧縮後のサイズＳ２の平均が［｛（ｘ−１）／ｘ｝×Ｓ１］より小さければ、ブラックの版の画像データを可変部画像データと背景部画像データに分けないでｘページ分準備する場合よりも、１つの背景部画像データとｘページ分の圧縮した可変部画像データとを準備する場合の方が、ブラックの版の画像データの合計サイズを削減することができる。サイズを削減できると、ＰＣ１からプリンター３のＨＤＤ３４への印刷ジョブデータの転送に要する時間も削減できる。また、サイズを削減できると、ＨＤＤ３４を有効に活用することができる。
【００３１】
以上のような構成の印刷ジョブデータをＨＤＤ３４に取得すると、制御部３０はジョブチケットファイルを参照してページおよび版ごとに可変部画像データファイルや背景部画像データファイルを特定し、可変部画像データと背景部画像データとに分けられている版においてはそれらを合成して版ごとの画像データを生成する。この場合に制御部３０は「合成手段」として機能する。制御部３０は、このようにして生成されたインク色数分の画像データに対してハーフトーン処理、並べ替え処理等を施し、その結果生成されたデータに基づいて印刷部３６を制御して記録媒体に画像を形成する。この場合に制御部３０および印刷部３６は「画像形成制御手段」として機能する。
【００３２】
１−３．印刷ジョブデータ処理
次に、印刷ジョブデータ処理について図４〜図８を用いて説明する。図４は印刷ジョブデータ処理を示すフローチャートである。はじめに制御部３０は印刷ジョブデータを取得する（ステップＳ１００）。具体的には、ＨＤＤ３４の共有フォルダー内の印刷ジョブごとに作成されたサブフォルダーに印刷ジョブデータが格納されることでプリンター３は印刷ジョブデータを取得する。印刷ジョブデータを取得すると、制御部３０は当該サブフォルダーの中からファイル拡張子を参照してジョブチケットファイルを特定し、当該ジョブチケットファイルを解析して印刷ジョブとして指定されている様々な情報を取得する。具体的には例えば制御部３０は変数ＰＮに印刷ジョブとして指定されているページの総数を格納する。また変数ＣＮに分版後のカラー数（版の数）を格納する。本実施形態ではＣＭＹＫの４色に分版されている例を用いて説明するので変数ＣＮには４が格納される。
【００３３】
続いて制御部３０は、可変部合成処理，印刷データ画像処理，回路基板へのデータ転送処理を実行する（ステップＳ１０５）。印刷データ画像処理では、合成後の各版の画像データに基づいてハーフトーン処理および並べ替え処理（パス分解処理）を行う。回路基板へのデータ転送処理では、並べ替え処理後のデータを回路基板へ転送し印刷部３６に印刷を実行させる。
【００３４】
図５は可変部合成処理を示すフローチャートである。はじめに制御部３０は変数ｐに１を代入する（ステップＳ２００）。変数ｐは処理対象のページの番号を格納する変数である。例えば変数ｐの値が１である場合は処理対象が１番目のページであることを示している。続いて制御部３０は、背景部画像データファイルから読み出した背景部画像データを背景部バッファーメモリーM_bkgrに書き込む（ステップＳ２０５）。具体的には制御部３０はジョブチケットファイルにおいて対象ページｐについて指定されている各色の背景部画像データファイルを特定し、ＨＤＤ３４の共有フォルダー配下のサブフォルダーに保存されている当該背景部画像データファイルから背景部画像データを読み出して背景部バッファーメモリーM_bkgrに書き込む。制御部３０はＣＮ個の版においてこの処理を行う。また制御部３０は、背景部画像データの画素数を変数ＰＸＮに格納する。
【００３５】
図６は、背景部バッファーメモリーM_bkgrと後述する合成結果バッファーメモリーM_compのデータ構造と格納されるデータについて説明するための図である。背景部バッファーメモリーM_bkgrは画素を構成する各インク色の値を格納するメモリー領域が連続するように構成されている。本実施形態では１画素を構成する各インクの値を格納するメモリー領域のサイズは１バイトであり、０〜２５５の値を格納することができる。合成結果バッファーメモリーM_compも同様の構成である。ステップＳ２０５では制御部３０は、各色の背景部画像データファイルから１画素ずつデータを読み出し背景部バッファーメモリーM_bkgrの該当画素および該当色の値の格納位置に書き込む（図６のＳ２０５ or Ｓ２１５の矢印）。
【００３６】
続いて制御部３０は、対象ページｐにおいて背景部画像データファイルが更新されているか否かを判定し（ステップＳ２１０）、更新されている場合は対象ページｐに関して指定されている新たな背景部画像データファイルからステップＳ２０５と同様に背景部画像データを読み出して背景部バッファーメモリーM_bkgrに書き込み（ステップＳ２１５）、更新されていない場合はステップＳ２１５の処理をスキップしてステップＳ２２０の処理に移行する。このようにＨＤＤ３４に保存されている背景部画像データファイルへのアクセスを毎ページ行うのではなくて、背景部画像データが前ページで指定されていたファイルと異なる場合にのみ行うことにより、ＨＤＤ３４へのアクセス回数を減らすことができ、印刷ジョブデータ処理の処理時間の短縮に寄与することができる。
【００３７】
続いて制御部３０は、対象ページｐにおいて可変部画像データの存在する版の数をジョブチケットファイルから取得して変数ＣＣに代入するとともに、配列ｃｃ［ｃ］に可変部画像データファイルの有無を格納する（ステップＳ２２０）。変数ｃは値は本実施形態では１〜４の値を取り、値が１の場合はシアン、２の場合はマジェンタ、３の場合はイエロー、４の場合はブラックをそれぞれ意味することが予め決められている。例えば可変部画像データが存在するのがブラック一色である場合、変数ＣＣには１が代入され、配列ｃｃ［１］とｃｃ［２］とｃｃ［３］には可変部画像データが存在しないことを示す「０」が格納され、ｃｃ［４］には存在することを示す「１」が格納される。
【００３８】
続いて制御部３０は、変数ＣＣの値が所定数（変数ＣＸに格納された値）より大きいか否か、すなわち対象ページｐにおいて可変部画像データの存在する版の数が所定数より多いか否かを判定し（ステップＳ２２５）、所定数より多い場合は合成処理１を実行する（ステップＳ２３０）。対象ページｐにおいて変数ＣＣの値が所定数（変数ＣＸに格納された値）以下である場合は、制御部３０は合成処理２を実行する（ステップＳ２３５）。「所定数」は合成処理１と合成処理２のどちらを実行するかを切り換えるための閾値として機能する。例えば変数ＣＮの値が４（版数が４）の場合には変数ＣＸには例えば１が代入されている。その場合、対象ページｐにおいて可変部画像データの存在する版の数が１より大きければ合成処理１を実行し、１以下であれば合成処理２を実行することになる。なお例えば変数ＣＮの値が６の場合には変数ＣＸには例えば２が代入されている。
【００３９】
合成処理１または合成処理２を実行したあと制御部３０は、対象ページｐの合成結果バッファーメモリーM_compのデータを用いて印刷データ画像処理および回路基板へのデータ転送処理を行う（ステップＳ２４０）。続いて制御部３０は変数ｐをインクリメントし（ステップＳ２４５）、変数ｐの値がＰＮより大きいか否か（すなわち印刷ジョブに含まれる全てのページを終了したか否か）を判定し（ステップＳ２５０）、大きい場合は可変部合成処理を終了し、変数ｐの値がＰＮ以下の場合はステップＳ２１０の処理に戻る。
【００４０】
図７Ａは合成処理１を示すフローチャートである。合成処理１は対象ページｐにおいて可変部画像データが存在する版数が所定数より多い場合に実行される背景部と可変部との合成処理である。合成処理１では全ての版において１画素ずつ読み出しや書き込みが行われる。はじめに制御部３０は変数ｐｘに０を代入し（ステップＳ３００）、変数ｃに１を代入する（ステップＳ３０５）。変数ｐｘは画像データ内の画素の番号を格納する変数である。例えば画像データがＰＸＮ個の画素で構成されている場合、変数ｐは０〜（ＰＸＮ−１）の値を取り得る。一画素は変数ＣＸの値が示す個数分の版の値で構成される。変数ｃについては上述の通りである。
【００４１】
続いて制御部３０は背景部バッファーメモリーM_bkgrからｐｘ番目の画素の変数ｃが示す版の値を読み出して変数ＤＴ１に代入する（ステップＳ３１０）。続いて制御部３０は配列ｃｃ［ｃ］の値が１であるか否か、すなわち変数ｃの値が示す版の可変部画像データが存在するか否かを判定し（ステップＳ３１５）、配列ｃｃ［ｃ］の値が１である、すなわち変数ｃの値が示す版の可変部画像データが存在する場合は、制御部３０は変数ｃの値が示す版の可変部画像データファイルからｐｘ番目の画素の値を読み出して変数ＤＴ２に代入する（ステップＳ３２０）。可変部画像データファイルに含まれる可変部画像データは圧縮されているため、制御部３０はまず圧縮データを解凍してからｐｘ番目の画素の値を読み出す。続いて制御部３０はＤＴ１とＤＴ２の演算処理を行う（ステップＳ３２５）。ステップＳ３２５の演算結果は変数ＤＴ０に書き込まれる。
【００４２】
ステップＳ３１５にて配列ｃｃ［ｃ］の値が１でない、すなわち変数ｃの値が示す版の可変部画像データが存在しない場合は、制御部３０は変数ＤＴ１の値を変数ＤＴ０に代入する（ステップＳ３３０）。すなわち背景部画像データの対象画素の値をそのまま変数ＤＴ０に代入する。変数ＤＴ０、変数ＤＴ１および変数ＤＴ２はそれぞれサイズが１Ｂｙｔｅの変数であり、０〜２５５の値を取ることができる。
【００４３】
続いて制御部３０は、変数ＤＴ０の値を合成結果バッファーメモリーM_compのｐｘ番目の画素の変数ｃが示す版の位置へ書き込み（ステップＳ３３５）、変数ｃの値をインクリメントし（ステップＳ３４０）、変数ｃの値が変数ＣＮの値よりも大きいか否か（すなわち全ての版を終了したか否か）を判定する（ステップＳ３４５）。ステップＳ３４５にて変数ｃの値が変数ＣＮの値以下と判定された場合は、制御部３０はステップＳ３１０の処理に戻る。ステップＳ３４５にて変数ｃの値が変数ＣＮの値より大きいと判定された場合は、制御部３０は変数ｐｘの値をインクリメントし（ステップＳ３５０）、変数ｐｘの値が（ＰＸＮ−１）より大きいか否か（すなわち全ての画素を終了したかどうか）を判定し（ステップＳ３５５）、変数ｐｘの値が（ＰＸＮ−１）以下であると判定された場合、制御部３０はステップＳ３０５の処理に戻る。ステップＳ３５５にて変数ｐｘの値が（ＰＸＮ−１）より大きいと判定された場合は制御部３０は合成処理１を終了する。
【００４４】
図８はＤＴ１とＤＴ２の演算処理を示すフローチャートである。この処理は、変数ＤＴ２の値に基づいて対象版ｃの可変部画像データの対象画素ｐｘの値を合成結果として採用するか、または、背景部画像データの対象画素ｐｘの対象版ｃの値を合成結果として採用するかを判定し、変数ＤＴ０に合成結果として採用するデータを代入する処理である。
【００４５】
はじめに制御部３０は、変数ＤＴ２の値は１より大きいか否かを判定し（ステップＳ４００）、大きい場合に制御部３０は変数ＤＴ０に変数ＤＴ２の値を代入する（ステップＳ４０５）。ステップＳ４００にて変数ＤＴ２の値が１以下であると判定された場合、制御部３０は変数ＤＴ２の値が１であるか否かを判定し（ステップＳ４１０）、１である場合は変数ＤＴ０に０を代入する（ステップＳ４１５）。ステップＳ４１０にて変数ＤＴ２が１でない（すなわち０である）と判定された場合、制御部３０は変数ＤＴ０に変数ＤＴ１の値を代入する（ステップＳ４２０）。すなわち図８の処理では制御部３０は、対象版ｃの可変部画像データの対象画素ｐｘの値が「第一の値」としての「０」であれば背景部画像データの対象画素ｐｘの対象版ｃの値を合成結果とし、対象版ｃの可変部画像データの対象画素ｐｘの値が「第二の値」としての「１」であれば「０」を合成結果とし、対象版ｃの可変部画像データの対象画素ｐｘの値が「第二の値」としての「１」より大きい場合は対象版ｃの可変部画像データの対象画素ｐｘの値を合成結果として変数ＤＴ０に代入する。
【００４６】
本実施形態では、可変部画像データや背景部画像データの各画素を構成する各版の値（濃度値）は０〜２５５の値を取り得る。可変部画像データの各画素の取り得る濃度値の最大階調数のうち着色剤の濃度が最も薄い（すなわち着色剤の色を使用しない）ことを示す「０（第一の値）」を背景部画像データの該当画素の値を合成結果として採用することを示す値として予め取り決められている。すなわち、可変部画像データにおいては濃度値の階調を１階調犠牲にし、その１階調の値を背景部画像データの濃度値の採用を指定する値としている。
【００４７】
そのため、可変部画像データにおいて濃度値が「０（第一の値）」である画素については、背景部画像データの当該画素の値を合成結果として用いる。可変部画像データにおいて濃度値が「０（第一の値）」より大きい値（第一の値より濃度が濃い、すなわち着色剤の色を使用する）の画素については、可変部画像データの当該画素の値を基本的にはそのまま合成結果として用いる。ただし、可変部画像データにおいて濃度値が「１（第二の値）の画素は例外である。前述のように可変部画像データの画素における濃度値の階調数は最大階調数より１少ない。したがって可変部画像データにおいては「１（第二の値）」が着色剤の濃度が最も薄い（着色剤の色を使用しない）ことを示す値に相当する。しかし可変部画像データの画素の濃度値が「１（第二の値）」である場合、「１」をそのまま当該画素の合成結果とすると、合成後の画像処理においてはその値は最も薄い濃度値（着色剤の色を使用しない）を表す値としては扱われない。その結果、合成結果の濃度値に基づいてハーフトーン処理等の処理を行い、処理後のデータに基づいて印刷される画像の色に影響を与えてしまう。具体的には例えば、対象の着色剤を全く使用しないで表現されるべき色が多少着色剤を使用した色として表現されてしまう。それを避けるために、可変部画像データにおいて濃度値が「１（第二の値）」である画素は、「０（第一の値）」を合成結果とすることで、当該画素の値が最も薄い濃度値であるとしてその後の画像処理において扱われるようにすることができる。その結果、本来「０（第一の値）」で表される画素を「１（第二の値）」のまま合成結果とすることによって、印刷結果の画像において本来表現されるべき色と微妙に異なる色が表現されることを防止することができる。
【００４８】
図７Ｂは、合成処理２を示すフローチャートである。合成処理２は、対象ページｐにおいて可変部画像データが存在する版数が所定数以下の場合に実行される背景部と可変部との合成処理である。合成処理２では、背景部バッファーメモリーM_bkgrに格納されているデータを合成結果バッファーメモリーM_compに一括コピーし、その後で可変部画像データが存在する版においてのみ画素ごとに合成し合成結果バッファーメモリーM_compに上書きするという処理が行われる。
【００４９】
はじめに制御部３０は、背景部バッファーメモリーM_bkgrに格納されているデータを合成結果バッファーメモリーM_compに一括コピーする（ステップＳ５００、図６のＳ５００の矢印）。また制御部３０は、可変部画像データファイルが存在する版を示す値を配列ｃｘ［１］〜ｃｘ［ＣＸ］に代入し（ステップＳ５０５）、変数ｐｘに０を代入し（ステップＳ５１０）、変数ｉに１を代入する（ステップＳ５１５）。例えば可変部画像データファイルが存在する色がブラック１色（ＣＸ＝１）である場合は、ステップＳ５０５においてはｃｘ［１］にブラックを示す値である４が代入される。
【００５０】
続いて制御部３０は変数ｃｃにｃｘ［ｉ］の値を代入する（ステップＳ５２０）。すなわち変数ｃｃには可変部画像データが存在する版の番号が代入される。そして制御部３０は合成結果バッファーメモリーM_comp（または背景部バッファーメモリーM_bkgrでもよい）からｐｘ番目の画素のｃｃの値が示す版の値を読み出し変数ＤＴ１に代入する（ステップＳ５２５、図６のＳ５２５の矢印）。また、制御部３０は変数ｃｃの値が示す版の可変部画像データファイルからｐｘ番目の画素を読み出し変数ＤＴ２に代入する（ステップＳ５３０、図６のＳ５３０の矢印）。変数ｃｃの値が示す版の可変部画像データファイル名はジョブチケットファイルを参照して特定することができる。続いて制御部３０は、図８に示すＤＴ１とＤＴ２の演算処理を行い演算結果を変数ＤＴ０に取得する（ステップＳ５３５）。続いて制御部３０は、変数ＤＴ０の値を合成結果バッファーメモリーM_compのｐｘ番目の画素の変数ｃｃが示す版の位置へ書き込み、すなわち上書きし（ステップＳ５４０、図６のＳ５４０の矢印）、変数ｉをインクリメントする（ステップＳ５４５）。
【００５１】
続いて制御部３０は変数ｉの値が変数ＣＸの値より大きいか否か、すなわち可変部画像データが存在する全ての版においてステップＳ５２０〜Ｓ５４５の処理を終えたか否かを判定し（ステップＳ５５０）、変数ｉの値が変数ＣＸの値以下である場合はステップＳ５２０の処理に戻り、変数ｉの値が変数ＣＸの値より大きい場合は制御部３０はステップＳ５５５に進む。本実施形態では、変数ＣＸの値は１（すなわち可変部画像データが存在する版はブラックのみ）であるので、ステップＳ５２０〜Ｓ５４５の処理は繰り返されず１回だけ実行される。
【００５２】
続いて制御部３０は変数ｐｘをインクリメントし（ステップＳ５５５）、変数ｐｘの値が（ＰＸＮ−１）より大きいか否か、すなわち全ての画素について処理を終えたか否かを判定する（ステップＳ５６０）。変数ｐｘの値が（ＰＸＮ−１）以下の場合は制御部３０はステップＳ５１５の処理に戻り、変数ｐｘの値が（ＰＸＮ−１）より大きい場合は制御部３０は合成処理２を終了する。
【００５３】
以上で説明したように、本実施形態によると、可変部画像データが存在する版が所定数より少ないページは、可変部画像データが存在する版も含めて全ての版のデータを１ページ分まとめて先に背景部バッファーメモリーから合成結果バッファーメモリーにコピーし、その後で可変部画像データが存在する版についてのみ画素ごとに合成して合成結果を書き込む。可変部画像データが存在する版については合成結果バッファーメモリーに２度データが書き込まれることにはなるが、合成処理１のように全ての版について１画素ずつ処理する方法と比較して処理時間を短縮できる。
【００５４】
一方、可変部画像データが存在する版が所定数より多いページにおいては、上記のように先に一括コピーした後で、所定数より多い版において画素ごとに合成し合成結果バッファーメモリーに上書きすると、最初から全ての版において画素ごとに合成し合成結果を合成結果バッファーメモリーに書き込む合成処理１の方法よりもかえって所要時間が長期化する。そのため可変部画像データが存在する版が所定数より多いページにおいては、合成処理１が選択される。このように可変部画像データが存在する版の数をページごとに判定しページごとに処理を切り換えることができる構成であるので、所要時間を短縮できる方の処理をページごとに選択することができる。
【００５５】
２．第二実施形態
図９は、本発明の第二実施形態にかかる背景部バッファーメモリーM_bkgrおよび合成結果バッファーメモリーM_compの構成を示す図である。第一実施形態では１画素ごとに当該画素を構成する各インク色の値を格納するメモリー領域が連続していたが、本実施形態では、同一インク色の画素の値を格納するメモリー領域が連続している構成である。
【００５６】
背景部バッファーメモリーM_bkgrおよび合成結果バッファーメモリーM_compがこのような構成である場合、制御部３０は、可変部画像データの存在しない版においてのみ、当該版ごとに、背景部画像データファイルから背景部バッファーメモリーの該当版の領域にデータを一括コピーし（図９の矢印Ａ２１）、背景部バッファーメモリーから合成結果バッファーメモリーに背景部画像データを一括コピーする（図９の矢印Ａ２２）。また制御部３０は、可変部画像データの存在する版においては、画素ごとに背景部バッファーメモリーから背景部画像データを読み出し可変部画像データと合成して合成結果を合成結果バッファーメモリーに書き込む（図９の矢印Ａ２３）。
【００５７】
本実施形態のバッファーメモリーのように、４個の版ごとに、１画素目の値から最終画素目の値を格納するメモリー領域が連続する構成である場合は、可変部画像データが存在しない版（例：Ｃ，Ｍ，Ｙ）において全画素を背景部バッファーメモリーM_bkgrから合成結果バッファーメモリーM_compに一括コピーし（版ごとにデータがまとまっているので少なくとも版ごとに一括コピーが可能）、可変部画像データが存在する版（例：Ｋ）のみ背景部バッファーメモリーM_bkgrから画素ごとに背景部画像データを読み出し可変部画像データと合成して合成結果を合成結果バッファーメモリーM_compに書き込むという処理が実行される。そうすることで、全ての版について全画素分の値を背景部バッファーメモリーM_bkgrから合成結果バッファーメモリーM_compに一括コピーした後に、可変部画像データが存在する版のみ背景部バッファーメモリーM_bkgrまたは合成結果バッファーメモリーM_compから背景部画像データを画素ごとに読み出し可変部画像データの当該画素と合成し合成結果を合成結果バッファーメモリーM_compに上書きする構成と比較して処理時間を短縮できる。
【００５８】
なお、バッファーメモリーが第二実施形態のような構成である場合、背景部バッファーメモリーM_bkgrは省略されてもよい。すなわち、可変部画像データが存在しない版（例：Ｃ，Ｍ，Ｙ）においても存在する版（例：Ｋ）においても、背景部画像データファイルから直接合成結果バッファーメモリーM_compに版ごとに一括コピーしてもよい。そして、可変部画像データが存在する版において、合成結果バッファーメモリーM_compから対象画素の値を読み出し、当該版の可変部画像データファイルから対象画素の値を読み出し、図８に示す処理を行って得た合成結果を合成結果バッファーメモリーM_compの対象画素の位置に書き戻すようにしてもよい。
【００５９】
３．第三実施形態
可変部合成処理はフレーム単位で行われても良い。この場合のフレームとは、複数のページで構成された印刷単位を指す。例えば記録媒体がロール紙である場合、１フレーム分の領域に対する印刷が完了するとロール紙が搬送され次の１フレーム分のロール紙の領域が次の印刷対象領域となる。図１０Ａは４ページで１フレームが構成されている例を示している。以降の説明では１フレームが４ページで構成されている場合を例にして具体的な説明を行う。１フレームを構成するページ数は例えばジョブチケットファイルに記載されていてもよい。そうすればジョブチケットファイルを制御部３０が参照することにより１フレームのページ数を取得できる。フレーム単位で可変部合成処理を行う場合の処理の流れを図１１と図１２とを用いて説明する。
【００６０】
はじめに制御部３０は、変数ｆに１を代入する（ステップＳ６００）。変数ｆはフレームの番号を格納する変数である。フレーム番号は１から始まる。続いて制御部３０は背景部画像データファイルから背景部画像データを読み出し、背景部バッファーメモリーMF_bkgrへ書き込む（ステップＳ６０５）。すなわち制御部３０は、対象フレームｆを構成する４ページ分の背景部画像データであって版ごとの背景部画像データを背景部バッファーメモリーMF_bkgrに書き込む。１フレームが４ページで構成されている場合、図１０Ｂに示すように、背景部バッファーメモリーMF_bkgrは４ページ分の背景部画像データを格納できるだけのサイズを有するバッファーである。なお、後述する合成結果バッファーメモリーMF_compも背景部バッファーメモリーMF_bkgrと同様の構成のバッファーである。
【００６１】
続いて制御部３０は、対象フレームｆにて背景部画像データが更新されているか否かを判定する（ステップＳ６１０）。すなわち、対象フレームｆを構成する各ページにおいて背景部画像データが対象フレームｆの前のフレームを構成する各ページと比較して更新されている版が存在するか否かを、ジョブチケットファイルを参照して判定する。ステップＳ６１０にて更新されていると判定される場合は、ステップＳ６０５と同様に背景部画像データファイルから背景部画像データを読み出し背景部バッファーメモリーMF_bkgrに書き込む（ステップＳ６１５）。なお、更新されているページのみ書き換えられればよい。
【００６２】
続いて制御部３０は、ジョブチケットファイルの内容に基づいて、対象フレームｆを構成する各ページにおける可変部画像データファイルが存在する版数を配列ＣＣ［ｐｆ］に格納するとともに、可変部画像データの有無を配列ｃｃ［ｐｆ］［ｃ］に格納する（ステップＳ６２０）。変数ｐｆはフレーム内ページ番号を示し値の範囲は本実施形態の場合１〜４である。変数ｃは版の番号を示し１，２，３，４の値がそれぞれＣ，Ｍ，Ｙ，Ｋに相当する。したがってステップＳ６２０ではＣＣ［１］〜ＣＣ［４］には対象フレームｆを構成する４ページのそれぞれにおける可変部画像データが存在する版の数が格納される。また例えば対象フレームｆの１，２，３，４ページ目のブラックの版は可変部画像データが存在しブラック以外の版には存在しない場合は、ｃｃ［１］［４］とｃｃ［２］［４］とｃｃ［３］［４］とｃｃ［４］［４］とには可変部画像データが存在することを示す値である１が格納され、それ以外は０が格納される。
【００６３】
続いて制御部３０は、対象フレームｆにおいてＣＣ［ｐｆ］が所定数（本実施形態の場合は１とする）より大きいか、または、ｃｃ［ｐｆ］［ｃ］が一致しないかどうかを判定する（ステップＳ６２５）。その条件を満たす場合は制御部３０は合成処理１を実行する（ステップＳ６３０）。ＣＣ［ｐｆ］がすべてのページにおいて１以下で、かつ、ｃｃ［ｐｆ］［ｃ］が一致している場合（すなわち各ページにおける可変部画像データが存在する版の数が１以下でかつそれらが同じ色である場合）は、制御部３０は合成処理２を実行する。このように本実施形態では、複数ページ（フレーム）ごとに上記判定を行い合成処理を切り換えることで、複数ページごとに印刷ジョブ全体の処理時間短縮のために対処することができる。
【００６４】
続いて制御部３０は対象フレームｆの合成結果が格納されている合成結果バッファーメモリーMF_compのデータを用いて印刷データ画像処理および回路基板へのデータ転送処理を行う（ステップＳ６４０）。続いて制御部３０は変数ｆの値をインクリメントし（ステップＳ６４５）、変数ｆの値が変数ＦＮの値よりも大きいか否か判定し（ステップＳ６５０）、大きい場合は可変部合成処理を終了し、変数ｆの値が変数ＦＮの値以下である場合はステップＳ６１０の処理に戻る。なお、変数ＦＮにはフレームの総数が格納されている。
【００６５】
図１２Ａは合成処理１を示すフローチャートである。制御部３０は変数ｐｆに１を代入し（ステップＳ７００）、変数ｐに（ｆ−１）×ＰＦ＋ｐｆの計算結果を代入する（ステップＳ７０５）。変数ｐはページ番号を、変数ｆはフレーム番号を、変数ＰＦは１フレームに含まれるページ数（本実施形態の場合は４）を、変数ｐｆは１フレーム内におけるページ番号を、それぞれ格納する変数である。続いて制御部３０は変数ｐｘに０を代入する（ステップＳ７１０）。変数ｐｘは画素番号を格納する変数である。続いて制御部３０は、変数ｃに１を代入する（ステップＳ７１５）。
【００６６】
続いて制御部３０は、背景部バッファーメモリーMF_bkgrからフレーム内のｐｆ番目のページのｐｘ番目の画素のｃ番目の版の値を読み出し変数ＤＴ１へ代入する（ステップＳ７２０）。続いて制御部３０は、配列ｃｃ［ｐｆ］［ｃ］が１であるか否か、すなわち対象フレームｆのｐｆ番目のページのｃ番目の版に可変部画像データが存在するか否かを判定し（ステップＳ７２５）、存在する場合は制御部３０はｐページ目のｃ番目の版に対応する可変部画像データファイルからｐｘ番目の画素の値を読み出し変数ＤＴ２に代入し（ステップＳ７３５）、図８に示すＤＴ１とＤＴ２の演算処理を行う（ステップＳ７４０）。ステップＳ７２５において存在しないと判定される場合、制御部３０は変数ＤＴ１の値をそのまま変数ＤＴ０に代入し（ステップＳ７３０）、ステップＳ７４５の処理に進む。
【００６７】
続いて制御部３０は変数ＤＴ０の値を合成結果バッファーメモリーMF_compのｐｆ番目のページのｐｘ番目の画素のｃ番目の版の位置へ書き込み（ステップＳ７４５）、変数ｃの値をインクリメントする（ステップＳ７５０）。制御部３０は、変数ｃの値が変数ＣＮの値より大きいか否か（すなわち全ての版について終了したか否か）を判定し（ステップＳ７５５）、大きい場合はステップＳ７５５に進み、変数ｃの値が変数ＣＮの値以下である場合は、ステップＳ７２０へ戻る。続いて制御部３０は、変数ｐｘの値をインクリメントし（ステップＳ７６０）、変数ｐｘの値が（ＰＸＮ−１）より大きいか否か（すなわち１ページに含まれる全ての画素を終了したか否か）を判定し（ステップＳ７６５）、大きい場合はステップＳ７７０に進み、変数ｐｘの値が（ＰＸＮ−１）以下の場合はステップＳ７１５に戻る。
【００６８】
続いて制御部３０は、変数ｐの値が変数ＰＮの値以上であるか否か（すなわち印刷ジョブに含まれる全てのページを終了したか否か）を判定し（ステップＳ７７０）、変数ＰＮの値以上でない場合はステップＳ７７５に進み、変数ＰＮの値以上である場合は合成処理１を終了する。続いて制御部３０は、変数ｐｆの値をインクリメントし（ステップＳ７７５）、変数ｐｆの値が変数ＰＦの値より大きいか否か（すなわち１フレームに含まれる全てのページを終了したか否か）を判定し（ステップＳ７８０）、大きい場合は合成処理１を終了し、変数ｐｆの値が変数ＰＦの値以下である場合はステップＳ７０５に戻る。
【００６９】
図１２Ｂは、合成処理２を示すフローチャートである。はじめに制御部３０は、背景部バッファーメモリーMF_bkgrに格納されているデータを合成結果バッファーメモリーMF_compに一括コピーし（ステップＳ８００）、対象フレームｆの各ページにおいて可変部画像データが存在する版の番号を変数ｃに代入する（ステップＳ８０５）。本実施例では合成処理２が実行されるのは対象フレームｆの各ページにおいて可変部画像データが存在する版の数が１つでかつ各ページにおける可変部画像データが存在する版が同じである場合であるので、ステップＳ８０５ではその版の番号を代入する。続いて制御部３０は変数ｐｆに１を代入し（ステップＳ８１０）、変数ｐに（ｆ−１）×ＰＦ＋ｐｆの計算結果を代入し（ステップＳ８１５）、変数ｐｘに０を代入する（ステップＳ８２０）。続いて制御部３０は、合成結果バッファーメモリーMF_comp（または背景部バッファーメモリーMF_bkgr）からｐｆ番目のページのｐｘ番目の画素のｃ番目の版の値を読み出し変数ＤＴ１に代入し（ステップＳ８２５）、ｐページ目のｃ番目の版に対応する可変部画像データファイルからｐｘ番目の画素の値を読み出し変数ＤＴ２に代入する（ステップＳ８３０）。
【００７０】
続いて制御部３０は図８に示すＤＴ１とＤＴ２の演算処理を行い（ステップＳ８３５）、変数ＤＴ０の値を合成結果バッファーメモリーMF_compのｐｆ番目のページのｐｘ番目の画素のｃ番目の版の位置に書き込む（ステップＳ８４０）。続いて制御部３０は、変数ｐｘの値をインクリメントし（ステップＳ８４５）、変数ｐｘの値が（ＰＸＮ−１）より大きいか否か（すなわち全ての画素を終了したか否か）を判定し（ステップＳ８５０）、大きい場合はステップＳ８５５に進み、変数ｐｘの値が（ＰＸＮ−１）以下である場合はステップＳ８２５に戻る。続いて制御部３０は、変数ｐの値が変数ＰＮの値以上であるか否か（すなわち印刷ジョブに含まれる全ページを終了したか否か）を判定し（ステップＳ８５５）、変数ＰＮの値以上でない場合はステップＳ８６０に進み、変数ＰＮの値以上である場合は合成処理２を終了する。続いて制御部３０は変数ｐｆの値をインクリメントし（ステップＳ８６０）、変数ｐｆの値が変数ＰＦの値より大きいか否か（すなわちフレームに含まれる全ページを終了したか否か）を判定し（ステップＳ８６５）、大きい場合は合成処理２を終了し、変数ｐｆの値が変数ＰＦの値以下の場合はステップＳ８１５の処理に戻る。
以上説明したように、本実施形態では、処理時間短縮のために合成処理１か合成処理２のいずれが効果的であるかをフレームごとに判定し、フレームごとに切り換えることができる。
【００７１】
４．他の実施形態
尚、本発明の技術的範囲は、上述した実施例に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
図１３は他の実施形態にかかるＤＴ１とＤＴ２の演算処理のフローチャートである。第一実施形態で採用されている図８に示すＤＴ１とＤＴ２の演算処理と図１３の処理との違いは、条件判定文の順番である。図１３の処理では、最初に変数ＤＴ２が１より小さいか否かが判定され（ステップＳ９００）、小さい場合は変数ＤＴ０に変数ＤＴ１の値が代入される（ステップＳ９０５）。すなわち、可変部画像データの値が０である場合は、背景部画像データの値が合成結果として採用される。ステップＳ９００において変数ＤＴ２が１以上であると判定された場合、図８の処理と同様に変数ＤＴ２の値が１であるか否かが判定され（ステップＳ９１０）、１である場合は変数ＤＴ０に０が代入される（ステップＳ９１５）。ステップＳ９１０において変数ＤＴ２が１でないと判定された場合は、変数ＤＴ０に変数ＤＴ２の値が代入される（ステップＳ９２０）。すなわち可変部画像データの値が２以上の場合は可変部画像データの値が合成結果として採用される。
【００７２】
可変部画像データにおいて値が「０」である画素（背景部画像データが合成結果として採用されることになる画素）が、可変部画像データにおいて値が「１」以上の画素（可変部画像データが採用されることになる画素）より多い場合、「変数ＤＴ０に変数ＤＴ１の値を代入する」という代入文が、「変数ＤＴ０に０を代入する」という代入文や「変数ＤＴ０に変数ＤＴ２の値を代入する」という代入文よりも多く実行されることになる。逆に、前者が後者より少ない場合、「変数ＤＴ０に変数ＤＴ２の値を代入する」という代入文や「変数ＤＴ０に０を代入する」という代入文が、「変数ＤＴ０に変数ＤＴ１の値を代入する」という代入文よりも多く実行されることになる。したがって前者が後者より多い場合は、「変数ＤＴ０に変数ＤＴ１の値を代入する」という代入文が実行されるまでの判定文の個数が少ない図１３の処理の方が図８の処理よりも、ＤＴ１とＤＴ２の演算処理に要する時間を短縮できる。また逆に、前者が後者より少ない場合は、「変数ＤＴ０に変数ＤＴ２の値を代入する」という代入文が実行されるまでの判定文の個数が少ない図８の処理の方が図１３の処理よりもＤＴ１とＤＴ２の演算処理に要する時間を短縮できる。したがって可変部画像データに応じて図８と図１３の処理を切り替えられることが望ましい。例えば後述するように可変部画像データファイルのサイズに応じて切り替えすることができる。
【００７３】
可変部画像データにおいて値が「０」である画素（背景部画像データが合成結果として採用されることになる画素）が、可変部画像データにおいて値が「１」以上の画素（可変部画像データが採用されることになる画素）より多い場合は、前者が後者よりも少ない場合と比較すると、当該可変部画像データを含む可変部画像データファイルのファイルサイズが小さくなる。なぜなら、前者が後者より多い場合は「０」という同じ値が続くことが多くなるのでＬＺＷやＺｉｐなどで圧縮した場合に圧縮後のファイルサイズが小さくなりやすい。前者が後者より少ない場合は「１」〜「２５５」の値が不規則に出現しうるので圧縮後のファイルサイズはそれほど小さくならない。そこで可変部画像データファイルのサイズに関して所定の閾値を設けておき、その閾値よりも可変部画像データファイルのサイズが小さい場合は図１３の処理を実行するようにし、当該閾値以上である場合は図８の処理を実行するようにすることで、全体の処理時間短縮に寄与することができる。なお、もちろん閾値には画素数や版数や階調数に応じた値が設定される。
【００７４】
なお上記実施形態においては、ＣＭＹＫの４色のインクを用いる例を説明したが、４色以上のインクを用いる場合にも本発明を適用することができる。例えばオレンジ、グリーン、ヴァイオレット、レッド、ブルーなど様々なインクを使用する場合もこの発明を適用することができる。また着色剤としてはインクに限定されずトナーであってもよい。したがってもちろん、印刷部３６の印刷方式はインクジェット方式に限定されない。複数ページ分の印刷対象の画像データを取得して連続的に印刷することができれば、どのような方式であってもよい。また、分版後の濃度値の階調は上記実施形態では２５６階調である例を説明したがもちろんこれに限定されない。
【符号の説明】
【００７５】
１：ＰＣ、２：ＬＡＮ、３：プリンター、３０：制御部、３１：ＣＰＵ、３２：ＲＡＭ、３３：ＲＯＭ、３４：ＨＤＤ、３５：通信部、３６：印刷部、M_comp：合成結果バッファーメモリー（ページ）、M_bkgr：背景部バッファーメモリー（ページ）、MF_comp：合成結果バッファーメモリー（フレーム）、MF_comp：背景部バッファーメモリー（フレーム）
【図１】
2013159061.tif 000003
【図２】
2013159061.tif 000004
【図３】
2013159061.tif 000005
【図４】
2013159061.tif 000006
【図５】
2013159061.tif 000007
【図６】
2013159061.tif 000008
【図７】
2013159061.tif 000009
【図８】
2013159061.tif 000010
【図９】
2013159061.tif 000011
【図１０】
2013159061.tif 000012
【図１１】
2013159061.tif 000013
【図１２】
2013159061.tif 000014
【図１３】
2013159061.tif 000015