(57)【要約】【課題】パスの点列のメモリへの記憶方法において、曲線を構成する場合にのみ点を記憶するメモリの管理番号を覚えておくことでメモリ使用の効率化と、メモリアクセス頻度を低下することにより処理速度の効率化を計る。【解決手段】ＰＤＬより入力されたパスの点列及び、前記パスの点列を直線化後に生成される直線のみで表されるパスの点列をメモリに記憶する際に、ベジェ３次曲線を構成する座標点とその管理情報のみを記憶し、直線情報については点の座標点のみを記憶することでメモリを効率的に使用可能とする。更に、メモリの効率的な使用によりメモリへのアクセス頻度を低下することが可能となりパスコマンド処理の効率化を計ることが可能とする。【選択図】　　　　図１
2004034583.tif 000002
【特許請求の範囲】
【請求項１】
複数のページ記述言語を有する印刷装置において、前記複数のページ記述言語から最適なページ記述言語を選択する手段と、前記選択手段の結果に基づき選択されたページ記述言語を使用し入力されたデータ中のコマンドを解析するコマンド解析手段とを有し、更に前記コマンド解析手段により解析されたコマンドから描画処理に利用される描画オブジェクトを生成する描画オブジェクト生成手段と、前記描画オブジェクトからビットマップイメージとして保持されるイメージデータを生成するイメージデータ生成手段を有し、更にイメージデータを記録媒体に形成する画像形成手段を有する画像処理装置であり、前記コマンド解析手段中の領域の塗り潰し・輪郭線の描画・クリッピング領域の指定を行う任意の直線や曲線で指定されるパスコマンド処理において、ページ記述言語から入力された直線及び曲線を含むパスの点列を記憶装置に記憶する第１の記憶手段を有し、前記第１の記憶手段により記憶されたパスの点列をページ記述言語よりコマンドによって指定された描画条件に従い直線化する直線化手段を有し、前記直線化手段において生成された点のみを記憶装置に保持する第２の記憶手段を有することでメモリ使用効率を向上する事を特徴とする印刷装置。
【請求項２】
前記請求項１記載の第１の記憶手段において記憶されるパスの点列情報に対し、点列情報を管理する管理番号を付与する点列情報管理手段を有し、点列情報としてページ記述言語より入力された点と曲線情報に付与された管理番号及び点と曲線情報の総数を第１の記憶手段によって記憶する手段を有する事で、メモリ使用効率を向上する事を特徴とする印刷装置。
【請求項３】
プリンタコマンド解析からイメージデータ生成に至る処理において印刷装置内部で使用可能なメモリをオーバーしたか否かを判別する事が可能であるメモリオーバー判別手段を有することを特徴とする請求項１〜２記載の印刷装置。
【請求項４】
前記メモリオーバー判別手段において、メモリの空き領域が一定の値を下回った場合にメモリオーバーが発生する事を予測するメモリオーバー予測手段を有する事を特徴とする請求項３記載の印刷装置。
【請求項５】
パスコマンド処理実行時、前記メモリオーバー判別手段においてメモリオーバーが発生、あるいはメモリオーバー予測手段においてメモリオーバーが発生すると予測された場合、請求項１記載の直線化手段により生成された点のみを記憶する第２の記憶手段によりメモリオーバーの発生を抑制することで描画処理を続行可能とする事を特徴とする印刷装置。
【請求項６】
パスコマンド処理実行時、前記メモリオーバー判別手段においてメモリオーバーが発生、あるいはメモリオーバー予測手段においてメモリオーバーが発生すると予測された場合、請求項２記載の点列情報管理手段により生成された点と曲線情報のみを記憶する第１の記憶手段によりメモリオーバーの発生を抑制することで描画処理を続行可能とする事を特徴とする印刷装置。
【請求項７】
パスコマンド処理において描画オブジェクトを生成中にメモリオーバーが発生した場合、描画オブジェクト生成が完了していなくても生成済みの描画オブジェクトがあった場合は請求項１記載のイメージデータ生成手段に対し描画オブジェクトを送付しメモリの空き領域を確保する手段を有する事を特徴とする印刷装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ホストコンピュータあるいは他のデバイスに接続されたプリンタコントローラにより制御される印刷装置などの出力装置に関するものであり、特にメモリ消費量を削減する手段を有する印刷装置において、ＰＤＬからの指示によって生成され印刷装置内部にデータとして一時記憶装置に保持する描画オブジェクト生成におけるパスコマンド処理を実行する際の直線化処理後の点列情報の記憶方法を効率化、或いはＰＤＬから入力された曲線情報を含む点列情報に対し点列情報管理手段を設ける事により記憶方法を効率化する事で、メモリの効率的な使用を実現可能とする印刷装置に関するものである。
【０００２】
【従来の技術】
従来の印刷装置および印刷システムでは、ＰＤＬより入力されたパスコマンド処理において直線化処理終了後、或いは直線化処理直前まで得られた点列情報を全て記憶装置に保持しており、メモリ使用において冗長となっていた。
【０００３】
また、パスコマンド処理におけるメモリ使用効率が低下する事により、メモリ搭載量の少ない印刷装置、或いはページ中に複雑なパスコマンド処理が行われる場合、描画オブジェクト生成処理においてメモリオーバーが発生する事があった。
【０００４】
また、パスコマンド処理における直線化処理において記憶装置に保持された全ての点列を参照する、或いは描画オブジェクト生成処理において記憶装置に保持されている直線化後の点列を全て参照する必要があった。
【０００５】
以上のように、パスコマンド処理における記憶装置への点列保持の方法が冗長である事により、メモリ不足の発生、或いは記憶装置に保持された点列情報の参照において無駄な処理が発生していた。
【０００６】
【発明が解決しようとする課題】
上記従来例では、ＰＤＬより入力されたパスコマンド処理において直線化処理終了後、或いは直線化処理直前まで得られた点列情報を全て記憶装置に保持しており、メモリ使用において冗長となり、メモリ使用効率を低下させていた。
【０００７】
更に、パスコマンド処理におけるメモリ使用効率が低下する事により、メモリ搭載量の少ない印刷装置、或いはページ中に複雑なパスコマンド処理が行われる場合、描画オブジェクト生成処理においてメモリオーバーが発生し、描画処理を中断、更にエラー処理時に処理を継続した場合エラー発生時に処理していた描画オブジェクトに関しては印字不正となる事があった。
【０００８】
更に、ＰＤＬより入力され記憶装置に保持された全ての点列を参照し直線化処理を行う事、或いは描画オブジェクト生成処理実行時、前記直線化処理により生成され記憶装置に保持されている直線化後の点列情報を全て参照する事により処理スピードを低下させる一因となる事があった。
【０００９】
すなわち、パスコマンド処理における記憶装置への点列保持の方法が冗長であった為、メモリ不足が発生、或いは処理スピードが低下するなどの問題が発生していた。
【００１０】
本発明は、上記問題点に鑑みてなされたものであり、パスコマンド処理における直線化処理後のデータ記憶の形態としてパスを構成する点の座標点のみを記憶する事でメモリ使用の効率化を計り、更にはＰＤＬより入力されたパスコマンドを直線化処理或いは描画オブジェクト生成処理する際の記憶装置に保持されている点列情報へのアクセス頻度を下げる事で効率的な描画オブジェクト生成処理を可能とする印刷装置及び印刷システムを提供することを目的とするものである。
【００１１】
【課題を解決するための手段】
上記目的を達成する本発明の印刷装置は以下に示す構成を備える。
【００１２】
本発明にかかる第１の発明は、複数のページ記述言語を有する印刷装置において、前記複数のページ記述言語から最適なページ記述言語を選択する手段と、前記選択手段の結果に基づき選択されたページ記述言語を使用し入力されたデータ中のコマンドを解析するコマンド解析手段と、更に前記コマンド解析手段により解析されたコマンドから描画処理に利用される描画オブジェクトを生成する描画オブジェクト生成手段と、前記描画オブジェクトからビットマップイメージとして保持されるイメージデータを生成するイメージデータ生成手段と、更にイメージデータを記録媒体に形成する画像形成手段を有する画像処理装置であり、前記コマンド解析手段中の領域の塗り潰し・輪郭線の描画・クリッピング領域の指定を行う任意の直線や曲線で指定されるパスコマンド処理において、ページ記述言語から入力された直線及び曲線を含むパスの点列を記憶装置に記憶する第１の記憶手段と、前記第１の記憶手段により記憶されたパスの点列をページ記述言語よりコマンドによって指定された描画条件に従い直線化する直線化手段と、前記直線化手段において生成された点のみを記憶装置に保持する第２の記憶手段を設けたものである。
【００１３】
本発明にかかる第２の発明は、前記第１の記憶手段において記憶されるパスの点列情報に対し、点列情報を管理する管理番号を付与する点列情報管理手段と、点列情報としてページ記述言語より入力された点と曲線情報に付与された管理番号及び点と曲線情報の総数を第１の記憶手段によって記憶する手段を設けたものである。
【００１４】
本発明にかかる第３の発明は、プリンタコマンド解析からイメージデータ生成に至る処理において印刷装置内部で使用可能なメモリをオーバーしたか否かを判別する事が可能であるメモリオーバー判別手段を設けたものである。
【００１５】
本発明にかかる第４の発明は、前記メモリオーバー判別手段において、メモリの空き領域が一定の値を下回った場合にメモリオーバーが発生する事を予測するメモリオーバー予測手段を設けたものである。
【００１６】
本発明にかかる第５の発明は、パスコマンド処理実行時、前記メモリオーバー判別手段においてメモリオーバーが発生、あるいはメモリオーバー予測手段においてメモリオーバーが発生すると予測された場合、直線化手段により生成された点のみを記憶する第２の記憶手段によりメモリオーバーの発生を抑制することで描画処理を続行可能とする機能を設けたものである。
【００１７】
本発明にかかる第６の発明は、パスコマンド処理実行時、前記メモリオーバー判別手段においてメモリオーバーが発生、あるいはメモリオーバー予測手段においてメモリオーバーが発生すると予測された場合、点列情報管理手段により生成された点と曲線情報のみを記憶する第１の記憶手段によりメモリオーバーの発生を抑制することで描画処理を続行可能とする機能を設けたものである。
【００１８】
本発明にかかる第７の発明は、パスコマンド処理において描画オブジェクトを生成中にメモリオーバーが発生した場合、描画オブジェクト生成が完了していなくても生成済みの描画オブジェクトがあればイメージデータ生成手段に対し描画オブジェクトを送付しメモリの空き領域を確保する手段を設けたものである。
【００１９】
（作用）
かかる構成において、パスコマンド処理における直線化処理後のデータ記憶の形態としてパスを構成する輪郭線を表す点の座標点のみを記憶する事でメモリ使用の効率化を計り、更にはＰＤＬより入力されたパスコマンドを記憶装置に記憶する際に曲線描画に利用される点情報管理番号を記憶して置くことで直線化処理或いは描画オブジェクト生成処理する際の記憶装置に保持されている点列情報へのアクセス頻度を下げる事で効率的な描画オブジェクト生成処理を実現する事が可能となる。
【００２０】
【発明の実施の形態】
まず、本発明の実施の形態を適用可能な出力装置の一例としてレーザビームプリンタの構成例を説明する。なお、本実施の形態は、レーザビームプリンタのみならず、例えばインクジェットプリンタ、ＭＦＰ（コピー・ファックス・プリンタ等の機能を複数備えたマルチファンクションプリンタ）等の他の方式の出力装置にも適用可能である。
【００２１】
図１は本発明の印刷装置の実施の第一形態であるレーザビームプリンタの構成を示すブロック図、図２は第１図のレーザビームプリンタの機構を摸式的に示す図、図３は図１のレーザビームプリンタに搭載されているプリンタコントローラの構成を示すブロック図である。
【００２２】
カラー出力可能なレーザビームプリンタ１０２は、図１に示すように、ホストコンピュータなどの外部機器１０１から所定のページ記述言語方式のカラー多値情報を含む情報（以下、印字データという）が入力され、その印刷データを解析することによってイメージデータを生成するプリンタコントローラ１０３と、プリンタコントローラ１０３によって生成されたイメージデータが示す画像を用紙上に印刷するプリンタエンジン（以下、エンジンという）１０５と、ユーザとのインターフェースを司り、レーザビームプリンタ１０２に対する所望の動作を指示するための入力操作を行なうためのパネル部１０４とから構成される。
【００２３】
次に、本実施の形態のレーザビームプリンタの構成について図２を参照しながら説明する。
【００２４】
レーザビームプリンタ１０２は、図２に示すように、匡体２０１を備え、匡体２０１には、エンジン１０５を構成するための各機構と、その各機構による各印字プロセス処理（例えば、給紙処理など）に関する制御を行なうエンジン制御部及びプリンタコントローラ１０３（図１に示す）を収納する制御ボード収納部２０３とが内蔵されている。
【００２５】
エンジン１０５を構成するための各機構としては、レーザ光の操作による感光ドラム上への静電潜像形成、その静電潜像の顕像化、その顕像の印刷用紙への転写を行なうための光学処理機構、印刷用紙に転写されたトナー像を定着させるための定着処理機構、印刷用紙の給紙処理機構、印刷用紙の搬送処理機構などが設けられている。
【００２６】
光学処理機構は、半導体レーザ（図示せず）から発射されるレーザ光をプリンタコントローラ１０３から供給されたイメージデータに応じてオン、オフ駆動するレーザドライバ２０６を有し、半導体レーザから発射されたレーザ光は回転多面鏡２０７により走査方向に振られる。その主走査方向振られたレーザ光は反射ミラー２０８を介して感光ドラム２０５に導かれ、感光ドラム２０５上を主走査方向に露光する。レーザ光による走査露光によって感光ドラム２０５上には静電潜像が形成され、その潜像は現像器２２０から供給されるトナーによってトナー像に顕像化される。このトナーには、Ｙ（イエロー）、Ｍ（マゼンダ）、Ｃ（シアン）、Ｋ（ブラック）の各トナーが用いられている。感光ドラム２０５上のトナー像は給紙処理機構によって副走査方向に同期して休止される印刷用紙に転写される。
【００２７】
感光ドラム２０５および現像器２２９は着脱可能なカートリッジ２０４に収容されている。反射ミラー２０８は半透過型ミラーからなり、その裏面側にはビームディテクタ２０９が配置されている。ビームディテクタ２０９はレーザ光を検出し、その検出信号はプリンタコントローラ１０３に与えられる。プリンタコントローラ１０３ビームディテクタ２０９の検出信号に基づき主走査方向への露光タイミングを決定する水平同期信号を生成し、その水平同期信号はプリンタコントローラ１０３に出力される。
【００２８】
定着処理機構は、印刷用紙に転写されたトナー像を熱圧によって定着させるための定着器２１６を有し、定着器２１６には、トナー像を加熱するためのヒータが設けられている。ヒータは、所定の定着温度が得られるようにエンジン制御部１０６で制御される。
【００２９】
印刷用紙の給紙機構は、印刷用紙を収容するカセット２１０と手差し用トレイ２１９とを有し、カセット２１０の印刷用紙または手差しトレイ２１９の印刷用紙を選択的に給紙するように構成されている。カセット２１０は匡体２０１内に装着され、カセット２１０には、仕切り板（図示せず）の移動位置に応じて印刷用紙のサイズを電気的に検知するサイズ検知機構が設けられている。カセット２１０からはその最上の印刷用紙から１枚単位でカセット給紙クラッチ２１１の回転駆動によって給紙ローラ２１２まで搬送される。カセット給紙クラッチ２１１は、給紙毎に駆動手段（図示せず）によって間欠的に回転駆動されるカムからなり、そのカムが１回転する毎に１枚の印刷用紙が給紙される。
【００３０】
給紙ローラ２１２は印刷用紙をその先端部がレジストシャッタ２１４に対応する位置まで搬送し、レジストシャッタ２１４は、給紙された印刷用紙の押圧及びその解除によって、その印刷用紙の給紙停止及びその解除を行ない、そのレジストシャッタ２１４の動作はレーザ光の副走査に同期するように制御される。
【００３１】
これに対し、手差しトレイ２１９は匡体２０１に設けられ、ユーザによって手差しトレイ２１９に搭載された印刷用紙は給紙ローラ２１５でレジストシャッタ２１４に向けて給紙される。
【００３２】
印刷用紙の搬送処理機構は、レジストシャッタ２１４による押圧が解除された印刷用紙を感光ドラム２０５に向けて搬送する搬送ローラ２１３と、定着器２１６から排出された印刷用紙を匡体２０１上部に形成された排紙トレイまで導くための各搬送ローラ２１７、２１８と、各搬送ローラ２１３、２１７、２１８を駆動するための駆動手段（図示せず）とを有する。
【００３３】
匡体２０１には、パネル部１０４を構成するための操作パネル２０２が取り付けられている。操作パネル２０２には、指示入力操作のためのスイッチ群、情報表示のためのＬＥＤ表示器、ＬＣＤ表示器が設けられている。
【００３４】
次に、プリンタコントローラ１０３の構成について図３を参照しながら説明する。
【００３５】
プリンタコントローラ１０３は、外部機器１０１から送出された印刷データや装置の動作を指示する設定を入力する入力バッファ（図示せず）と、外部機器１０１へ送出する信号や機器情報データを含む出力データを一時的に保持する出力バッファ（図示せず）とが設けられているホストＩ／Ｆ部３０２を有し、ホストＩ／Ｆ部３０２は外部機器１０１との間でやりとりされる信号や通信パケットの入出力部を構成するとともに、外部機器１０１との間の通信制御を行なう。
【００３６】
ホストＩ／Ｆ部３０２を介して入力された印刷データは、画像データ発生部３０３に与えられる。画像データ発生部３０３は予め定められている解析手段に基づき入力された印刷データの解析（例えばＰＤＬ解析処理）、その解析結果から中間言語である描画オブジェクトを生成し、更にプリンタエンジン１０５が処理可能なイメージデータの作成を行なう。具体的には、印刷データの解析、その解析によるオブジェクト情報の作成を行なうとともに、そのオブジェクト情報の作成と並行して、ラスタライズ処理を行なう。このラスタライズ処理では、印刷データに含まれる表示色ＲＧＢ（加法混色）からプリンタエンジンが処理可能なＹＭＣＫ（減法混色）への変換、印刷データに含まれる文字コードから予め格納されているビットパターン、アウトラインフォントなどのフォントデータへの変換などを行ない、ページ単位あるいはバンド単位でビットマップデータを作成し、このビットマップデータに対しディザパターンを用いる疑似階調処理を施し、印刷処理可能なイメージデータを生成する。
【００３７】
この作成されたイメージデータは、画像メモリ３０５に格納される。画像メモリ３０５に格納されているイメージデータの読み出しはＤＭＡ制御部３０８で制御され、このＤＭＡ制御部３０８による画像メモリ３０５からのイメージデータの読み出しに対する制御はＣＰＵ３０９からの指示に基づき行なわれる。
【００３８】
画像メモリ３０５から読み出されたイメージデータは、エンジンＩ／Ｆ部３０６を介してビデオ信号としてエンジン１０５に転送される。エンジンＩ／Ｆ部３０６には、エンジン１０５へ転送するビデオ信号を一時的に保持する出力バッファ（図示せず）と、エンジン１０５から送出された信号を一時的に保持する入力バッファ（図示せず）とが設けられ、エンジンＩ／Ｆ部３０６は、エンジン１０５との間でやりとりされる信号の入出力部を構成するとともに、エンジン１０５との間の通信制御を行なう。
【００３９】
パネル部１０４（図１に示す）から操作入力によって出されたモード設定に関する指示などは、パネルＩ／Ｆ部３０１を介して入力され、パネルＩ／Ｆ部３０１はパネル部１０４とＣＰＵ３０９との間のインタフェースを構成する。（操作入力によって出されるモード設定などの印刷装置に対する指示は外部接続機器と双方向の通信を行うホストＩ／Ｆ部３０２を介しても指示可能である）ＣＰＵ３０９は、パネル部１０４もしくはホスト外部機器１０１から指示されたモードに応じて上述の各ブロックに対する制御を行ない、この制御はＲＯＭ３０４に格納されている制御プログラムに基づき実行される。このＲＯＭ３０４に格納されている制御プログラムはシステムクロックによってタスクと称されるロードモジュール単位に時分割制御を行なうためのＯＳ（オペレーティングシステム）と、このＯＳによって機能単位に実行制御される複数のロードモジュールとから構成される。このロードモジュールを含む制御プログラムは必要に応じてＥＥＰＲＯＭ（不揮発性メモリ）３１０に格納される。
【００４０】
ＣＰＵ３０９による演算処理の作業領域としては、ＲＡＭ３０７が使用される。上述のＣＰＵ３０９を含む各ブロックはシステムバス３１１にＣＰＵ３０９がアクセス可能なように接続されている。システムバス３１１は、アドレスバスとシステムバスとから構成される。
【００４１】
このように構成されたプリンタ制御システムにおいて、図５・図６・図７・図８及び図１２・図１３・図１４は図３の３０４で示すプログラムＲＯＭに格納されるプログラムを表すフローチャートであり、図１０・図１１及び図１５・図１６は図３の３０７或いは３１０で示す一次記憶装置に格納されるデータ形式の一例を示したものである。
【００４２】
次に図３のプリンタコントローラにおける入力データの処理経路を図４を用いて機能ブロック別に示す。
【００４３】
外部接続装置からホストインタフェース部（３０２）を通って入力された印字データはＰＤＬ解析部（３０３ａ）によりコマンド解析され、次に描画オブジェクト生成部（３０３ｂ）において描画オブジェクトとして生成されＲＡＭ上の作業メモリ（３０７）に一時的に記録される。
【００４４】
そしてＲＡＭ上の作業メモリから描画メモリを随時読み出しラスタライズ処理を行い（３０３ｃ）、最終的に記録媒体に記録される画像データをビットマップイメージに展開し画像メモリ（３０５）に格納、エンジンインタフェース部（３０６）に対して出力を行い記録媒体への記録が行われる。
【００４５】
まず、図５・図６・図７・図８を基に従来のパスコマンド処理におけるパスの輪郭線を構成する点列のメモリへの記憶方法及び直線化処理実行時のメモリからの読み出しと直線化後の点列のメモリへの再記憶処理、更に描画オブジェクト生成時に参照される点列の読み出し方法について説明する。
【００４６】
ホストインタフェースを介して入力されＰＤＬ解析部により解析された印字データがパス描画に関するコマンドであった場合、当該パスコマンドが点列情報であるか否かを判断し（Ｓ５０１）、点列情報であった場合点列情報をメモリ上に一時的に記憶しておく（Ｓ５０２）。
この時のＰＤＬから与えられた点列情報のメモリ上への記憶処理（前記図５のＳ５０２に該当）を図６のフローチャートに示す。
【００４７】
パスコマンドが直線情報に基づく点列であるか否かを判断（Ｓ６０１）、直線である場合、直線を構成する点情報（ｘ，ｙで示される座標値）をメモリに保存（Ｓ６０２）、更に直線（Ｌｉｎｅ）情報をメモリに保存する（Ｓ６０３）。
【００４８】
一方、Ｓ６０１で判断されたパスコマンドが曲線情報に基づく点列である場合、ＰＤＬより与えられたベジェ三次曲線を構成する三点の点情報（ｘ，ｙで示される座標値）と曲線であることを示す曲線（Ｃｕｒｖｅ）情報をメモリに保存する（Ｓ６０４〜Ｓ６０６）。
【００４９】
次に、点数情報を管理する領域にの点数情報に前記Ｓ６０２及びＳ６０４〜Ｓ６０６でメモリ上に記憶したパス描画点数分足し込み（Ｓ６０８）、線数情報についても記憶した線情報分足し込む（Ｓ６０９）。（図６における点列及び点数情報・線数情報のメモリへの記憶方法の具体例を図１０に示す）
次に、ＰＤＬより与えられたパスコマンドが描画実行命令であった場合、図５のＳ５０２でメモリ上に保存したパスの点列に対し直線化処理を実行する（Ｓ５０４）。
【００５０】
この時の直線化処理における点列情報の参照方法及び直線化後の再保存方法（図５のＳ５０４に該当）を図７のフローチャートに示す。
【００５１】
図６においてメモリ上に記憶されたパスの線情報を読み出し（Ｓ７０１）、読み出した線情報が直線（Ｌｉｎｅ）であるか否かを判断（Ｓ７０２）、直線であった場合図６においてメモリ上に記憶してあった点情報を一組を読み出し（Ｓ７０３）、図６と別の領域に点列情報記憶領域を確保し前記Ｓ７０１及びＳ７０３にて読み出した点列情報を記憶する（Ｓ７０４〜Ｓ７０５）。
【００５２】
一方、Ｓ７０１で読み出した線情報が曲線（Ｃｕｒｖｅ）であった場合、前記図６のＳ６０４〜Ｓ６０７でメモリ領域に記憶した３点とその直前に記憶されていた点をメモリから読み出し（Ｓ７０６〜Ｓ７０７）、読み出した４点で構成されるベジェ三次曲線を直線で近似（近似の具体例を図９に示す）し（Ｓ７１０）、Ｓ７１０の近似処理（直線化処理）で得られたパス輪郭を直線のみで構成する線情報と点情報をメモリに保存する（Ｓ７１１〜Ｓ７１２）。
【００５３】
次に図６のＳ６０９でメモリ上に保存した線数分の処理が終了したか否かを判断し（Ｓ７１３）、終了していない場合は処理が終了するまでＳ７０１〜Ｓ７１３の処理を繰り返す。（図７における直線化処理後の点列情報のメモリへの記憶方法の具体例を図１１に示す）
次に、図７におけるフローチャートで示した直線化後のパスを構成する点列を参照し図形描画処理を実行し描画オブジェクト生成処理を実行する（Ｓ５０５）。
【００５４】
この時の図形描画処理における点列情報参照方法と描画オブジェクト生成処理方法を図８のフローチャートに示す。
【００５５】
図８の描画オブジェクト生成手段において参照される点列情報は図７のＳ７０４〜Ｓ７０５及びＳ７１１〜Ｓ７１２でメモリ領域に記憶したパスを構成する輪郭線を直線及び点のみで表したデータである。
【００５６】
まず、Ｓ８０１においてメモリ上に記憶されている線情報を読み出し、線情報が直線であるか否かを判断する（Ｓ８０２）。
【００５７】
Ｓ８０１で読み出した線情報が直線であった場合、ｘ，ｙ座標で構成される点情報をメモリから一組読み出し（Ｓ８０３）、線情報が終了か否かを判断（Ｓ８０４）、終了しない場合Ｓ８０１〜Ｓ８０４を繰り返す。
【００５８】
更に前記Ｓ８０１〜Ｓ８０４で読み出したパスの輪郭線を構成する点列情報により描画オブジェクトを生成（Ｓ８０５）、描画オブジェクトを図３の３０５に示す画像メモリに保存し（Ｓ８０６）、パスコマンド処理を終了する。
【００５９】
従来の印刷装置において上記のような処理を行っており、パスコマンド処理の一時記憶メモリ使用方法は冗長な部分があった。
【００６０】
この点を改良し処理を効率化したのが図５・図１２・図１３・図１４に示すフローチャートであり、図１５・図１６に示すパス点列のメモリ使用の一例である。
【００６１】
以下、図５・図１２・図１３・図１４に従って実施例を説明する。
なおこの場合の印刷装置内部の処理は一例として挙げてあり、必ずしもこれらの動作を行わなければならないという事ではない。
【００６２】
（実施例１）
図１２・図１３・図１４は上記の問題点を改良し、ＰＤＬから入力されたパスの輪郭線を表す点列のメモリへの効率的な記憶方法、更には直線化後のパスの点列のメモリへの効率的な記憶方法と参照方法をフローチャートに示すものである。
【００６３】
ホストインタフェースを介して入力されＰＤＬ解析部により解析された印字データがパス描画に関するコマンドであった場合、当該パスコマンドが点列情報であるか否かを判断し（Ｓ５０１）、点列情報であった場合点列情報をメモリ上に一時的に記憶しておく（Ｓ５０２）。
【００６４】
この時のＰＤＬから与えられた点列情報のメモリ上への記憶処理（前記図５のＳ５０２に該当）を図１２のフローチャートに示す。
【００６５】
パスコマンドが直線情報に基づく点列であるか否かを判断（Ｓ１２０１）、直線である場合、直線を構成する点情報（ｘ，ｙで示される座標値）をメモリに保存する（Ｓ１２０２）。
【００６６】
一方、Ｓ１２０１で判断されたパスコマンドが曲線情報に基づく点列である場合、ＰＤＬより与えられたベジェ三次曲線を構成する３点の点情報（ｘ，ｙで示される座標値）と前記３点の点情報をメモリに記憶する際の先頭の管理番号をメモリに保存し（Ｓ１２０３〜Ｓ１２０６）、管理Ｎｏ情報を１インクリメントする（Ｓ１２０７）。
【００６７】
次に、点数情報を管理する点数情報に前記Ｓ１２０２及びＳ１２０３〜Ｓ１２０５でメモリ上に記憶したパス描画点数分足し込む（Ｓ１２０８）。（図１２における点列及び点数情報・線数情報のメモリへの記憶方法の具体例を図１５に示す）
次に、ＰＤＬより与えられたパスコマンドが描画実行命令であった場合、図５のＳ５０２でメモリ上に保存したパスの点列に対し直線化処理を実行する（Ｓ５０４）。
【００６８】
この時の直線化処理における点列情報の参照方法及び直線化後の再保存方法（図５のＳ５０４に該当）を図１３のフローチャートに示す。
【００６９】
まずメモリから点列の読み出し処理に利用される処理Ｎｏを初期化し（Ｓ１３０１）、図１２のＳ１２０７で記憶したパスの管理Ｎｏを読み出し（Ｓ１３０２）、現在の処理ＮｏとＳ１３０２で読み出した管理Ｎｏが同一であるか否かを判断する（Ｓ１３０３）。
【００７０】
同一でなかった場合、図１２においてメモリ上に記憶してあった点情報を一組読み出し（Ｓ１３０４）、図１２で保存したメモリの別の領域に点列情報記憶領域を確保し前記Ｓ１３０４で読み出した点列情報を記憶（Ｓ１３０５）、処理Ｎｏをインクリメントする（Ｓ１３０６）。
【００７１】
一方、Ｓ１３０２で読み出したパスの管理Ｎｏが現在の処理Ｎｏと同一でなかった場合、前記図１２のＳ１２０３〜Ｓ１２０５でメモリ領域に記憶した３点とその直前に記憶されていた点をメモリから読み出し（Ｓ１３０７〜Ｓ１３１０）、読み出した４点で構成されるベジェ三次曲線を直線で近似（近似の具体例を図９に示す）し（Ｓ１３１１）、Ｓ１３１１の近似処理（直線化処理）で得られたパス輪郭を直線で構成する点情報のみをメモリに保存し（Ｓ１３１２）、処理Ｎｏを３点分インクリメントする（Ｓ１３１３）。
【００７２】
次に図１２のＳ１２０８で保持したパスの管理Ｎｏ分の処理が終了したか否かを判断し（Ｓ１３１４）、終了していない場合は処理が終了するまでＳ１３１２〜Ｓ１３１４の処理を繰り返す。（図１３における直線化処理後の点列情報のメモリへの記憶方法の具体例を図１６に示す）
次に、図１３のフローチャートで示した直線化処理で生成されたパスの点列を参照し図形描画処理を実行し描画オブジェクト生成処理を実行する（図５のＳ５０５）。
【００７３】
この時の図形描画処理における点列情報参照方法と描画オブジェクト生成処理方法を図１４のフローチャートに示す。
【００７４】
図１４の描画オブジェクト生成手段において参照される点列情報は図１３のＳ１３０４及びＳ１３１２でメモリ領域に記憶したパスの輪郭線を点（ｘ，ｙ座標点）のみで表したデータである。
まず、Ｓ１４０１でｘ，ｙ座標で構成される点情報をメモリから一組読み出し、点情報が終了か否かを判断（Ｓ１４０２）、メモリに記憶してある点情報が終了するまでＳ１４０１〜Ｓ１４０２を繰り返す。
【００７５】
次に、前記Ｓ１４０１で読み出した点情報を元に描画オブジェクトを生成（Ｓ１４０３）、描画オブジェクトを図３の３０５に示す画像メモリに保存し（Ｓ１４０４）、パスコマンド処理を終了する。
以上のように、ＰＤＬから入力されたパスの点列をメモリに一時的に記憶する際に曲線を構成する点を識別する為の管理番号のみを記憶することによりメモリを効率的に使用することが可能となる。また、直線化処理を実行後のパスの点列をメモリに保持する場合曲線情報を持つ必要がなくなることでメモリ使用を更に効率化がすることが可能となる。更に、メモリを効率的に使用することにより点列データを参照する回数を削減することも可能となる為、パスコマンド処理時間を効率化することも可能となる。
【００７６】
（実施例２）
上記実施例１においてはＰＤＬより入力されたパスの点列をメモリに保持する際の記憶方法と、直線化後の点列の記憶方法を曲線情報に注目し効率化する方法について述べてきたが、特にパス描画命令処理中のメモリフルエラー発生時、図３の３０２を介して接続される外部記憶装置に対してパスの点列を記憶する機能を設けると共に、外部記憶装置へのパス点列記憶・読み出しの際にのみ実施例１記載のメモリ効率化処理を利用可能とすることで、使用可能なメモリ領域の拡大とアクセススピードの遅い外部記憶装置に位置するメモリ領域に対するアクセス頻度を低下させ、パスコマンドの処理効率が著しく低下するのを防止するようにしてもよい。
【００７７】
（実施例３）
上記実施例においては、外部記憶装置に対してパス点列を記憶するトリガとしてメモリフルの発生を利用していたが、予め印刷装置内部にメモリエラー発生の可能性が高い状態を検知する為の空きメモリ量に対する一定の閾値を設け、作業メモリの空き容量が閾値を下回った場合に前記実施例（２）に示す使用可能なメモリ領域の拡大とアクセススピードの遅い外部記憶装置に位置するメモリ領域に対するアクセス頻度を低下させ、パスコマンドの処理効率が著しく低下するのを防止するようにしても良い。
【００７８】
【発明の効果】
以上述べてきたように、パスコマンド処理における直線化処理後のデータ記憶の形態としてパスを構成する輪郭線を表す点の座標点のみを記憶する事でメモリ使用の効率化を計ることが可能となる。
【００７９】
更に、かかる構成においてＰＤＬより入力されたパスコマンドを記憶装置に記憶する際に曲線描画に利用される点情報管理番号のみを記憶しておくことで直線化処理或いは描画オブジェクト生成処理する際の記憶装置に保持されている点列情報へのアクセス頻度を下げる事ができ、効率的な描画オブジェクト生成処理を実現する事が可能となる。
【図面の簡単な説明】
【図１】本発明の印刷装置の実施の第１形態であるレーザビームプリンタの構成を示すブロック図である。
【図２】図１のレーザビームプリンタの機構を摸式的に示す図である。
【図３】図１のレーザビームプリンタに搭載されているプリンタコントローラの構成を示すブロック図である。
【図４】図３のプリンタコントローラにおける入力データ処理を機能ブロック別に示す図である。
【図５】従来及び本発明の実施例におけるパスコマンド処理を示したフローチャート
【図６】従来のパスコマンド入力時の点列情報のメモリへの保存方法を示したフローチャート。（図５におけるＳ５０２の詳細）
【図７】従来のパスの点列の直線化処理時の点列情報のメモリからの読み出しと再メモリへの登録方法を示したフローチャート。（図５におけるＳ５０４の詳細）
【図８】従来の直線化処理後の点列情報のメモリからの読み出しと描画オブジェクト生成方法を示したフローチャート。（図５におけるＳ５０５の詳細）
【図９】パスコマンドで指示された曲線を含む図形と、直線化の一例。
【図１０】従来のＰＤＬから入力されたパスコマンドで指示される点列のメモリへの保存方法の一例。
【図１１】従来のパスコマンドで指示された曲線情報を含む点列を直線化後のメモリへの保存方法の一例。
【図１２】本発明の実施例におけるパスコマンド入力時の点列情報のメモリへの保存方法を示したフローチャート。（図５におけるＳ５０２の詳細）
【図１３】本発明の実施例におけるパスの点列の直線化処理時の点列情報のメモリからの読み出しと再メモリへの登録方法を示したフローチャート。（図５におけるＳ５０４の詳細）
【図１４】本発明の実施例における直線化処理後の点列情報のメモリからの読み出しと描画オブジェクト生成方法を示したフローチャート。（図５におけるＳ５０５の詳細）
【図１５】本発明におけるＰＤＬから入力されたパスコマンドで指示される点列のメモリへの保存方法の一例。
【図１６】本発明におけるパスコマンドで指示された曲線情報を含む点列を直線化後のメモリへの保存方法の一例。
【図１】
2004034583.tif 000003
【図２】
2004034583.tif 000004
【図３】
2004034583.tif 000005
【図４】
2004034583.tif 000006
【図５】
2004034583.tif 000007
【図６】
2004034583.tif 000008
【図７】
2004034583.tif 000009
【図８】
2004034583.tif 000010
【図９】
2004034583.tif 000011
【図１０】
2004034583.tif 000012
【図１１】
2004034583.tif 000013
【図１２】
2004034583.tif 000014
【図１３】
2004034583.tif 000015
【図１４】
2004034583.tif 000016
【図１５】
2004034583.tif 000017
【図１６】
2004034583.tif 000018