(57)【要約】【課題】  個別文字のバウンディングボックスサイズにより判定する場合に比べて、判定の不均一性による画像劣化という問題がなくなり、小文字に対して特定の画像処理を行った場合に確実な画質向上が得られる文字サイズ判定方法を提供する。【解決手段】  文字のアウトラインを構成する制御点の位置を表現するグリフ座標空間と出力デバイスにおける画素位置を表現するデバイス座標空間が複数のアフィン変換マトリックスによって連結されるページ記述言語において、一定サイズ以下の文字に対して任意の画像処理を行う為に文字サイズを判定する方法であり、前記グリフ座標空間における基準矩形に対して前記複数のアフィン変換マトリックスにより座標変換を施した結果の前記デバイス座標空間上での矩形の面積が所定の値以下であるかどうかにより文字サイズを判定することを特徴とする文字サイズ判定方法。【選択図】        図１
2006251311.tif 000002
【特許請求の範囲】
【請求項１】
文字のアウトラインを構成する制御点の位置を表現するグリフ座標空間と出力デバイスにおける画素位置を表現するデバイス座標空間が複数のアフィン変換マトリックスによって連結されるページ記述言語において、一定サイズ以下の文字に対して任意の画像処理を行う為に文字サイズを判定する方法であり、前記グリフ座標空間における基準矩形に対して前記複数のアフィン変換マトリックスにより座標変換を施した結果の前記デバイス座標空間上での矩形の面積が所定の値以下であるかどうかにより文字サイズを判定することを特徴とする文字サイズ判定方法。
【請求項２】
文字のアウトラインを構成する制御点の位置を表現するグリフ座標空間と出力デバイスにおける画素位置を表現するデバイス座標空間が複数のアフィン変換マトリックスによって連結されるページ記述言語において、一定サイズ以下の文字に対して任意の画像処理を行う為に文字サイズを判定する方法であり、前記グリフ座標空間における基準矩形に対して前記複数のアフィン変換マトリックスにより座標変換を施した結果の前記デバイス座標空間上での矩形の高さもしくは幅が所定の値以下であるかどうかにより文字サイズを判定することを特徴とする文字サイズ判定方法。
【請求項３】
文字のアウトラインを構成する制御点の位置を表現するグリフ座標空間と出力デバイスにおける画素位置を表現するデバイス座標空間が複数のアフィン変換マトリックスによって連結されるページ記述言語において、一定サイズ以下の文字に対して任意の画像処理を行う為に文字サイズを判定する方法であり、前記グリフ座標空間における基準矩形に対して前記複数のアフィン変換マトリックスにより座標変換を施した結果の前記デバイス座標空間上での矩形の高さと幅がそれぞれ所定の値以下であるかどうかにより文字サイズを判定することを特徴とする文字サイズ判定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一定サイズ以下の文字に対して特別な画像処理を行う画像形成装置における、文字サイズ判定方法に関する。
【背景技術】
【０００２】
連続トーンを再現できない出力装置では、限られた色で連続トーンを擬似的に再現するハーフトーンスクリーニング処理が広く行われている。例えば、新聞に掲載されているモノクロ写真などは、白と黒の二つのピクセルでグレイ諧調を表現した例である。ハーフトーンスクリーンは、スクリーン線数、角度、スポットの作り方（ピクセルを黒から白に変更する順番）によって制御される。また、ハーフトーンの一つとして直前までの減色結果により発生した本来の色と比べたときの誤差を周辺のピクセルに分散させて吸収する誤差拡散法なども広く知られている。
【０００３】
ＰｏｓｔＳｃｒｉｐｔなど一部のページ記述言語では、ページ記述言語データ中に使用するハーフトーンスクリーンを指定できるものがあり、また、ページ記述言語データを解釈して印刷する一部のＰＤＬプリンタではグラフィックスには高線数のスクリーン、イメージには低線数のスクリーン、文字には誤差拡散といったようにオブジェクト種別毎に最適なハーフトーンを自動的に適用できるものもある。また、さらに最適な画質を得る為に、文字のサイズによってハーフトーンを切り替える方法がある。
【特許文献１】特開２００３−５４０４２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、一部のページ記述言語ではアプリケーション上で指定した文字のポイント数が、そのままページ記述言語上での文字のポイント数として指定されるとは限らず、文字サイズ判定が難しい。例えば、ＰｏｓｔＳｃｒｉｐｔなどの一部のページ記述言語では、文字のアウトラインを構成する制御点の位置を表現するグリフ座標空間と出力デバイスにおける画素位置を表現するデバイス座標空間が複数のアフィン変換マトリックスによって連結される。
【０００５】
この場合、出力デバイス上に印字される文字の大きさは複数のアフィン変換マトリックスとグリフ座標空間上での文字の大きさに依存する。文字の大きさを判定する方法としてアウトライン記述されたグリフをデバイス出力用にビットマップ化した際の大きさ、つまりデバイス座標空間上でのアウトラインの外接矩形を表すバウンディングボックスの大きさを調べる方法もある。
【０００６】
しかし、バウンディングボックスは、アプリケーション上では同一ポイント数であっても、プリンタドライバを介してＰｏｓｔＳｃｒｉｐｔ出力すると、文字によって異なってしまう。その為、アプリケーション上で同一ポイント数指定した単語や文章のうち特定の文字だけが小文字と判定されてしまう結果となる。この場合、連続する文字列のうち特定文字だけが異なるハーフトーンに切り替わる結果となり、不均一性が目立つようになってしまう。
【０００７】
本発明は、以上の点に着目して成されたもので、個別文字のバウンディングボックスサイズにより判定する場合に比べて、判定の不均一性による画像劣化という問題がなくなり、小文字に対して特定の画像処理を行った場合に確実な画質向上が得られる文字サイズ判定方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
そこで、グリフ座標空間上での単位正方形が複数のアフィン変換マトリックスによって、デバイス座標空間上のどのような矩形に写像されるか計算し、その矩形の大きさを持って文字の大きさを決定する。この方法であれば、同一のアフィン変換マトリックスによってマッピングされる文字は全て同一の判定結果となる為、アプリケーション上で同一ポイント数指定した単語や文章のうち特定の文字だけが小文字と判定されてしまうことが無くなる。また、同じ大きさの文字を円弧にそって回転出力した場合なども正しく判定することが可能となる。
【０００９】
すなわち、本発明の技術内容は以下の構成を備えることにより前記課題を解決できた。
【００１０】
（１）文字のアウトラインを構成する制御点の位置を表現するグリフ座標空間と出力デバイスにおける画素位置を表現するデバイス座標空間が複数のアフィン変換マトリックスによって連結されるページ記述言語において、一定サイズ以下の文字に対して任意の画像処理を行う為に文字サイズを判定する方法であり、前記グリフ座標空間における基準矩形に対して前記複数のアフィン変換マトリックスにより座標変換を施した結果の前記デバイス座標空間上での矩形の面積が所定の値以下であるかどうかにより文字サイズを判定することを特徴とする文字サイズ判定方法。
【００１１】
（２）文字のアウトラインを構成する制御点の位置を表現するグリフ座標空間と出力デバイスにおける画素位置を表現するデバイス座標空間が複数のアフィン変換マトリックスによって連結されるページ記述言語において、一定サイズ以下の文字に対して任意の画像処理を行う為に文字サイズを判定する方法であり、前記グリフ座標空間における基準矩形に対して前記複数のアフィン変換マトリックスにより座標変換を施した結果の前記デバイス座標空間上での矩形の高さもしくは幅が所定の値以下であるかどうかにより文字サイズを判定することを特徴とする文字サイズ判定方法。
【００１２】
（３）文字のアウトラインを構成する制御点の位置を表現するグリフ座標空間と出力デバイスにおける画素位置を表現するデバイス座標空間が複数のアフィン変換マトリックスによって連結されるページ記述言語において、一定サイズ以下の文字に対して任意の画像処理を行う為に文字サイズを判定する方法であり、前記グリフ座標空間における基準矩形に対して前記複数のアフィン変換マトリックスにより座標変換を施した結果の前記デバイス座標空間上での矩形の高さと幅がそれぞれ所定の値以下であるかどうかにより文字サイズを判定することを特徴とする文字サイズ判定方法。
【発明の効果】
【００１３】
このように、連結したマトリックス［Ｒａ  Ｒｂ  Ｒｃ  Ｒｄ  Ｒｘ  Ｒｙ］を用いてグリフ座標空間上の一辺の長さが１の単位正方形をデバイス座標空間へマッピングすることにより生成される矩形の面積が予め決められた閾値Ｋより大きいか否かにより小文字の判定を行うことにより、個別文字のバウンディングボックスサイズにより判定する場合に比べて、判定の不均一性による画像劣化という問題がなくなり、小文字に対して特定の画像処理を行った場合に確実な画質向上が得られる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明にかかる一実施形態について、図面を参照して詳細に説明する。
【実施例】
【００１５】
図１は、本発明の実施例を示す画像形成装置システムの全体の構成を説明するブロック図である。
【００１６】
本画像形成装置２００は、画像入力デバイスであるスキャナ部２０７０、画像出力デバイスであるプリンタ部２０９５、Ｃｏｎｔｒｏｌｌｅｒ  Ｕｎｉｔ２０００、ユーザインターフェースである操作部２０１２から構成される。スキャナ部２０７０、プリンタ部２０９５、操作部２０１２は、それぞれＣｏｎｔｒｏｌｌｅｒ  Ｕｎｉｔ２０００に接続され、Ｃｏｎｔｒｏｌｌｅｒ  Ｕｎｉｔ２０００は、ＬＡＮ２０１１などのネットワーク伝送手段に接続されている。また、ＬＡＮ２０１１には、画像形成装置２００と同様の機器構成をもつ他の画像形成装置２２０、２３０が接続されている。画像形成装置２２０、２３０は、それぞれスキャナ部２２７０、２３７０、プリンタ部２２９５、２３９５、操作部２２１２、２３１２を持ち、それらがＣｏｎｔｒｏｌｌｅｒ  Ｕｎｉｔ２２００、２３００に接続されている。
【００１７】
図２は、本発明の実施例を示す画像形成装置のソフトウェアブロック図である。
【００１８】
１５０１はＵＩ即ちユーザインターフェースを司るものであり、オペレータが本画像形成装置の各種操作・設定を行う際、機器との仲介を行うモジュールである。本モジュールは、オペレータの操作に従い、後述の各種モジュールに入力情報を転送し処理の依頼、或いはデータの設定等を行う。１５０２はＡｄｄｒｅｓｓ−Ｂｏｏｋ即ちデータの送付先、通信先等を管理するデータベースモジュールである。Ａｄｄｒｅｓｓ−Ｂｏｏｋの内容は、ＵＩ１５０１からの操作によりデータの追加、削除、取得が行われ、オペレータの操作により後述の各モジュールにデータの送付・通信先情報を与えるものとして使用されるものである。
【００１９】
１５０４はＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ即ち、データの配信を司るモジュールであり、ＵＩ１５０１によりオペレータに指示されたデータを、同様に指示された通信（出力）先に配布するものである。また、オペレータにより、本機器のスキャナ機能を使用し配布データの生成が指示された場合は、後述のＣｏｎｔｒｏｌ−ＡＰＩ１５１９を介して機器を動作させ、データの生成を行う。１５０５はＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ１５０４内で出力先にプリンタが指定された際に実行されるモジュールである。１５０６はＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ１５０４内で通信先にＥ−ｍａｉｌアドレスが指定された際に実行されるモジュールである。１５０７はＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ１５０４内で出力先にデータベースが指定された際に実行されるモジュールである。
【００２０】
１５０８はＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ１５０４内で出力先に本機器と同様の画像形成装置が指定された際に実行されるモジュールである。１５０９はＰＤＬモジュールであり、本画像形成装置の外部から送信されたＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）文書を、本画像形成装置のプリント機能を使用してプリントする機能を実現する。また、１５１２ＨＴＴＰモジュールを使用して外部のＷｅｂサーバに格納された電子文書を取り出しプリントする機能も提供するものである。
【００２１】
１５１０はＣｏｐｙモジュールであり、本画像形成装置のプリンタ機能とスキャナ機能を使用し、ＵＩの指示に基づいてＣｏｐｙ動作を実行するものである。１５１１はボックスモジュール（Ｂｏｘ）であり、スキャン画像もしくはＰＤＬプリント画像をＨＤＤに格納し、格納した画像のプリンタ機能による印刷、Ｕｎｉｖｅｒｓａｌ−Ｓｅｎｄ機能による送信、ＨＤＤに格納した文書の削除、グルーピング（個別ＢＯＸへの格納）、ＢＯＸ間移動、ＢＯＸ間コピーなどの管理機能を提供する。
【００２２】
１５１２は本画像形成装置がＨＴＴＰにより通信する際に使用されるモジュールであり、後述のＴＣＰ／ＩＰ１５１６モジュールにより前述のＰＤＬ１５０９モジュールに通信を提供するものである。１５１３はｌｐｒモジュールであり、後述のＴＣＰ／ＩＰ１５１７モジュールにより前述のＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ１５０４内のプリンタモジュール１５０５に通信を提供するものである。１５１４はＳＭＴＰモジュールであり、後述のＴＣＰ／ＩＰ１５１７モジュールにより前述のＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ１５０４内のＥ−ｍａｉｌモジュール１５０６に通信を提供するものである。
【００２３】
１５１５はＳＬＭ即ちＳａｌｕｔａｔｉｏｎ−Ｍａｎａｇｅｒモジュールであり、後述のＴＣＰ／ＩＰ１５１７モジュールにより前述のＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ１５０４内のデータベースモジュール１５１７、ＤＰモジュール１５１８に通信を提供するものである。
【００２４】
１５１６はＬＰＤモジュールであり、後述のＴＣＰ／ＩＰ１５１７モジュールにより、前述のＰＤＬ１５０９モジュールに通信を提供するものである。１５１７はＴＣＰ／ＩＰ通信モジュールであり、前述の各種モジュールに後述のＮｅｔｗｏｒｋ−Ｄｒｉｖｅｒによりネットワーク通信を提供するものである。１５１８はネットワークドライバであり、ネットワークに物理的に接続される部分を制御するものである。
【００２５】
１５１９はＣｏｎｔｒｏｌ−ＡＰＩであり、Ｕｎｉｖｅｒｓａｌ−Ｓｅｎｄ１５０４、ＰＤＬ１５０９、Ｃｏｐｙ１５１０、Ｂｏｘ１５１１等の上位モジュールに対し、後述のＪｏｂ−Ｍａｎａｇｅｒ１５２０等の下位モジュールとのインターフェースを提供するものであり、上位、及び下位のモジュール間の依存関係を軽減しそれぞれの流用性を高めるものである。
【００２６】
１５２０はＪｏｂ−Ｍａｎａｇｅｒであり、前述の各種モジュールよりＣｏｎｔｒｏｌ−ＡＰＩ１５１９を介して指示される処理を解釈し、後述の各モジュールに指示を与えるものである。また、本モジュールは、本画像形成装置内で実行されるハード的な処理を一元管理するものである。１５２１はＣＯＤＥＣ−Ｍａｎａｇｅｒであり、Ｊｏｂ−Ｍａｎａｇｅｒ１５２０が指示する処理の中でデータの各種圧縮・伸長を管理・制御するものである。
【００２７】
１５２２はＦＢＥ−Ｅｎｃｏｄｅｒであり、Ｊｏｂ−Ｍａｎａｇｅｒ１５２０、Ｓｃａｎ−Ｍａｎａｇｅｒ１５２５により実行されるスキャン処理により読み込まれたデータをＦＢＥフォーマットにより圧縮するものである。１５２３はＪＰＥＧ−ＣＯＤＥＣであり、Ｊｏｂ−Ｍａｎａｇｅｒ１５２０、Ｓｃａｎ−Ｍａｎａｇｅｒ１５２５により実行されるスキャン処理、及びＰｒｉｎｔ−Ｍａｎａｇｅｒ１５２６により実行される印刷処理において、読み込まれたデータのＪＰＥＧ圧縮及び印刷データのＪＰＥＧ展開処理を行うものである。
【００２８】
１５２４はＭＭＲ−ＣＯＤＥＣであり、Ｊｏｂ−Ｍａｎａｇｅｒ１５２０、Ｓｃａｎ−Ｍａｎａｇｅｒ１５２５により実行されるスキャン処理、及びＰｒｉｎｔ−Ｍａｎａｇｅｒ１５２６により実行される印刷処理において、読み込まれたデータのＭＭＲ圧縮及び印刷データのＭＭＲ伸長処理を行うものである。１５２５はＳｃａｎ−Ｍａｎａｇｅｒであり、Ｊｏｂ−Ｍａｎａｇｅｒ１５２０が指示するスキャン処理を管理・制御するものである。
【００２９】
１５２８はＳｃａｎｎｅｒ  Ｉ／Ｆであり、Ｓｃａｎ−Ｍａｎａｇｅｒ１５２４と本画像形成装置が内部的に接続しているスキャナ部とのＩ／Ｆを提供するものである。１５２６はＰｒｉｎｔ−Ｍａｎａｇｅｒであり、Ｊｏｂ−Ｍａｎａｇｅｒ１５１９が指示する印刷処理を管理・制御するものである。１５２９はＥｎｇｉｎｅ−Ｉ／Ｆドライバであり、Ｐｒｉｎｔ−Ｍａｎａｇｅｒ１５２６と印刷部とのＩ／Ｆを提供するものである。
【００３０】
１５２７はＰＤＬ  Ｉｎｔｅｒｐｒｅｔｅｒであり、Ｊｏｂ−Ｍａｎａｇｅｒ１５２０の指示により、ＬＩＰＳ、ＰｏｓｔＳｃｒｉｐｔ、ＰＣＬ、ＰＤＦ、ＳＶＧなどのＰＤＬもしくは電子文書フォーマットを解釈し、ＰＤＬもしくは電子文書フォーマットの種別によらない共通の表現形式であるディスプレイリストを生成するものである。１５３０はＲｅｎｄｅｒであり、ＰＤＬ  Ｉｎｔｅｒｐｒｅｔｅｒ１５２７により生成されたディスプレイリストを、Ｐｒｉｎｔ−Ｍａｎａｇｅｒ１５２０の指示により、イメージプロセッサを用いてラスタイメージメモリに展開するものである。
【００３１】
図３は、画像形成装置の構成を説明するブロック図である。
【００３２】
Ｃｏｎｔｒｏｌｌｅｒ  Ｕｎｉｔ２０００は画像入力デバイスであるスキャナ２０７０や画像出力デバイスであるプリンタ２０９５と接続し、一方ではＬＡＮ２０１１や公衆回線（ＷＡＮ）２０５１接続することで、画像情報やデバイス情報の入出力を行う為のコントローラである。ＣＰＵ２００１はシステム全体を制御するコントローラである。ＲＡＭ２００２はＣＰＵ２００２が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもある。ＲＯＭ２００３はブートＲＯＭであり、システムのブートプログラムが格納されている。
【００３３】
ＨＤＤ２００４はハードディスクドライブで、システムソフトウェア、画像データを格納する。操作部Ｉ／Ｆ２００６は操作部（ＵＩ）２０１２とインターフェース部で、操作部２０１２に表示する画像データを操作部２０１２に対して出力する。また、操作部２０１２から本システム使用者が入力した情報を、ＣＰＵ２００１に伝える役割をする。
【００３４】
Ｎｅｔｗｏｒｋ２０１０はＬＡＮ２０１１に接続し、情報の入出力を行う。Ｍｏｄｅｍ２０５０は公衆回線２０５１に接続し、情報の入出力を行う。以上のデバイスがシステムバス２００７上に配置される。Ｉｍａｇｅ  Ｂｕｓ  Ｉ／Ｆ２００５はシステムバス２００７と画像データを高速で転送する画像バス２００８を接続し、データ構造を変換するバスブリッジである。画像バス２００８は、ＰＣＩバスまたはＩＥＥＥ１３９４で構成される。画像バス２００８上には以下のデバイスが配置される。イメージプロセッサ（ＲＩＰ）２０６０はディスプレイリストをラスタイメージに展開する。デバイスＩ／Ｆ部２０２０は、画像入出力デバイスであるスキャナ２０７０やプリンタ２０９５とコントローラ２０００を接続し、画像データの同期系／非同期系の変換を行う。
【００３５】
スキャナ画像処理部２０８０は、入力画像データに対し補正、加工、編集を行う。プリンタ画像処理部２０９０は、プリント出力画像データに対して、プリンタの補正、解像度変換、ハーフトーニング等を行う。画像回転部２０３０は画像データの回転を行う。画像圧縮部２０４０は、多値画像データはＪＰＥＧ、２値画像画像データはＪＢＩＧ、ＭＭＲ、ＭＨの圧縮伸張処理を行う。カードリーダＩ／Ｆ２０１５は、磁気カードの読み取り装置であるカードリーダ２０１６のインターフェース部である。
【００３６】
画像形成装置外観を図４に示す。
【００３７】
画像入力デバイスであるスキャナ部２０７０は、原稿となる紙上の画像を照明し、ＣＣＤラインセンサ（図示せず）を走査することで、ラスターイメージデータ２０７１として電気信号に変換する。原稿用紙は原稿フィーダ２０７２のトレイ２０７３にセットし、装置使用者が操作部２０１２から読み取り起動指示することにより、コントローラＣＰＵ２００１がスキャナ２０７０に指示を与え（２０７１）、フィーダ２０７２は原稿用紙を１枚ずつフィードし原稿画像の読み取り動作を行う。
【００３８】
画像出力デバイスであるプリンタ部２０９５は、ラスターイメージデータ２０９６を用紙上の画像に変換する部分であり、その方式は感光体ドラムや感光体ベルトを用いた電子写真方式、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等があるが、どの方式でも構わない。プリント動作の起動は、コントローラＣＰＵ２００１からの指示２０９６によって開始する。プリンタ部２０９５には、異なる用紙サイズまたは異なる用紙向きを選択できるように複数の給紙段を持ち、それに対応した用紙カセット２１０１、２１０２、２１０３がある。また、排紙トレイ２１１１は印字し終わった用紙を受けるものである。
【００３９】
操作部２０１２の構成を図５に示す。ＬＣＤ表示部２０１３は、ＬＣＤ上にタッチパネルシート２０１９が貼られており、システムの操作画面およびソフトキーを表示するとともに、表示してあるキーが押されるとその位置情報をコントローラＣＰＵ２００１に伝える。スタートキー２０１４は原稿画像の読み取り動作を開始する時などに用いる。スタートキー２０１４中央部には、緑と赤の２色ＬＥＤ２０１８があり、その色によってスタートキー２０１４が使える状態にあるかどうかを示す。ストップキー２０１５は稼働中の動作を止める働きをする。ＩＤキー２０１６は、使用者のユーザＩＤを入力する時に用いる。リセットキー２０１７は操作部からの設定を初期化する時に用いる。
【００４０】
図６は画像形成装置の操作部の構成を説明するブロック図である。
【００４１】
画像形成装置において、２００１は制御ＣＰＵで、２００３のプログラム用ＲＯＭと２００４ＨＤＤに記憶された制御プログラム等に基づいてシステムバス２００７に接続される各種デバイスとのアクセスを総括的に制御し、画像入力部インタフェース２０７１を介して接続されるスキャナ２０７０から入力情報を読み込み、印刷部インタフェース２０９６を介して接続される印刷部２０９５に出力情報としての画像信号を出力する。２００２は２００１のＣＰＵの主メモリ、ワークエリア等として機能するＲＡＭである。
【００４２】
２０１９のタッチパネル、２０１４〜２０１７のハードキーから、ユーザ入力を受け取り操作入力部Ｉ／Ｆ２００６１を介して、操作内容を取得する。取得した操作内容と前述の制御プログラムにもとづいて、ＣＰＵ２００１において表示画面データが生成され、画面出力デバイスを制御する出力デバイスコントローラ２００６２を介して、ＬＣＤやＣＲＴなどの画面出力デバイス２０１３に表示画面を出力する。
【００４３】
次に、図７を用いてページ記述言語を解釈し画像形成を行うＲＩＰ処理の流れに関して説明する。
【００４４】
ＰｏｓｔＳｃｒｉｐｔインタプリタ３００１は図２のＰＤＬ  Ｉｎｔｅｒｐｒｅｔｅｒ１５２７の一つで、ＰｏｓｔＳｃｒｉｐｔ言語で記述されたデータを解釈し中間言語データであるディスプレイリスト３０１５を生成する。言語処理部３００４はＰｏｓｔＳｃｒｉｐｔ言語により記述されたデータを解釈し、描画オペレータに応じて文字処理部３００５、グラフィックス処理部３００６、イメージ処理部３００７へ描画要求を出すものである。文字処理部３００５は指定されたフォントから文字ビットマップを生成するものであり、グラフィックス処理部３００６はベクタグラフィックス描画を制御するものであり、イメージ処理部３００７はイメージデータを共通の内部データ形式に変換する処理等を行うものである。
【００４５】
ＣＭＳエンジン３００８はカラーマネージメントを行うモジュールであり、入力色を絶対色空間に変換後、プリンタエンジン固有の出力色（ＣＭＹＫ）を生成するものである。ＰｏｓｔＳｃｒｉｐｔ言語ではＤｅｖｉｃｅ色空間、ＣＩＥＢａｓｅｄ色空間、特殊色空間など多様な色空間が規定されており、Ｄｅｖｉｃｅ色空間で指定された入力色に関しては、ＲＧＢソースプロファイル、ＣＭＹＫシミュレーションプロファイルなどの予め用意されたＩＣＣプロファイル群のうち指定されたものを用いて色変換を行う。ＣＩＥＢａｓｅｄ色空間で指定された入力色に関してはその色空間で指定された変換テーブル、変換関数、変換マトリックスに従い色変換を行う。絶対色空間からプリンタエンジン固有の色空間への変換は出力プロファイルもしくは、ＰｏｓｔＳｃｒｉｐｔで規定されたＣｏｌｏｒ  Ｒｅｎｄｅｒｉｎｇ  Ｄｉｃｔｉｏｎａｒｙを用いて行う。
【００４６】
色判定部３００９はＣＭＳエンジンの出力値であるＣＭＹＫ色を調べ、現在処理中のページがカラーページかモノクロページか判定するものである。ディスプレイリストジェネレータ３０１０は中間言語データであるディスプレイリスト３０１５を生成するものである。ディスプレイリスト内には、各オブジェクトの属性フラグが含まれており、オブジェクトがグラフィックス、イメージ、文字の何れであるかと、文字の大きさが通常の文字であるか小文字であるかが識別される。各属性は文字処理部３００５、グラフィックス処理部３００６、イメージ処理部３００７から通知されたものがそのまま使用される。属性フラグはレンダを経て後段の画像処理に使用される。
【００４７】
レンダ３００２はディスプレイリストを解釈し、それぞれがビット深度８×４面のＣＭＹＫビットマップ３０１６を生成するものであり、図３のＲＩＰ２０６０を使用して大半の処理が行われる。また、レンダはディスプレイリスト３０１５に含まれる属性フラグを元に各デバイスピクセル単位に属性を示す、オブジェクト属性マップ３０１７を５枚目の版として生成する。
【００４８】
ここでオブジェクト属性マップはピクセル毎にビット深度２（グラフィックス０１、イメージ１０、文字１１、小文字００）の属性情報を持つ。画像処理プロセッサ３００３は図２のＰｒｉｎｔ  Ｍａｎａｇｅｒ１５２６により制御され、レンダ３００２により生成されたＣＭＹＫビットマップ３０１６に対して、濃度・カラーバランス調整３０１１、出力ガンマ補正３０１２、ハーフトーニング３０１３などの画像処理を行うものである。ハーフトーニング３０１３はオブジェクト属性マップ３０１７を参照してオブジェクト属性毎に異なるハーフトーニングを適用するものであり、グラフィックス属性の画像領域に対しては解像度優先の高線数スクリーンを、イメージ属性の画像領域に対しては諧調優先の低解像度スクリーンを、文字属性の画像領域に対しては誤差拡散を、小文字属性の画像領域に対しては高線数スクリーンを適用する。
【００４９】
色判定部３００９でモノクロページと判定された場合には、レンダ３００２で作成されたＣＭＹＫビットマップ３０１６のうちＫ版のビットマップのみが画像処理プロセッサ３００３に送られ、最終出力で使用されるＫビットマップ３０１９が生成される。また、色判定部３００９でカラーページと判定された場合には、レンダ３００２で生成されたＣＭＹＫビットマップ３０１６がそのまま画像処理プロセッサ３００２に送られ、最終出力で使用されるＣＭＹＫビットマップ３０１８が生成される。こうして、画像処理プロセッサ３００３により生成されたＣＭＹＫビットマップ３０１４もしくはＫビットマップ３０１５が図２のＥｎｇｉｎｅ  Ｉ／Ｆ１５２９を介してプリンタエンジンに転送され、所望のメディアに印字出力されるものである。
【００５０】
図８はＰｏｓｔＳｃｒｉｐｔにおける座標システムの概念図である。
【００５１】
グリフ空間３２０１、フォーム空間３２０２、テキスト空間３２０３、イメージ空間３２０４、パターン空間３２０５、ユーザ空間３２０６、デバイス空間３２０７の７つの座標空間から構成される。図３２０２において矢印で結合された座標空間はアフィン変換によって連結される。図９の式がアフィン変換をあらわすものであり、二つの座標空間の間に移動、回転、スケーリング、スキューイングを定義することが可能である。図９における３×３の行列は［ａ  ｂ  ｃ  ｄ  ｅ  ｆ］とも表記され、アフィン変換マトリックスをあらわす。
【００５２】
グリフ空間３２０１はグリフのアウトラインを構成する制御点の座標値を指定する為の座標空間で、テキスト空間３２０３とフォントマトリックス３２０８により連結される。テキスト空間３２０３はテキストマトリックス３２０９によりユーザ空間３２０６と連結される。テキストマトリックス３２０９により文字の大きさや回転の制御を行うことが可能である。ユーザ空間３２０６はカレントマトリックス３２１０によりデバイス空間３２０７と連結される。ユーザ空間は出力デバイスによらない論理座標空間を定義するものであり、デバイス空間は出力デバイスの画素位置を表現する為、デバイス依存の座標空間となる。カレントマトリックス３２０９によりページレベルでのレイアウト調整を行う為に使用されることが多い。
【００５３】
フォントマトリックス３２０８、テキストマトリックス３２０９、カレントマトリックス３２１０はそれぞれユーザＰｏｓｔＳｃｒｉｐｔプログラムにより指定可能である。前述したように各マトリックスの用途は想定されているが、実際の運用はユーザＰｏｓｔＳｃｒｉｐｔプログラム次第であり、文字の大きさはフォントマトリックス３２０８、テキストマトリックス３２０９、カレントマトリックス３２１０の三つのマトリックスに依存する。
【００５４】
次に図１０のフローチャートを用いて小文字判定フローについて説明する。
【００５５】
図１０のフローチャートにより示される小文字判定フローは図７の文字処理部３００５において制御プログラムとして実装されるものである。また、図１０により示される小文字判定フローは印字される全ての文字に対して１文字づつ適用されるものである。小文字判定処理の出力として小文字属性もしくは（通常）文字属性が出力され、これらは図７のディスプレイリストジェネレータ３０１０へ通知されるものである。
【００５６】
最初にＳ３４０１から開始して、Ｓ３４０２で対象文字に適用されるフォントマトリックス、カレントマトリックス、テキストマトリックスの三マトリックスの組み合わせが既に判定済のマトリックスか否かを判定する。ＹｅｓであればＳ３４０７へ進み、ＮｏであればＳ３４０３へ進む。Ｓ３４０３ではフォントマトリックス、テキストマトリックス、カレントマトリックスの三つのマトリックスを連結して、グリフ座標空間とデバイス座標空間の間の関係を表すマトリックスを生成する。
【００５７】
そして、Ｓ３４０４へ進み、連結したマトリックス［Ｒａ  Ｒｂ  Ｒｃ  Ｒｄ  Ｒｘ  Ｒｙ］を用いてグリフ座標空間上の一辺の長さが１の単位正方形をデバイス座標空間へマッピングすることにより生成される矩形の面積が予め決められた閾値Ｋより大きいか否かを判定する。ＹｅｓであればＳ３４０９へ進み、Ｎｏであれば対象文字は小文字であると判別されたことになり、Ｓ３４０５で判定済マトリックステーブルに小文字として登録される。判定済マトリックステーブルはマトリックスと小文字か否かのフラグの組を複数格納するものであり、Ｓ３４０２の判定済マトリックスか否かの判定とＳ３４０７の判定済マトリックスは小文字か否かの判定に使用される。なお、実際の文字の大きさはグリフ座標空間での文字の大きさに依存するが、多くのフォントでは１０００×１０００の座標空間にグリフデザインされることが一般的である為、判定条件から除外している。
【００５８】
次にＳ３４０６で小文字属性を出力して、Ｓ３４１１へ進み終了する。Ｓ３４０４でＹｅｓの場合には、Ｓ３４０９で判定済マトリックステーブルに通常文字として登録し、続いてＳ３４１０で通常文字属性を出力し、Ｓ３４１１へ進み終了する。Ｓ３４０２で判定済マトリックスと判定された場合には、Ｓ３４０７へ進み判定済マトリックスは小文字か否かが判定される。Ｎｏの場合にはＳ３４１０へ進み、通常文字属性を出力して、Ｓ３４１１へ進み終了する。
【００５９】
Ｓ３４０７でＹｅｓの場合にはＳ３４０８へ進み、小文字属性を出力して、Ｓ３４１１へ進み終了する。なお、通常アプリケーション上で指定した同一ポイント数の文字列は、ＰｏｓｔＳｃｒｉｐｔプリンタドライバにより同一のマトリックスが設定された文字列として出力される為、小文字か否かの判定が文字によって異なってしまうことは無い。
【００６０】
なお、本発明は、プリンタを含む複数の機器（例えばホストコンピュータ、インターフェース機器、スキャナ、プリンタなど）から構成されるシステムに適用しても、プリンタ単体装置に適用してもよい。
【００６１】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００６２】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００６３】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００６４】
［第二の実施形］
第１の実施形では、連結したマトリックス［Ｒａ  Ｒｂ  Ｒｃ  Ｒｄ  Ｒｘ  Ｒｙ］を用いてグリフ座標空間上の一辺の長さが１の単位正方形をデバイス座標空間へマッピングすることにより生成される矩形の面積が予め決められた閾値Ｋより大きいか否かにより小文字の判定を行っていた。別の判定方法として、前述の生成される矩形の高さもしくは幅が所定の値以下である場合に小文字と判定する方法や、高さと幅がそれぞれ所定の値以下である場合に小文字と判定する方法がある。第一の実施系と比較して、判定精度が劣るが判定時の計算量は少なく実行負荷が少ない利点がある。これを持って第二の実施形とする。
【図面の簡単な説明】
【００６５】
【図１】画像形成システムの全体構成を示す図
【図２】画像形成装置のソフトウェアブロック図
【図３】画像形成装置のコントローラユニット内構成を示す図
【図４】画像形成装置の入出力デバイス外観図
【図５】画像形成装置の操作部外観図
【図６】画像形成装置の操作部ユニット内構成を示す図
【図７】本発明の一実施形態のデータフロー概略図
【図８】本発明の一実施形態の座標系システム図
【図９】本発明の一実施形態の座標変換式を示す図
【図１０】本発明の一実施形態のイメージ判別フローチャート
【符号の説明】
【００６６】
２００、２２０、２３０        画像形成装置
２０００、２２００、２３００  Ｃｏｎｔｒｏｌｌｅｒ  Ｕｎｉｔ
２０１１                      ＬＡＮ
２０１２、２２１２、２３１２  操作部
２０７０、２２７０、２３７０  スキャナ
２０９５、２２９５、２３９５  プリンタ
【図１】
2006251311.tif 000003
【図２】
2006251311.tif 000004
【図３】
2006251311.tif 000005
【図４】
2006251311.tif 000006
【図５】
2006251311.tif 000007
【図６】
2006251311.tif 000008
【図７】
2006251311.tif 000009
【図８】
2006251311.tif 000010
【図９】
2006251311.tif 000011
【図１０】
2006251311.tif 000012