(57)【特許請求の範囲】
【請求項１】
アプリケーションで生成された描画データを印刷装置で出力可能な形式の印刷データに変換する画像処理装置であって、
前記描画データに含まれる描画要素の中から、図形属性の描画要素であって、文字に対応する描画要素を決定する決定手段と、
前記描画データに含まれる描画要素に対して所定の画像処理を行なって前記印刷データを生成する画像処理手段であって、前記決定手段にて前記文字に対応する描画要素であると決定された図形属性の描画要素に対し、文字属性の描画要素に適した画像処理を行なう、画像処理手段と
を備えたことを特徴とする画像処理装置。
【請求項２】
前記図形属性の描画要素は、パス座標で描画が指定された描画要素であることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記決定手段は、前記パス座標で特定される図形の外接矩形を導出し、導出された外接矩形の情報を用いて前記文字に対応する描画要素を決定することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記決定手段は、導出された前記外接矩形の所定の一辺が、前記文字属性の描画要素に含まれるフォント情報から得られるベースラインから所定の距離内にある場合に、図形属性の描画要素が前記文字に対応する描画要素であると決定することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記決定手段は、導出された前記外接矩形の高さに相当する辺が、前記文字属性の描画要素に含まれるフォント情報から得られるセルの高さの範囲内である場合に、図形属性の描画要素が前記文字に対応する描画要素であると決定することを特徴とする請求項３に記載の画像処理装置。
【請求項６】
前記決定手段は、導出された前記外接矩形が、前記文字属性の描画要素に係る文字の間にある場合に、図形属性の描画要素が前記文字に対応する描画要素であると決定することを特徴とする請求項３に記載の画像処理装置。
【請求項７】
前記決定手段は、図形属性の描画要素の前後にある描画要素が文字属性の描画要素である場合に、前記決定を行なうことを特徴とする請求項１乃至６のいずれか１項に記載の画像処理装置。
【請求項８】
前記決定手段は、隣接する図形属性の描画要素に係る図形の色と文字属性の描画要素に係る文字の色とが同じである場合に、前記決定を行うことを特徴とする請求項１乃至７のいずれか１項に記載の画像処理装置。
【請求項９】
前記描画データに含まれる複数の描画要素の属性がすべて図形属性である場合に、当該複数の描画要素において前記パス座標で特定されるそれぞれの図形について外接矩形を導出する手段をさらに備え、
前記決定手段は、前記それぞれの図形について導出された外接矩形同士が隣り合わせに並んでいる場合に、前記複数の描画要素を前記文字に対応する描画要素であると決定することを特徴とする請求項２に記載の画像処理装置。
【請求項１０】
前記それぞれの図形について導出された外接矩形のうち近接する外接矩形の基準となる位置同士の間隔を求め、求めた間隔を一辺の長さとした仮想セルサイズを導出する手段をさらに備え、
前記決定手段は、前記それぞれの図形について導出された外接矩形のサイズが前記仮想セルサイズより小さい場合に、前記複数の描画要素を前記文字に対応する描画要素であると決定する
ことを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
前記所定の画像処理は、ディザ処理及びカラーマッチング処理であり、
前記文字属性の描画要素に適した画像処理は、前記ディザ処理におけるディザ種に解像度優先、前記カラーマッチング処理におけるレンダリングインテントに彩度優先を適用した画像処理である
ことを特徴とする請求項１乃至１０のいずれか１項に記載の画像処理装置。
【請求項１２】
アプリケーションで生成された描画データを印刷装置で出力可能な形式の印刷データに変換する画像処理方法であって、
前記描画データに含まれる描画要素の中から、図形属性の描画要素であって、文字に対応する描画要素を決定するステップと、
前記描画データに含まれる描画要素に対して所定の画像処理を行なって前記印刷データを生成するステップであって、前記決定するステップにて前記文字に対応する描画要素であると決定された図形属性の描画要素に対し、文字属性の描画要素に適した画像処理を行なう、ステップと
を含むことを特徴とする画像処理方法。
【請求項１３】
コンピュータを、請求項１乃至１１のいずれか１項に記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力描画データをプリンタで出力可能な形式の印刷データに変換する画像処理技術に関する。
【背景技術】
【０００２】
ウインドウズ（登録商標）などのＯＳにおいてアプリケーションから印刷を行う場合、プリンタドライバから印刷データがプリンタに送られて印刷が実行される。この際、プリンタドライバでは、アプリケーションから描画データ（例えばＸＰＳやＧＤＩ形式）を受け取って、それをプリンタで処理可能な形式の印刷データ（例えばＰＤＬ言語で記述されたデータ）に変換している。より高品位な印刷を行うために、プリンタドライバは、アプリケーションからの描画データに含まれるオブジェクトを文字や図形やイメージといった属性毎に分類し、各属性に応じた最適な画像処理を用いて変換処理を行っている。
【０００３】
図１は、オブジェクトの属性に応じた画像処理を指定する表の一例であり、二値化に使用するディザの種類、及びカラーマッチングに使用するレンダリングインテントが、属性毎に最適なものが対応付けられている。図１の例では、文字属性に対しては、ディザ種に解像度優先、レンダリングインテントに彩度優先が指定され、図形属性並びにその他の属性（イメージなど）に対しては、ディザ種に階調優先、レンダリングインテントに全体圧縮が指定されている。これにより、文字はよりくっきりと、図形やイメージはより滑らかに印刷することができる。
【０００４】
また、一般的なアプリケーションからの描画データは、文字であればフォント情報と文字コード、図形であればその形状を表すパス座標値と描画方法、イメージであればサイズと各画素の色情報で記述されている。そのため、記述形式に基づいて容易に属性を判別することが可能である。しかし、アプリケーションによっては、１バイトの文字は文字属性の描画データで記述される一方で、２バイトの文字はパス形式の座標値と塗りつぶし指示（フィル）とからなる図形属性の描画データで記述されるということがあり得る。このような、文字を文字属性と図形属性の両方で記述するような描画データに対して、上述したような記述形式に基づく属性判別を行うと、パス形式で記述された文字は、文字ではなく図形として認識されてしまうことになる。
【０００５】
図２は、アプリケーションからプリンタドライバに入力された描画データの一例であり、ＸＰＳ形式で記述されている。なお、描画データの形式としてＸＰＳ形式は一例であって、ＧＤＩ形式等、他の形式でもよい。図２に示す１ページ分の描画データ２００のうち、枠２０２は、１バイト文字のアルファベット“gh”を、指定されたフォントデータを用いて“赤”色で描画するように記述された文字属性のデータを示している。枠２０２は、２バイト文字のアルファベット“ｉ”を、パス座標値で表現し、そのパスで示される部分を“赤”色で塗りつぶし図形として描画するように記述されたパス形式（図形属性）のデータを示している。同様に、枠２０３も２バイト文字のアルファベット“ｊ”を“赤”色で塗りつぶし図形として描画するパス形式のデータである。枠２０４は、枠２０１と同様、１バイト文字のアルファベット“kl”を、指定されたフォントデータを用いて“赤”色で描画するように記述された文字属性のデータを示している。枠２０５は、黒色の三角形を“赤”色で描画するパス形式のデータを示している。図３は、１バイト文字と２バイト文字が混在した図２で示す描画データに対して、上述の記述形式に基づく属性判定を行って、判定結果の各属性に応じた画像処理を行って印刷を実行した結果を示している。枠３０１と枠３０３内の１バイト文字は文字として画像処理し、枠３０２内の２バイト文字は図形として画像処理した後に印刷処理を行っている。同じ色指定にも関わらず異なる画像処理が行われていることから、文字の濃さが違って見えている。このように、属性が異なると、たとえ同じ色指定であっても描画結果の色味が異なることがある。この点、例えば特許文献１では、同じ色が指定された領域内のベクトルデータについては、当該領域内で色味を同じにするため、属性が異なっている場合は一方の属性を変更して同じ属性にする技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−２７２８８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記特許文献１の技術は、ベクトルデータで記述されたイラスト領域の部分と、当該イラスト領域の周囲の色との色味を合わせることを主な目的としている。したがって、文字が異なる種類の属性で記述されることによって生じる色味の違いについては対応することができない。
【課題を解決するための手段】
【０００８】
本発明に係る画像処理装置は、アプリケーションで生成された描画データを印刷装置で出力可能な形式の印刷データに変換する画像処理装置であって、前記描画データに含まれる描画要素の中から、図形属性の描画要素であって、文字に対応する描画要素を決定する決定手段と、前記描画データに含まれる描画要素に対して所定の画像処理を行なって前記印刷データを生成する画像処理手段であって、前記決定手段にて前記文字に対応する描画要素であると決定された図形属性の描画要素に対し、文字属性の描画要素に適した画像処理を行なう、画像処理手段とを備えたことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、パス形式（図形属性）で描画される文字についても文字出力に最適な画像処理を施すことができる。これによって、より高品質な印刷を実現出来る。また、文字について異なる属性（描画形式）が混在していても、文字として同じ画像処理を施すことができるので、色味や濃度などが異なって見えてしまうという不具合を防止することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】オブジェクトの属性に応じた画像処理を指定する表の一例を示す図である。
【図２】アプリケーションからプリンタドライバに入力された描画データの一例を示す図である。
【図３】各属性に応じた画像処理を行って印刷を実行した結果を示す図である。
【図４】印刷システムの構成例を示す図である。
【図５】アプリケーションで生成された描画データをプリンタ用の印刷データに変換する処理の流れを示すフローチャートである。
【図６】ベースライン位置情報によって特定されたベースラインと、セルサイズ情報によって特定されたセルの一例を示す図である。
【図７】描画要素が図形属性の場合の、パス座標値で指定される各位置を示した図である。
【図８】第１の文字相当判定処理の流れを示すフローチャートである。
【図９】文字描画のベースラインとセル及びパス描画の外接矩形についての、相互位置関係を示す図である。
【図１０】２バイト文字で表される漢字３文字に対応する３つのパス描画の外接矩形を示す図である。
【図１１】漢字３文字のパス描画を指定するＸＰＳ形式の描画データの一例を示す図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照して本発明の実施の形態を詳しく説明する。なお、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【実施例１】
【００１２】
図４は、本実例に係る、アプリケーションで生成された描画データをプリンタで出力可能な形式の印刷データに変換して印刷する印刷システムの構成例を示す図である。図４に示す印刷システム４００は、クライアントＰＣ４１０とプリンタ４２０とを含み、両者がネットワーク４３０で接続された構成となっている。ネットワーク４３０は、例えば、ＬＡＮやＷＡＮ等である。
【００１３】
クライアントＰＣ４１０は、ＣＰＵ４１１、メモリユニット４１２、大容量記憶部４１３、入力デバイス４１４、ディスプレイ４１５及びネットワークインタフェース４１６を備える。ＣＰＵ４１１は、クライアントＰＣ４１０全体の制御を司る演算装置である。ネットワークインタフェース４１６は、クライアントＰＣ４１０を、ネットワーク４３０を介してプリンタ４２０や他の装置（不図示）に繋げ、それらと各種データをやり取りするためのインタフェースである。メモリユニット４１２は、ＣＰＵ４１１のワークエリアとしてのＲＡＭや各種プログラムを格納するためのＲＯＭで構成される。大容量記憶部４１３は、例えばハードディスクドライブやフラッシュメモリで構成され、ＯＳやプログラム或いはアプリケーションで処理された各種データ等の格納に使用する。入力デバイス４１４はユーザが各種操作指示を行うためのキーボードやマウス等であり、ディスプレイ４１５は各種表示を行うための例えば液晶モニタ等である。そして、上記各部は、バス４１７を介して相互に接続されている。
【００１４】
クライアントＰＣ４１０では、いわゆるプリンタドライバが、ユーザから印刷指示を受けた描画データをプリンタ４２０に合わせた印刷データ（例えばＰＤＬデータ）に変換する処理を行なう。すなわち、プリンタドライバは、データ変換手段として機能する。プリンタドライバで描画データから変換された印刷データはプリンタ４２０に送られ印刷出力される。そして、このような変換処理を実現するソフトウェア（本実施例ではプリンタドライバ）は、例えば上述の大容量記憶部４１３を含むコンピュータ可読媒体に格納されており、これがＲＡＭにロードされ、ＣＰＵ４１１が実行することで実現される。
【００１５】
プリンタ４２０は、ＣＰＵ４２１、メモリユニット４２２、大容量記憶部４２３、入力部４２４、エンジンユニット４２５及びネットワークインタフェース４２６を備える。ＣＰＵ４２１は、プリンタ４２０全体の制御を司る演算装置である。ネットワークインタフェース４２６は、プリンタ４２０を、ネットワーク４３０を介してクライアントＰＣ４１０や他の装置（不図示）に繋げ、それらと各種データをやり取りするためのインタフェースである。メモリユニット４２２は、ＣＰＵ４２１のワークエリアとしてのＲＡＭや各種プログラムを格納するためのＲＯＭで構成される。大容量記憶部４２３は、例えばハードディスクドライブやフラッシュメモリで構成され、ＯＳやプログラム或いはクライアントＰＣ４１０から受け取った印刷データ等の格納に使用する。入力部４２４は、各種表示を行うためのディスプレイを兼ねたタッチパネルやボタンで構成される。エンジンユニット４２５は、紙等の記録媒体に印刷出力を行う。そして、上記各部は、バス４２７を介して相互に接続されている。
【００１６】
プリンタ４２０において各種の動作・処理を実現するソフトウェアは、例えば上述の大容量記憶部４２３を含むコンピュータ可読媒体に格納される。ソフトウェアは、コンピュータ可読媒体からＲＡＭにロードされ、ＣＰＵ４２１がこれを実行することで実現される。
【００１７】
図５は、アプリケーションで生成された描画データをプリンタ４２０用の印刷データに変換する処理の流れを示すフローチャートである。この変換処理は、クライアントＰＣ４１０にインストールされたソフトウェア（典型的にはプリンタドライバ）によって実現される。
【００１８】
ステップ５０１では、以降の各ステップの処理で用いる変数等の初期化がなされる。
【００１９】
ステップ５０２では、大容量記憶部４１３に保存された描画データが取得される。この描画データは、Word等のアプリケーション上でユーザが印刷の実行を指示したタイミングでＯＳによって生成され、大容量記憶部４１３に保存されたものである。本実施例では、ＸＰＳ形式の描画データが取得された場合を例に以降の説明を行なうものとする。
【００２０】
ステップ５０３では、取得した描画データに含まれる描画要素において、文字属性（テキスト属性）と図形属性（グラフィック属性）とが混在しているかどうかが判定される。図２に示す描画データ２００において、枠２０１〜２０５のそれぞれが１つの描画要素である。文字属性の場合、その描画要素には文字コードやグリフデータが含まれる。図２で示すＸＰＳ形式の描画データにおいては、枠２０１或いは枠２０４のように、タグ“＜”の直後に続くコマンドが“Glyphs Fill”であれば、文字属性の描画要素であると判断される。一方、図形属性の場合、その描画要素にはパス座標値が含まれ、当該パス座標値によって指定される閉領域を塗りつぶす描画（パス描画）となる。図２で示すＸＰＳ形式の描画データにおいては、枠２０２、２０３及び２０５のように、タグ“＜”の直後に続くコマンドが“Path Data”であれば、パス描画であると判断される。このような情報を基に、描画データ内に文字属性と図形属性の両方が存在するかどうかを判定し、両方の属性が混在していればステップ５０４に進む。一方、文字属性と図形属性が混在していなければステップ５１８に進む。
【００２１】
ステップ５０４では、描画データ内の任意の描画要素を注目描画要素に決定した上で、当該注目描画要素が文字属性か否かが判定される。判定の結果、文字属性である場合は、ステップ５０５に進む。一方、文字属性ではない場合は、ステップ５０８に進む。
【００２２】
ステップ５０５では、文字属性の注目描画要素から文字のフォント情報が取得される。ここで、フォント情報には、フォントの書体（明朝やゴシック等）や文字サイズ（10ポイント等）を示す情報の他、ベースライン位置情報とセルサイズ情報が含まれる。セルサイズ情報は現在の文字サイズから算出したフォントとしてのセルサイズを特定する情報であって、セル幅とセル高さに相当するピクセル数で表わされる。ベースライン位置情報は、ベースラインの位置を特定する情報であって、セルの上端からベースラインまでの距離に相当するピクセル数で表される。図６は、ベースライン位置情報によって特定されたベースラインと、セルサイズ情報によって特定されたセルの一例を示す図である。図６において、破線の矩形６０１がセルを示しており、矢印６０２がセル幅、矢印６０３がセル高を示している。また、図６において、直線６０５がベースラインを示し、矢印６０４はセル６０１の上端からベースラインまでの距離を示している。取得されたフォント情報はRAM等に保存される。
【００２３】
ステップ５０６では、文字属性の注目描画要素から文字位置情報が取得される。ここで、文字位置情報は、文字を用紙上のどの位置に形成するのかをX座標とY座標で表す情報である。前述の図６において、○印６０６が文字列“ｇｈ”の文字位置を表しており、図２の枠２０１における「OriginX＝“113.6”」及び「OriginY＝“185.6”」が、この場合の文字位置情報となる。取得された文字位置情報はRAM等に保存される。
【００２４】
ステップ５０７では、文字属性の注目描画要素について文字用の印刷データ生成処理が実行される。文字用印刷データ生成処理は、前述の図１の表に従って、ディザ処理におけるディザ種を「解像度優先」、カラーマッチング処理におけるレンダリングインテントを「彩度優先」を適用した処理となる。生成された文字描画の印刷データはRAM等に保存される。
【００２５】
ステップ５０４の属性判定で文字属性でないと判定されると、ステップ５０８で、注目描画要素が図形属性か否かが判定される。判定の結果、図形属性である場合は、ステップ５１０に進む。一方、イメージ属性など図形以外の属性である場合はステップ５０９に進み、注目描画要素についてその他属性用の印刷データ生成処理が実行される。その他属性用印刷データ生成処理は、前述の図１の表に従って、ディザ種を「階調優先」、レンダリングインテントを「全体圧縮」を適用した処理となる。生成されたイメージ描画等の印刷データはRAM等に保存される。
【００２６】
ステップ５１０では、図形属性の注目描画要素からパス座標値が抽出される。図２の枠２０２や２０３で示す描画要素が注目描画要素であった場合、“Path Data”の記述部分から取り出した情報を、“RenderTransform”記述部分から取り出した情報を用いて座標変換することによりパス座標値が抽出される。図７は、描画要素が図形属性の場合の、パス座標値で指定される各位置を示した図である。パス座標値はｘ座標値とｙ座標値で表され、本ステップではこのような各×印に対応するパス座標値が抽出されることになる。図７において、２バイト文字“ｉ”のパス座標値で指定される各位置が×印７０１〜７０８で示され、２バイト文字“ｊ”のパス座標値で指定される各位置が×印７１１〜７２８で示されている。例えば、×印７０５に対応するパス座標値は、(0,26.08)＋(188.8，158.88)＝(188.8,184.96)である。
【００２７】
ステップ５１１では、ステップ５１０で抽出したパス座標値に基づいて外接矩形が導出される。図７において、枠７３０が２バイト文字“ｉ”について導出された外接矩形を示し、枠７４０が２バイト文字“ｊ”について導出された外接矩形を示している。導出された外接矩形の情報（例えば、外接矩形の四隅を特定するｘ座標とｙ座標からなる座標情報）はRAM等に保存される。
【００２８】
ステップ５１２では、当該図形属性の注目描画要素の前後にある描画要素が文字属性であるかどうか（パス描画と文字描画とが隣り合っているかどうか）が判定される。具体的には、例えば注目描画要素が枠２０２の図形属性であって、その前後にある描画要素２０１及び２０３のいずれかが文字属性の描画要素である場合、パス描画と文字描画とが隣り合っていると判定されることになる。判定の結果、パス描画と文字描画とが隣り合っている場合は、ステップ５１３に進む。一方、パス描画と文字描画の描画順とが隣り合っていない場合は、ステップ５１７に進む。
【００２９】
ステップ５１３では、注目描画要素であるパス描画に係る図形の色と、当該パス描画と描画順が隣り合うと判定された文字描画に係る文字の色とが同じであるかどうかが判定される。図２で示すＸＰＳ形式の描画データの場合、文字描画の“Glyphs Fill”で指定される色と、パス描画の“Fill”で指定される色とが同じであれば、両者は同じ色であると判定される。判定の結果、パス描画に係る図形の色とその隣接する文字描画に係る文字の色とが同じである場合は、ステップ５１４に進む。一方、パス描画に係る図形の色とその隣接する文字描画に係る文字の色とが同じでない場合は、ステップ５１７に進む。
【００３０】
ステップ５１４では、当該パス描画に係る図形が文字に相当する図形かどうかを決定する処理（以下、第１の文字相当図形決定処理）がなされる。図８は、第１の文字相当図形決定処理の流れを示すフローチャートである。以下、詳しく説明する。
【００３１】
ステップ８０１では、文字描画のフォント情報が取得されRAM等に保存されているか否かが判定される。フォント情報が保存されていれば、ステップ８０２に進む。フォント情報が未取得で保存されていない場合は、ステップ８０９に進む。
【００３２】
ステップ８０２では、保存されているフォント情報からベースライン位置情報とセルサイズ情報が抽出される。
【００３３】
ステップ８０３では、抽出されたベースライン位置情報とセルサイズ情報に基づいて、印刷座標系におけるベースラインの座標位置、及びセルの上端／下端の座標位置が導出される。ベースライン座標位置は、文字描画のフォント情報に含まれる文字位置情報（OriginX，OriginY）のうちのOriginYがこれに該当する。また、セルの上端／下端の座標位置は、セルサイズ情報から印刷座標系における文字サイズに対応したセルサイズを算出し、算出したセルサイズと上記文字位置との関係から当該セルの上端と下端の位置をそれぞれ決定すればよい。
【００３４】
ステップ８０４では、前述のステップ５１１で導出・保存されているパス描画の外接矩形情報が取得される。
【００３５】
ステップ８０５では、ステップ８０３で導出されたベースライン座標位置（ここではOriginY）で特定されるベースラインと、ステップ８０４で取得した外接矩形情報で特定される外接矩形の所定の一辺（ここでは下端）とが互いに近接しているかどうかが判定される。近接しているかどうかは、両者の距離が所定の閾値内（例えば文字描画のセル高の1/10の距離内）かどうかによって判定すればよい。図９は、図２に示す描画データにおける、文字描画のベースラインとセル及びパス描画の外接矩形についての、相互位置関係を示す図である。図９において、枠９０１は２バイト文字のアルファベット“ｉ”の外接矩形、枠９０２は同じく２バイト文字のアルファベット“ｊ”の外接矩形、枠９０３は図形である黒色の三角形の外征矩形を示している。この場合において、例えば外接矩形９０１の下端位置はベースラインと接しているので、近接していると判定されることになる。他方、外接矩形９０３の下端位置はベースラインから遠く離れているので、近接していないと判定されることになる。このようにして、パス描画の外接矩形の下端位置とベースラインとが近接していると判定された場合は、ステップ８０７に進む。一方、パス描画の外接矩形の下端位置とベースラインとが近接していないと判定された場合は、ステップ８０６に進む。なお、縦書きの場合は、なる上記ベースラインに相当する描画時の基準ラインと、外接矩形における対応するラインと、が互いに近接しているかどうかで判定するようにすればよい。
【００３６】
ステップ８０６では、外接矩形の高さに相当する辺がセル高の範囲内か否かが判定される。具体的には、パス描画の外接矩形の高さを特定するＹ座標値が、文字描画のセル高を特定するＹ座標値の中に包含されるか否かが判定される。判定の結果、外接矩形の高さに相当する辺がセル高の範囲内と判定されればステップ８０７に進み、外接矩形の高さに相当する辺がセル高の範囲外と判定されればステップ８０９に進む。例えば、図９に示す外接矩形９０２の下端位置とベースラインとの距離が閾値を超えており近接していないと判定（Ｓ８０５でＮｏ）されていたと仮定する。図９から明らかなように、枠９０２の外接矩形の高さに相当する辺は、セル６０１のセル高の中に収まっているので、この場合はステップ８０７に進むことになる。
【００３７】
ステップ８０７では、文字描画に係る文字の間にパス描画の外接矩形があるか否かが判定される。例えば文字の並びが左から右の場合であって、パス描画が文字描画の直後にくる場合には、パス描画の外接矩形のＸ座標が文字描画位置のＸ座標より大きいか否かをチェックし、パス描画の外接矩形のＸ座標の方が大きければ文字の間にあると判定する。また、パス描画の直後に文字描画がくる場合には、パス描画の外接矩形のＸ座標が文字描画位置のＸ座標より小さいか否かをチェックし、パス描画の外接矩形のＸ座標の方が小さければ文字の間にあると判定する。また、横書きでなく縦書きの文字においては、Ｘ座標の大小比較でなくＹ座標の大小比較を行えばよい。このような判定の結果、パス描画の外接矩形の位置が文字描画に係る文字の間にある場合は、ステップ８０８に進む。一方、パス描画の外接矩形の位置が文字描画に係る文字の間にない場合は、ステップ８０９に進む。
【００３８】
ステップ８０８では、注目描画要素であるパス描画に係る図形が、文字相当の図形であると決定される。
【００３９】
ステップ８０９では、注目描画要素であるパス描画に係る図形が、文字相当の図形ではない（通常の図形）と決定される。
【００４０】
以上が、第１の文字相当判定処理の内容である。なお、本実施例では、ベースラインからの距離に基づく判定（Ｓ８０５）で近接していないと判定された場合に、外接矩形の高さに相当する辺がセル高の範囲内か否かを判定（Ｓ８０６）している。これによって文字相当の図形か否かの判断をより高精度に行なうことが可能になるが、いずれか一方のみでも構わない。例えば、ベースラインからの距離に基づく判定における閾値により余裕を持たせるなどして、ステップ８０６の判定処理をなくしてもよい。或いは、ベースラインからの距離に基づくステップ８０５の判定を省略してもよい。図５のフローチャートの説明に戻る。
【００４１】
ステップ５１５では、上述した第１の文字相当判定処理の結果に従って、当該パス描画に対する印刷データ生成処理の切り分けがなされる。第１の文字相当判定処理において、パス描画に係る図形が文字相当の図形であると決定され場合は、ステップ５１６に進む。一方、パス描画に係る図形は文字相当の図形ではない（通常の図形である）と決定された場合は、ステップ５１７に進む。
【００４２】
ステップ５１６では、図形属性の注目描画要素について、文字相当図形用の図形印刷データ生成処理が実行される。この文字相当図形用印刷データ生成処理は、次のステップ５１７で行なう通常図形用の印刷データ生成処理とは異なり、文字の描画に最適な印刷データ生成処理となる。すなわち、上述のステップ５０７と同様、ディザ種を「解像度優先」、レンダリングインテントを「彩度優先」を適用した文字描画に適した処理となる。生成された文字相当のパス描画の印刷データはRAM等に保存される。
【００４３】
ステップ５１７では、図形属性の注目描画要素について、通常図形用の印刷データ生成処理が実行される。通常図形用印刷データ生成処理は、前述の図１の表に従って、ディザ種を「階調優先」、レンダリングインテントを「全体圧縮」を適用した処理となる。生成された通常図形のパス描画の印刷データはRAM等に保存される。
【００４４】
ここまでが、文字属性と図形属性とが１ページ分の描画データ内に混在する場合の処理である。次に、文字属性と図形属性とが混在しない場合（ステップ５０３でＮｏ）の処理について説明する。
【００４５】
まず、ステップ５１８において、取得した描画データに含まれる描画要素が図形属性の描画要素のみで構成されているかどうかが判定される。図形属性の描画要素のみで構成される場合は、以降のステップ５１９〜ステップ５２４において、当該図形属性のパス描画に係る一連の図形についての文字相当判定処理（第２の文字相当判定処理）が実行される。一方、図形属性以外の描画要素も含まれている場合は、ステップ５０４に進んで、各描画要素の属性に従って上述の処理が実行される。以下、第２の文字相当判定処理について説明する。
【００４６】
ステップ５１９では、描画データ内から任意の図形属性の描画要素を注目描画要素に決定した上で、当該注目描画要素からパス座標値が抽出される。その内容は上述のステップ５１０と同じである。
【００４７】
ステップ５２０では、ステップ５１９で抽出したパス座標値に基づいて外接矩形が導出される。その内容は上述のステップ５１１と同じである。
【００４８】
ステップ５２１では、描画データ内に未処理の描画要素があるか否かが判定される。未処理の描画要素があればステップ５１９に戻り、次の描画要素を注目描画要素に決定して処理が続行される。一方、描画データ内のすべての描画要素について処理が完了していれば、ステップ５２２へ進む。
【００４９】
ステップ５２２では、各パス描画における文字のセルサイズに相当する長さ（以下、仮想セルサイズ）が導出される。具体的には、ステップ５２０で抽出・保存されている各パス描画についての外接矩形情報を取得し、近接する外接矩形における基準となる位置同士の間隔を求め、求めた間隔を仮想セルサイズの一辺の長さとする。この場合の基準となる位置は、例えば、左右の端や中心である。図１０は、それぞれが２バイト文字で表される「亜細亜」の漢字３文字に対応する３つのパス描画の外接矩形を示す図であり、各文字に外接矩形１００１〜１００３が付されている。図１１は、図１０に示す漢字３文字のパス描画を指定するＸＰＳ形式の描画データである。図１１に示す１ページ分の描画データ１１００のうち、枠１１０１は、２バイト文字の漢字“亜”をパス座標値で表現し、そのパスで示される部分を“赤”色で塗りつぶし図形として描画するように記述されたパス形式のデータを示している。同様に、枠１１０２及び１１０３も、それぞれ２バイト文字の漢字“細”及び“亜”を“赤”色で塗りつぶし図形として描画するパス形式のデータである。そして、図１１においては、外接矩形１００１の左端と外接矩形１００２の左端の間隔が矢印１００４で示されている。このような近接する外接矩形同士における基準位置（図１１の例では左端）の間隔を文字のセルの一辺（矢印１００４の長さをセル幅、それと同じ長さの矢印１００５をセル高）と見做して、仮想セルサイズが導出されることになる。
【００５０】
ステップ５２３では、近接する外接矩形同士が隣り合わせに並んでいるかどうかが判定される。具体的には、文字の並びが左から右の場合、近接する外接矩形における上記基準位置（ここでは左端）のＸ座標が昇順に並んでいれば、隣り合わせに並んでいると判定されることになる。前述の図１０において、×印１００６は外接矩形１００１の左端Ｘ座標、×印１００７は外接矩形１００２の左端Ｘ座標、×印１００８は外接矩形１００３の左端Ｘ座標を示し、１００１の左端X座標を先頭に昇順に並んでいることが分かる。もし文字の並びが右から左の場合においては（本実施例では左右のどちらからでも同じであるが）、降順か否かで判別すればよい。また、横書きではなく縦書きの文字においては、Ｘ座標に代えて上端や下端のＹ座標で比較を行えばよい。近接する外接矩形同士が隣り合わせに並んでいると判定された場合は、ステップ５２４に進む。一方、近接する外接矩形同士が隣り合わせに並んでいないと判定された場合は前述のステップ５１７に進み、通常図形用の印刷データ生成処理が実行される。
【００５１】
ステップ５２４では、パス描画の各外接矩形のサイズが、ステップ５２２で導出された仮想セルサイズよりも小さいかどうかが判定される。具体的には、例えば、外接矩形の上端のＹ座標及び下端のＹ座標が共に仮想セルサイズの範囲内であれば、外接矩形のサイズが仮想セルサイズよりも小さいと判定される。前述の図１０において、矢印１００５は仮想セルサイズにおけるセル高を示しており、３つの外接矩形１００１〜１００３の全てにおいてその上端と下端のＹ座標がセル矢印１００５内に収まっている。したがってこの場合は、外接矩形のサイズは仮想セルサイズよりも小さいと判定されることになる。なお、この判定の際には、導出された仮想セルサイズよりも一回り大きなサイズを基準として判定するようにしてもよい。こうして外接矩形のサイズが仮想セルサイズよりも小さいと判定された場合はステップ５１６に進み、文字相当図形用の印刷データ生成処理が実行される。一方、外接矩形のサイズが仮想セルサイズと同等以上と判定された場合はステップ５１７に進み、通常図形用の印刷データ生成処理が実行される。
【００５２】
ステップ５２５では、描画データ内に未処理の描画要素があるか否かが判定される。未処理の描画要素があればステップ５０４に戻り、次の描画要素が注目描画要素に決定されて処理が続行される。一方、描画データ内のすべての描画要素について処理が完了していれば、ステップ５２６へ進む。なお、描画データが図形属性の描画要素のみで構成される場合は、この段階で未処理の描画要素はないはずなので、必ずステップ５２６に進むことになる。
【００５３】
ステップ５２６では、生成された印刷データ（例えばPDLデータ）がプリンタ４２０に送られる。描画データが複数ページで構成される場合は、同様の処理がページ数分繰り返されることになる。
【００５４】
以上が、アプリケーションで生成された描画データをプリンタ４２０用の印刷データに変換する処理の内容である。
【００５５】
本実施例によれば、図形属性の描画要素で特定されるパス描画による文字を適切に文字として検出することが可能となる。これにより、パス描画によるい文字についても文字出力に最適な画像処理を施すことが可能となり、より高品質な印刷を行うことができる。また、文字について文字属性と図形属性とが混在した描画データであっても、文字についてはその属性に関わらず同じ内容の画像処理を施すことが可能となるので、色味や濃度などが文字によって異なって見えてしまうという不具合を防止することができる。
【００５６】
（その他の実施例）  
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
0006614857.tif 000002
【図２】
0006614857.tif 000003
【図３】
0006614857.tif 000004
【図４】
0006614857.tif 000005
【図５】
0006614857.tif 000006
【図６】
0006614857.tif 000007
【図７】
0006614857.tif 000008
【図８】
0006614857.tif 000009
【図９】
0006614857.tif 000010
【図１０】
0006614857.tif 000011
【図１１】
0006614857.tif 000012