(57)【要約】【課題】  タイル描画を繰り返す隙間がタイル描画サイズと一致しない場合でも、タイル描画における隣接するタイル間で色の再現性を向上する。【解決手段】    印刷データから解析されるタイル描画命令を処理する画像処理装置において、  描画すべき１つのタイル描画間隔で特定されるタイル繰り返しサイズと前記タイル描画命令で描画すべき１つのタイル描画で特定されるタイルサイズとを比較してタイル描画間隔内に隙間が発生するかどうかを判断する。ここで、タイル描画間隔内に隙間が発生すると判断した場合、当該隙間に応じて前記タイル描画命令を第１のタイル描画命令に置換する第１の置換処理と、前記タイル描画命令を第２のタイル描画命令に置換する第２の置換処理を行うように描画命令処理を切替制御する。そして、置換された第１のタイル描画命令または第２のタイル描画命令に従い描画処理を行う構成を特徴とする。【選択図】  図６
2017024190.tif 000002
【特許請求の範囲】
【請求項１】
印刷データから解析されるタイル描画命令を処理する画像処理装置であって、
描画すべき１つのタイル描画間隔で特定されるタイル繰り返しサイズと前記タイル描画命令で描画すべき１つのタイル描画で特定されるタイルサイズとを比較してタイル描画間隔内に隙間が発生するかどうかを判断する判断手段と、
前記タイル描画間隔内に隙間が発生すると判断した場合、当該隙間に応じて前記タイル描画命令を第１のタイル描画命令に置換する第１の置換処理と、前記タイル描画命令を第２のタイル描画命令に置換する第２の置換処理を行うように描画命令処理を切替制御する制御手段と、
置換された第１のタイル描画命令または第２のタイル描画命令に従い描画処理を行う描画手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記第１のタイル描画命令は、発生する隙間を当該タイルに描画すべき色情報と当該隙間で特定される色情報とで決定される平均色情報で当該タイル描画間隔に従う領域を描画する命令であることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第１のタイル描画命令は、各タイル描画間隔で隙間を生成しない命令であることを特徴とする請求項２記載の画像処理装置。
【請求項４】
前記第２のタイル描画命令は、当該タイルに描画すべき色情報で決定される平均色情報で当該タイルサイズに従う領域を描画する命令であることを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記第２のタイル描画命令は、各タイル描画間隔で隙間を生成する命令であることを特徴とする請求項４記載の画像処理装置。
【請求項６】
印刷データから解析されるタイル描画命令を処理する画像処理装置の画像処理方法であって、
描画すべき１つのタイル描画間隔で特定されるタイル繰り返しサイズと前記タイル描画命令で描画すべき１つのタイル描画で特定されるタイルサイズとを比較してタイル描画間隔内に隙間が発生するかどうかを判断する判断工程と、
前記タイル描画間隔内に隙間が発生すると判断した場合、当該隙間に応じて前記タイル描画命令を第１のタイル描画命令に置換する第１の置換処理と、前記タイル描画命令を第２のタイル描画命令に置換する第２の置換処理を行うように描画命令処理を切替制御する制御工程と、
置換された第１のタイル描画命令または第２のタイル描画命令に従い描画処理を行う描画工程と、
を備えることを特徴とする画像処理装置の画像処理方法。
【請求項７】
請求項６に記載の画像処理装置の画像処理方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理装置の画像処理方法、及びプログラムに関するものである。
【背景技術】
【０００２】
一般的にＰＤＬ描画処理は、ＰＤＬ解析処理と描画処理に分割できる。ＰＤＬ解析処理は、ＰＤＬデータを解析し、より抽象度の低い描画コマンドに変換する。描画処理は描画コマンドを受け取り、デバイス座標への変換処理及び色合成処理を行い、ラスターデータを作成する。ここで、ラスターデータはプリンタデバイスで紙に出力されたり、モニタデバイスで表示されたりする。
ＰＤＬデータとしては、Ｍｉｃｒｏｓｏｆｔ社のページ記述言語であるＸＰＳやＡｄｏｂｅ社のページ記述言語であるＰＤＦ等が存在する。
ＸＰＳ、ＰＤＦには、同じ塗りを一回以上繰り返して描画するタイル描画命令が存在する。このタイル描画命令では、タイル（繰り返しの単位となる領域）の幅・高さとタイルを敷き詰める領域を指定する。
このタイルの幅・高さはＰＤＬで定義されている座標系（以下ＰＤＬ座標）の単位で指定されている。
例えばＸＰＳの座標系は左上原点で単位は１／９６インチと定義されている。このＰＤＬ座標は、描画処理においてデバイスに出力・表示するラスターデータに変換する際に、デバイスで定義されている座標（以下デバイス座標）へと変換される。デバイス座標は、プリンタの場合、左上原点において、ピクセル単位で示されるのが一般的である。
ここで、描画処理のＰＤＬ座標からデバイス座標への変換において、ＰＤＬ座標では整数として指定されている描画内容が出力サイズや解像度の指定によりピクセルで表現できない場合がある。
この問題を解決するためにＸＰＳ仕様（ＥＣＭＡ−３８８）では、タイル描画命令を描画する際に、一つのタイル描画命令の描画が出力解像度に対して小さいとき、一つのタイル内の描画結果の平均色で一つのタイルとして塗ることが推奨となっている（非特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特願２００２−６４９８８号公報
【非特許文献１】ＥＣＭＡ−３８８  Ｏｐｅｎ ＸＭＬ Ｐａｐｅｒ Ｓｐｅｃｉｆｉｃａｔｉｏｎ
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、タイル描画を繰り返す隙間がタイル描画サイズと一致しない場合があり、その場合は、タイル描画間には隙間が生じる。このタイル描画間の隙間に関する描画方法については、上記ＸＰＳ仕様で明示的に規定されていないため、実装依存の出力結果となる。つまり、ＰＤＬ座標からデバイス座標に変換する過程において、描画結果の縮小方法によっては、変換誤差からタイル描画間の隙間が不均一になる場合や、隙間のみ出力結果になる問題があった。
【０００５】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、タイル描画を繰り返す隙間がタイル描画サイズと一致しない場合でも、タイル描画における隣接するタイル間で色の再現性を向上できる仕組みを提供することである。
【課題を解決するための手段】
【０００６】
上記目的を達成する本発明の画像処理装置は以下に示す構成を備える。
印刷データから解析されるタイル描画命令を処理する画像処理装置であって、描画すべき１つのタイル描画間隔で特定されるタイル繰り返しサイズと前記タイル描画命令で描画すべき１つのタイル描画で特定されるタイルサイズとを比較してタイル描画間隔内に隙間が発生するかどうかを判断する判断手段と、前記タイル描画間隔内に隙間が発生すると判断した場合、当該隙間に応じて前記タイル描画命令を第１のタイル描画命令に置換する第１の置換処理と、前記タイル描画命令を第２のタイル描画命令に置換する第２の置換処理を行うように描画命令処理を切替制御する制御手段と、置換された第１のタイル描画命令または第２のタイル描画命令に従い描画処理を行う描画手段と、を備えることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、タイル描画を繰り返す隙間がタイル描画サイズと一致しない場合でも、タイル描画における隣接するタイル間で色の再現性を向上できる。
【図面の簡単な説明】
【０００８】
【図１】画像処理システムの構成を示すブロック図である。
【図２】画像処理システムのモジュール構成を示すブロック図である。
【図３】画像処理装置が処理するタイル描画命令を示す図である。
【図４】タイル描画情報の構成を説明する図である。
【図５】タイル描画部によるタイルの描画結果を表す一例である。
【図６】画像処理装置の画像処理方法を示すフローチャートである。
【図７】画像処理装置の画像処理方法を示すフローチャートである。
【図８】画像処理システムのハードウエア構成を説明するブロック図である。
【発明を実施するための形態】
【０００９】
次に本発明を実施するための最良の形態について図面を参照して説明する。
＜システム構成の説明＞
〔第１実施形態〕
【００１０】
図１は、本実施形態を示す画像処理システムの構成を示すブロック図である。以下、印刷データから解析されるタイル描画命令を処理する画像処理装置を含むシステムの構成について説明する。
図１において、コンピュータ１０１とプリンタ１０２がネットワーク１０３を介して相互に接続されており、お互いに通信を行うことができる。ネットワーク１０３は、コンピュータ１０１とプリンタ１０２間で通信可能であれば、ＵＳＢケーブルなどの他の方式であってもよい。
【００１１】
コンピュータ１０１で、ユーザの印刷指示操作に応じて、プリンタドライバを介してユーザから印刷設定及び印刷ドキュメント（ＸＰＳデータなど）の入力を受け付け、ネットワーク１０３を介して１０２プリンタに印刷データを投げる。１０２プリンタは印刷データを受け取ると印刷データからビットマップに展開して紙などの記憶媒体に出力する。
【００１２】
図８は、図１に示した画像処理システムのハードウエア構成を説明するブロック図である。
図８において、８０１はＣＰＵであり、ＲＡＭ８０２に格納された制御プログラムに従って、本装置全体の制御を行う。ＲＡＭ８０２は、ＣＰＵ８０１が実行する本装置が実行する画像処理に関わる制御プログラムや、文書、画像等のデータを格納する。８０３はネットワークインタフェースで、ＣＰＵ８０１の制御のもとにインターネット等のネットワークとの接続を行ってデータ等を送受信する。
【００１３】
８０４はデータを保存する磁気ディスク等の外部記憶装置である。８０５はディスプレイ、８０６はキーボード、８０７はマウス等のポインティングデバイスである。ＲＡＭ８０２に格納されているプログラムは、同じくＲＡＭ８０２に格納されているオペレーティングシステムの機能を必要に応じて使用することにより、所定の動作を行う。
【００１４】
例えば、ＲＡＭ８０２に一時記憶するデータ内容の読み書き、外部記憶装置８０４上でのデータの読み書き、ネットワークインタフェース８０３を介したデータの送受信を行う。そしてキーボード８０６やポインティングデバイス８０７からの入力受け取り、ディスプレイ８０５への表示、等を行う。なお、外部記憶装置８０４上には、図２に示すモジュール（制御プログラム）も記憶されている。また、各モジュールを専用のハードウエアとして、ＡＳＩＣのハードウエアで構成することも可能である。
【００１５】
図２は、図１に示した画像処理システムのモジュール構成を示すブロック図である。
図２において、印刷データ生成部２０１はコンピュータ１０１上で印刷データを生成するものであり、例えばプリンタドライバなどになる。印刷データ２０２は文字、図形、画像などの印刷オブジェクトなどから構成され、例えばＸＰＳデータ、ＰＣＬデータなどになる。タイル命令があるものであればデータ形式は問わない。印刷データ解析部２０３は印刷データ２０２を解析し、印刷オブジェクト情報２０９として保存するものである。また、印刷データ解析部２０３は印刷データ中のタイル命令をタイル描画情報２０４として保存することができる。
【００１６】
タイル描画情報２０４は、印刷データ中のタイル命令を表す情報であり、図４にて後述する。タイル描画部２０５はタイル描画情報２０４に対して繰り返しを行わずにタイル１つ分を描画しタイル画像２０６を生成するものである。タイル描画部２０５は、置換された第１のタイル描画命令または第２のタイル描画命令に従い描画命令処理を行う。
【００１７】
また、タイル描画部２０５は、タイル描画情報２０４を描画せずに印刷オブジェクトに変換し、印刷オブジェクト情報２０９として保存することができる。タイル画像２０６はタイル描画情報を描画した結果のタイル1つ分の画像である。本実施形態ではタイル画像２０６を使用している。しかしながら、タイル画像を使用する必要はなく、画像のみからタイル命令が構成されているときはその画像をそのまま使用してもいい。
【００１８】
また、文字、図形などの印刷オブジェクトからタイル命令が構成されているときはその印刷オブジェクトの色をそのまま使用してもいい。平均色取得部２０７はタイル画像２０６の平均色を求めるものである。
【００１９】
これは例えば、タイル画像２０６の全画素の色の平均値などで求めることができる。印刷オブジェクト生成部２０８はタイル描画情報２０４と平均色から印刷オブジェクトを生成し、印刷オブジェクト情報２０９に保存するものである。印刷オブジェクト情報２０９は印刷データ中の印刷オブジェクトの情報を格納したものであり、描画部２１０で描画することで出力データ２１１の画像データとなる。
【００２０】
なお、図２に示すコンピュータ１０１とプリンタ１０２の機能ブロック図はこのように配置される必要はなく、いずれかをコンピュータ１０１で行ってもよいし、いずれかをプリンタ１０２で行ってもよいし、自由に変更可能である。
【００２１】
図３に、本実施形態を示す画像処理装置が処理するタイル描画命令３００の一例を示す図である。本例は、ＸＰＳのタイル描画命令の例である。
図３において、ＴｉｌｅＭｏｄｅ３０１が「Ｔｉｌｅ」の場合、描画命令がタイル描画であることを示す。３０２はタイル描画命令を描画する領域を示す。３０３は一つのタイル描画命令の描画間隔を示す。３０４は、一つのタイル描画命令の描画内容を示す。印刷データ解析部２０３では、タイル描画命令からタイル描画情報２０４を保存する。
【００２２】
図４は、図２に示したタイル描画情報２０４の構成を説明する図である。
印刷データに含まれる各タイル命令は、ここではそれぞれ１行で表現されている。４０１はタイルを識別するためのタイル識別子である。４０２は１つのタイルのピクセル値での大きさを表すタイルサイズである。４０３は繰り返し描画を行ったあとの全タイルのピクセル値での大きさを表す描画サイズである、４０４は１つのタイルの繰り返し描画をするときの各タイルの間隔を表すタイル繰り返しサイズである。これら４０１から４０４などから構成されている。
【００２３】
図５は、図２に示したタイル描画部２０５によるタイルの描画結果を表す一例である。
図５において、（ａ）はタイル命令通りに描画した結果の一例である。細い実線の矩形は各タイル領域を表しており、実際には描画されない。点線の矩形５０１はタイルサイズ４０２を表しており、実際には描画されない。同様に点線５０２はタイルの繰り返しサイズ４０４を表しており、実際には描画されない。
【００２４】
（ｂ）はタイル描画サイズ部分を平均色で描画し、タイルの繰り返しサイズとタイルサイズの差であるタイルの隙間部分は描画しないでタイルを描画した結果の一例である。なお、本実施形態では、白と黒とから構成される色情報を示すが、白黒以外の色情報でも同様に処理される。特に、後述するフローチャートにおいて、描画すべき１つのタイル描画間隔で特定されるタイル繰り返しサイズとタイル描画命令で描画すべき１つのタイル描画で特定されるタイルサイズとを比較した場合に、タイル描画間隔内に隙間が発生すると判断された場合、描画命令の置換処理が切替制御される。ここでの描画命令の置換処理は、黒と白とから５０％灰色（中間色）情報に置換される。置換された色情報を平均色情報と呼ぶ。また、（ｂ）に示す描画命令置換処理で置換された描画命令は、当該タイルに描画すべき色情報（白と黒）で決定される平均色情報で当該タイル描画間隔に従う領域を描画する命令である。
（ｃ）はタイルの繰り返しサイズ部分を平均色で描画してタイルを描画し、タイルの繰り返しサイズでタイルを描画した結果の一例である。ここでの描画命令の置換処理は、黒と白と、隙間の色情報から１２．５％灰色（中間色）情報に置換される。また、（ｃ）に示す描画命令置換処理で置換された描画命令は、発生する隙間を当該タイルに描画すべき色情報と当該隙間で特定される色情報とで決定される平均色情報で当該タイル描画間隔に従う領域を描画する命令である。
【００２５】
図６は、本実施形態を示す画像処理装置の画像処理方法を示すフローチャートである。本例は、プリンタ１０２が備えるＣＰＵが記憶された制御プログラムを実行することで実現される。以下、図２に示すモジュールを主体として説明する。
Ｓ６０１にて印刷データ２０２から印刷データ解析部２０３で印刷オブジェクトを取得する。Ｓ６０２にて、印刷データ解析部２０３は、Ｓ６０１で取得した印刷オブジェクトがタイル描画であるかどうか、具体的には、ＴｉｌｅＭｏｄｅ３０１が「Ｔｉｌｅ」であるか否かで判断する。ここで、印刷オブジェクトがＴｉｌｅでないと印刷データ解析部２０３が判断した場合、Ｓ６０８にて印刷オブジェクトからその印刷オブジェクトを印刷オブジェクト情報２０９に追加して、Ｓ６０７へ進む。
【００２６】
一方、Ｓ６０２にて印刷オブジェクトのＴｉｌｅＭｏｄｅ３０１が「Ｔｉｌｅ」であると印刷データ解析部２０３が判断した場合、Ｓ６０３にて、印刷データ２０２からタイル描画情報２０４を保存する。そして、Ｓ６０４にて、タイル描画部２０５は、タイル描画情報２０４のタイルサイズ４０２が一定値以下か否かで大小関係を判定する。ここで、判定に使用する一定値は、ＰＤＬ座標系に対して、デバイス座標系に変換する際にピクセルでタイルの描画内容が表現できるか否かで決めることができる。
【００２７】
例えば、図５に示した点線５０１がデバイス座標系において１ピクセルでタイル描画内容の格子のサイズが０．５ピクセルで合った場合、タイル５０１Ｔの描画内容は、デバイス座標系では正確に表すことができない。この場合は、一定値はタイルサイズがデバイス座標系で２ピクセル以下か否かで判定する。
【００２８】
一方、タイル描画情報２０４のタイルサイズ４０２が一定値以下であるとタイル描画部２０５が判断した場合は、タイル描画部２０５は、タイル描画命令が正確に表現できないと判断し、Ｓ６０５にて、タイル描画部２０５は、後述するタイル変換処理を実行し、実行した結果をＳ６０６にて印刷オブジェクト情報２０９に追加する。
【００２９】
一方、タイル描画情報２０４のタイルサイズ４０２が一定値以下でないとタイル描画部２０５が判断した場合は、タイル描画命令が正確に表現できると判断し、Ｓ６０８にて、加工せずにタイル描画情報２０４を印刷オブジェクト情報２０９に追加する。これらの処理を印刷データ２０２のすべて印刷オブジェクトに対して繰り返す（Ｓ６０７）。
尚、繰り返しは、ページ単位でも、矩形単位でもよく印刷データ単位で限定したものではない。
次に、Ｓ６０９にて、描画部２１０が印刷データ２０２に対する印刷オブジェクト情報２０９を描画して、本処理を終了する。
【００３０】
図７は、本実施形態を示す画像処理装置の画像処理方法を示すフローチャートである。本例は、Ｓ６０５に示したタイル変換処理の一例である。各ステップは、プリンタ１０２が備えるＣＰＵが記憶された制御プログラムを実行することで実現される。以下、図２に示すモジュールを主体として説明する。
Ｓ７０１にて、タイル描画部２０５は、タイル描画情報２０４を取得し、Ｓ７０２にて、タイル描画部２０５は、タイル描画情報２０４のタイル繰り返しサイズ４０４からタイルサイズ４０２を引いた値、つまりタイル描画間の隙間が一定値以下か否かで大小関係を判定する。なお、判定に使用する一定値は、ＰＤＬ座標系に対して、デバイス座標系に変換する際にピクセルでタイルの描画間の隙間が表現できるか否かでタイル描画方法を切り替えることができる。
【００３１】
例えば、図５に示した点線５０２で囲まれる領域がデバイス座標系において１ピクセル、タイル描画内容の格子のサイズが０．２５ピクセル、間隔が０．５ピクセルであった場合、タイル５０２Ｔの描画内容およびタイル描画間の隙間は、デバイス座標系では正確に表すことができない。この場合は、一定値はタイル描画間の隙間がデバイス座標系で１ピクセル以下か否かで判定する。
【００３２】
ここで、タイル描画情報２０４のタイル繰り返しサイズ４０４からタイルサイズ４０２を引いた値が一定値以下であるとタイル描画部２０５が判断した場合、Ｓ７０３にて、タイル描画部２０５でタイル描画情報２０４の繰り返しサイズ４０４でタイルを描画する。Ｓ７０４にて、平均色取得部２０７がＳ７０３の描画結果から平均色を取得する。
【００３３】
タイルの描画に関しては、前述のＳ６０４にて、デバイス座標系で正確に表すことができないと判定されているため、タイル描画情報２０４が正確に表現できるサイズで描画し、描画内容から平均色を算出する。
例えば、点線５０２で囲まれる領域がデバイス座標系において１ピクセル、タイル描画内容である格子のサイズが０．２５、タイル描画間の隙間が０．５ピクセルであった場合は、隙間を含めた最低４×４のサイズで描画する。描画結果から１６ピクセルの内、２ピクセルが黒のため、図５の（ｃ）のように１２．５％の灰色と算出できる。
【００３４】
Ｓ７０５にて、図５の（ｃ）で一例として示したように、Ｓ７０４で取得した平均色でタイル描画情報２０４からタイルサイズ４０２を繰り返しサイズにかつその描画内容は平均色で塗るタイル描画情報に置き換える。
一方、タイル描画情報２０４のタイル繰り返しサイズ４０４からタイルサイズ４０２を引いた値が一定値以下でないとタイル描画部２０５が判断した場合は、Ｓ７０６にてタイル描画部２０５でタイル描画情報２０４からタイルサイズ４０２でタイルを描画する。
【００３５】
Ｓ７０７にて、平均色取得部２０７がＳ７０６の描画結果から平均色を取得する。タイルの描画に関しては、前述のＳ６０４にて、デバイス座標系で正確に表すことができないと判定されているため、タイル描画情報２０４が正確に表現できるサイズで描画し、描画内容から平均色を算出する。
【００３６】
例えば、図５の（ａ）に示した点線５０１で囲まれる領域がデバイス座標系において１ピクセル、タイル描画内容である格子のサイズが０．５、タイル描画間の隙間が１ピクセルであった場合は、隙間を含めず最低２×２のサイズで描画する。描画結果から４ピクセルの内、２ピクセルが黒のため、図５の（ｂ）のように５０％の灰色と算出できる。Ｓ７０８にて、図５の（ｂ）で一例として示したように、Ｓ７０７で取得した平均色でタイル描画情報２０４からタイルの描画内容を平均色で塗るタイル描画情報２０４に置き換える。
【００３７】
最後にＳ７０９にて、印刷オブジェクト生成部２０８がＳ７０５もしくはＳ７０８で変換したタイル描画情報２０４を印刷オブジェクト情報２０９に追加して、本処理を終了する。なお、タイルの描画および描画の色を取得する方法は特に本実施形態に限定するものではない。
【００３８】
以上、本実施形態によれば、一つのタイル描画のサイズが小さく、タイル描画間に隙間がある場合に、タイルの隙間により描画命令を切り替えることで、ユーザが印刷して出力したときのタイルの再現性を向上させることができる。
【００３９】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステムまたは装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えばＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００４０】
８０１  ＣＰＵ
【図１】
2017024190.tif 000003
【図２】
2017024190.tif 000004
【図３】
2017024190.tif 000005
【図４】
2017024190.tif 000006
【図５】
2017024190.tif 000007
【図６】
2017024190.tif 000008
【図７】
2017024190.tif 000009
【図８】
2017024190.tif 000010