JP2004034583A - 印刷装置 - Google Patents
印刷装置 Download PDFInfo
- Publication number
- JP2004034583A JP2004034583A JP2002197104A JP2002197104A JP2004034583A JP 2004034583 A JP2004034583 A JP 2004034583A JP 2002197104 A JP2002197104 A JP 2002197104A JP 2002197104 A JP2002197104 A JP 2002197104A JP 2004034583 A JP2004034583 A JP 2004034583A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- point sequence
- command
- processing
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Record Information Processing For Printing (AREA)
Abstract
【課題】パスの点列のメモリへの記憶方法において、曲線を構成する場合にのみ点を記憶するメモリの管理番号を覚えておくことでメモリ使用の効率化と、メモリアクセス頻度を低下することにより処理速度の効率化を計る。
【解決手段】PDLより入力されたパスの点列及び、前記パスの点列を直線化後に生成される直線のみで表されるパスの点列をメモリに記憶する際に、ベジェ3次曲線を構成する座標点とその管理情報のみを記憶し、直線情報については点の座標点のみを記憶することでメモリを効率的に使用可能とする。更に、メモリの効率的な使用によりメモリへのアクセス頻度を低下することが可能となりパスコマンド処理の効率化を計ることが可能とする。
【選択図】 図1
【解決手段】PDLより入力されたパスの点列及び、前記パスの点列を直線化後に生成される直線のみで表されるパスの点列をメモリに記憶する際に、ベジェ3次曲線を構成する座標点とその管理情報のみを記憶し、直線情報については点の座標点のみを記憶することでメモリを効率的に使用可能とする。更に、メモリの効率的な使用によりメモリへのアクセス頻度を低下することが可能となりパスコマンド処理の効率化を計ることが可能とする。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、ホストコンピュータあるいは他のデバイスに接続されたプリンタコントローラにより制御される印刷装置などの出力装置に関するものであり、特にメモリ消費量を削減する手段を有する印刷装置において、PDLからの指示によって生成され印刷装置内部にデータとして一時記憶装置に保持する描画オブジェクト生成におけるパスコマンド処理を実行する際の直線化処理後の点列情報の記憶方法を効率化、或いはPDLから入力された曲線情報を含む点列情報に対し点列情報管理手段を設ける事により記憶方法を効率化する事で、メモリの効率的な使用を実現可能とする印刷装置に関するものである。
【0002】
【従来の技術】
従来の印刷装置および印刷システムでは、PDLより入力されたパスコマンド処理において直線化処理終了後、或いは直線化処理直前まで得られた点列情報を全て記憶装置に保持しており、メモリ使用において冗長となっていた。
【0003】
また、パスコマンド処理におけるメモリ使用効率が低下する事により、メモリ搭載量の少ない印刷装置、或いはページ中に複雑なパスコマンド処理が行われる場合、描画オブジェクト生成処理においてメモリオーバーが発生する事があった。
【0004】
また、パスコマンド処理における直線化処理において記憶装置に保持された全ての点列を参照する、或いは描画オブジェクト生成処理において記憶装置に保持されている直線化後の点列を全て参照する必要があった。
【0005】
以上のように、パスコマンド処理における記憶装置への点列保持の方法が冗長である事により、メモリ不足の発生、或いは記憶装置に保持された点列情報の参照において無駄な処理が発生していた。
【0006】
【発明が解決しようとする課題】
上記従来例では、PDLより入力されたパスコマンド処理において直線化処理終了後、或いは直線化処理直前まで得られた点列情報を全て記憶装置に保持しており、メモリ使用において冗長となり、メモリ使用効率を低下させていた。
【0007】
更に、パスコマンド処理におけるメモリ使用効率が低下する事により、メモリ搭載量の少ない印刷装置、或いはページ中に複雑なパスコマンド処理が行われる場合、描画オブジェクト生成処理においてメモリオーバーが発生し、描画処理を中断、更にエラー処理時に処理を継続した場合エラー発生時に処理していた描画オブジェクトに関しては印字不正となる事があった。
【0008】
更に、PDLより入力され記憶装置に保持された全ての点列を参照し直線化処理を行う事、或いは描画オブジェクト生成処理実行時、前記直線化処理により生成され記憶装置に保持されている直線化後の点列情報を全て参照する事により処理スピードを低下させる一因となる事があった。
【0009】
すなわち、パスコマンド処理における記憶装置への点列保持の方法が冗長であった為、メモリ不足が発生、或いは処理スピードが低下するなどの問題が発生していた。
【0010】
本発明は、上記問題点に鑑みてなされたものであり、パスコマンド処理における直線化処理後のデータ記憶の形態としてパスを構成する点の座標点のみを記憶する事でメモリ使用の効率化を計り、更にはPDLより入力されたパスコマンドを直線化処理或いは描画オブジェクト生成処理する際の記憶装置に保持されている点列情報へのアクセス頻度を下げる事で効率的な描画オブジェクト生成処理を可能とする印刷装置及び印刷システムを提供することを目的とするものである。
【0011】
【課題を解決するための手段】
上記目的を達成する本発明の印刷装置は以下に示す構成を備える。
【0012】
本発明にかかる第1の発明は、複数のページ記述言語を有する印刷装置において、前記複数のページ記述言語から最適なページ記述言語を選択する手段と、前記選択手段の結果に基づき選択されたページ記述言語を使用し入力されたデータ中のコマンドを解析するコマンド解析手段と、更に前記コマンド解析手段により解析されたコマンドから描画処理に利用される描画オブジェクトを生成する描画オブジェクト生成手段と、前記描画オブジェクトからビットマップイメージとして保持されるイメージデータを生成するイメージデータ生成手段と、更にイメージデータを記録媒体に形成する画像形成手段を有する画像処理装置であり、前記コマンド解析手段中の領域の塗り潰し・輪郭線の描画・クリッピング領域の指定を行う任意の直線や曲線で指定されるパスコマンド処理において、ページ記述言語から入力された直線及び曲線を含むパスの点列を記憶装置に記憶する第1の記憶手段と、前記第1の記憶手段により記憶されたパスの点列をページ記述言語よりコマンドによって指定された描画条件に従い直線化する直線化手段と、前記直線化手段において生成された点のみを記憶装置に保持する第2の記憶手段を設けたものである。
【0013】
本発明にかかる第2の発明は、前記第1の記憶手段において記憶されるパスの点列情報に対し、点列情報を管理する管理番号を付与する点列情報管理手段と、点列情報としてページ記述言語より入力された点と曲線情報に付与された管理番号及び点と曲線情報の総数を第1の記憶手段によって記憶する手段を設けたものである。
【0014】
本発明にかかる第3の発明は、プリンタコマンド解析からイメージデータ生成に至る処理において印刷装置内部で使用可能なメモリをオーバーしたか否かを判別する事が可能であるメモリオーバー判別手段を設けたものである。
【0015】
本発明にかかる第4の発明は、前記メモリオーバー判別手段において、メモリの空き領域が一定の値を下回った場合にメモリオーバーが発生する事を予測するメモリオーバー予測手段を設けたものである。
【0016】
本発明にかかる第5の発明は、パスコマンド処理実行時、前記メモリオーバー判別手段においてメモリオーバーが発生、あるいはメモリオーバー予測手段においてメモリオーバーが発生すると予測された場合、直線化手段により生成された点のみを記憶する第2の記憶手段によりメモリオーバーの発生を抑制することで描画処理を続行可能とする機能を設けたものである。
【0017】
本発明にかかる第6の発明は、パスコマンド処理実行時、前記メモリオーバー判別手段においてメモリオーバーが発生、あるいはメモリオーバー予測手段においてメモリオーバーが発生すると予測された場合、点列情報管理手段により生成された点と曲線情報のみを記憶する第1の記憶手段によりメモリオーバーの発生を抑制することで描画処理を続行可能とする機能を設けたものである。
【0018】
本発明にかかる第7の発明は、パスコマンド処理において描画オブジェクトを生成中にメモリオーバーが発生した場合、描画オブジェクト生成が完了していなくても生成済みの描画オブジェクトがあればイメージデータ生成手段に対し描画オブジェクトを送付しメモリの空き領域を確保する手段を設けたものである。
【0019】
(作用)
かかる構成において、パスコマンド処理における直線化処理後のデータ記憶の形態としてパスを構成する輪郭線を表す点の座標点のみを記憶する事でメモリ使用の効率化を計り、更にはPDLより入力されたパスコマンドを記憶装置に記憶する際に曲線描画に利用される点情報管理番号を記憶して置くことで直線化処理或いは描画オブジェクト生成処理する際の記憶装置に保持されている点列情報へのアクセス頻度を下げる事で効率的な描画オブジェクト生成処理を実現する事が可能となる。
【0020】
【発明の実施の形態】
まず、本発明の実施の形態を適用可能な出力装置の一例としてレーザビームプリンタの構成例を説明する。なお、本実施の形態は、レーザビームプリンタのみならず、例えばインクジェットプリンタ、MFP(コピー・ファックス・プリンタ等の機能を複数備えたマルチファンクションプリンタ)等の他の方式の出力装置にも適用可能である。
【0021】
図1は本発明の印刷装置の実施の第一形態であるレーザビームプリンタの構成を示すブロック図、図2は第1図のレーザビームプリンタの機構を摸式的に示す図、図3は図1のレーザビームプリンタに搭載されているプリンタコントローラの構成を示すブロック図である。
【0022】
カラー出力可能なレーザビームプリンタ102は、図1に示すように、ホストコンピュータなどの外部機器101から所定のページ記述言語方式のカラー多値情報を含む情報(以下、印字データという)が入力され、その印刷データを解析することによってイメージデータを生成するプリンタコントローラ103と、プリンタコントローラ103によって生成されたイメージデータが示す画像を用紙上に印刷するプリンタエンジン(以下、エンジンという)105と、ユーザとのインターフェースを司り、レーザビームプリンタ102に対する所望の動作を指示するための入力操作を行なうためのパネル部104とから構成される。
【0023】
次に、本実施の形態のレーザビームプリンタの構成について図2を参照しながら説明する。
【0024】
レーザビームプリンタ102は、図2に示すように、匡体201を備え、匡体201には、エンジン105を構成するための各機構と、その各機構による各印字プロセス処理(例えば、給紙処理など)に関する制御を行なうエンジン制御部及びプリンタコントローラ103(図1に示す)を収納する制御ボード収納部203とが内蔵されている。
【0025】
エンジン105を構成するための各機構としては、レーザ光の操作による感光ドラム上への静電潜像形成、その静電潜像の顕像化、その顕像の印刷用紙への転写を行なうための光学処理機構、印刷用紙に転写されたトナー像を定着させるための定着処理機構、印刷用紙の給紙処理機構、印刷用紙の搬送処理機構などが設けられている。
【0026】
光学処理機構は、半導体レーザ(図示せず)から発射されるレーザ光をプリンタコントローラ103から供給されたイメージデータに応じてオン、オフ駆動するレーザドライバ206を有し、半導体レーザから発射されたレーザ光は回転多面鏡207により走査方向に振られる。その主走査方向振られたレーザ光は反射ミラー208を介して感光ドラム205に導かれ、感光ドラム205上を主走査方向に露光する。レーザ光による走査露光によって感光ドラム205上には静電潜像が形成され、その潜像は現像器220から供給されるトナーによってトナー像に顕像化される。このトナーには、Y(イエロー)、M(マゼンダ)、C(シアン)、K(ブラック)の各トナーが用いられている。感光ドラム205上のトナー像は給紙処理機構によって副走査方向に同期して休止される印刷用紙に転写される。
【0027】
感光ドラム205および現像器229は着脱可能なカートリッジ204に収容されている。反射ミラー208は半透過型ミラーからなり、その裏面側にはビームディテクタ209が配置されている。ビームディテクタ209はレーザ光を検出し、その検出信号はプリンタコントローラ103に与えられる。プリンタコントローラ103ビームディテクタ209の検出信号に基づき主走査方向への露光タイミングを決定する水平同期信号を生成し、その水平同期信号はプリンタコントローラ103に出力される。
【0028】
定着処理機構は、印刷用紙に転写されたトナー像を熱圧によって定着させるための定着器216を有し、定着器216には、トナー像を加熱するためのヒータが設けられている。ヒータは、所定の定着温度が得られるようにエンジン制御部106で制御される。
【0029】
印刷用紙の給紙機構は、印刷用紙を収容するカセット210と手差し用トレイ219とを有し、カセット210の印刷用紙または手差しトレイ219の印刷用紙を選択的に給紙するように構成されている。カセット210は匡体201内に装着され、カセット210には、仕切り板(図示せず)の移動位置に応じて印刷用紙のサイズを電気的に検知するサイズ検知機構が設けられている。カセット210からはその最上の印刷用紙から1枚単位でカセット給紙クラッチ211の回転駆動によって給紙ローラ212まで搬送される。カセット給紙クラッチ211は、給紙毎に駆動手段(図示せず)によって間欠的に回転駆動されるカムからなり、そのカムが1回転する毎に1枚の印刷用紙が給紙される。
【0030】
給紙ローラ212は印刷用紙をその先端部がレジストシャッタ214に対応する位置まで搬送し、レジストシャッタ214は、給紙された印刷用紙の押圧及びその解除によって、その印刷用紙の給紙停止及びその解除を行ない、そのレジストシャッタ214の動作はレーザ光の副走査に同期するように制御される。
【0031】
これに対し、手差しトレイ219は匡体201に設けられ、ユーザによって手差しトレイ219に搭載された印刷用紙は給紙ローラ215でレジストシャッタ214に向けて給紙される。
【0032】
印刷用紙の搬送処理機構は、レジストシャッタ214による押圧が解除された印刷用紙を感光ドラム205に向けて搬送する搬送ローラ213と、定着器216から排出された印刷用紙を匡体201上部に形成された排紙トレイまで導くための各搬送ローラ217、218と、各搬送ローラ213、217、218を駆動するための駆動手段(図示せず)とを有する。
【0033】
匡体201には、パネル部104を構成するための操作パネル202が取り付けられている。操作パネル202には、指示入力操作のためのスイッチ群、情報表示のためのLED表示器、LCD表示器が設けられている。
【0034】
次に、プリンタコントローラ103の構成について図3を参照しながら説明する。
【0035】
プリンタコントローラ103は、外部機器101から送出された印刷データや装置の動作を指示する設定を入力する入力バッファ(図示せず)と、外部機器101へ送出する信号や機器情報データを含む出力データを一時的に保持する出力バッファ(図示せず)とが設けられているホストI/F部302を有し、ホストI/F部302は外部機器101との間でやりとりされる信号や通信パケットの入出力部を構成するとともに、外部機器101との間の通信制御を行なう。
【0036】
ホストI/F部302を介して入力された印刷データは、画像データ発生部303に与えられる。画像データ発生部303は予め定められている解析手段に基づき入力された印刷データの解析(例えばPDL解析処理)、その解析結果から中間言語である描画オブジェクトを生成し、更にプリンタエンジン105が処理可能なイメージデータの作成を行なう。具体的には、印刷データの解析、その解析によるオブジェクト情報の作成を行なうとともに、そのオブジェクト情報の作成と並行して、ラスタライズ処理を行なう。このラスタライズ処理では、印刷データに含まれる表示色RGB(加法混色)からプリンタエンジンが処理可能なYMCK(減法混色)への変換、印刷データに含まれる文字コードから予め格納されているビットパターン、アウトラインフォントなどのフォントデータへの変換などを行ない、ページ単位あるいはバンド単位でビットマップデータを作成し、このビットマップデータに対しディザパターンを用いる疑似階調処理を施し、印刷処理可能なイメージデータを生成する。
【0037】
この作成されたイメージデータは、画像メモリ305に格納される。画像メモリ305に格納されているイメージデータの読み出しはDMA制御部308で制御され、このDMA制御部308による画像メモリ305からのイメージデータの読み出しに対する制御はCPU309からの指示に基づき行なわれる。
【0038】
画像メモリ305から読み出されたイメージデータは、エンジンI/F部306を介してビデオ信号としてエンジン105に転送される。エンジンI/F部306には、エンジン105へ転送するビデオ信号を一時的に保持する出力バッファ(図示せず)と、エンジン105から送出された信号を一時的に保持する入力バッファ(図示せず)とが設けられ、エンジンI/F部306は、エンジン105との間でやりとりされる信号の入出力部を構成するとともに、エンジン105との間の通信制御を行なう。
【0039】
パネル部104(図1に示す)から操作入力によって出されたモード設定に関する指示などは、パネルI/F部301を介して入力され、パネルI/F部301はパネル部104とCPU309との間のインタフェースを構成する。(操作入力によって出されるモード設定などの印刷装置に対する指示は外部接続機器と双方向の通信を行うホストI/F部302を介しても指示可能である)CPU309は、パネル部104もしくはホスト外部機器101から指示されたモードに応じて上述の各ブロックに対する制御を行ない、この制御はROM304に格納されている制御プログラムに基づき実行される。このROM304に格納されている制御プログラムはシステムクロックによってタスクと称されるロードモジュール単位に時分割制御を行なうためのOS(オペレーティングシステム)と、このOSによって機能単位に実行制御される複数のロードモジュールとから構成される。このロードモジュールを含む制御プログラムは必要に応じてEEPROM(不揮発性メモリ)310に格納される。
【0040】
CPU309による演算処理の作業領域としては、RAM307が使用される。上述のCPU309を含む各ブロックはシステムバス311にCPU309がアクセス可能なように接続されている。システムバス311は、アドレスバスとシステムバスとから構成される。
【0041】
このように構成されたプリンタ制御システムにおいて、図5・図6・図7・図8及び図12・図13・図14は図3の304で示すプログラムROMに格納されるプログラムを表すフローチャートであり、図10・図11及び図15・図16は図3の307或いは310で示す一次記憶装置に格納されるデータ形式の一例を示したものである。
【0042】
次に図3のプリンタコントローラにおける入力データの処理経路を図4を用いて機能ブロック別に示す。
【0043】
外部接続装置からホストインタフェース部(302)を通って入力された印字データはPDL解析部(303a)によりコマンド解析され、次に描画オブジェクト生成部(303b)において描画オブジェクトとして生成されRAM上の作業メモリ(307)に一時的に記録される。
【0044】
そしてRAM上の作業メモリから描画メモリを随時読み出しラスタライズ処理を行い(303c)、最終的に記録媒体に記録される画像データをビットマップイメージに展開し画像メモリ(305)に格納、エンジンインタフェース部(306)に対して出力を行い記録媒体への記録が行われる。
【0045】
まず、図5・図6・図7・図8を基に従来のパスコマンド処理におけるパスの輪郭線を構成する点列のメモリへの記憶方法及び直線化処理実行時のメモリからの読み出しと直線化後の点列のメモリへの再記憶処理、更に描画オブジェクト生成時に参照される点列の読み出し方法について説明する。
【0046】
ホストインタフェースを介して入力されPDL解析部により解析された印字データがパス描画に関するコマンドであった場合、当該パスコマンドが点列情報であるか否かを判断し(S501)、点列情報であった場合点列情報をメモリ上に一時的に記憶しておく(S502)。
この時のPDLから与えられた点列情報のメモリ上への記憶処理(前記図5のS502に該当)を図6のフローチャートに示す。
【0047】
パスコマンドが直線情報に基づく点列であるか否かを判断(S601)、直線である場合、直線を構成する点情報(x,yで示される座標値)をメモリに保存(S602)、更に直線(Line)情報をメモリに保存する(S603)。
【0048】
一方、S601で判断されたパスコマンドが曲線情報に基づく点列である場合、PDLより与えられたベジェ三次曲線を構成する三点の点情報(x,yで示される座標値)と曲線であることを示す曲線(Curve)情報をメモリに保存する(S604〜S606)。
【0049】
次に、点数情報を管理する領域にの点数情報に前記S602及びS604〜S606でメモリ上に記憶したパス描画点数分足し込み(S608)、線数情報についても記憶した線情報分足し込む(S609)。(図6における点列及び点数情報・線数情報のメモリへの記憶方法の具体例を図10に示す)
次に、PDLより与えられたパスコマンドが描画実行命令であった場合、図5のS502でメモリ上に保存したパスの点列に対し直線化処理を実行する(S504)。
【0050】
この時の直線化処理における点列情報の参照方法及び直線化後の再保存方法(図5のS504に該当)を図7のフローチャートに示す。
【0051】
図6においてメモリ上に記憶されたパスの線情報を読み出し(S701)、読み出した線情報が直線(Line)であるか否かを判断(S702)、直線であった場合図6においてメモリ上に記憶してあった点情報を一組を読み出し(S703)、図6と別の領域に点列情報記憶領域を確保し前記S701及びS703にて読み出した点列情報を記憶する(S704〜S705)。
【0052】
一方、S701で読み出した線情報が曲線(Curve)であった場合、前記図6のS604〜S607でメモリ領域に記憶した3点とその直前に記憶されていた点をメモリから読み出し(S706〜S707)、読み出した4点で構成されるベジェ三次曲線を直線で近似(近似の具体例を図9に示す)し(S710)、S710の近似処理(直線化処理)で得られたパス輪郭を直線のみで構成する線情報と点情報をメモリに保存する(S711〜S712)。
【0053】
次に図6のS609でメモリ上に保存した線数分の処理が終了したか否かを判断し(S713)、終了していない場合は処理が終了するまでS701〜S713の処理を繰り返す。(図7における直線化処理後の点列情報のメモリへの記憶方法の具体例を図11に示す)
次に、図7におけるフローチャートで示した直線化後のパスを構成する点列を参照し図形描画処理を実行し描画オブジェクト生成処理を実行する(S505)。
【0054】
この時の図形描画処理における点列情報参照方法と描画オブジェクト生成処理方法を図8のフローチャートに示す。
【0055】
図8の描画オブジェクト生成手段において参照される点列情報は図7のS704〜S705及びS711〜S712でメモリ領域に記憶したパスを構成する輪郭線を直線及び点のみで表したデータである。
【0056】
まず、S801においてメモリ上に記憶されている線情報を読み出し、線情報が直線であるか否かを判断する(S802)。
【0057】
S801で読み出した線情報が直線であった場合、x,y座標で構成される点情報をメモリから一組読み出し(S803)、線情報が終了か否かを判断(S804)、終了しない場合S801〜S804を繰り返す。
【0058】
更に前記S801〜S804で読み出したパスの輪郭線を構成する点列情報により描画オブジェクトを生成(S805)、描画オブジェクトを図3の305に示す画像メモリに保存し(S806)、パスコマンド処理を終了する。
【0059】
従来の印刷装置において上記のような処理を行っており、パスコマンド処理の一時記憶メモリ使用方法は冗長な部分があった。
【0060】
この点を改良し処理を効率化したのが図5・図12・図13・図14に示すフローチャートであり、図15・図16に示すパス点列のメモリ使用の一例である。
【0061】
以下、図5・図12・図13・図14に従って実施例を説明する。
なおこの場合の印刷装置内部の処理は一例として挙げてあり、必ずしもこれらの動作を行わなければならないという事ではない。
【0062】
(実施例1)
図12・図13・図14は上記の問題点を改良し、PDLから入力されたパスの輪郭線を表す点列のメモリへの効率的な記憶方法、更には直線化後のパスの点列のメモリへの効率的な記憶方法と参照方法をフローチャートに示すものである。
【0063】
ホストインタフェースを介して入力されPDL解析部により解析された印字データがパス描画に関するコマンドであった場合、当該パスコマンドが点列情報であるか否かを判断し(S501)、点列情報であった場合点列情報をメモリ上に一時的に記憶しておく(S502)。
【0064】
この時のPDLから与えられた点列情報のメモリ上への記憶処理(前記図5のS502に該当)を図12のフローチャートに示す。
【0065】
パスコマンドが直線情報に基づく点列であるか否かを判断(S1201)、直線である場合、直線を構成する点情報(x,yで示される座標値)をメモリに保存する(S1202)。
【0066】
一方、S1201で判断されたパスコマンドが曲線情報に基づく点列である場合、PDLより与えられたベジェ三次曲線を構成する3点の点情報(x,yで示される座標値)と前記3点の点情報をメモリに記憶する際の先頭の管理番号をメモリに保存し(S1203〜S1206)、管理No情報を1インクリメントする(S1207)。
【0067】
次に、点数情報を管理する点数情報に前記S1202及びS1203〜S1205でメモリ上に記憶したパス描画点数分足し込む(S1208)。(図12における点列及び点数情報・線数情報のメモリへの記憶方法の具体例を図15に示す)
次に、PDLより与えられたパスコマンドが描画実行命令であった場合、図5のS502でメモリ上に保存したパスの点列に対し直線化処理を実行する(S504)。
【0068】
この時の直線化処理における点列情報の参照方法及び直線化後の再保存方法(図5のS504に該当)を図13のフローチャートに示す。
【0069】
まずメモリから点列の読み出し処理に利用される処理Noを初期化し(S1301)、図12のS1207で記憶したパスの管理Noを読み出し(S1302)、現在の処理NoとS1302で読み出した管理Noが同一であるか否かを判断する(S1303)。
【0070】
同一でなかった場合、図12においてメモリ上に記憶してあった点情報を一組読み出し(S1304)、図12で保存したメモリの別の領域に点列情報記憶領域を確保し前記S1304で読み出した点列情報を記憶(S1305)、処理Noをインクリメントする(S1306)。
【0071】
一方、S1302で読み出したパスの管理Noが現在の処理Noと同一でなかった場合、前記図12のS1203〜S1205でメモリ領域に記憶した3点とその直前に記憶されていた点をメモリから読み出し(S1307〜S1310)、読み出した4点で構成されるベジェ三次曲線を直線で近似(近似の具体例を図9に示す)し(S1311)、S1311の近似処理(直線化処理)で得られたパス輪郭を直線で構成する点情報のみをメモリに保存し(S1312)、処理Noを3点分インクリメントする(S1313)。
【0072】
次に図12のS1208で保持したパスの管理No分の処理が終了したか否かを判断し(S1314)、終了していない場合は処理が終了するまでS1312〜S1314の処理を繰り返す。(図13における直線化処理後の点列情報のメモリへの記憶方法の具体例を図16に示す)
次に、図13のフローチャートで示した直線化処理で生成されたパスの点列を参照し図形描画処理を実行し描画オブジェクト生成処理を実行する(図5のS505)。
【0073】
この時の図形描画処理における点列情報参照方法と描画オブジェクト生成処理方法を図14のフローチャートに示す。
【0074】
図14の描画オブジェクト生成手段において参照される点列情報は図13のS1304及びS1312でメモリ領域に記憶したパスの輪郭線を点(x,y座標点)のみで表したデータである。
まず、S1401でx,y座標で構成される点情報をメモリから一組読み出し、点情報が終了か否かを判断(S1402)、メモリに記憶してある点情報が終了するまでS1401〜S1402を繰り返す。
【0075】
次に、前記S1401で読み出した点情報を元に描画オブジェクトを生成(S1403)、描画オブジェクトを図3の305に示す画像メモリに保存し(S1404)、パスコマンド処理を終了する。
以上のように、PDLから入力されたパスの点列をメモリに一時的に記憶する際に曲線を構成する点を識別する為の管理番号のみを記憶することによりメモリを効率的に使用することが可能となる。また、直線化処理を実行後のパスの点列をメモリに保持する場合曲線情報を持つ必要がなくなることでメモリ使用を更に効率化がすることが可能となる。更に、メモリを効率的に使用することにより点列データを参照する回数を削減することも可能となる為、パスコマンド処理時間を効率化することも可能となる。
【0076】
(実施例2)
上記実施例1においてはPDLより入力されたパスの点列をメモリに保持する際の記憶方法と、直線化後の点列の記憶方法を曲線情報に注目し効率化する方法について述べてきたが、特にパス描画命令処理中のメモリフルエラー発生時、図3の302を介して接続される外部記憶装置に対してパスの点列を記憶する機能を設けると共に、外部記憶装置へのパス点列記憶・読み出しの際にのみ実施例1記載のメモリ効率化処理を利用可能とすることで、使用可能なメモリ領域の拡大とアクセススピードの遅い外部記憶装置に位置するメモリ領域に対するアクセス頻度を低下させ、パスコマンドの処理効率が著しく低下するのを防止するようにしてもよい。
【0077】
(実施例3)
上記実施例においては、外部記憶装置に対してパス点列を記憶するトリガとしてメモリフルの発生を利用していたが、予め印刷装置内部にメモリエラー発生の可能性が高い状態を検知する為の空きメモリ量に対する一定の閾値を設け、作業メモリの空き容量が閾値を下回った場合に前記実施例(2)に示す使用可能なメモリ領域の拡大とアクセススピードの遅い外部記憶装置に位置するメモリ領域に対するアクセス頻度を低下させ、パスコマンドの処理効率が著しく低下するのを防止するようにしても良い。
【0078】
【発明の効果】
以上述べてきたように、パスコマンド処理における直線化処理後のデータ記憶の形態としてパスを構成する輪郭線を表す点の座標点のみを記憶する事でメモリ使用の効率化を計ることが可能となる。
【0079】
更に、かかる構成においてPDLより入力されたパスコマンドを記憶装置に記憶する際に曲線描画に利用される点情報管理番号のみを記憶しておくことで直線化処理或いは描画オブジェクト生成処理する際の記憶装置に保持されている点列情報へのアクセス頻度を下げる事ができ、効率的な描画オブジェクト生成処理を実現する事が可能となる。
【図面の簡単な説明】
【図1】本発明の印刷装置の実施の第1形態であるレーザビームプリンタの構成を示すブロック図である。
【図2】図1のレーザビームプリンタの機構を摸式的に示す図である。
【図3】図1のレーザビームプリンタに搭載されているプリンタコントローラの構成を示すブロック図である。
【図4】図3のプリンタコントローラにおける入力データ処理を機能ブロック別に示す図である。
【図5】従来及び本発明の実施例におけるパスコマンド処理を示したフローチャート
【図6】従来のパスコマンド入力時の点列情報のメモリへの保存方法を示したフローチャート。(図5におけるS502の詳細)
【図7】従来のパスの点列の直線化処理時の点列情報のメモリからの読み出しと再メモリへの登録方法を示したフローチャート。(図5におけるS504の詳細)
【図8】従来の直線化処理後の点列情報のメモリからの読み出しと描画オブジェクト生成方法を示したフローチャート。(図5におけるS505の詳細)
【図9】パスコマンドで指示された曲線を含む図形と、直線化の一例。
【図10】従来のPDLから入力されたパスコマンドで指示される点列のメモリへの保存方法の一例。
【図11】従来のパスコマンドで指示された曲線情報を含む点列を直線化後のメモリへの保存方法の一例。
【図12】本発明の実施例におけるパスコマンド入力時の点列情報のメモリへの保存方法を示したフローチャート。(図5におけるS502の詳細)
【図13】本発明の実施例におけるパスの点列の直線化処理時の点列情報のメモリからの読み出しと再メモリへの登録方法を示したフローチャート。(図5におけるS504の詳細)
【図14】本発明の実施例における直線化処理後の点列情報のメモリからの読み出しと描画オブジェクト生成方法を示したフローチャート。(図5におけるS505の詳細)
【図15】本発明におけるPDLから入力されたパスコマンドで指示される点列のメモリへの保存方法の一例。
【図16】本発明におけるパスコマンドで指示された曲線情報を含む点列を直線化後のメモリへの保存方法の一例。
【発明の属する技術分野】
本発明は、ホストコンピュータあるいは他のデバイスに接続されたプリンタコントローラにより制御される印刷装置などの出力装置に関するものであり、特にメモリ消費量を削減する手段を有する印刷装置において、PDLからの指示によって生成され印刷装置内部にデータとして一時記憶装置に保持する描画オブジェクト生成におけるパスコマンド処理を実行する際の直線化処理後の点列情報の記憶方法を効率化、或いはPDLから入力された曲線情報を含む点列情報に対し点列情報管理手段を設ける事により記憶方法を効率化する事で、メモリの効率的な使用を実現可能とする印刷装置に関するものである。
【0002】
【従来の技術】
従来の印刷装置および印刷システムでは、PDLより入力されたパスコマンド処理において直線化処理終了後、或いは直線化処理直前まで得られた点列情報を全て記憶装置に保持しており、メモリ使用において冗長となっていた。
【0003】
また、パスコマンド処理におけるメモリ使用効率が低下する事により、メモリ搭載量の少ない印刷装置、或いはページ中に複雑なパスコマンド処理が行われる場合、描画オブジェクト生成処理においてメモリオーバーが発生する事があった。
【0004】
また、パスコマンド処理における直線化処理において記憶装置に保持された全ての点列を参照する、或いは描画オブジェクト生成処理において記憶装置に保持されている直線化後の点列を全て参照する必要があった。
【0005】
以上のように、パスコマンド処理における記憶装置への点列保持の方法が冗長である事により、メモリ不足の発生、或いは記憶装置に保持された点列情報の参照において無駄な処理が発生していた。
【0006】
【発明が解決しようとする課題】
上記従来例では、PDLより入力されたパスコマンド処理において直線化処理終了後、或いは直線化処理直前まで得られた点列情報を全て記憶装置に保持しており、メモリ使用において冗長となり、メモリ使用効率を低下させていた。
【0007】
更に、パスコマンド処理におけるメモリ使用効率が低下する事により、メモリ搭載量の少ない印刷装置、或いはページ中に複雑なパスコマンド処理が行われる場合、描画オブジェクト生成処理においてメモリオーバーが発生し、描画処理を中断、更にエラー処理時に処理を継続した場合エラー発生時に処理していた描画オブジェクトに関しては印字不正となる事があった。
【0008】
更に、PDLより入力され記憶装置に保持された全ての点列を参照し直線化処理を行う事、或いは描画オブジェクト生成処理実行時、前記直線化処理により生成され記憶装置に保持されている直線化後の点列情報を全て参照する事により処理スピードを低下させる一因となる事があった。
【0009】
すなわち、パスコマンド処理における記憶装置への点列保持の方法が冗長であった為、メモリ不足が発生、或いは処理スピードが低下するなどの問題が発生していた。
【0010】
本発明は、上記問題点に鑑みてなされたものであり、パスコマンド処理における直線化処理後のデータ記憶の形態としてパスを構成する点の座標点のみを記憶する事でメモリ使用の効率化を計り、更にはPDLより入力されたパスコマンドを直線化処理或いは描画オブジェクト生成処理する際の記憶装置に保持されている点列情報へのアクセス頻度を下げる事で効率的な描画オブジェクト生成処理を可能とする印刷装置及び印刷システムを提供することを目的とするものである。
【0011】
【課題を解決するための手段】
上記目的を達成する本発明の印刷装置は以下に示す構成を備える。
【0012】
本発明にかかる第1の発明は、複数のページ記述言語を有する印刷装置において、前記複数のページ記述言語から最適なページ記述言語を選択する手段と、前記選択手段の結果に基づき選択されたページ記述言語を使用し入力されたデータ中のコマンドを解析するコマンド解析手段と、更に前記コマンド解析手段により解析されたコマンドから描画処理に利用される描画オブジェクトを生成する描画オブジェクト生成手段と、前記描画オブジェクトからビットマップイメージとして保持されるイメージデータを生成するイメージデータ生成手段と、更にイメージデータを記録媒体に形成する画像形成手段を有する画像処理装置であり、前記コマンド解析手段中の領域の塗り潰し・輪郭線の描画・クリッピング領域の指定を行う任意の直線や曲線で指定されるパスコマンド処理において、ページ記述言語から入力された直線及び曲線を含むパスの点列を記憶装置に記憶する第1の記憶手段と、前記第1の記憶手段により記憶されたパスの点列をページ記述言語よりコマンドによって指定された描画条件に従い直線化する直線化手段と、前記直線化手段において生成された点のみを記憶装置に保持する第2の記憶手段を設けたものである。
【0013】
本発明にかかる第2の発明は、前記第1の記憶手段において記憶されるパスの点列情報に対し、点列情報を管理する管理番号を付与する点列情報管理手段と、点列情報としてページ記述言語より入力された点と曲線情報に付与された管理番号及び点と曲線情報の総数を第1の記憶手段によって記憶する手段を設けたものである。
【0014】
本発明にかかる第3の発明は、プリンタコマンド解析からイメージデータ生成に至る処理において印刷装置内部で使用可能なメモリをオーバーしたか否かを判別する事が可能であるメモリオーバー判別手段を設けたものである。
【0015】
本発明にかかる第4の発明は、前記メモリオーバー判別手段において、メモリの空き領域が一定の値を下回った場合にメモリオーバーが発生する事を予測するメモリオーバー予測手段を設けたものである。
【0016】
本発明にかかる第5の発明は、パスコマンド処理実行時、前記メモリオーバー判別手段においてメモリオーバーが発生、あるいはメモリオーバー予測手段においてメモリオーバーが発生すると予測された場合、直線化手段により生成された点のみを記憶する第2の記憶手段によりメモリオーバーの発生を抑制することで描画処理を続行可能とする機能を設けたものである。
【0017】
本発明にかかる第6の発明は、パスコマンド処理実行時、前記メモリオーバー判別手段においてメモリオーバーが発生、あるいはメモリオーバー予測手段においてメモリオーバーが発生すると予測された場合、点列情報管理手段により生成された点と曲線情報のみを記憶する第1の記憶手段によりメモリオーバーの発生を抑制することで描画処理を続行可能とする機能を設けたものである。
【0018】
本発明にかかる第7の発明は、パスコマンド処理において描画オブジェクトを生成中にメモリオーバーが発生した場合、描画オブジェクト生成が完了していなくても生成済みの描画オブジェクトがあればイメージデータ生成手段に対し描画オブジェクトを送付しメモリの空き領域を確保する手段を設けたものである。
【0019】
(作用)
かかる構成において、パスコマンド処理における直線化処理後のデータ記憶の形態としてパスを構成する輪郭線を表す点の座標点のみを記憶する事でメモリ使用の効率化を計り、更にはPDLより入力されたパスコマンドを記憶装置に記憶する際に曲線描画に利用される点情報管理番号を記憶して置くことで直線化処理或いは描画オブジェクト生成処理する際の記憶装置に保持されている点列情報へのアクセス頻度を下げる事で効率的な描画オブジェクト生成処理を実現する事が可能となる。
【0020】
【発明の実施の形態】
まず、本発明の実施の形態を適用可能な出力装置の一例としてレーザビームプリンタの構成例を説明する。なお、本実施の形態は、レーザビームプリンタのみならず、例えばインクジェットプリンタ、MFP(コピー・ファックス・プリンタ等の機能を複数備えたマルチファンクションプリンタ)等の他の方式の出力装置にも適用可能である。
【0021】
図1は本発明の印刷装置の実施の第一形態であるレーザビームプリンタの構成を示すブロック図、図2は第1図のレーザビームプリンタの機構を摸式的に示す図、図3は図1のレーザビームプリンタに搭載されているプリンタコントローラの構成を示すブロック図である。
【0022】
カラー出力可能なレーザビームプリンタ102は、図1に示すように、ホストコンピュータなどの外部機器101から所定のページ記述言語方式のカラー多値情報を含む情報(以下、印字データという)が入力され、その印刷データを解析することによってイメージデータを生成するプリンタコントローラ103と、プリンタコントローラ103によって生成されたイメージデータが示す画像を用紙上に印刷するプリンタエンジン(以下、エンジンという)105と、ユーザとのインターフェースを司り、レーザビームプリンタ102に対する所望の動作を指示するための入力操作を行なうためのパネル部104とから構成される。
【0023】
次に、本実施の形態のレーザビームプリンタの構成について図2を参照しながら説明する。
【0024】
レーザビームプリンタ102は、図2に示すように、匡体201を備え、匡体201には、エンジン105を構成するための各機構と、その各機構による各印字プロセス処理(例えば、給紙処理など)に関する制御を行なうエンジン制御部及びプリンタコントローラ103(図1に示す)を収納する制御ボード収納部203とが内蔵されている。
【0025】
エンジン105を構成するための各機構としては、レーザ光の操作による感光ドラム上への静電潜像形成、その静電潜像の顕像化、その顕像の印刷用紙への転写を行なうための光学処理機構、印刷用紙に転写されたトナー像を定着させるための定着処理機構、印刷用紙の給紙処理機構、印刷用紙の搬送処理機構などが設けられている。
【0026】
光学処理機構は、半導体レーザ(図示せず)から発射されるレーザ光をプリンタコントローラ103から供給されたイメージデータに応じてオン、オフ駆動するレーザドライバ206を有し、半導体レーザから発射されたレーザ光は回転多面鏡207により走査方向に振られる。その主走査方向振られたレーザ光は反射ミラー208を介して感光ドラム205に導かれ、感光ドラム205上を主走査方向に露光する。レーザ光による走査露光によって感光ドラム205上には静電潜像が形成され、その潜像は現像器220から供給されるトナーによってトナー像に顕像化される。このトナーには、Y(イエロー)、M(マゼンダ)、C(シアン)、K(ブラック)の各トナーが用いられている。感光ドラム205上のトナー像は給紙処理機構によって副走査方向に同期して休止される印刷用紙に転写される。
【0027】
感光ドラム205および現像器229は着脱可能なカートリッジ204に収容されている。反射ミラー208は半透過型ミラーからなり、その裏面側にはビームディテクタ209が配置されている。ビームディテクタ209はレーザ光を検出し、その検出信号はプリンタコントローラ103に与えられる。プリンタコントローラ103ビームディテクタ209の検出信号に基づき主走査方向への露光タイミングを決定する水平同期信号を生成し、その水平同期信号はプリンタコントローラ103に出力される。
【0028】
定着処理機構は、印刷用紙に転写されたトナー像を熱圧によって定着させるための定着器216を有し、定着器216には、トナー像を加熱するためのヒータが設けられている。ヒータは、所定の定着温度が得られるようにエンジン制御部106で制御される。
【0029】
印刷用紙の給紙機構は、印刷用紙を収容するカセット210と手差し用トレイ219とを有し、カセット210の印刷用紙または手差しトレイ219の印刷用紙を選択的に給紙するように構成されている。カセット210は匡体201内に装着され、カセット210には、仕切り板(図示せず)の移動位置に応じて印刷用紙のサイズを電気的に検知するサイズ検知機構が設けられている。カセット210からはその最上の印刷用紙から1枚単位でカセット給紙クラッチ211の回転駆動によって給紙ローラ212まで搬送される。カセット給紙クラッチ211は、給紙毎に駆動手段(図示せず)によって間欠的に回転駆動されるカムからなり、そのカムが1回転する毎に1枚の印刷用紙が給紙される。
【0030】
給紙ローラ212は印刷用紙をその先端部がレジストシャッタ214に対応する位置まで搬送し、レジストシャッタ214は、給紙された印刷用紙の押圧及びその解除によって、その印刷用紙の給紙停止及びその解除を行ない、そのレジストシャッタ214の動作はレーザ光の副走査に同期するように制御される。
【0031】
これに対し、手差しトレイ219は匡体201に設けられ、ユーザによって手差しトレイ219に搭載された印刷用紙は給紙ローラ215でレジストシャッタ214に向けて給紙される。
【0032】
印刷用紙の搬送処理機構は、レジストシャッタ214による押圧が解除された印刷用紙を感光ドラム205に向けて搬送する搬送ローラ213と、定着器216から排出された印刷用紙を匡体201上部に形成された排紙トレイまで導くための各搬送ローラ217、218と、各搬送ローラ213、217、218を駆動するための駆動手段(図示せず)とを有する。
【0033】
匡体201には、パネル部104を構成するための操作パネル202が取り付けられている。操作パネル202には、指示入力操作のためのスイッチ群、情報表示のためのLED表示器、LCD表示器が設けられている。
【0034】
次に、プリンタコントローラ103の構成について図3を参照しながら説明する。
【0035】
プリンタコントローラ103は、外部機器101から送出された印刷データや装置の動作を指示する設定を入力する入力バッファ(図示せず)と、外部機器101へ送出する信号や機器情報データを含む出力データを一時的に保持する出力バッファ(図示せず)とが設けられているホストI/F部302を有し、ホストI/F部302は外部機器101との間でやりとりされる信号や通信パケットの入出力部を構成するとともに、外部機器101との間の通信制御を行なう。
【0036】
ホストI/F部302を介して入力された印刷データは、画像データ発生部303に与えられる。画像データ発生部303は予め定められている解析手段に基づき入力された印刷データの解析(例えばPDL解析処理)、その解析結果から中間言語である描画オブジェクトを生成し、更にプリンタエンジン105が処理可能なイメージデータの作成を行なう。具体的には、印刷データの解析、その解析によるオブジェクト情報の作成を行なうとともに、そのオブジェクト情報の作成と並行して、ラスタライズ処理を行なう。このラスタライズ処理では、印刷データに含まれる表示色RGB(加法混色)からプリンタエンジンが処理可能なYMCK(減法混色)への変換、印刷データに含まれる文字コードから予め格納されているビットパターン、アウトラインフォントなどのフォントデータへの変換などを行ない、ページ単位あるいはバンド単位でビットマップデータを作成し、このビットマップデータに対しディザパターンを用いる疑似階調処理を施し、印刷処理可能なイメージデータを生成する。
【0037】
この作成されたイメージデータは、画像メモリ305に格納される。画像メモリ305に格納されているイメージデータの読み出しはDMA制御部308で制御され、このDMA制御部308による画像メモリ305からのイメージデータの読み出しに対する制御はCPU309からの指示に基づき行なわれる。
【0038】
画像メモリ305から読み出されたイメージデータは、エンジンI/F部306を介してビデオ信号としてエンジン105に転送される。エンジンI/F部306には、エンジン105へ転送するビデオ信号を一時的に保持する出力バッファ(図示せず)と、エンジン105から送出された信号を一時的に保持する入力バッファ(図示せず)とが設けられ、エンジンI/F部306は、エンジン105との間でやりとりされる信号の入出力部を構成するとともに、エンジン105との間の通信制御を行なう。
【0039】
パネル部104(図1に示す)から操作入力によって出されたモード設定に関する指示などは、パネルI/F部301を介して入力され、パネルI/F部301はパネル部104とCPU309との間のインタフェースを構成する。(操作入力によって出されるモード設定などの印刷装置に対する指示は外部接続機器と双方向の通信を行うホストI/F部302を介しても指示可能である)CPU309は、パネル部104もしくはホスト外部機器101から指示されたモードに応じて上述の各ブロックに対する制御を行ない、この制御はROM304に格納されている制御プログラムに基づき実行される。このROM304に格納されている制御プログラムはシステムクロックによってタスクと称されるロードモジュール単位に時分割制御を行なうためのOS(オペレーティングシステム)と、このOSによって機能単位に実行制御される複数のロードモジュールとから構成される。このロードモジュールを含む制御プログラムは必要に応じてEEPROM(不揮発性メモリ)310に格納される。
【0040】
CPU309による演算処理の作業領域としては、RAM307が使用される。上述のCPU309を含む各ブロックはシステムバス311にCPU309がアクセス可能なように接続されている。システムバス311は、アドレスバスとシステムバスとから構成される。
【0041】
このように構成されたプリンタ制御システムにおいて、図5・図6・図7・図8及び図12・図13・図14は図3の304で示すプログラムROMに格納されるプログラムを表すフローチャートであり、図10・図11及び図15・図16は図3の307或いは310で示す一次記憶装置に格納されるデータ形式の一例を示したものである。
【0042】
次に図3のプリンタコントローラにおける入力データの処理経路を図4を用いて機能ブロック別に示す。
【0043】
外部接続装置からホストインタフェース部(302)を通って入力された印字データはPDL解析部(303a)によりコマンド解析され、次に描画オブジェクト生成部(303b)において描画オブジェクトとして生成されRAM上の作業メモリ(307)に一時的に記録される。
【0044】
そしてRAM上の作業メモリから描画メモリを随時読み出しラスタライズ処理を行い(303c)、最終的に記録媒体に記録される画像データをビットマップイメージに展開し画像メモリ(305)に格納、エンジンインタフェース部(306)に対して出力を行い記録媒体への記録が行われる。
【0045】
まず、図5・図6・図7・図8を基に従来のパスコマンド処理におけるパスの輪郭線を構成する点列のメモリへの記憶方法及び直線化処理実行時のメモリからの読み出しと直線化後の点列のメモリへの再記憶処理、更に描画オブジェクト生成時に参照される点列の読み出し方法について説明する。
【0046】
ホストインタフェースを介して入力されPDL解析部により解析された印字データがパス描画に関するコマンドであった場合、当該パスコマンドが点列情報であるか否かを判断し(S501)、点列情報であった場合点列情報をメモリ上に一時的に記憶しておく(S502)。
この時のPDLから与えられた点列情報のメモリ上への記憶処理(前記図5のS502に該当)を図6のフローチャートに示す。
【0047】
パスコマンドが直線情報に基づく点列であるか否かを判断(S601)、直線である場合、直線を構成する点情報(x,yで示される座標値)をメモリに保存(S602)、更に直線(Line)情報をメモリに保存する(S603)。
【0048】
一方、S601で判断されたパスコマンドが曲線情報に基づく点列である場合、PDLより与えられたベジェ三次曲線を構成する三点の点情報(x,yで示される座標値)と曲線であることを示す曲線(Curve)情報をメモリに保存する(S604〜S606)。
【0049】
次に、点数情報を管理する領域にの点数情報に前記S602及びS604〜S606でメモリ上に記憶したパス描画点数分足し込み(S608)、線数情報についても記憶した線情報分足し込む(S609)。(図6における点列及び点数情報・線数情報のメモリへの記憶方法の具体例を図10に示す)
次に、PDLより与えられたパスコマンドが描画実行命令であった場合、図5のS502でメモリ上に保存したパスの点列に対し直線化処理を実行する(S504)。
【0050】
この時の直線化処理における点列情報の参照方法及び直線化後の再保存方法(図5のS504に該当)を図7のフローチャートに示す。
【0051】
図6においてメモリ上に記憶されたパスの線情報を読み出し(S701)、読み出した線情報が直線(Line)であるか否かを判断(S702)、直線であった場合図6においてメモリ上に記憶してあった点情報を一組を読み出し(S703)、図6と別の領域に点列情報記憶領域を確保し前記S701及びS703にて読み出した点列情報を記憶する(S704〜S705)。
【0052】
一方、S701で読み出した線情報が曲線(Curve)であった場合、前記図6のS604〜S607でメモリ領域に記憶した3点とその直前に記憶されていた点をメモリから読み出し(S706〜S707)、読み出した4点で構成されるベジェ三次曲線を直線で近似(近似の具体例を図9に示す)し(S710)、S710の近似処理(直線化処理)で得られたパス輪郭を直線のみで構成する線情報と点情報をメモリに保存する(S711〜S712)。
【0053】
次に図6のS609でメモリ上に保存した線数分の処理が終了したか否かを判断し(S713)、終了していない場合は処理が終了するまでS701〜S713の処理を繰り返す。(図7における直線化処理後の点列情報のメモリへの記憶方法の具体例を図11に示す)
次に、図7におけるフローチャートで示した直線化後のパスを構成する点列を参照し図形描画処理を実行し描画オブジェクト生成処理を実行する(S505)。
【0054】
この時の図形描画処理における点列情報参照方法と描画オブジェクト生成処理方法を図8のフローチャートに示す。
【0055】
図8の描画オブジェクト生成手段において参照される点列情報は図7のS704〜S705及びS711〜S712でメモリ領域に記憶したパスを構成する輪郭線を直線及び点のみで表したデータである。
【0056】
まず、S801においてメモリ上に記憶されている線情報を読み出し、線情報が直線であるか否かを判断する(S802)。
【0057】
S801で読み出した線情報が直線であった場合、x,y座標で構成される点情報をメモリから一組読み出し(S803)、線情報が終了か否かを判断(S804)、終了しない場合S801〜S804を繰り返す。
【0058】
更に前記S801〜S804で読み出したパスの輪郭線を構成する点列情報により描画オブジェクトを生成(S805)、描画オブジェクトを図3の305に示す画像メモリに保存し(S806)、パスコマンド処理を終了する。
【0059】
従来の印刷装置において上記のような処理を行っており、パスコマンド処理の一時記憶メモリ使用方法は冗長な部分があった。
【0060】
この点を改良し処理を効率化したのが図5・図12・図13・図14に示すフローチャートであり、図15・図16に示すパス点列のメモリ使用の一例である。
【0061】
以下、図5・図12・図13・図14に従って実施例を説明する。
なおこの場合の印刷装置内部の処理は一例として挙げてあり、必ずしもこれらの動作を行わなければならないという事ではない。
【0062】
(実施例1)
図12・図13・図14は上記の問題点を改良し、PDLから入力されたパスの輪郭線を表す点列のメモリへの効率的な記憶方法、更には直線化後のパスの点列のメモリへの効率的な記憶方法と参照方法をフローチャートに示すものである。
【0063】
ホストインタフェースを介して入力されPDL解析部により解析された印字データがパス描画に関するコマンドであった場合、当該パスコマンドが点列情報であるか否かを判断し(S501)、点列情報であった場合点列情報をメモリ上に一時的に記憶しておく(S502)。
【0064】
この時のPDLから与えられた点列情報のメモリ上への記憶処理(前記図5のS502に該当)を図12のフローチャートに示す。
【0065】
パスコマンドが直線情報に基づく点列であるか否かを判断(S1201)、直線である場合、直線を構成する点情報(x,yで示される座標値)をメモリに保存する(S1202)。
【0066】
一方、S1201で判断されたパスコマンドが曲線情報に基づく点列である場合、PDLより与えられたベジェ三次曲線を構成する3点の点情報(x,yで示される座標値)と前記3点の点情報をメモリに記憶する際の先頭の管理番号をメモリに保存し(S1203〜S1206)、管理No情報を1インクリメントする(S1207)。
【0067】
次に、点数情報を管理する点数情報に前記S1202及びS1203〜S1205でメモリ上に記憶したパス描画点数分足し込む(S1208)。(図12における点列及び点数情報・線数情報のメモリへの記憶方法の具体例を図15に示す)
次に、PDLより与えられたパスコマンドが描画実行命令であった場合、図5のS502でメモリ上に保存したパスの点列に対し直線化処理を実行する(S504)。
【0068】
この時の直線化処理における点列情報の参照方法及び直線化後の再保存方法(図5のS504に該当)を図13のフローチャートに示す。
【0069】
まずメモリから点列の読み出し処理に利用される処理Noを初期化し(S1301)、図12のS1207で記憶したパスの管理Noを読み出し(S1302)、現在の処理NoとS1302で読み出した管理Noが同一であるか否かを判断する(S1303)。
【0070】
同一でなかった場合、図12においてメモリ上に記憶してあった点情報を一組読み出し(S1304)、図12で保存したメモリの別の領域に点列情報記憶領域を確保し前記S1304で読み出した点列情報を記憶(S1305)、処理Noをインクリメントする(S1306)。
【0071】
一方、S1302で読み出したパスの管理Noが現在の処理Noと同一でなかった場合、前記図12のS1203〜S1205でメモリ領域に記憶した3点とその直前に記憶されていた点をメモリから読み出し(S1307〜S1310)、読み出した4点で構成されるベジェ三次曲線を直線で近似(近似の具体例を図9に示す)し(S1311)、S1311の近似処理(直線化処理)で得られたパス輪郭を直線で構成する点情報のみをメモリに保存し(S1312)、処理Noを3点分インクリメントする(S1313)。
【0072】
次に図12のS1208で保持したパスの管理No分の処理が終了したか否かを判断し(S1314)、終了していない場合は処理が終了するまでS1312〜S1314の処理を繰り返す。(図13における直線化処理後の点列情報のメモリへの記憶方法の具体例を図16に示す)
次に、図13のフローチャートで示した直線化処理で生成されたパスの点列を参照し図形描画処理を実行し描画オブジェクト生成処理を実行する(図5のS505)。
【0073】
この時の図形描画処理における点列情報参照方法と描画オブジェクト生成処理方法を図14のフローチャートに示す。
【0074】
図14の描画オブジェクト生成手段において参照される点列情報は図13のS1304及びS1312でメモリ領域に記憶したパスの輪郭線を点(x,y座標点)のみで表したデータである。
まず、S1401でx,y座標で構成される点情報をメモリから一組読み出し、点情報が終了か否かを判断(S1402)、メモリに記憶してある点情報が終了するまでS1401〜S1402を繰り返す。
【0075】
次に、前記S1401で読み出した点情報を元に描画オブジェクトを生成(S1403)、描画オブジェクトを図3の305に示す画像メモリに保存し(S1404)、パスコマンド処理を終了する。
以上のように、PDLから入力されたパスの点列をメモリに一時的に記憶する際に曲線を構成する点を識別する為の管理番号のみを記憶することによりメモリを効率的に使用することが可能となる。また、直線化処理を実行後のパスの点列をメモリに保持する場合曲線情報を持つ必要がなくなることでメモリ使用を更に効率化がすることが可能となる。更に、メモリを効率的に使用することにより点列データを参照する回数を削減することも可能となる為、パスコマンド処理時間を効率化することも可能となる。
【0076】
(実施例2)
上記実施例1においてはPDLより入力されたパスの点列をメモリに保持する際の記憶方法と、直線化後の点列の記憶方法を曲線情報に注目し効率化する方法について述べてきたが、特にパス描画命令処理中のメモリフルエラー発生時、図3の302を介して接続される外部記憶装置に対してパスの点列を記憶する機能を設けると共に、外部記憶装置へのパス点列記憶・読み出しの際にのみ実施例1記載のメモリ効率化処理を利用可能とすることで、使用可能なメモリ領域の拡大とアクセススピードの遅い外部記憶装置に位置するメモリ領域に対するアクセス頻度を低下させ、パスコマンドの処理効率が著しく低下するのを防止するようにしてもよい。
【0077】
(実施例3)
上記実施例においては、外部記憶装置に対してパス点列を記憶するトリガとしてメモリフルの発生を利用していたが、予め印刷装置内部にメモリエラー発生の可能性が高い状態を検知する為の空きメモリ量に対する一定の閾値を設け、作業メモリの空き容量が閾値を下回った場合に前記実施例(2)に示す使用可能なメモリ領域の拡大とアクセススピードの遅い外部記憶装置に位置するメモリ領域に対するアクセス頻度を低下させ、パスコマンドの処理効率が著しく低下するのを防止するようにしても良い。
【0078】
【発明の効果】
以上述べてきたように、パスコマンド処理における直線化処理後のデータ記憶の形態としてパスを構成する輪郭線を表す点の座標点のみを記憶する事でメモリ使用の効率化を計ることが可能となる。
【0079】
更に、かかる構成においてPDLより入力されたパスコマンドを記憶装置に記憶する際に曲線描画に利用される点情報管理番号のみを記憶しておくことで直線化処理或いは描画オブジェクト生成処理する際の記憶装置に保持されている点列情報へのアクセス頻度を下げる事ができ、効率的な描画オブジェクト生成処理を実現する事が可能となる。
【図面の簡単な説明】
【図1】本発明の印刷装置の実施の第1形態であるレーザビームプリンタの構成を示すブロック図である。
【図2】図1のレーザビームプリンタの機構を摸式的に示す図である。
【図3】図1のレーザビームプリンタに搭載されているプリンタコントローラの構成を示すブロック図である。
【図4】図3のプリンタコントローラにおける入力データ処理を機能ブロック別に示す図である。
【図5】従来及び本発明の実施例におけるパスコマンド処理を示したフローチャート
【図6】従来のパスコマンド入力時の点列情報のメモリへの保存方法を示したフローチャート。(図5におけるS502の詳細)
【図7】従来のパスの点列の直線化処理時の点列情報のメモリからの読み出しと再メモリへの登録方法を示したフローチャート。(図5におけるS504の詳細)
【図8】従来の直線化処理後の点列情報のメモリからの読み出しと描画オブジェクト生成方法を示したフローチャート。(図5におけるS505の詳細)
【図9】パスコマンドで指示された曲線を含む図形と、直線化の一例。
【図10】従来のPDLから入力されたパスコマンドで指示される点列のメモリへの保存方法の一例。
【図11】従来のパスコマンドで指示された曲線情報を含む点列を直線化後のメモリへの保存方法の一例。
【図12】本発明の実施例におけるパスコマンド入力時の点列情報のメモリへの保存方法を示したフローチャート。(図5におけるS502の詳細)
【図13】本発明の実施例におけるパスの点列の直線化処理時の点列情報のメモリからの読み出しと再メモリへの登録方法を示したフローチャート。(図5におけるS504の詳細)
【図14】本発明の実施例における直線化処理後の点列情報のメモリからの読み出しと描画オブジェクト生成方法を示したフローチャート。(図5におけるS505の詳細)
【図15】本発明におけるPDLから入力されたパスコマンドで指示される点列のメモリへの保存方法の一例。
【図16】本発明におけるパスコマンドで指示された曲線情報を含む点列を直線化後のメモリへの保存方法の一例。
Claims (7)
- 複数のページ記述言語を有する印刷装置において、前記複数のページ記述言語から最適なページ記述言語を選択する手段と、前記選択手段の結果に基づき選択されたページ記述言語を使用し入力されたデータ中のコマンドを解析するコマンド解析手段とを有し、更に前記コマンド解析手段により解析されたコマンドから描画処理に利用される描画オブジェクトを生成する描画オブジェクト生成手段と、前記描画オブジェクトからビットマップイメージとして保持されるイメージデータを生成するイメージデータ生成手段を有し、更にイメージデータを記録媒体に形成する画像形成手段を有する画像処理装置であり、前記コマンド解析手段中の領域の塗り潰し・輪郭線の描画・クリッピング領域の指定を行う任意の直線や曲線で指定されるパスコマンド処理において、ページ記述言語から入力された直線及び曲線を含むパスの点列を記憶装置に記憶する第1の記憶手段を有し、前記第1の記憶手段により記憶されたパスの点列をページ記述言語よりコマンドによって指定された描画条件に従い直線化する直線化手段を有し、前記直線化手段において生成された点のみを記憶装置に保持する第2の記憶手段を有することでメモリ使用効率を向上する事を特徴とする印刷装置。
- 前記請求項1記載の第1の記憶手段において記憶されるパスの点列情報に対し、点列情報を管理する管理番号を付与する点列情報管理手段を有し、点列情報としてページ記述言語より入力された点と曲線情報に付与された管理番号及び点と曲線情報の総数を第1の記憶手段によって記憶する手段を有する事で、メモリ使用効率を向上する事を特徴とする印刷装置。
- プリンタコマンド解析からイメージデータ生成に至る処理において印刷装置内部で使用可能なメモリをオーバーしたか否かを判別する事が可能であるメモリオーバー判別手段を有することを特徴とする請求項1〜2記載の印刷装置。
- 前記メモリオーバー判別手段において、メモリの空き領域が一定の値を下回った場合にメモリオーバーが発生する事を予測するメモリオーバー予測手段を有する事を特徴とする請求項3記載の印刷装置。
- パスコマンド処理実行時、前記メモリオーバー判別手段においてメモリオーバーが発生、あるいはメモリオーバー予測手段においてメモリオーバーが発生すると予測された場合、請求項1記載の直線化手段により生成された点のみを記憶する第2の記憶手段によりメモリオーバーの発生を抑制することで描画処理を続行可能とする事を特徴とする印刷装置。
- パスコマンド処理実行時、前記メモリオーバー判別手段においてメモリオーバーが発生、あるいはメモリオーバー予測手段においてメモリオーバーが発生すると予測された場合、請求項2記載の点列情報管理手段により生成された点と曲線情報のみを記憶する第1の記憶手段によりメモリオーバーの発生を抑制することで描画処理を続行可能とする事を特徴とする印刷装置。
- パスコマンド処理において描画オブジェクトを生成中にメモリオーバーが発生した場合、描画オブジェクト生成が完了していなくても生成済みの描画オブジェクトがあった場合は請求項1記載のイメージデータ生成手段に対し描画オブジェクトを送付しメモリの空き領域を確保する手段を有する事を特徴とする印刷装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002197104A JP2004034583A (ja) | 2002-07-05 | 2002-07-05 | 印刷装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002197104A JP2004034583A (ja) | 2002-07-05 | 2002-07-05 | 印刷装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004034583A true JP2004034583A (ja) | 2004-02-05 |
Family
ID=31704962
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002197104A Withdrawn JP2004034583A (ja) | 2002-07-05 | 2002-07-05 | 印刷装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004034583A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015020384A (ja) * | 2013-07-22 | 2015-02-02 | キヤノン株式会社 | ディスプレイリストを生成する装置、方法、プログラム |
-
2002
- 2002-07-05 JP JP2002197104A patent/JP2004034583A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015020384A (ja) * | 2013-07-22 | 2015-02-02 | キヤノン株式会社 | ディスプレイリストを生成する装置、方法、プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100524568B1 (ko) | 인쇄 제어 장치 및 그 표시 방법 | |
JP4560565B2 (ja) | 情報処理装置、制御方法およびコンピュータ読み取り可能な制御プログラムを格納した記憶媒体 | |
JP2000025277A (ja) | 印刷制御方法及び装置 | |
JP3673684B2 (ja) | 情報処理装置、情報処理方法およびコンピュータ読み取り可能なプログラムを格納した記憶媒体 | |
JPH1148580A (ja) | 印刷装置 | |
JP4054437B2 (ja) | 印刷装置、ジョブ管理装置、印刷装置における画像情報管理方法、ジョブ管理装置におけるジョブ管理方法、および記憶媒体 | |
JP2004034583A (ja) | 印刷装置 | |
JP3624049B2 (ja) | 画像形成装置 | |
JP2005131809A (ja) | 印刷装置 | |
JP3513509B2 (ja) | 印刷制御方法及び装置 | |
JP3544132B2 (ja) | 印刷装置、印刷制御方法および記憶媒体並びに画像処理方法 | |
JP2006302036A (ja) | 色処理モード切替方法、及び該方法を実現する情報処理装置とその制御プログラム | |
JP2006048215A (ja) | 印刷装置における画質向上手法 | |
JP2007250002A (ja) | 情報処理装置、制御方法およびコンピュータ読み取り可能な制御プログラムを格納した記憶媒体 | |
JP2006244132A (ja) | 印刷システム | |
JP3472290B2 (ja) | 印刷制御方法及び装置 | |
JP2002049475A (ja) | 画像形成装置およびその制御方法ならびに記憶媒体 | |
JP4208345B2 (ja) | 画像形成装置及びその制御方法 | |
JP2005059550A (ja) | 画像形成装置およびその制御方法 | |
JP2002144644A (ja) | 画像形成装置および画像形成方法 | |
JP2004338196A (ja) | 印刷制御装置および印刷制御方法およびコンピュータが読み取り可能な記憶媒体およびプログラム | |
JP2004157610A (ja) | 情報処理装置 | |
JP2006243908A (ja) | 画像形成装置 | |
JP2006076017A (ja) | 画像形成装置 | |
JP2006244131A (ja) | 印刷システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20050906 |