(57)【要約】【課題】多様な描画処理を行うことのできる画像形成装置およびその制御方法を提供すること。【解決手段】プリントデータにおける描画命令で与えられる図形の曲線部分については、第１の平滑度でもって直線近似され、その図形のライン先端部の曲線形状については、第２の平滑度でもって直線近似される。ここで、第１の平滑度と第２の平滑度とはそれぞれ別個に指定されうる。さらに、その図形のライン接続部の曲線形状についても、別個に指定されうる第３の平滑度でもって直線近似される。【選択図】　図７
2004126939.tif 000002
【特許請求の範囲】
【請求項１】
ページ記述言語で記述されたプリントデータに基づいて画像を形成する画像形成装置であって、
前記プリントデータにおける描画命令で与えられる図形の曲線部分を、第１の平滑度でもって直線近似する第１の近似手段と、
前記図形のライン先端部の曲線形状を、第２の平滑度でもって直線近似する第２の近似手段と、
を有し、
前記第１および第２の平滑度はそれぞれ別個に指定されうることを特徴とする画像形成装置。
【請求項２】
前記図形のライン同士の接続部の曲線形状を、前記第１および第２の平滑度とは別個に指定されうる第３の平滑度でもって直線近似する第３の近似手段を更に有することを特徴とする請求項１に記載の画像形成装置。
【請求項３】
更に、
前記プリントデータを記述するページ記述言語の種類を判別する判別手段と、
判別したページ記述言語の種類に応じて、前記第１および第２の平滑度を設定する設定手段と、
を有することを特徴とする請求項１に記載の画像形成装置。
【請求項４】
更に、
前記プリントデータを記述するページ記述言語の種類を判別する判別手段と、
判別したページ記述言語の種類に応じて、前記第１、第２、第３の平滑度を設定する設定手段と、
を有することを特徴とする請求項２に記載の画像形成装置。
【請求項５】
ページ記述言語で記述されたプリントデータに基づいて画像を形成する画像形成装置の制御方法であって、
前記プリントデータにおける描画命令で与えられる図形の曲線部分を、第１の平滑度でもって直線近似する第１の近似ステップと、
前記図形のライン先端部の曲線形状を、前記第１の平滑度とは別個に指定されうる第２の平滑度でもって直線近似する第２の近似ステップと、
を有することを特徴とする画像形成装置の制御方法。
【請求項６】
ページ記述言語で記述されたプリントデータに基づいて画像を形成する画像形成装置を制御するためのプログラムであって、
前記プリントデータにおける描画命令で与えられる図形の曲線部分を、第１の平滑度でもって直線近似する第１の近似ステップと、
前記図形のライン先端部の曲線形状を、前記第１の平滑度とは別個に指定されうる第２の平滑度でもって直線近似する第２の近似ステップ、
を実行させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像形成装置およびその制御方法に関し、特に、ページ記述言語で記述されたプリントデータに基づいて画像形成装置における描画処理に関する。
【０００２】
【従来の技術】
ページ記述言語で記述されたプリントデータに基づいて画像を形成する画像形成装置においては、供給されたプリントデータにおける描画命令で与えられる図形に曲線部分が含まれる場合には、そのプリントデータにおいて指定されている平滑度でもって、その曲線部分の直線近似が行われる。
【０００３】
一方、上記図形の各ラインの先端部の形状を円弧状にする場合や、ライン同士の接続部の形状を丸める場合等、その曲線化のための直線近似は、上記した図形における曲線部分用の平滑度、あるいは画像形成装置にあらかじめ設定された平滑度でもって行っていた。
【０００４】
【発明が解決しようとする課題】
しかしながら、上記のように図形曲線部用の平滑度による直線近似でラインの先端部の形状やライン同士の接続部の形状を曲線化する場合には、ページ記述言語の種類によっては予期しない描画結果が得られてしまうことがあった。
【０００５】
また、画像形成装置にあらかじめ設定された平滑度による直線近似で各ラインの先端部の形状やライン同士の接続部の形状を曲線化する場合には、ページ記述言語の種類によってはその仕様で規定された出力が保証されないという問題があった。
【０００６】
本発明はこのような問題点に鑑みてなされたものであり、多様な描画処理を行うことのできる画像形成装置およびその制御方法を提供することを目的とする。
【０００７】
【課題を解決するための手段】
上記した目的を達成するために、例えば本発明の画像形成装置は以下の構成を備える。すなわち、ページ記述言語で記述されたプリントデータに基づいて画像を形成する画像形成装置であって、前記プリントデータにおける描画命令で与えられる図形の曲線部分を、第１の平滑度でもって直線近似する第１の近似手段と、前記図形のライン先端部の曲線形状を、第２の平滑度でもって直線近似する第２の近似手段とを有し、前記第１および第２の平滑度はそれぞれ別個に指定されうることを特徴とする。
【０００８】
【発明の実施の形態】
以下、図面を参照して本発明の好適な実施の形態について詳細に説明する。
【０００９】
本発明の実施の形態を適用可能な画像形成装置の一例としてレーザビームプリンタの構成例を説明する。なお、本実施形態は、レーザビームプリンタのみならず、例えばインクジェットプリンタ、ＭＦＰ（Ｍｕｌｔｉ　Ｆｕｎｃｔｉｏｎ　Ｐｒｉｎｔｅｒ）等、他の方式の画像形成装置にも適用可能である。
【００１０】
図１は、実施形態における画像形成装置の構成を示すブロック図である。
【００１１】
図１において、１０２がレーザビームプリンタ（以下、単に「プリンタ」という。）である。１０１はデータ処理装置で、例えばコンピュータであり、プリントデータの供給源、あるいはプリンタ１０２の制御装置として機能する。
【００１２】
プリンタ１０２は、図示の如く、プリンタコントローラ１０３、パネル部１０４、プリンタエンジン１０５で構成される。
【００１３】
プリンタコントローラ１０３は、データ処理装置１０１から供給されるページ記述言語（以下、「ＰＤＬ」という。）で記述されたプリントデータに基づいて、ページ毎にビットマップデータを生成し、そのビットマップデータをプリンタエンジン１０５に送出する。
【００１４】
プリンタエンジン１０５は、プリンタコントローラ１０３から供給されるビットマップデータに基づいて、感光ドラム上に潜像を形成し、いわゆる電子写真方式に従いその潜像を記録媒体上に転写・定着することにより画像を記録する。
【００１５】
パネル部１０４は、ユーザインタフェースとして使用される。ユーザは、パネル部１０４を操作することにより、所望の動作を指示することができる。また、パネル部１０４には、プリンタ１０２の処理内容や、ユーザへの警告内容が表示される。
【００１６】
図２は、プリンタ１０２の構成を示す図である。
【００１７】
同図において、２０１はプリンタ筐体で、２０２はユーザが各種指示を与えるためのスイッチ、メッセージやプリンタの設定内容等を表示するＬＥＤ表示器やＬＣＤ表示器等が配された操作パネルであり、図１に示すパネル部１０４に相当する。２０３はボード収容部であり、プリンタコントローラ１０３およびプリンタエンジン１０５の電子回路部分を構成するボードを収容する。
【００１８】
２２０は用紙（記録媒体）Ｓを保持する用紙カセットであり、不図示の仕切り板によって電気的に用紙サイズを検知する機構を有する。２２１はカセットクラッチであり、用紙カセット２２０上に載置された用紙Ｓの最上位の一枚を取り出して、取り出した用紙Ｓを不図示の駆動手段から伝達される駆動力によって給紙ローラ２２２まで搬送するカムを有する。このカムは、給紙の度に間欠的に回転し、１回転に対応して１枚の用紙Ｓを給紙する。２２３は用紙検知センサで、それぞれ用紙カセット２２０に保持されている用紙Ｓの量を検知する。
【００１９】
給紙ローラ２２２は用紙Ｓの先端部をレジストシャッタ２２４まで搬送するローラである。２２４はレジストシャッタであり、用紙Ｓを押圧することにより給紙を停止することができる。２３０は手差しトレイ、２３１は手差し給紙クラッチである。手差し給紙クラッチ２３１は用紙Ｓの先端を手差し給紙ローラ２３２まで搬送するために使用され、手差し給紙ローラ２３２は用紙Ｓの先端をレジストシャッタ２２４まで搬送するために使用される。画像記録に供する用紙Ｓは、用紙カセット２２０および手差しトレイ２３０のいずれかの給紙手段を選択して給紙される。
【００２０】
プリンタエンジン１０５は、プリンタコントローラ１０３と所定の通信プロトコルにしたがって通信を行い、プリンタコントローラ１０３からの指示にしたがって用紙カセット２２０手差しトレイ２３０の中からいずれかの給紙手段を選択し、印刷の開始指示に応じて該当する給紙手段よりレジストシャッタ２２４まで用紙Ｓを搬送する。プリンタエンジン１０５は、上記したとおり、給紙手段、潜像の形成、転写、定着等の電子写真プロセスに関する機構、排紙手段およびそれらの制御手段を含む。
【００２１】
２０４ａ、２０４ｂ、２０４ｃ、２０４ｄはそれぞれ、感光ドラム２０５ａ、２０５ｂ、２０５ｃ、２０５ｄやトナー保持部等を有する画像記録部であり、電子写真プロセスにより、用紙Ｓ上にトナー像を形成する。一方、２０６ａ、２０６ｂ、２０６ｃ、２０６ｄはレーザスキャナ部であり、対応する画像記録部にレーザビームによる画像情報を供給する。
【００２２】
画像記録部２０４ａ、２０４ｂ、２０４ｃ、２０４ｄには、用紙Ｓを搬送する用紙搬送ベルト２５０が複数の回転ローラ２５１〜２５４によって用紙搬送方向（図の下から上方向）に扁平に張設され、その最上流部においては、バイアスを印加した吸着ローラ２２５によって、用紙を用紙搬送ベルト２５０に静電吸着させる。またこのベルト搬送面に対向して４個の感光ドラム２０５ａ、２０５ｂ、２０５ｃ、２０５ｄが直線状に配設されており、画像形成手段を構成している。画像記録部２０４ａ、２０４ｂ、２０４ｃ、２０４ｄのそれぞれには、感光ドラムの周辺近傍を順次取り囲んで、帯電器、現像器が配置されている。
【００２３】
２０７ａ、２０７ｂ、２０７ｃ、２０７ｄはそれぞれ、レーザスキャナ部２０６ａ、２０６ｂ、２０６ｃ、２０６ｄにおけるレーザユニットであり、プリンタコントローラ１０３から送出される画像信号（／ＶＩＤＥＯ信号）に応じて、内蔵の半導体レーザを駆動し、レーザビームを発射する。レーザユニット２０７ａ、２０７ｂ、２０７ｃ、２０７ｄから発せられたレーザビームはそれぞれ、ポリゴンミラー（回転多面鏡）２０８ａ、２０８ｂ、２０８ｃ、２０８ｄにより走査され、感光ドラム２０５ａ、２０５ｂ、２０５ｃ、２０５ｄ上に潜像を形成する。
【００２４】
２６０は定着器で、画像記録部２０４ａ、２０４ｂ、２０４ｃ、２０４ｄにより用紙Ｓに形成されたトナー画像を記録紙Ｓに熱定着させる。２６１は搬送ローラで、用紙Ｓを排紙搬送する。２６２は排紙センサで、用紙Ｓの排紙状態を検知する。２６３は排紙ローラ兼両面印刷用搬送路切替えローラで、用紙Ｓを排紙方向へ搬送し、用紙Ｓの搬送指示が排紙の場合はそのまま排紙トレイ２６４に排紙し、搬送指示が両面搬送の場合は、用紙Ｓの後端が排紙センサ２６２を通過した直後に回転方向を逆向きに変え、スイッチバックすることにより用紙Ｓを両面印刷用搬送路２７０へ搬送する。２６５は排紙積載量検知センサで、排紙トレイ２６４上に積載された用紙Ｓの積載量を検知する。
【００２５】
２７０は両面印刷用搬送路であり、排紙ローラ兼両面印刷用搬送路切替えローラ２６３により両面印刷用に搬送された用紙Ｓは、両面搬送ローラ２７１〜２７４によって再びレジストシャッタ２２４まで搬送されて画像記録部２０４ａ、２０４ｂ、２０４ｃ、２０４ｄへの搬送指示を待つ。
【００２６】
なお、プリンタ１０２には、さらにオプションカセットや封筒フィーダ等のオプションユニットを装備することができる。
【００２７】
次に、プリンタコントローラ１０３の構成について図３を参照しながら説明する。
【００２８】
プリンタコントローラ１０３は、データ処理装置１０１から送出されたプリントデータや装置の動作を指示する設定を入力する入力バッファ（図示せず）と、データ処理装置１０１へ送出する信号や機器情報データを含む出力データを一時的に保持する出力バッファ（図示せず）とが設けられているホストインタフェース（Ｉ／Ｆ）部３０２を有し、ホストＩ／Ｆ部３０２はデータ処理装置１０１との間でやりとりされる信号や通信パケットの入出力部を構成するとともに、データ処理装置１０１との間の通信制御を行う。
【００２９】
ホストＩ／Ｆ部３０２を介して入力されるＰＤＬで記述されたプリントデータは、画像データ発生部３０３に与えられる。画像データ発生部３０３は、入力されたプリントデータを解析（例えばＰＤＬ解析処理）し、その解析結果から中間言語である描画オブジェクトを生成し、更にプリンタエンジン１０５が処理可能なビットマップデータを生成する。具体的には、プリントデータの解析とその解析によるオブジェクト情報の作成を行うとともに、そのオブジェクト情報の作成と並行してラスタライズ処理を行う。このラスタライズ処理では、プリントデータに含まれる表示色ＲＧＢ（加法混色）からプリンタエンジンが処理可能なＹＭＣＫ（減法混色）への変換、プリントデータに含まれる文字コードから予め格納されているビットパターン、アウトラインフォントなどのフォントデータへの変換などを行い、ページ単位あるいはバンド単位でビットマップデータを作成し、このビットマップデータに対しディザパターンを用いる疑似階調処理を施し、プリンタエンジンにおいて印刷処理が可能なビットマップデータを生成する。
【００３０】
この作成されたビットマップデータは、画像メモリ３０５に格納される。画像メモリ３０５に格納されているビットマップデータの読み出しはＤＭＡ制御部３０８で制御され、このＤＭＡ制御部３０８による画像メモリ３０５からのビットマップデータの読み出しに対する制御はＣＰＵ３０９からの指示に基づき行われる。
【００３１】
画像メモリ３０５から読み出されたビットマップデータは、エンジンＩ／Ｆ部３０６を介してビデオ信号としてエンジン１０５に転送される。エンジンＩ／Ｆ部３０６には、エンジン１０５へ転送するビデオ信号を一時的に保持する出力バッファ（図示せず）と、エンジン１０５から送出された信号を一時的に保持する入力バッファ（図示せず）とが設けられ、エンジンＩ／Ｆ部３０６は、エンジン１０５との間でやりとりされる信号の入出力部を構成するとともに、エンジン１０５との間の通信制御を行う。
【００３２】
パネル部１０４（図１を参照）から操作入力によって出されたモード設定に関する指示などは、パネルＩ／Ｆ部３０１を介して入力され、パネルＩ／Ｆ部３０１はパネル部１０４とＣＰＵ３０９との間のインタフェースを構成する（操作入力によって出されるモード設定などのプリンタに対する指示はデータ処理装置１０１と双方向の通信を行うホストＩ／Ｆ部３０２を介しても指示可能である。）。
【００３３】
ＣＰＵ３０９は、パネル部１０４もしくはデータ処理装置１０１から指示されたモードに応じて上述の各ブロックに対する制御を行い、この制御はＲＯＭ３０４に格納されている制御プログラムに基づき実行される。このＲＯＭ３０４に格納されている制御プログラムはシステムクロックによってタスクと称されるロードモジュール単位に時分割制御を行うためのＯＳ（オペレーティングシステム）と、このＯＳによって機能単位に実行制御される複数のロードモジュールとから構成される。このロードモジュールを含む制御プログラムは必要に応じてＥＥＰＲＯＭ（不揮発性メモリ）３１０に格納される。
【００３４】
ＣＰＵ３０９による演算処理の作業領域としては、ＲＡＭ３０７が使用される。上述のＣＰＵ３０９を含む各ブロックはシステムバス３２０に接続されている。システムバス３２０は、アドレスバスとシステムバスとから構成される。
【００３５】
図４は、プリンタコントローラ１０３における入力データの処理経路を機能ブロック別に示す図である。
【００３６】
データ処理装置１０１からホストＩ／Ｆ部３０２を介して入力されたプリントデータは画像データ発生部３０３に入力される。この画像データ発生部３０３に入力されたプリントデータは、ＰＤＬ解析部（３０３ａ）によりコマンド解析され、次に描画オブジェクト生成部（３０３ｂ）において描画オブジェクト（中間言語）として生成されＲＡＭ３０７上の作業メモリに一時的に記録される。
【００３７】
そしてＲＡＭ３０７上の作業メモリから描画メモリを随時読み出しラスタライズ処理を行い（３０３ｃ）、最終的に記録媒体に記録される画像データをビットマップイメージに展開し画像メモリ３０５に格納、エンジンＩ／Ｆ部３０６に対して出力を行い記録媒体への記録が行われる。
【００３８】
さて、ページ記述言語で記述されたプリントデータに基づいて画像を形成する画像形成装置においては、従来より、供給されたプリントデータにおける描画命令で与えられる図形に曲線部分が含まれる場合には、そのプリントデータにおいて指定されている平滑度でもって、その曲線部分の直線近似が行われる。図１０は、このような直線近似のようすを示す図である。描画命令で与えられるパス図形の曲線部分は、図示のような近似曲線で表現される。また、ここでいう平滑度とは、図示のように、理想曲線と近似曲線との距離を表すものである。
【００３９】
そして一方、従来の画像形成装置においては、先に説明したとおり、上記図形の各ラインの先端部の形状を円弧状にする場合や、ライン同士の接続部の形状を丸める場合のその曲線部の直線近似は、上記した図形の曲線部分の直線近似用の平滑度、あるいは画像形成装置にあらかじめ設定された平滑度でもって行われていた。
【００４０】
実施形態における図形描画処理を説明する前に、上記のような従来の図形描画処理について詳しく説明しておく。
【００４１】
図５は、従来の図形描画処理を示すフローチャートである。
【００４２】
まず、ホストＩ／Ｆを介して入力されＰＤＬ解析部により解析されたプリントデータが図形描画コマンドであった場合、パス図形における曲線部分の直線近似用の平滑度（例えばその図形描画コマンドに含まれる）を参照し（ステップＳ５０１）、与えられた平滑度でもってパス図形の曲線部分の直線近似を行う（ステップＳ５０２）。
【００４３】
次に、図形描画コマンドの詳細がライン描画コマンドであるか否かを判断し（ステップＳ５０３）、ライン描画コマンドでない場合（例えばフィル描画コマンドであった場合）、ステップＳ５０２で生成された直線データをビットマップデータ生成処理（ステップＳ５０６）を行い処理が終了する。ステップＳ５０６では具体的には、ステップＳ５０２で生成された近似直線で囲まれた閉領域と印刷面をピクセル単位に区切った格子上の領域との重なりの有無を判定し、閉領域と重なるピクセルは黒、重ならないピクセルは白という判断を行い、プリンタエンジンへの出力データとしてのビットマップデータが生成される。
【００４４】
一方、ステップＳ５０３で、ライン描画コマンドであると判定された場合には、ライン生成処理に必要な設定情報（例えば線幅、破線形状、先端形状、線接続形状など）を参照し（ステップＳ５０４）、その後、アウトライン生成処理が行われる（ステップＳ５０５）。このとき、アウトライン生成処理においては線幅、先端形状、線接続形状などの設定情報に従いラインを形成する閉領域を決定しているが、各ラインの先端形状やライン同士の接続部の形状（線接続形状）を生成する際にはステップＳ５０１で参照されたパス図形における曲線部分用の平滑度が使用される。そうして、ビットマップデータ生成処理を行い（ステップＳ５０６）処理が終了する。
【００４５】
以上が従来の図形描画処理であるが、このように従来の画像形成装置では、先に説明したとおり、上記のようにパス図形における曲線部分用の平滑度による直線近似で各ラインの先端形状や線接続形状を曲線化する場合には、ページ記述言語の種類によっては予期しない描画結果が得られてしまうことがあった。また、画像形成装置にあらかじめ設定された平滑度による直線近似で各ラインの先端部の形状やライン同士の接続部の形状を曲線化する場合には、ページ記述言語の種類によってはその仕様で規定された出力が保証されないという問題があった。
【００４６】
本発明はこの点を改良したものであり、以下、実施形態における図形描画処理を詳しく説明する。
【００４７】
図６は、実施形態における図形描画処理を示すフローチャートである。このフローチャートに対応するプログラムはＲＯＭ３０４に制御プログラムとして格納され、ＲＡＭ３０７にロードされてＣＰＵ３０９によって実行されるものである。
【００４８】
まず、ホストＩ／Ｆ３０２を介して入力されＰＤＬ解析部３０３ａにより解析されたプリントデータが図形描画コマンドであった場合、パス図形における曲線部分用の第１の平滑度（例えばその図形描画コマンドに含まれる）を参照し（ステップＳ６０１）、与えられた第１の平滑度でもってパス図形における曲線部分の直線近似を行う（ステップＳ６０２）。
【００４９】
次に、図形描画コマンドの詳細がライン描画コマンドであるか否かを判断し（ステップＳ６０３）、ライン描画コマンドでない場合（例えばフィル描画コマンドであった場合）、ステップＳ６０２で生成された近似直線についてのビットマップデータ生成を行い（ステップＳ６０８）、図形描画処理が終了する。ステップＳ６０８では具体的には、ステップＳ６０２で生成された近似直線で囲まれた閉領域と印刷面をピクセル単位に区切った格子上の領域との重なりの有無を判定し、閉領域と重なるピクセルは黒、重ならないピクセルは白という判断を行い、プリンタエンジンへの出力データとしてのビットマップデータが生成される。
【００５０】
一方、ステップＳ６０３で、ライン描画コマンドであると判定された場合には、ライン生成処理に必要な設定情報（例えば線幅、破線形状、先端形状、線接続形状など）を参照し（ステップＳ６０４）、その後、先端形状として曲線の図形（円など）が指定されているか否かを判断する（ステップＳ６０５）。ここで、先端形状に曲線が指定されていない場合はステップＳ６０４で参照した設定情報に従いアウトライン生成処理（ステップＳ６０７）した後、ビットマップデータ生成処理（ステップＳ６０８）を行い図形描画処理が終了する。
【００５１】
一方、ステップＳ６０５で、先端形状として曲線を含む図形が指定されていた場合、その先端形状の直線近似用の第２の平滑度を参照する（ステップＳ６０６）。この先端形状用の第２の平滑度は、例えばライン描画コマンドに含まれているものであり、上記したパス図形における曲線部分用の第１の平滑度とは別個に指定されうる。
【００５２】
その後、アウトライン生成処理を行う（ステップＳ６０７）。このアウトライン生成処理においては、線幅、先端形状、接続点形状などの設定情報に従いラインを形成する閉領域を決定しているが、先端形状は、ステップＳ６０６で参照した先端形状用の第２の平滑度による直線近似で曲線化される。そして、その後ビットマップデータ生成処理を行い（ステップＳ６０８）、処理が終了する。
【００５３】
以上の処理は、パス図形における曲線部分用の第１の平滑度とは別個に指定されうる、先端形状用の第２の平滑度による直線近似でラインの先端形状を曲線化するようにしたが、さらに、線接続形状用の第３の平滑度を別個に指定し、それによる直線近似で線接続形状を曲線化するようにしてもよい。
【００５４】
図７は、さらに線接続形状用の第３の平滑度を別個に指定し、それによる直線近似で線接続形状を曲線化するようにした図形描画処理を示すフローチャートである。
【００５５】
このフローチャートに示した処理内容は上述の図６のフローチャートに示した処理内容とほぼ同様であり、図７のフローチャートにおいては、図６のフローチャートにおける処理ステップと同様の処理ステップには共通の参照番号を付してある。相違する点は、図７の処理では、ステップＳ６０６とＳ６０７の間に、線接続形状として曲線の図形（円など）が指定されているか否かを判断するステップＳ７０１、ステップＳ７０１の判断結果がｙｅｓの場合に、線接続形状直線近似用の第３の平滑度を参照するステップＳ７０２が追加されている点である。この第３の平滑度は、例えばライン描画コマンドに含まれているものであり、上記したパス図形における曲線部分用の第１の平滑度、ラインの先端形状用の第２の平滑度とはそれぞれ別個に指定されうる。
【００５６】
ステップＳ７０２の第３の平滑度の参照が行われた場合には、次のステップＳ６０７では、ライン同士の接続部における形状は第３の平滑度による直線近似で曲線化されることになる。
【００５７】
図９は、以上説明した図７のフローチャートに従う図形描画処理の処理結果の一例を示す図である。図示のように、パス図形のラインは、その先端形状が第２の平滑度による直線近似で曲線化され、線接続部の形状が第３の平滑度による直線近似で曲線化される。
【００５８】
以上説明したように、本実施形態によれば、パス図形のライン先端部の曲線形状は、パス図形の曲線部用の第１の平滑度とは別個に指定されうるライン先端部用の第２の平滑度でもって直線近似し、さらに、上記第１および第２の平滑度とは別個に指定されうる第３の平滑度でもってライン同士の接続部の曲線形状を直線近似するようにした。これによって多様な描画処理を実現でき、予期せぬ描画結果が得られることがなくなる。そして、ページ記述言語の仕様に規定された出力を保証することも可能になる。
【００５９】
ところで、上述のような第２の平滑度、第３の平滑度はプリントデータにおける描画コマンドに含まれるものであるから、これらの第２および第３の平滑度を指定することができるかどうかはページ記述言語（ＰＤＬ）の仕様に依存する。そこで、使用するＰＤＬの種類に応じて、ライン先端や接続部の曲線形状の直線近似の平滑度を設定するようにしてもよい。
【００６０】
例えば、図１１に示すような構造の平滑度利用一覧を例えばろＭ３０４に記憶しておく。図１１では、ＰＤＬの種類Ａ，Ｂ，Ｃに対して、パス図形処理用の平滑度（第１の平滑度）、先端形状直線近似用平滑度（第２の平滑度）、線接続形状直線近似用平滑度（第３の近似度）のそれぞれについて、設定可否情報（設定可は○、設定不可は×で示される）、設定可であるときの設定値、ならびに初期値が記述されている。この図１１の例によれば、プリンタ記述言語Ａの場合には、第１，第２，第３の平滑度のいずれも設定可である。プリンタ記述言語Ｂでは、第１の平滑度しか設定することができない。また、プリンタ記述言語Ｃの場合には、第３の平滑度は設定できないことが理解されよう。
【００６１】
そして、図形描画処理において、ＰＤＬの種類を判別し、上記の平滑度利用一覧を参照して、そのＰＤＬの種類に対応する平滑度を求める。
【００６２】
図８は、使用するＰＤＬの種類に応じて、ライン先端や接続部の曲線形状の直線近似の平滑度を設定する図形描画処理の一例を示すフローチャートである。
【００６３】
まず、ホストＩ／Ｆ３０２を介して入力されＰＤＬ解析部３０３ａにより解析されたプリントデータが図形描画コマンドであった場合、パス図形における曲線部分用の第１の平滑度（例えばその図形描画コマンドに含まれる）を参照し（ステップＳ８０１）、与えられた第１の平滑度でもってパス図形における曲線部分の直線化近似を行う（ステップＳ８０２）。
【００６４】
次に、図形描画コマンドの詳細がライン描画コマンドであるか否かを判断し（ステップＳ８０３）、ライン描画コマンドでない場合（例えばフィル描画コマンドであった場合）、ステップＳ８０２で生成された近似直線についてのビットマップデータ生成を行い（ステップＳ８１６）、図形描画処理が終了する。ステップＳ８１６では具体的には、ステップＳ８０２で生成された近似直線で囲まれた閉領域と印刷面をピクセル単位に区切った格子上の領域との重なりの有無を判定し、閉領域と重なるピクセルは黒、重ならないピクセルは白という判断を行い、プリンタエンジンへの出力データとしてのビットマップデータが生成される。
【００６５】
一方、ステップＳ８０３で、ライン描画コマンドであると判定された場合には、ライン生成処理に必要な設定情報（例えば線幅、破線形状、先端形状、線接続形状など）を参照し（ステップＳ８０４）、その後、図形描画を実行するＰＤＬの種類を確認する（ステップＳ８０５）。ＰＤＬの種類は例えば、与えられたプリントデータから自動的に判別することが可能である。次に、図１１に示したような平滑度利用一覧を参照する（ステップＳ８０６）。
【００６６】
そして、先端形状として曲線の図形（円など）が指定されているか否かを判断する（ステップＳ８０７）。ここで、先端形状として曲線が指定されていない場合は、ステップＳ８１０に進み、平滑度利用一覧から、ステップＳ８０５で確認したＰＤＬの種類に対応する先端形状直線近似用平滑度（第２の平滑度）の初期値を参照し、ステップＳ８１１に進む。
【００６７】
一方、ステップＳ８０７で、先端形状として曲線を含む図形が指定されていた場合はステップＳ８０８に進み、平滑度利用一覧から、ステップＳ８０５で確認したＰＤＬの種類に対応する先端形状直線近似用平滑度（第２の平滑度）を設定可能かどうかを判断する。設定可能であれば対応する設定値を参照し（ステップＳ８０９）、設定不可であれば対応する初期値が参照される（ステップＳ８１０）。
【００６８】
次に、線接続形状として曲線の図形（円など）が指定されているか否かを判断する（ステップＳ８１１）。ここで、線接続形状に曲線が指定されていない場合は、ステップＳ８１４に進み、平滑度利用一覧から、ステップＳ８０５で確認したＰＤＬの種類に対応する線接続形状直線近似用平滑度（第３の平滑度）の初期値を参照し、ステップＳ８１５に進む。
【００６９】
一方、ステップＳ８１１で、線接続形状として曲線を含む図形が指定されていた場合はステップＳ８１２に進み、平滑度利用一覧から、ステップＳ８０５で確認したＰＤＬの種類に対応する線接続形状直線近似用平滑度（第３の平滑度）を設定可能かどうかを判断する。設定可能であれば対応する設定値を参照し（ステップＳ８１３）、設定不可であれば対応する初期値が参照される（ステップＳ８１４）。
【００７０】
次に、アウトライン生成処理を行う（ステップＳ８１５）。このアウトライン生成処理においては線幅、先端形状、線接続形状などの設定情報に従いラインを形成する閉領域を決定しているが、各ラインの先端形状や線接続形状を生成する際にはステップＳ８０９、Ｓ８１０、Ｓ８１３、Ｓ８１４のいづれかで参照した平滑度が使用される。そうして、ビットマップデータ生成処理（ステップＳ８１６）を行い処理が終了する。
【００７１】
以上の処理によれば、使用するＰＤＬの種類に応じて、ライン先端や接続部の曲線形状の直線近似の平滑度を設定することができる。
【００７２】
（他の実施形態）
以上、本発明の実施形態を詳述したが、本発明は、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用してもよい。
【００７３】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（図６〜８のいずれかに示すフローチャートに対応したプログラム）を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータがその供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。その場合、プログラムの機能を有していれば、その形態はプログラムである必要はない。
【００７４】
従って、本発明の機能処理をコンピュータで実現するために、そのコンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明の特許請求の範囲には、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００７５】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【００７６】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。
【００７７】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、そのホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明のクレームに含まれるものである。
【００７８】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００７９】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００８０】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
【００８１】
【発明の効果】
本発明によれば、多様な描画処理を行うことのできる画像形成装置およびその制御方法を提供することを目的とする。ができる。
【図面の簡単な説明】
【図１】実施形態における画像形成装置の構成を示すブロック図である。
【図２】実施形態におけるプリンタの構成を示す図である。
【図３】実施形態におけるプリンタコントローラの構成を示す図である。
【図４】プリンタコントローラにおける入力データの処理経路を機能ブロック別に示した図である。
【図５】従来の図形描画処理を示すフローチャートである。
【図６】実施形態における図形描画処理を示すフローチャートである。
【図７】実施形態における別の態様の図形描画処理を示すフローチャートである。
【図８】実施形態における別の態様の図形描画処理を示すフローチャートである。
【図９】実施形態における図形描画処理の処理結果の一例を示す図である。
【図１０】曲線形状の直線近似のようすを示す図である。
【図１１】平滑度利用一覧の構造例を示す図である。
【図１】
2004126939.tif 000003
【図２】
2004126939.tif 000004
【図３】
2004126939.tif 000005
【図４】
2004126939.tif 000006
【図５】
2004126939.tif 000007
【図６】
2004126939.tif 000008
【図７】
2004126939.tif 000009
【図８】
2004126939.tif 000010
【図９】
2004126939.tif 000011
【図１０】
2004126939.tif 000012
【図１１】
2004126939.tif 000013