JPH0930060A - プリンタ制御装置及び方法 - Google Patents

プリンタ制御装置及び方法

Info

Publication number
JPH0930060A
JPH0930060A JP7178700A JP17870095A JPH0930060A JP H0930060 A JPH0930060 A JP H0930060A JP 7178700 A JP7178700 A JP 7178700A JP 17870095 A JP17870095 A JP 17870095A JP H0930060 A JPH0930060 A JP H0930060A
Authority
JP
Japan
Prior art keywords
font
resolution
printer control
data
scalable
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.)
Granted
Application number
JP7178700A
Other languages
English (en)
Other versions
JP3119429B2 (ja
Inventor
Kiyohiro Tsunekawa
清宏 恒川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP07178700A priority Critical patent/JP3119429B2/ja
Priority to US08/677,108 priority patent/US5737501A/en
Priority to EP96111294A priority patent/EP0753826B1/en
Priority to DE69633813T priority patent/DE69633813D1/de
Publication of JPH0930060A publication Critical patent/JPH0930060A/ja
Application granted granted Critical
Publication of JP3119429B2 publication Critical patent/JP3119429B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/002Generic data access
    • G06K2215/0028Generic data access characterised by the format per se
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/004Generic data transformation
    • G06K2215/0054Geometric transformations, e.g. on rasterised data

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Record Information Processing For Printing (AREA)
  • Dot-Matrix Printers And Others (AREA)

Abstract

(57)【要約】 【課題】 文字を含む描画オブジェクト作成中に、解像
度変換を行う必要が生じた場合、フォントの種類に応じ
て再生成方法を選択することで、印字品位の低下を防ぐ
ことを目的とする。また、異なるページから同時に参照
されている描画オブジェクトは、別オブジェクトとする
ことで他ページの品位低下を防ぐことを目的とする。 【解決手段】 印刷データに応じて描画オブジェクトを
生成する手段と、解像度低下時にフォントの種類に応じ
て解像度の異なるパターンの生成方法を選択する手段
(スケーラブルフォントは再スケーリングする)とによ
り実現される。また、複数ページ間で描画オブジェクト
を共有するキャッシュ手段と、解像度低下時には別オブ
ジェクトを生成する手段とにより実現される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、外部からの印刷デ
ータに応じて生成される中間的なデータ形式で記述され
る描画オブジェクトに基づき、イメージを描画するプリ
ンタ制御装置及び方法。
【0002】
【従来の技術】従来から、外部から送られてくる印刷デ
ータに基づいてプリント動作を行う印刷装置では主にコ
ストダウンのために、該印刷データや該印刷データに基
づいて作成される描画オブジェクト、ラスタライズ後の
ビットイメージを格納するためのメモリ(RAM)の削
減が要求されている。近年、該印刷データの処理解像度
は向上の一途をたどっており、RAMの削減要求は益々
強まっている。そのための従来技術として、以下に説明
するバンディング方式による印刷が行われている。
【0003】バンディング方式とは、印刷するページの
一部分を構成するようなバンド領域を少なくとも2つ以
上用意し、該バンド領域の一方にラスタライズされたラ
スタイメージをビデオ信号として一定速度で印刷部(=
プリンタエンジン)へ送出(=シップ)すると同時に、
作成済みの描画オブジェクトをもう一方のバンド領域に
ラスタライズしてゆき、1バンド分のシップが終わる
と、今度は、先ほどラスタライズが済んだバンド領域か
らシップを開始するといったように、ラスタライズとシ
ップを交互に繰り返して印刷する方式を言う。
【0004】バンディング方式に対して、1ページ分の
ラスタイメージを格納可能なだけのメモリ(=ラスタメ
モリ)を用意し、全描画オブジェクトのラスタライズが
完了した後の該ラスタイメージをプリンタエンジンへシ
ップする方式を、フルペイント方式と呼ぶ。
【0005】バンディング方式では、1ページ分のラス
タメモリを用意する必要がないだけでなく、ラスタライ
ズとシップを同時に行えるため、処理速度の向上も計る
ことができるが、以下に挙げるような問題点があった。
【0006】例えば、電子写真方式を採用したプリンタ
のように、プリントアウトの途中で該プリント動作を中
断することが困難な印刷装置では、プリンタエンジンへ
のビテオ信号の送出は一定速度で行われるため、1バン
ド目のシップが開始された後は、各バンド領域へのラス
タライズ時間は、1バンド分の該ビデオ信号送出時間
(全バンドで一定)より短くなければならない。ラスタ
イメージを構成する図形が複雑であったり、大量のフォ
ントを描画する等の理由により、該ラスタライズ時間が
ビデオ信号送出時間よりも多くなる場合では、出力結果
の一部が欠落してしまう(以下、オーバーランと呼
ぶ)。
【0007】また、バンディング方式では、1ページ分
のラスタメモリを保持していないため、中間データ形式
である描画オブジェクトを少なくとも1ページ分は蓄え
ておく必要があるが、大きなイメージデータ等の印刷デ
ータでは1ページ分の描画オブジェクトさえ格納不可能
となる可能性がある(以下、メモリオーバーと呼ぶ)。
メモリオーバーが発生した場合、フルペイント方式で
は、一旦、作成済みの描画オブジェクトを1ページ分の
ラスタメモリにラスタライズしてしまえば、該描画オブ
ジェクト用に使用していたメモリを再利用して、続く描
画オブジェクトを作成することが可能であるため問題な
い。
【0008】上述したように、バンディング方式ではオ
ーバーランやメモリオーバーが発生する印刷データを、
必要なだけのラスタメモリが用意されていないシステム
で問題なく処理するためには、例えば、プリンタエンジ
ンへ送出する前の処理解像度を低下させ、動的にフルペ
イント方式へ移行する方法が採用されている(以下、デ
グレード処理と呼ぶ)。
【0009】例えば、A4用紙1ページ分のラスタイメ
ージを600dpiで作成すると約4MBのメモリが必
要であるが、300dpiでは約1MBで済む。
【0010】上記デグレード処理を実現するためには、
1ページ分の描画オブジェクトを格納するに要するメモ
リ容量と、各描画オブジェクトのラスタライズに必要な
時間を各バンド毎に加算・管理し、描画オブジェクトの
容量がある一定容量よりも多くなるか、または、1バン
ド分のラスタライズ時間が1バンド分のシップ時間(=
一定値)よりも多くなるバンドが1ページ中に存在する
かを調べ、上記に該当する場合には、予め用意されてい
たバンドラスタ用のメモリと、該描画オブジェクトに対
して間引き処理等を行うことで得られる描画オブジェク
ト格納部の空きメモリを用いて、低解像度用のラスタメ
モリを用意する。この時、一度に1ページ分の低解像度
ラスタメモリが得られない場合でも、解像度変換された
描画オブジェクトを順番にラスタライズしてゆき、参照
されている最後のバンドの描画が終了した時点で該描画
オブジェクトを削除することで、空きメモリを獲得でき
るようになっている。
【0011】また、フォントのアウトラインを構成する
座標点列情報を元に該フォントパターンを生成するスケ
ーラブルフォントを採用しているプリンタ等では、一度
要求された文字コードに対応するアウトラインパターン
を該ワークメモリ内の一部に蓄えておき、再度同一の文
字コードが印刷データとして要求された場合は、前記ワ
ークメモリ内のデータを再度参照してラスタライズを行
う機能(以下、フォントキャッシュ機能)も一般的に採
用されており、処理速度向上や該プリンタのワークメモ
リ削減が計られる。
【0012】更に、前記フォントキャッシュでは、どの
ページから参照されているかを文字単位で管理すること
で、連続して作成される複数ページ間にまたがって1つ
のフォントキャッシュを共有することも行われている。
【0013】
【発明が解決しようとしている課題】しかしながら上記
従来例では、以下に説明するような問題点があった。す
なわち、従来例で説明したデグレード処理では、当初6
00dpiで作成された描画オブジェクトを元にして、
間引き処理等で300dpiの描画オブジェクトを生成
するため、単純に間引くと線が消える等のデータ欠落が
起き、あるいは周りのドット情報を考慮して補間しなが
ら間引くと逆にイメージが潰れてしまう等、解像度低下
に伴う出力結果の品位劣化が否めなかった。
【0014】上記印字品位の劣化は、印字サイズが小さ
なフォントで顕著である一方、比較的大きなサイズのフ
ォントでは、解像度変換の処理効率を優先させたい場合
もある。
【0015】また、外部より登録されるフォントデータ
は、一般的に印刷処理中のある時点で該登録フォントデ
ータが削除可能であったり、同一文字コードに異なるパ
ターンを順次登録することができることから、パターン
内容の書き変わりを避ける意味で一律に間引き処理を行
っていた。
【0016】また、装置内部に予め準備されているドッ
トフォントに対して、拡大・縮小等の修飾指定がある場
合は、修飾後のパターンが描画オブジェクトとして生成
されるため、間引き処理以外では解像度変換が行えず、
メモリ効率的に改善の余地があった。
【0017】また、連続して複数の異なるページを作成
する際、前記フォントキャッシュ部によってひとつのフ
ォントオブジェクトを複数のページから参照している場
合に、あるページで解像度低下が発生すると、同一フォ
ントオブジェクトを参照している若いページのラスタラ
イズが完了するまでは、解像度低下処理を進めることが
できない。すなわち、ページ排紙待ち状態となってしま
い、処理速度の観点から問題となっている。
【0018】更に、紙等の記憶媒体の両面に印刷可能な
両面印刷部を有するプリンタにおいては、外部より送ら
れてくる印刷データからシーケンシャルに作成されるペ
ージの順序(描画オブジェクトを作成する順序)と、ラ
スタライズしたラスタイメージを印刷部に送出する順序
が一致しない場合がある。すなわち、先ず2ページ目
(裏面)をラスタライズし、後に1ページ目をラスタラ
イズするような場合があるため、2ページ目に属する描
画オブジェクトの作成が終了するまで、1ページ目の描
画オブジェクトを保存しておく必要がある。この時、前
記フォントキャッシュ部の機能により、1ページ目と2
ページ目とで1つのフォントオブジェクトを共有してい
る場合に、2ページ目で解像度低下が発生すると、ラス
タライズが済んでいないページ1にも属するフォントオ
ブジェクトの解像度を低下させてしまうため、本来解像
度低下させる必要がないページ1も強制的に解像度を低
下させる必要があった。
【0019】よって上記課題に鑑み、本発明の目的は、
文字を含む描画オブジェクト作成中に、解像度変換を行
う必要が生じた場合、フォントの種類に応じて再生成方
法を選択することで、印字品位の低下を防ぐこと。ま
た、異なるページから同時に参照されている描画オブジ
ェクトは、別オブジェクトとすることで他ページの品位
低下を防ぐことにある。
【0020】
【課題を解決するための手段】上記問題点を解決するた
めの本発明に係るプリンタ制御装置は以下のような構成
を備える。即ち、入力されるた印刷データに応じて中間
的なデータ形式で記述される描画オブジェクトを生成す
る描画オブジェクト生成手段と、描画オブジェクトを作
成した時の解像度と異なる解像度でイメージを作成する
必要が生じた場合に、フォントオブジェクトである描画
オブジェクトについては、フォントの種類、あるいはサ
イズに応じてフォントオブジェクトの生成手段を選択す
る選択手段とを有することを特徴とする。
【0021】また、上記問題点を解決するための本発明
に係るプリンタ制御装置は以下のような構成を備える。
即ち、印刷データとして同一の文字種、同一文字コード
を二回以上要求された場合に、以前に生成した印刷デー
タに対応するフォントオブジェクトを検索し、前記フォ
ントオブジェクトが削除されていない場合は、フォント
オブジェクトを参照してフォントオブジェクトを生成す
る生成手段と、描画オブジェクトを作成した時と異なる
解像度でイメージを作成する必要が生じた場合には、共
有していたフォントオブジェクトと異なる解像度のフォ
ントオブジェクトを再生成する再生成手段とを有するこ
とを特徴とする。
【0022】また、上記問題点を解決するための本発明
に係るプリンタ制御方法は以下のような構成を備える。
即ち、入力される印刷データに応じて中間的なデータ形
式で記述される描画オブジェクトを生成する描画オブジ
ェクト生成工程と、描画オブジェクトを作成した時の解
像度と異なる解像度でイメージを作成する必要が生じた
場合に、フォントオブジェクトである描画オブジェクト
については、フォントの種類、あるいはサイズに応じて
フォントオブジェクトの生成工程を選択する選択工程と
を有することを特徴とする。
【0023】また、上記問題点を解決するための本発明
に係るプリンタ制御方法は以下のような構成を備える。
即ち、印刷データとして同一の文字種、同一文字コード
を二回以上要求された場合に、一度目に生成した印刷デ
ータに対応するフォントオブジェクトを検索し、前記フ
ォントオブジェクトが削除されていない場合は、フォン
トオブジェクトを参照してイメージ描画を行うプリンタ
制御方法において、描画オブジェクトを作成した時と異
なる解像度でイメージを作成する必要が生じた場合に
は、共有していたフォントオブジェクトと異なる解像度
のフォントオブジェクトを再生成する再生成工程とを有
することを特徴とする。
【0024】
【発明の実施の形態】以下に添付の図面を参照して本発
明の好適な発明の実施の形態について説明する。
【0025】(実施例1)図1は本発明を適用可能なプ
リンタ制御装置の構成を示す断面図であり、例えば、レ
ーザビームプリンタ(以下LBP)の場合を示す。な
お、本発明を適用可能な文字処理装置はLBPに限られ
るものではなく、他のプリント方式のプリンタ装置でも
構わない。また、本発明の機能が実行されるのであれ
ば、単体の機器であっても、LAN等のネットワークを
介して処理が行われるシステムであっても良い。
【0026】同図において、1000はLBP本体であ
り、外部に接続されてるいホストコンピュータ(図2の
100)から供給される文字情報(フォント書体名や文
字サイズ、文字コード等)や図形データ(円、ライン、
矩形等)あるいはマクロ命令などを入力して記憶すると
ともに、それらの情報に従って対応する文字パターンや
図形パターンなどを作成し、記録媒体である記録紙上に
像を形成する。1012は操作のためのスイッチ及びL
ED表示器などが配されている操作パネル、1001は
LBP1000全体の制御及びホストコンピュータから
供給される該印刷データを解析するプリンタ制御ユニッ
トである。この制御ユニット1001は、主に文字情報
を対応する文字パターンのビデオ信号に変換してレーザ
ドライバ1002に出力する。また、このLBPは不図
示のデータ源から文字パターンの登録やフォームデータ
などの登録も行え、同様に印字データに応じてビデオ信
号に変換してレーザドライバ1002に出力する。レー
ザドライバ1002は半導体レーザ1003を駆動する
ための回路であり、入力されたビデオ信号に応じて半導
体レーザ1003から発射されるレーザ光1004をオ
ンオフ切り替えする。レーザ1004は回転多面鏡10
05で左右方向に振られ静電ドラム1006上を走査す
る。これにより、静電ドラム1006上には文字パター
ンの静電潜像が形成される。この潜像は、静電ドラム1
006周囲の現像ユニット1007により現像された
後、記録紙に転送される。この記録紙にはカットシート
を用い、カットシート記録紙はLBP1000に装着し
た用紙カセット1008に収納され、給紙ローラ100
9及び搬送ローラ1010と1011とにより装置内に
取り込まれて、静電ドラム1006に供給される。
【0027】図2は、図1のプリンタ制御装置の制御ユ
ニット1001の内部構成を説明するブロック図であ
る。
【0028】同図において、プリンタ制御装置本体10
00は、所定のインターフェース25を介して外部のホ
ストコンピュータ100と接続されており、ホストコン
ピュータ100からの印刷データに従って所定の印刷処
理を実行するように構成されている。ホストコンピュー
タ100より受信した該印刷データは受信バッファ24
に受信データとして一時的に蓄えられる。
【0029】20はCPUであり、読み出し専用メモリ
であるROM21に記憶された各制御プログラムに基づ
いて、システムバス23に接続される各種デバイスとの
アクセスの統括的な制御など、本LBPの全制御を行う
ための演算・制御を行う。該制御プログラムとしてRO
M21には、後述する図3、図6のフローチャートによ
る一連の制御を実現するために、受信バッファ24に蓄
えられた印刷データを解析して描画オブジェクトを生成
する描画オブジェクト生成部21a、並びにオブジェク
ト管理部21b、前記描画オブジェクトを描画するラス
タライズ部21c、解像度低下が必要かどうかを判定す
る解像度低下判定部21d、更に前記描画オブジェクト
生成部21aの一部として、フォントROM21fのフ
ォントデータを元にフォントオブジェクトを生成するフ
ォント生成部21eの5種類のプログラムが格納されて
いる。また、このROM21は、ドットフォントデータ
やベクトル形式のアウトラインフォントデータ、ストロ
ークフォントデータ等のスケーラブルフォントデータか
ら構成されるフォントメモリ21fにも用いられてい
る。
【0030】26は印刷部I/Fであり、ラスタライズ
されたイメージデータをビデオ信号として印刷部(プリ
ンタエンジン)27へ出力する。印刷部27は印刷部I
/F26から受け取ったビデオ信号を元に記録紙28上
に画像の印刷を行う。
【0031】22はCPU20の主メモリ、ワークメモ
リ22a等として機能するRAMであり、フォント生成
部21eがフォントメモリ21f内のスケーラブルデー
タに基づいて生成した文字パターン、あるいはドットフ
ォントパターン、更に描画オブジェクト生成部21aが
入力された図面印刷データに従って作成した他の描画オ
ブジェクトを格納するための描画オブジェクト格納部2
2b、描画オブジェクト22bをラスタライズしたラス
タライズイメージを格納するバンドメモリ22a、不図
示の環境データ格納メモリ、あるいはNVRAM等に用
いられる。なお、RAM22は、図示しない増設ポート
に接続されるオプションRAMによりメモリ容量を拡張
できるように構成されている。また、LBP1000は
図示しない電源部から電力の供給を受けている。
【0032】次に、図1及び図2の構成を備えるプリン
タ制御装置の動作について図3に示すフローチャートを
用いて説明する。
【0033】図3において、先ずLBP1000本体に
電源が供給されると、ステップS301にて描画オブジ
ェクト格納メモリやラスタメモリの初期化と、S307
で作成する描画オブジェクトの解像度の設定を行う。本
実施例では、生成解像度は600dpiとし、ポイント
サイズやmm等の単位系で指定された印刷コマンドは、
この値を用いてドット数に変換されることになる。
【0034】次に、ステップS302で、外部のホスト
コンピュータ100より印刷データを受信して、該印刷
データを受信バッファに格納し、該受信バッファより一
定サイズ分のデータを読み取る。該データはワークメモ
リの一部に一時的に格納される。
【0035】そして、ステップS303で、予め定めら
れた文法に従って該データのコマンド解釈を行い、ステ
ップS303の結果に応じて、続くステップS304、
S306、S307に処理が分かれる。
【0036】先ず、ステップS304で、該データが排
紙命令と判断された場合には、ステップS305でカレ
ントページに属する描画オブジェクトをバンドラスタメ
モリ上に描画(ラスタライズ)する。この時、生成解像
度が600dpiのままであれば、バンドラスタには6
00dpiの画像としてラスタライズされる。そして描
画が終了したバンドラスタは、画像出力部によってプリ
ンタエンジンへ送られる。なお、300dpiで生成さ
れたデータは、走査方向に2倍、副走査方向に2倍にな
るように拡大処理、スムージング処理が施されエンジン
へ送られる。ここで、該バンドラスタはステップS30
1で予め2バンド分のメモリが用意されており、一方の
バンドラスタをプリンタエンジンへ送出している間に、
他方のバンドに描画オブジェクトを描画する。ステップ
S305にて排紙処理が終了したら、ステップS302
へ戻り、次のデータ入力を待つ。
【0037】次に、ステップS306にて、前記データ
が描画命令であると判断された場合には、ステップS3
07にて、該データが文字描画命令であれば、該データ
で指定されるフォントの書体や、文字サイズ、文字コー
ドを元にフォントメモリ21fからフォントパターンを
読み出してフォントオブジェクトを生成し、文字以外の
描画命令であれば、該データで指定された図形(ライン
や円、多角形等)の描画オブジェクトを生成する。
【0038】一方、ステップS306で描画命令以外の
印刷データであると判断された場合には、ステップS3
08にて該データに応じて印字位置移動や印字環境設定
等の処理がなされ、一単位分のコマンド解釈を終了す
る。
【0039】次のステップS309では、ステップS3
07にて生成された描画オブジェクトに対して、描画オ
ブジェクトメモリ管理部が描画オブジェクト格納部から
必要なメモリと対応するIDを獲得する。メモリが獲得
できれば、ステップS310で獲得されたメモリに該描
画オブジェクトを格納する。また、ここで、描画オブジ
ェクトの印字位置並びに描画高さと、各バンドラスタの
高さから、該描画オブジェクトが属するバンド番号を求
めておく。一方、もしメモリが獲得できなければ、ステ
ップS313へ進む。
【0040】ステップS311では、入力された印刷デ
ータに基づく描画オブジェクトの複雑さを測定し、一定
基準より複雑であるかどうか、つまり、オーバーランが
発生し得るかどうかを判断する。すなわち、描画時間管
理部が該描画オブジェクトをバンドラスタ格納部へラス
タライズするのに必要な時間を予測し、描画時間管理テ
ーブルの前記バンド番号で定まる位置へ加算する。ここ
で、1描画オブジェクトが複数のバンドにまたがって描
画される場合は、各バンド毎に描画時間を求め、該描画
時間管理テーブルの各バンドに対応する値へ加算する。
上記のように各描画オブジェクトの描画時間を加算して
求められた1バンド内の全描画オブジェクトの描画時間
が、該バンドラスタをビデオ信号として出力する時間
(許容時間)よりも小さければ、印刷すべきデータは一
定基準よりも複雑でないと判断され、次のステップS3
12へ進み、もし加算された該描画時間が許容時間より
も大きければステップS313へ進む。
【0041】ステップS312では、描画オブジェクト
管理部がオブジェクト管理テーブルへ該IDや、オブジ
ェクトの種類、描画位置等のオブジェクト管理情報を格
納する。ここで、前記オブジェクト管理テーブルは、各
バンド毎に存在し、ステップS305のラスタライズで
は、描画しようとするバンドに対応付けられたオブジェ
クト管理テーブルを辿ることで、該バンドに属する描画
オブジェクトのみを高速に探し出せる。また、前記オブ
ジェクト管理テーブル自身も、描画オブジェクトメモリ
管理部がメモリを獲得して動的に増減するオブジェクト
の一種であっても良いし、あるいは固定サイズのテーブ
ルであっても構わない。その後、ステップS302に戻
り次のデータ入力を待つ。
【0042】以下に、前記描画オブジェクトの複雑さの
測定方法を具体的に説明する。
【0043】例えば、1バンドラスタが用紙幅W(ドッ
ト)×n(ライン)分の描画領域を有するとして、1ラ
イン分のラスタデータを読み出してビデオ信号として転
送する時間=2msec、n=256ラインとすると、
1バンドラスタの転送時間B=2×256=512ms
ecとなり、これがオーバーランが発生するかどうかの
許容時間となる。
【0044】一方、このバンドラスタに1描画オブジェ
クトを描画する描画時間(ここでは、幅w(ワード×高
さh(ライン)のビットマップを描画する時間S)は、
以下の式から求められる。
【0045】S=α+w×h×(β+γ)
【0046】ここで、α:描画オブジェクト管理テーブ
ルを検索し、格納されたIDから前記描画オブジェクト
格納部内での該ビットマップの先頭アドレスを得るため
に必要な時間。
【0047】β:前記描画オブジェクト格納部から1ワ
ード(32ビット)のビットマップを読み出すために必
要な時間。
【0048】γ:前記バンドラスタ格納部へ1ワードの
ビットマップを書き出すために必要な時間。
【0049】上記のα、β、γは、実行されるプリント
制御プログラムのステップ数と、CPUの実行速度(ク
ロック数)とから予め知ることができ、該プリント制御
プログラムと同様ROMに格納されている。今、α=1
00nsec、β=γ=50nsecの時、w=4(ワ
ード)、h=100ラインのビットマップを描画する場
合は、S=40.1μsecとなり、描画オブジェクト
がビットマップのみであれば、1バンド内に12,76
8個以上のビットマップを描画すると、該バンドにおい
てオーバーランが発生することになる。1つのビットマ
ップが複数のバンドにまたがって描画される場合は、各
バンドに含まれるだけの実質描画サイズ、幅w′×高さ
h′としてそれぞれ計算される。この実質描画サイズ
は、各描画オブジェクトに格納されている幅w、高さh
と、対応する描画オブジェクト管理テーブルに登録され
るバンド内での描画位置(x,y)や、ビットマップ先
頭からの書き出しオフセット地(off)から求められ
る(図4参照)。
【0050】上記説明では、簡単のために描画オブジェ
クトとしてビットマップを例にしたが、他に圧縮された
イメージオブジェクトの場合は伸長に要する時間が、ラ
ンレングスオブジェクトの場合は読み出したランレング
スを計算しビットイメージを求める時間が更に加算され
ることになる。
【0051】これら該バンドに属する全描画オブジェク
トの描画時間Stotalが前記1バンドラスタ転送時
間Bより小さければオーバーランは発生しないと判断さ
れる。
【0052】図5は、図3のフローチャートに従って作
成された描画オブジェクト及び描画オブジェクト管理テ
ーブル、バンドラスタ格納部、その他、制御に必要なテ
ーブルのメモリ構成と、これらのリンク関係を示す概略
図である。501は2つの600dpiバンドラスタで
あり、502は各バンドに属する描画オブジェクト管理
テーブル503の先頭アドレスを格納するバンドテーブ
ルであり、エントリ数は1ページ内のバンド数(N)だ
け存在する。前記描画オブジェクト管理テーブルには、
要素数nと、構成要素504(以下、アプリケーション
と呼ぶ)から成っており、各アプリケーションには描画
オブジェクト506の描画情報(描画オブジェクト種
別、描画オブジェクトID、バンド内での描画開始位置
x、y、オブジェクト内の描画オフセット=off、描
画論理情報=objFnc)が格納される。同一文字を
複数描画する場合は、当然、描画される数だけのアプリ
ケーションから同一IDで描画オブジェクトが参照され
ることになる。また、1つの描画オブジェクトが複数の
バンドにまたがる場合は、アプリケーション504は各
バンド毎に1つずつ作成される。505は描画オブジェ
クト格納部であり、506は該描画オブジェクト格納部
内に作成される1描画オブジェクト(ここでは、フォン
トオブジェクト)を示す。508は全描画オブジェクト
間で共通の情報が格納されるオブジェクトヘッダ部であ
り、描画オブジェクトの解像度、幅w、高さh及び、実
パターン先頭のアドレスaddr512がセットされて
いる。509は各描画オブジェクト毎に異なる情報が格
納されるオブジェクトボディ部であり、フォントオブジ
ェクトの場合は、フォント書体名、ストロークウェイ
ト、文字コードと実パターンの割り付けを示すグラフィ
ックセット、ポイントサイズ、文字コード、スケーラブ
ルフォントか否かを示すフラグ、固定ピッチかプロポー
ションピッチかを示すフラグ、縦書き/横書きを示すフ
ラグの他、生成時に得られる情報としてリファレンスポ
イントからのオフセット値、ピッチ情報などが格納され
ている。510はRAM22上に生成された文字の実パ
ターンであるが、描画オブジェクト511が示すよう
に、フォントROM21f内に実パターン510′を持
つ場合は、描画オブジェクト格納部505内に存在しな
い場合もある(addr512が該フォントROM21
f内の実パターン先頭を示すようにセットされてい
る)。507はアプリケーショ504に記述されたID
を、各描画オブジェクト506のアドレスへ変換するた
めのIDテーブルである。512は図3のステップS3
11でバンド毎に加算された描画時間を格納する描画時
間管理テーブルであり、バンド数Nだけのエントリ数を
持つ。
【0053】図3のステップS313では、既に作成済
みの描画オブジェクトの内、現在処理中のページから参
照されている600dpiオブジェクトから300dp
iオブジェクトに解像度変換し、続くステップS314
で、ステップS307にて生成する描画オブジェクトの
解像度を300dpiに再設定する。その後、ステップ
S302に戻り次のデータ入力を待つ。
【0054】ここで、図6のフローチャートに従って、
以下で本実施例における該描画オブジェクトの解像度変
換手順を説明する。
【0055】先ず、(ステップS601は後述)ステッ
プS602で処理済みのバンド数を調べ、まだ処理して
いないバンドがあればステップS603へ進む一方、全
バンドの処理が終了していれば最終ステップS614
(後述)へ進む。ステップS603では、バンドテーブ
ル502を順に読み出し、各描画オブジェクト管理テー
ブル503の先頭アドレスを得る。続くステップS60
4では得られた該描画オブジェクト管理テーブル503
の先頭に格納されているアプリケーション数nを得て、
更に処理済みのアプリケーション数がnであるかどうか
を調べる。もしまだ未処理のアプリケーションがあれば
ステップS605へ進みアプリケーション情報504を
獲得する。一方、カレントバンド内の全アプリケーショ
ンの処理が終了していれば、次のバンドに属するアプリ
ケーションを読み出すために、ステップS602へ戻
る。
【0056】ステップS606では、前記ステップS6
05で得たアプリケーション情報504内のオブジェク
トIDでIDテーブル507をアクセスし、対象とする
描画オブジェクト506の先頭アドレスを得て、最終的
に該描画オブジェクト506の各種情報(508、50
9)を得る。続くステップS607で該描画オブジェク
ト506の解像度を調べる。もし解像度が600dpi
であればステップS608以降の解像度変換処理へ進
み、解像度が300dpiであれば、既に解像度変換処
理が終了した描画オブジェクトであると判断してステッ
プS615へ進む。
【0057】ステップS608では該描画オブジェクト
506の種別を調べ、フォントオブジェクトであると判
断された場合はステップS609へ進む。一方、ステッ
プS608においてフォントオブジェクトでないと判断
された場合は、描画オブジェクトの種類に応じた解像度
変換処理(ステップS610)へ進む。例えば、ビット
マップイメージの場合は、高さ方向は1スキャンライン
おきに、幅方向は1ビットおきに該ビットマップを間引
いて得られる(単純間引き処理)。または、周囲(右、
下、右下)ビットのON/OFFを調べ、どれか1ビッ
トでもONであれば当該ビットをONとしながら間引い
ても良い(補間間引き処理)。300dpiへ解像度変
換が終了した描画オブジェクトは、600dpiオブジ
ェクトが格納されていたアドレスへ上書し、更にオブジ
ェクトヘッダ部508の情報も書換える(ステップS6
13)。
【0058】ステップS609では、前記フォント情報
509から該フォントオブジェクトがスケーラブルフォ
ントであるかどうかを調べる。スケーラブルフォントで
ない場合は、ステップS611でビットマップイメージ
と同様な間引き処理によって300dpiフォントを生
成し、一方、スケーラブルフォントである場合は、ステ
ップS612にて前記フォント情報509を用いてリス
ケーリング処理を行う。該スケーリング処理は、フォン
ト生成部に指定する解像度が300dpiである点以外
は、通常のフォントオブジェクト生成と全く同様であ
る。300dpiで再スケーリングすれば、600dp
iで半分のサイズでスケーリングした場合と同等の文字
品位が得られるため、600dpiのフォントパターン
を間引いた場合よりはるかに品位の高いフォントパター
ンを得ることができる。
【0059】このようにして300dpiのフォントオ
ブジェクトが生成されたならば、他のオブジェクトと同
様、ステップS613へ進む。
【0060】ただし、前記リスケーリング処理は、生成
中のカレントフォントオブジェクト(600dpi)か
らみれば割り込み的に発生するものであり、もしフォン
トオブジェクトそのものを作成中に解像度処理が発生し
たのであれば、フォントスケーラ情報(オフセッシ値や
ピッチ情報)や、カレントフォント情報(フォント種
別、グラフィックセット、文字サイズ、文字コード等)
が最後にリスケーリングした値で書き変わってしまう可
能性がある。これを避けるために、リスケーリング処理
の最初と最後にカレント情報の退避(ステップS60
1)・復帰を行っている(ステップS615)。
【0061】更にステップS614では、描画オブジェ
クト管理テーブル504の印字位置情報(描画開始位置
(x,y)並びにバンド中のオフセット(off))の
解像度変換を行い、該管理情報を書き換える。このよう
にして、1描画オブジェクトの低解像度変換処理が終わ
れば、ステップS604へ戻り次のアプリケーションを
順次読み出し、同様の解像度変換処理を行う。
【0062】上記に説明したように、ページ中の描画オ
ブジェクトの解像度を動的に低下させることで、描画オ
ブジェクト格納部の空き領域が広がる。また、バンドラ
スタ格納部(600dpi・2バンド分)には、300
dpiでラスタライズすればよいため、1/4に縮小可
能となり、更に空き領域が増える。また、ラスタライズ
時間も短縮されるので、メモリオーバー、タイムオーバ
ー共に軽減することができる。
【0063】(実施例2)第1の実施例では、予め該プ
リント制御装置内に用意された内蔵フォントのデータ形
式に応じて、スケーラブルフォントであればスケーリン
グ情報を元に再スケーリングし、あるいはドットフォン
トであれば間引き処理を行い、解像度低下時の品位低下
を最小限に抑えたが、外部装置より印刷データとして送
られてくる登録フォントに対しても、本発明は適用可能
である。
【0064】そこで、本実施例では、登録フォントを処
理可能なプリンタ制御装置における、解像度低下処理に
ついて説明する。
【0065】図7は、本実施例に係るプリンタ制御装置
の内部構成を示すブロック図である。ここで、第1の実
施例の図2にて説明した構成と同じ箇所には同じ番号を
付け、説明は省略する。プログラム等を格納するROM
21には、実施例1で説明したプログラムに加えて、印
刷データの一部としてホストコンピュータ100より入
力されたフォントデータの登録・削除を行うフォント登
録・削除部71を含む。また、RAM22は、前記登録
フォントデータを格納するための登録フォント格納部7
2としても用いられる。前記登録フォントデータとして
は、フォントパターンそのものや、スケーラブルデータ
等が登録可能である。本実施例では、登録フォント格納
部72に有効な(=対応するフォントパターンが存在す
る)各文字コードに対してカウンタを用意し、前記フォ
ント登録・削除部71が、最初の登録時に該カウンタを
1にセットする。そして、特定の文字コードに再登録す
る際には、該カウンタはインクリメントされる。
【0066】また、本実施例のフォント生成部21e
は、該登録フォントのアウトラインデータのスケーリン
グやドットフォントの検索の他、登録フォントパターン
をスキャンして座標点列データを発生させることでスケ
ーラブル化し、スケーラブルフォントパターンを生成す
ることもできる。ここで、該登録フォントデータを元に
生成されたフォントオブジェクトもまた、フォントオブ
ジェクトとして描画オブジェクト格納部22aに格納さ
れるが、フォントパターンそのものは必ず描画オブジェ
クト格納部内に保持し、登録フォント格納部22dに格
納された該登録フォントデータが削除されるタイミング
とフォントオブジェクトがラスタライズされるタイミン
グが異なってもよいように構成されている。ここで、フ
ォント生成部21eは、登録フォントデータが削除され
ている場合は、フォント生成要求に対してエラーを返す
ことで該登録フォントデータが格納部72内に存在しな
いことを示すことができる。また、本実施例では登録フ
ォントはRAM22の一部に格納されるが、ハードディ
スク等の他の記憶媒体であっても構わない。
【0067】図7の構成を備えるプリンタ制御装置で作
成されるフォントオブジェクトのオブジェクトボディ部
509には、実施例1で説明したフォント情報に加え
て、以下の情報を持つ。すなわち、同一のフォント属性
をもつフォントの同一文字コードに対して何回登録した
かを示すカウンタであり、これによりフォントパターン
の実体が同じかどうかを判断する。フォントオブジェク
ト内の該カウンタは、描画オブジェクト生成時に前記フ
ォント生成部21eが登録フォト格納部72内のカウン
タを参照することで得られる。上記のように登録フォン
トデータが変更されているかどうかがパターン生成後の
任意のタイミングで識別可能であるため、解像度変換が
必要となった時に、再スケーリング可能かどうかが判断
できる。ただし、解像度変換処理を行う時点で、既に登
録フォント格納部72より登録フォントデータが削除さ
れてしまっている場合は再スケーリングはできない。
【0068】次に、図7の構成を備えるプリンタ制御装
置の解像度変換処理について図8のフローチャートを用
いて説明する。ここで、ステップS808までの各ステ
ップは、図6のフローチャートの対応するステップと同
様であるので説明を省く。
【0069】ステップS809で該描画オブジェクトが
スケーラブルフォントであると判断された場合は、続く
ステップS812にて再スケーリング可能なフォントオ
ブジェクトかどうか、すなわち、オブジェクトの内容が
変更されていないかどうかを調べる。まず、該フォント
オブジェクトが登録フォントかどうかを調べる。これ
は、フォント生成部21eがフォントオブジェクトを生
成する際に、LBP1000に内蔵されている(登録フ
ォントでない)オブジェクトのカウンタを予め0にして
おくことで容易に判別できる。登録フォントである場合
は、フォント生成部21eは登録フォントが削除されて
いないかを調べ、更に削除されていない場合は最後にパ
ターン内容が登録フォント内と同一のものであるかどう
かを判断する。登録フォントが未だ削除されていない場
合は、前述した通り、フォント情報部509内と登録フ
ォント格納部内のカウンタとを比較して、同じ値であれ
ば「パターン変更なし」と判断する(内蔵スケーラブル
フォントは常にカウンタ=0であるため、常に「パター
ン変更なし」と判断される。)。
【0070】前記ステップS809にて、内蔵スケーラ
ブルフォントであると判断された場合か、またはS81
2で未削除の登録フォントであって、登録カウンタが同
一の場合は、オブジェクトの内容が変更されていないも
のとして、ステップS813で前記フォント情報509
を用いて再スケーリング処理を行う。該スケーリング処
理は、フォント生成部に指定する解像度が300dpi
である点以外は、通常のフォントオブジェクト生成と全
く同様である。一方、登録フォントが削除済み(フォン
ト生成時にエラーが返される)か、該カウンタが一致し
ない場合は、オブジェクトの内容が変更されたものとし
てスケーラブルデータを参照できないため、ビットマッ
プフォントと同様にステップS811で間引き処理を行
い、解像度変換する。
【0071】このようにして300dpiのフォントオ
ブジェクトが生成された後は、他の描画オブジェクトと
同様に、ステップS814へ進み、解像度変換済みの描
画オブジェクトを600dpiオブジェクトが格納され
ていたアドレスへ上書し、更にオブジェクトヘッダ部5
08の情報も書き換える。続くステップS815では、
実施例1のステップS614と同様に、描画オブジェク
ト管理テーブル504の各印字情報を解像度変換し、該
管理情報を書き換える。
【0072】上記のように、同一文字コードに異なるパ
ターンが1回以上登録されうるスケーラブルフォントに
対して、解像度低下時の品位劣化を最低限に抑えること
ができる。
【0073】(実施例3)実施例1、及び実施例2にお
いては、ビットマップフォントに対しては、間引き処理
を行うことで解像度変換を実現していたが、印刷データ
としてフォントを拡大あるいは縮小する文字修飾命令が
含まれている場合や、ビットマップフォントの解像度が
元々印字する際の解像度と異なっており、フォントオブ
ジェクト生成時に拡大・縮小処理を施すようなプリンタ
制御装置では、解像度低下時にフォントROM21fを
再検索することで品位低下を抑えることができ、また、
再生成後の描画オブジェクトメモリの削減も計れる場合
がある。
【0074】図9は、印字データとして、ビットマップ
フォントに対する印字命令と共に縦横2倍(平方拡大)
命令が送られてきた場合に生成される、フォントオブジ
ェクトを示す模式図である。図9aは、描画オブジェク
ト902が600dpiである場合であり、フォントR
OM21f内の元フォントと比べると、縦横に2倍拡大
されて格納されている。一方、図9bは、解像度変換時
に300dpiで生成された描画オブジェクト902′
を示している。当初の描画オブジェクトの解像度が60
0dpiであり、解像度低下後に300dpiとなるよ
うなプリンタ制御装置での解像度低下処理は、600d
piのフォントパターンを間引くのではなく、再度スケ
ーリング情報を用いてフォントROM21f内のアドレ
スを得ることで、図5に示す描画オブジェクト902′
のような構成(図5の511と同様)にすることがで
き、描画オブジェクト格納部22aにフォントパターン
そのものを格納する必要がなくなる。すなわち、解像度
低下時の変換率(300/600dpi=1/2)と文
字拡大率(2:縦横とも)とを掛け合わせた値(実質拡
大率)が1となる場合には、解像度低下後の描画オブジ
ェクトメモリを大幅に削減することができ、処理速度の
向上が計れる。ここで、指定された拡大率はフォント情
報としてオブジェクトボディ部904に格納されてお
り、実質拡大率の計算時に参照される。
【0075】なお、実施例1、2、3では、説明のため
に1文字毎に各種フォント情報(図5の509、及び図
9の904)を格納しているが、フォント名称やグラフ
ィックセット番号、ポイントサイズなどフォントの種別
毎に共有できる情報は、別のフォント情報管理テーブル
を設け、フォント単位で一括管理しても良い。この場
合、各フォントオブジェクトが消費する描画オブジェク
ト格納部22aのメモリ容量は削減できるが、再スケー
リング時に必要なフォント情報を獲得可能とするため
に、各フォントオブジェクト内に各テーブルエントリへ
のリンク情報(アドレス指定あるいはID管理など)が
必要となる。
【0076】(実施例4)実施例3において、逆に前記
フォント情報管理テーブルから文字コードをインデック
スとして当該フォントオブジェクトを検索できるように
すれば、前記構造をフォントキャッシュとして機能させ
ることができる。
【0077】以下に、図10、図11及び図12を用い
て、本実施例におけるフォントキャッシュ部を利用した
フォントオブジェクトの検索・生成手順について説明す
る。
【0078】図10は、本実施例におけるフォントキャ
ッシュの構造を示す概略図である。また、図11、図1
2は図10の構造を備えるプリンタ制御装置において、
フォント印字データが入力された時のフォントオブジェ
クト生成動作の手順を示したフローチャートである。な
お、以下の動作を実行するプログラムは、ROM21に
フォントキャッシュ管理部として格納されている。
【0079】先ず図11のステップS1101で、フォ
ント情報管理テーブル(図10の1001、以下キャッ
シュテーブルと呼ぶ)の検索を行う。一つも該キャッシ
ュテーブルが存在しないか印刷データとして要求される
フォント属性と同属性のキャッシュテーブルが見つから
ない場合は、ステップS1102へ進み、キャッシュテ
ーブルを作成する。
【0080】一方、キャッシュテーブルが見つかれば、
ステップS1103、1004でインデックスの検索を
行う。本実施例では、文字コードは最長2バイトで与え
られ、該インデックスは文字コードの上位バイト用(1
002)と下位バイト用(1003)の2段階(固定)
の深さを持つ。ANK文字等、1バイト系のコード体系
に対しては、上位バイト用インデックスがコード0x0
0のみのメンバから構成される。あるいは、キャッシュ
テーブルにインデックスの深さを記憶しておき、深さを
可変としても構わない。上記の各ステップで文字コード
に対応したインデックスが見つからない場合、それぞれ
ステップS1105、S1006でインデックスの作成
を行う。
【0081】一方、ステップS1104にて、下位バイ
ト用インデックスが見つかったら、続くステップS11
07で、文字毎に異なる情報(解像度、修飾の有無、パ
ターン回転角度等)を用いてフォントオブジェクトの検
索を行う。ここで、要求された文字コードに対応するフ
ォントパターンがみつかったら、キャッシュにヒットし
たと判断され、ステップS1108で印字位置や属する
バンド番号の計算を行う。みつからなければステップS
1115でフォントパターンを作成する。ステップS1
108に続くステップS1109、S1110の処理は
それぞれ、実施例1の図3に示したステップS311
(描画時間計算)、S312(アプリケーション作成)
と同様である。
【0082】一方、ステップS1102にてキャッシュ
テーブル用のメモリが確保できなければ、ステップS1
111でフォントキャッシュの解放処理を行う(図1
2)。
【0083】図12では、先ずステップS1201で不
要なフォントキャッシュが存在するか(要求サイズ≦不
要なキャッシュのサイズの総和)を調べ、もしあればス
テップS1202でフォントキャッシュを解放し、ステ
ップS1203で要求されただけのメモリを獲得する。
一方、解放するキャッシュがない場合、ステップS12
04へ進み、解像度低下処理と解像度=300dpiの
設定(ステップS1205)を行う。
【0084】ステップS1102でメモリが獲得できれ
ば、続くステップS1112で各フォント情報を元にキ
ャッシュテーブルを作成し、ステップS1105へ進
む。以下、2つのインデックスとフォントオブジェクト
についても同様にして、メモリが獲得できなければステ
ップS1111のキャッシュ解放処理へ進み、獲得でき
ればそれぞれステップS1113、S1114でインデ
ックスを生成し、フォントパターン生成(ステップS1
115)及びメモリ確保(S1116)、確保できた場
合はフォントオブジェクト作成(S1117)を行う。
【0085】ここで、本実施例におけるオブジェクトボ
ディ部には、何ページから参照されているかを示すペー
ジカウントを持ち、各ページで最初に該フォントオブジ
ェクトにヒットした時にインクリメントし、また各ペー
ジが排紙された時に1回だけ当該ページカウンタをデク
リメントする。異なる2ページから参照されていれば、
ページカウンタは2となり、どのページからも参照され
なくなったフォントオブジェクトは0になる。ここで、
該ページカウンタを各ページで1回だけインクリメント
/デクリメントするために、オブジェクトボディ内に
は、電源投入時よりシーケンシャルに増加するページ番
号を2つ持つ、一つは作成時あるいはヒットした再にセ
ットされる作成ページ番号、もう一方は排紙ページ番号
で、各ページが排紙された後に、前記アプリケーション
を調べ、該ページ内で参照していたフォントオブジェク
トのみ排紙ページ番号をセットする。作成時またはヒッ
ト時に、作成ページ番号とカレントページ番号とが同じ
でなければ、カレントページ内で初めてヒットしたと判
断することができる。同様に、排紙時にも該排紙ページ
番号と排紙済みのページ番号とを比較することで、1ペ
ージで1回のみページカウントをデクリメントできる。
ここでは、ページカウンタはシーケンシャルに増加する
と説明したが、RAM削減のため、一定ページ以上(例
えば32ページ)参照されなくなったキャッシュを排紙
時に削除してしまえば、ページ番号は32ページ分で済
む。
【0086】上記に説明した制御を行うことで、解像度
低下が発生した時に、カレントページのみから参照され
ているのか、他のページからも参照されているかが判断
可能となる。もし、カレントページのみから参照されて
いるのであれば、解像度低下したフォントオブジェクト
を、以下前のオブジェクトと同一領域に格納しても構わ
ないが、他ページからも参照している場合は、別の描画
オブジェクトメモリを確保して別のフォントオブジェク
トを作成する(解像度低下の結果、バンドラスタ格納部
などが小さくなり、空き領域ができる)。
【0087】なお、本実施例では、上記キャッシュテー
ブルとインデックスも、描画オブジェクトの一種として
描画オブジェクト格納部22aに格納されるが、実際に
ラスタライズされるわけではないので、対応するアプリ
ケーション504は存在しない。
【0088】(実施例5)実施例4では、1つのフォン
トオブジェクトが複数のページから参照されている場合
を説明したが、記録媒体の両面に印刷可能な印刷部27
を有するプリンタ制御装置において、表面と裏面とでフ
ォントオブジェクトを共有している場合にも本発明は適
用可能である。ただし、両面印刷時は、「課題」で説明
したように、作成した順序通りにページが排紙されない
場合があるため、排紙ページ番号をデクリメントする再
の番号比較は、大小ではなく等しいかどうかで比較する
必要がある。
【0089】
【発明の効果】以上説明したように、本発明によれば、
描画オブジェクトを作成した当初の解像度とは異なる解
像度でイメージを作成する必要が生じた場合に、フォン
トの種類、あるいはサイズに応じてフォントオブジェク
トの生成手段を選択することで、例えば、比較的大きな
サイズのフォントは間引き処理によって処理速度を優先
し、一方小さなサイズのフォントは再スケーリングして
印字品位を優先するといった処理が可能となり、各フォ
ントに適した解像度変換処理が行える。
【0090】本発明によれば、描画オブジェクトを作成
した当初の解像度とは異なる解像度でイメージを作成す
る必要が生じた場合に、スケーラブルフォントを再スケ
ーリングして生成することで、解像度変換後のフォント
パターンの品位劣化を防ぐことができる。
【0091】本発明によれば、描画オブジェクトを作成
した当初の解像度とは異なる解像度でイメージを作成す
る必要が生じた場合に、外部より登録・削除されるフォ
ントデータであっても、再スケーリング可能がどうかを
判別し、解像度変換後のフォントパターンの品位劣化を
最小限に抑えることができる。
【0092】本発明によれば、描画オブジェクトを作成
した当初の解像度とは異なる解像度でイメージを作成す
る必要が生じた場合に、ドットフォントの拡大率と解像
度変換率を組合せが等倍となる時は、予め記憶されてい
るドットフォント情報を利用することで、不必要な描画
オブジェクトの格納を控えることができる。
【0093】本発明によれば、描画オブジェクトを作成
した当初の解像度とは異なる解像度でイメージを作成す
る必要が生じた場合に、複数のページから参照されてい
る描画オブジェクトを別描画オブジェクトとすること
で、解像度を変換する必要がないページは元の解像度の
まま処理を進めることができ、印字品位の劣化を最小限
に抑えることができる。また、展開が終わっていないペ
ージの出力を待つ必要もなく新しいページの解像度変更
処理を進めることが可能となり、処理速度の向上が計ら
れる。
【図面の簡単な説明】
【図1】本発明を適用可能なレーザービームプリンタの
内部構造を示す断面図である。
【図2】実施例1に示すプリンタ制御装置の概略構成を
説明するブロック図である。
【図3】実施例1に示すプリンタ制御装置における印刷
動作を表すフローチャートである。
【図4】実施例1に示すプリンタ制御装置におけるバン
ドラスタ格納部と描画オブジェクト管理部の情報を示す
模式図である。
【図5】実施例1に示すプリンタ制御装置における描画
用メモリの構成と、バンドテーブル、各アプリケーショ
ン、描画オブジェクト、IDテーブル間のリンク関係を
説明する模式図である。
【図6】実施例1に示すプリンタ制御装置における低解
像度変換処理を表すフローチャートである。
【図7】実施例2に示すプリンタ制御装置の概略構成を
説明するブロック図である。
【図8】実施例2に示すプリンタ制御装置における低解
像度変換処理を表すフローチャートである。
【図9】実施例3に示すプリンタ制御装置における、解
像度変換前後の描画オブジェクトの構成を説明する模式
図である。
【図10】実施例4におけるフォントキャッシュ部の構
造を示す概略図である。
【図11】実施例4でのフォントキャッシュの検索及び
フォントオブジェクト作成の手順を示すフローチャート
である。
【図12】実施例4でのフォントキャッシュの解放処理
手順を示すフローチャートである。
【符号の説明】
20 CPU 21 ROM 21a 描画オブジェクト生成部 21b オブジェクト管理部 21c ラスタライズ部 21d 解像度低下判定部 21e フォント生成部 21f フォントメモリ 22 RAM 22a 描画オブジェクト格納部 22b バンドラスタ格納部 24 受信バッファ 71 フォント登録・削除部 72 登録フォント格納部 503 オブジェクト管理テーブル 506、511 描画オブジェクト 508 オブジェクトヘッダ部(共通情報部) 509 オブジェクトボディ部(フォント情報部) 510、510′ フォントパターン 1000 プリンタ制御装置 1001 制御ユニット

Claims (24)

    【特許請求の範囲】
  1. 【請求項1】 入力されるた印刷データに応じて中間的
    なデータ形式で記述される描画オブジェクトを生成する
    描画オブジェクト生成手段と、 描画オブジェクトを作成した時の解像度と異なる解像度
    でイメージを作成する必要が生じた場合に、フォントオ
    ブジェクトである描画オブジェクトについては、フォン
    トの種類、あるいはサイズに応じてフォントオブジェク
    トの生成手段を選択する選択手段とを有することを特徴
    とするプリンタ制御装置。
  2. 【請求項2】 前記選択手段は、前記フォントの種類が
    スケーラブルフォントでない場合、フォントパターンに
    対して間引き処理を行い、異なる解像度のフォントオブ
    ジェクトを生成する生成手段を選択し、 前記フォントの種類がスケーラブルである場合、フォン
    トオブジェクトに対応したスケーラブルフォントデータ
    を用いて再スケーリングして解像度の異なるフォントオ
    ブジェクトを生成する生成手段を選択することを特徴と
    する請求項1記載のプリンタ制御装置。
  3. 【請求項3】 外部より送られてくるスケーラブルフォ
    ントデータ、あるいは、フォントパターンを登録する登
    録手段と、前記スケーラブルフォントデータ、あるい
    は、フォントパターンを削除する削除手段とを有し、 前記選択手段は、前記フォントの種類が、登録スケーラ
    ブルフォントデータである場合には、前記スケーラブル
    フォントデータが既に削除されているかどうかを判別
    し、削除されていれば前記スケーラブルフォントデータ
    に基づき生成されたフォントパターンを間引きフォント
    オブジェクトを生成し、削除されていなければ前記スケ
    ーラブルフォントデータに基づいて再スケーリングして
    フォントオブジェクトを生成する生成手段を選択し、前
    記フォントの種類が登録フォントパターンである場合に
    は、間引き処理を行うことによりフォントオブジェクト
    を生成する生成手段を選択することを特徴とする請求項
    1記載のプリンタ制御装置。
  4. 【請求項4】 登録フォントによるフォントオブジェク
    トに対して、同一文字種、同一文字コードに登録された
    内容を識別する登録内容識別手段を有し、 前記選択手段は、前記フォントの種類が登録スケーラブ
    ルフォントデータを元にして生成されたフォントパター
    ンである際には、前記登録内容識別手段によって同一文
    字種、同一文字コードに異なる内容のフォントが登録さ
    れていると識別された場合、再スケーリングすることな
    くフォントパターンを間引いて異なる解像度のフォント
    オブジェクトを生成する生成手段を選択することを特徴
    とする請求項1記載のプリンタ制御装置。
  5. 【請求項5】 フォント情報をドットパターンとして持
    つドットフォント格納手段を有し、 前記選択手段は、前記フォントの種類がスケーラブルフ
    ォントでない際に、指定された拡大率と解像度変換率と
    の組合せが等倍の場合は、フォントパターンを間引くこ
    となく、前記ドットフォント格納手段のドッドパターン
    を利用する形でフォントオブジェクトを生成する生成手
    段を選択することを特徴とする請求項1記載のプリンタ
    制御装置。
  6. 【請求項6】 描画オブジェクトを格納する格納手段の
    容量がある一定容量よりも多くなる場合か、または、1
    バンド分の描画オブジェクトを展開するに要する時間が
    1バンド分のイメージを外部へ送出する時間よりも多く
    なるようなバンドが1ページ中に存在すると判断された
    場合に、描画オブジェクトを作成した時点の解像度と異
    なる解像度で前記イメージを作成することを特徴とする
    請求項1記載のプリンタ制御装置。
  7. 【請求項7】 前記描画オブジェクトに基づきイメージ
    データを生成する生成手段と、 前記生成手段により生成されたイメージデータに基づき
    可視出力する出力手段とを有することを特徴とする請求
    項1記載のプリンタ制御装置。
  8. 【請求項8】 前記出力手段は、プリンタであることを
    特徴とする請求項7記載のプリンタ制御装置。
  9. 【請求項9】 印刷データとして同一の文字種、同一文
    字コードを二回以上要求された場合に、以前に生成した
    印刷データに対応するフォントオブジェクトを検索し、
    前記フォントオブジェクトが削除されていない場合は、
    フォントオブジェクトを参照してイメージ描画を行うプ
    リンタ制御装置において、 描画オブジェクトを作成した時と異なる解像度でイメー
    ジを作成する必要が生じた場合には、共有していたフォ
    ントオブジェクトと異なる解像度のフォントオブジェク
    トを再生成する再生成手段とを有することを特徴とする
    プリンタ制御装置。
  10. 【請求項10】 記録媒体の両面に印刷可能な両面印刷
    手段を有することを特徴とする請求項9記載のプリンタ
    制御装置。
  11. 【請求項11】 入力される印刷データに応じて中間的
    なデータ形式で記述される描画オブジェクトを生成する
    描画オブジェクト生成工程と、 描画オブジェクトを作成した時の解像度と異なる解像度
    でイメージを作成する必要が生じた場合に、フォントオ
    ブジェクトである描画オブジェクトについては、フォン
    トの種類、あるいはサイズに応じてフォントオブジェク
    トの生成工程を選択する選択工程とを有することを特徴
    とするプリンタ制御方法。
  12. 【請求項12】 前記選択工程は、前記フォントの種類
    がスケーラブルフォントでない場合、フォントパターン
    に対して間引き処理を行い、異なる解像度のフォントオ
    ブジェクトを生成する生成工程を選択し、 前記フォントの種類がスケーラブルフォントである場
    合、フォントオブジェクトに対応したスケーラブルフォ
    ントデータを用いて再スケーリングして解像度の異なる
    フォントオブジェクトを生成する生成工程を選択するこ
    とを特徴とする請求項11記載のプリンタ制御方法。
  13. 【請求項13】 外部より送られてくるスケーラブルフ
    ォントデータ、あるいは、フォントパターンを登録する
    登録工程と、前記アウトラインデータ、あるいは、フォ
    ントパターンを削除する削除工程とを有し、 前記選択工程は、前記フォントの種類が、登録スケーラ
    ブルフォントデータである場合には、前記スケーラブル
    フォントデータが既に削除されているかどうかを判別
    し、削除されていれば前記スケーラブルフォントデータ
    に基づき生成されたフォントパターンを間引きフォント
    オブジェクトを生成し、削除されていなければ前記スケ
    ーラブルフォントデータに基づいて再スケーリングして
    フォントオブジェクトを生成する生成工程を選択し、前
    記フォントの種類が登録フォントパターンである場合に
    は、間引き処理を行うことによりフォントオブジェクト
    を生成する生成工程を選択することを特徴とする請求項
    11記載のプリンタ制御方法。
  14. 【請求項14】 登録フォントによるフォントオブジェ
    クトに対して、同一文字種、同一文字コードに登録され
    た内容を識別する登録内容識別工程を有し、前記選択工
    程は、前記フォントの種類が登録スケーラブルフォント
    データを元にして生成されたフォントパターンである際
    には、前記登録内容識別工程によって同一文字種、同一
    文字コードに異なる内容のフォントが登録されていると
    識別された場合、再スケーリングすることなくフォント
    パターンを間引いて異なる解像度のフォントオブジェク
    トを生成する生成工程を選択することを特徴とする請求
    項11記載のプリンタ制御方法。
  15. 【請求項15】 フォント情報をドットパターンとして
    持つドットフォント格納手段を利用し、 前記選択手段は、前記フォントの種類がスケーラブルフ
    ォントでない際に、指定された拡大率と解像度変換率と
    の組合せが等倍の場合は、フォントパターンを間引くこ
    となく、前記ドットフォント格納手段のドッドパターン
    を利用する形でフォントオブジェクトを生成する生成工
    程を選択することを特徴とする請求項11記載のプリン
    タ制御方法。
  16. 【請求項16】 描画オブジェクトを格納する容量があ
    る一定容量よりも多くなる場合か、または、1バンド分
    の描画オブジェクトを展開するに要する時間が1バンド
    分のイメージを外部へ送出する時間よりも多くなるよう
    なバンドが1ページ中に存在すると判断された場合に、
    描画オブジェクトを作成した時点の解像度と異なる解像
    度で前記イメージを作成することを特徴とする請求項1
    1記載のプリンタ制御方法。
  17. 【請求項17】 前記描画オブジェクトに基づきイメー
    ジデータを生成する生成工程と、 前記生成工程により生成されたイメージデータを可視出
    力する出力手段に出力する出力工程とを有することを特
    徴とする請求項11記載のプリンタ制御方法。
  18. 【請求項18】 前記出力手段は、プリンタであること
    を特徴とする請求項17記載のプリンタ制御方法。
  19. 【請求項19】 印刷データとして同一の文字種、同一
    文字コードを二回以上要求された場合に、以前に生成し
    た印刷データに対応するフォントオブジェクトを検索
    し、前記フォントオブジェクトが削除されていない場合
    は、フォントオブジェクトを参照してイメージ描画を行
    うプリンタ制御方法において、 描画オブジェクトを作成した時と異なる解像度でイメー
    ジを作成する必要が生じた場合には、共有していたフォ
    ントオブジェクトと異なる解像度のフォントオブジェク
    トを再生成する再生成工程とを有することを特徴とする
    プリンタ制御方法。
  20. 【請求項20】 記録媒体の両面に印刷可能な両面印刷
    手段を利用することを特徴とする請求項19記載のプリ
    ンタ制御方法。
  21. 【請求項21】 前記フォントオブジェクトは、複数頁
    から参照されることを特徴とする請求項1記載のプリン
    タ制御装置。
  22. 【請求項22】 前記フォントオブジェクトは、複数頁
    から参照されることを特徴とする請求項9記載のプリン
    タ制御装置。
  23. 【請求項23】 前記フォントオブジェクトは、複数頁
    から参照されることを特徴とする請求項11記載のプリ
    ンタ制御方法。
  24. 【請求項24】 前記フォントオブジェクトは、複数頁
    から参照されることを特徴とする請求項19記載のプリ
    ンタ制御方法。
JP07178700A 1995-07-14 1995-07-14 プリンタ制御装置及び方法 Expired - Fee Related JP3119429B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP07178700A JP3119429B2 (ja) 1995-07-14 1995-07-14 プリンタ制御装置及び方法
US08/677,108 US5737501A (en) 1995-07-14 1996-07-09 Printer control unit and method
EP96111294A EP0753826B1 (en) 1995-07-14 1996-07-12 Printer control unit and method
DE69633813T DE69633813D1 (de) 1995-07-14 1996-07-12 Druckersteuerungseinheit und -verfahren

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP07178700A JP3119429B2 (ja) 1995-07-14 1995-07-14 プリンタ制御装置及び方法

Publications (2)

Publication Number Publication Date
JPH0930060A true JPH0930060A (ja) 1997-02-04
JP3119429B2 JP3119429B2 (ja) 2000-12-18

Family

ID=16053033

Family Applications (1)

Application Number Title Priority Date Filing Date
JP07178700A Expired - Fee Related JP3119429B2 (ja) 1995-07-14 1995-07-14 プリンタ制御装置及び方法

Country Status (4)

Country Link
US (1) US5737501A (ja)
EP (1) EP0753826B1 (ja)
JP (1) JP3119429B2 (ja)
DE (1) DE69633813D1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007290191A (ja) * 2006-04-24 2007-11-08 Oki Data Corp 画像形成装置
JP2011118933A (ja) * 2011-03-07 2011-06-16 Seiko Epson Corp 印刷設定提案方法

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4227236B2 (ja) 1998-02-18 2009-02-18 キヤノン株式会社 画像処理装置、画像処理方法及び記憶媒体
US6437876B1 (en) * 1998-09-29 2002-08-20 Hewlett-Packard Company Method and apparatus for image scaling during printing
US6525830B1 (en) 1998-11-05 2003-02-25 Samsung Electronics Co., Ltd. Printing method for improving speed
US6870635B1 (en) * 2000-05-16 2005-03-22 International Business Machines Corporation System and method for managing print objects using stacked objects queue
JP4337246B2 (ja) * 2000-08-29 2009-09-30 コニカミノルタビジネステクノロジーズ株式会社 印刷オブジェクト変換装置、印刷オブジェクト変換方法、印刷オブジェクト変換方法に関するプログラムを記録するコンピュータ読取り可能な記録媒体
US6636235B1 (en) * 2000-10-12 2003-10-21 International Business Machines Corporation Lettering adjustments for display resolution
US9836257B2 (en) 2001-01-19 2017-12-05 Flexiworld Technologies, Inc. Mobile information apparatus that includes intelligent wireless display, wireless direct display, or transfer of digital content for playing over air the digital content at smart televisions, television controllers, or audio output devices
US10860290B2 (en) 2000-11-01 2020-12-08 Flexiworld Technologies, Inc. Mobile information apparatuses that include a digital camera, a touch sensitive screen interface, support for voice activated commands, and a wireless communication chip or chipset supporting IEEE 802.11
US20020051200A1 (en) 2000-11-01 2002-05-02 Chang William Ho Controller for device-to-device pervasive digital output
US10915296B2 (en) 2000-11-01 2021-02-09 Flexiworld Technologies, Inc. Information apparatus that includes a touch sensitive screen interface for managing or replying to e-mails
US11204729B2 (en) 2000-11-01 2021-12-21 Flexiworld Technologies, Inc. Internet based digital content services for pervasively providing protected digital content to smart devices based on having subscribed to the digital content service
US20020062398A1 (en) 2000-11-20 2002-05-23 William Ho Chang Controller for mobile and pervasive output
GB2392810B (en) * 2001-06-29 2005-06-01 Bitflash Graphics Inc Method and system for manipulation of graphics information
US8045215B2 (en) * 2002-10-18 2011-10-25 Hewlett-Packard Development Company, L.P. Printer object list resolutions
US20050264833A1 (en) * 2004-03-09 2005-12-01 Seiko Epson Corporation Image retouching apparatus, corresponding image retouching method, and computer program product for image retouching
US7778492B2 (en) * 2006-04-04 2010-08-17 Oldford Group Limited System and method for scaling digital images
JP4715654B2 (ja) 2006-07-03 2011-07-06 富士ゼロックス株式会社 画像データ生成装置および画像形成装置
US8587918B2 (en) * 2010-07-23 2013-11-19 Taser International, Inc. Systems and methods for electrodes for insulative electronic weaponry
NL2007888C2 (en) 2011-11-29 2013-05-30 Meyn Food Proc Technology Bv Deboner for poultry parts, such as thighs or drumsticks.

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US399167A (en) * 1889-03-05 Micrometer caliper-square
US5027304A (en) * 1987-10-02 1991-06-25 Telecommunication Laboratories, Directorate General of Telecommunications , Ministry of Communications Character multifont compression and restoration device
EP0481787B1 (en) * 1990-10-19 1997-01-15 Canon Kabushiki Kaisha Output method and apparatus
JP3486467B2 (ja) * 1993-10-21 2004-01-13 キヤノン株式会社 画像記録装置及びその制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007290191A (ja) * 2006-04-24 2007-11-08 Oki Data Corp 画像形成装置
JP2011118933A (ja) * 2011-03-07 2011-06-16 Seiko Epson Corp 印刷設定提案方法

Also Published As

Publication number Publication date
DE69633813D1 (de) 2004-12-16
JP3119429B2 (ja) 2000-12-18
EP0753826B1 (en) 2004-11-10
EP0753826A2 (en) 1997-01-15
EP0753826A3 (en) 1998-04-15
US5737501A (en) 1998-04-07

Similar Documents

Publication Publication Date Title
JP3119429B2 (ja) プリンタ制御装置及び方法
US6219149B1 (en) Print processing apparatus
EP0887763B1 (en) Method and apparatus for building bitmap data in a printer
US6611347B1 (en) Print control apparatus, print control method, storage medium, and computer readable program performing a form overlay process
JPH11170655A (ja) 画像出力装置及び方法
US6317217B1 (en) Printing system and printing control method
JP4227236B2 (ja) 画像処理装置、画像処理方法及び記憶媒体
JPH10297050A (ja) 出力制御装置、出力制御方法、画像処理装置、画像処理方法及び記憶媒体
US5835122A (en) Printing apparatus and method capable of selectively printing with a plurality of resolutions
JP2610993B2 (ja) 情報処理装置及び方法
EP0870277B1 (en) Image rendering for page printers
US6016155A (en) Character processing apparatus, character processing method, and memory
US6310693B1 (en) Printing control apparatus and method, and printing system for reducing processing overhead
EP0481787B1 (en) Output method and apparatus
JP2000335021A (ja) 画像処理装置及び画像処理方法
JPH10202962A (ja) 印字データ処理装置及び入力データ作成装置
JP2001096854A (ja) 印刷処理装置および印刷処理方法
JP3450961B2 (ja) 印刷装置及びその制御方法
JP4325339B2 (ja) 印刷システム、ホストコンピュータ及びプリンタドライバ
JP3143003B2 (ja) 画像処理装置および画像処理方法
JPH11170656A (ja) 画像出力装置及び方法
JP2737880B2 (ja) 文字処理装置および方法
JPH08130618A (ja) 印刷装置及び印刷方法
JP3686490B2 (ja) プリンタドライバのアーキテクチャのための可変2値化処理を使用するシステムおよび方法
JP2006159458A (ja) 画像出力装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20000905

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071013

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081013

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091013

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091013

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101013

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101013

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111013

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111013

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121013

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131013

Year of fee payment: 13

LAPS Cancellation because of no payment of annual fees