JP3486433B2 - 自動フォント圧縮を行うページプリンタ - Google Patents

自動フォント圧縮を行うページプリンタ

Info

Publication number
JP3486433B2
JP3486433B2 JP22028893A JP22028893A JP3486433B2 JP 3486433 B2 JP3486433 B2 JP 3486433B2 JP 22028893 A JP22028893 A JP 22028893A JP 22028893 A JP22028893 A JP 22028893A JP 3486433 B2 JP3486433 B2 JP 3486433B2
Authority
JP
Japan
Prior art keywords
data
compression
memory
character
font
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.)
Expired - Fee Related
Application number
JP22028893A
Other languages
English (en)
Other versions
JPH06218986A (ja
Inventor
ラス・キャンベル
ゲーリー・ツィンマーマン
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH06218986A publication Critical patent/JPH06218986A/ja
Application granted granted Critical
Publication of JP3486433B2 publication Critical patent/JP3486433B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1297Printer code translation, conversion, emulation, compression; Configuration of printer parameters
    • 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
    • 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
    • G06K2215/0031Compressed bit maps
    • 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/0062Handling the output data combining generic and host data, e.g. filling a raster
    • G06K2215/0071Post-treatment of the composed image, e.g. compression, rotation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Record Information Processing For Printing (AREA)
  • Image Processing (AREA)
  • Dot-Matrix Printers And Others (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はページプリンタに関する
ものであり、詳しくは、1ページ分の印刷データに必要
なサイズよりも小さなバッファメモリサイズに適応する
ため、フォント圧縮機能を備えたページプリンタに関す
るものである。
【0002】
【従来の技術】従来技術のページプリンタは一般に、イ
メージを用紙上に形成する前に、1ページ全体を獲得す
る。こうしたプリンタの場合、フォーマット作成はホス
トコンピュータ(プリンタに対して送り出される大量の
ラスタライズデータを備えた)側で、またはプリンタ内
のフォーマッタ側で行われる。レーザプリント「エンジ
ン」は一定の速度で動作するから、エンジンの動作に遅
れずについていくだけの速度で新たなラスタライズデー
タを得られない場合、印刷の「オーバーラン」が生じ、
そのページの印刷はできなくなる。
【0003】印刷オーバーランを防止するために、さま
ざまな技術が用いられている。ある技術では、1ページ
全体の全ラスタビットマップを記憶して、印刷機構が常
に、ラスタライズデータ待ち動作となるようにしてい
る。300dpiの解像度の場合、この技術では、各ペ
ージ毎に約1メガバイトのラスタメモリが必要になる。
600dpiの解像度の場合には、4メガバイトのメモ
リが必要である。さらに、レーザプリンタはラスタデー
タのパイプライン処理によってその定格速度を得ている
ので、プリンタをその定格速度で動作させるには、追加
のラスタメモリが必要になる。さもなければ、先行ペー
ジがプリンタの出力トレイに排出されるまで、後続ペー
ジの構成を開始することができない。
【0004】レーザプリンタのコストを低レベルに保つ
ため、ラスタメモリの必要量を減少させることにかなり
の努力が傾注されてきた。メモリ減少技術のあるもの
は、ページ記述の構成を含んでいる。ページ記述は、2
つのステップから構築されている。フォーマット作成時
には、ホストコンピュータから受信したデータが、何を
印刷しなければならないかを記述した、ディスプレイコ
マンドと呼ばれる単純なコマンドのリストに変換され
る。第2のステップでは、印刷のためのディスプレイコ
マンドのリストが準備されるが、これは必然的に、ディ
スプレイコマンドの構文解析、及び記述されたオブジェ
クトのラスタビットマップ展開を伴うことになる。後続
ページに同じメモリーが用いられることから、この手順
では1ページ分のラスタビットマップメモリが必要にな
る。
【0005】メモリの必要量を減少させるため、ページ
上における垂直方向の位置に従ってディスプレイコマン
ドを分類することにより、ディスプレイコマンドリスト
についてのこの手順は修正されている。ページは次い
で、ページストリップまたは「ページ中間体」と呼ばれ
るセクションに分割され、各ページストリップは印刷の
ために、プリントエンジンへと順次送られる。ページス
トリップ内におけるディスプレイコマンドが、十分に速
いペースでラスタライズデータに展開されたならば、最
初のページストリップを記憶するのに用いられたのと同
じメモリを、そのページのさらに下方に位置する後続の
ページストリップのために再利用することができる(最
初のページストリップが用紙に転送されたならば)。
【0006】本出願人によって製造されているレーザプ
リンタLaser Jet IIIは、ディスプレイコマンドリスト
アルゴリズムを用い、ページ中間体ストリップのため
に、3つのラスタバッファを利用している。第1のバッ
ファは、そのページの第4のストリップについて再利用
され、第2のバッファは第5のストリップについて再利
用されるといった具合である。8ページ/分のプリンタ
の場合、ストリップ1の終了時点と、ストリップ4が印
刷機構によって必要とされることになる時点との間に
は、時間は殆ど残されていない。ストリップが時間通り
に送り出されなければ「印刷オーバーラン」が生じ、ペ
ージの印刷は不正確になってしまう。
【0007】ごく最近になって、解像度が600dpi
のプリンタが市場に導入された。こうしたプリンタはテ
キストだけでなく、ラインアート及び各種タイプのイメ
ージも取り扱う。こうしたプリンタに必要なメモリ量を
最小限に抑えるために、データ圧縮技術が用いられてい
る。例えばプリンタへのデータ転送プロセスにおいて
は、ホストプロセッサによって、ランレングスデータ圧
縮が用いられている。ランレングスエンコード構成にお
いては、繰り返されるデータが、データの一致、及び繰
り返しのラン(連続)/レングス(長さ)を示すことに
よってエンコードされる。
【0008】以上から看取され得るように、ラスタイメ
ージバッファメモリを最小限に抑えるために、プリンタ
はイメージ圧縮及びラインアートを用いてきた。しかし
ながら、高度なデータ圧縮技術を用いたとしても、印刷
オーバーランの発生が常に阻止されるとは限らない。文
字フォントは一般に、印刷バッファメモリ中でかなりの
記憶容量を占めたとしても、圧縮を施しにくい。ホスト
プロセッサの中には、フォントのビットマップをプリン
タのバッファに直接ダウンロードするものもある。ある
種のプリンタはまた、「スケーラブル」と呼ばれる、内
部に記憶されたフォントをも含んでいる。スケーラブル
フォントとは、文字のアウトラインがプリンタメモリ中
に記憶されているフォントである。プリンタに用いるの
にそのフォントが必要な場合、それは適正なサイズにな
るようにスケーリングされ、ランダムアクセスメモリに
ロードされ、アウトラインされた文字の内側が「充填」
され、次いで完全に構成された文字ビットマップとして
使用するために保存される。
【0009】
【発明が解決しようとする課題】ある種のプリンタ制御
言語(例えばHewlett-Packard社のPCL)は、フォン
トビットマップがプリンタ内のメモリに連続して記憶さ
れることを必要とする。フォントが小さければ、関連す
るビットマップも小さいので、メモリ容量の問題はほと
んど生じない。しかしながら大きなフォントは、こうし
たフォントの記憶に必要なメモリのサイズが、フォント
の「ポイントサイズ」の自乗として増大するために、か
なりのメモリを占める。大きなフォントを受信した場合
には、プリンタ内で、多数の連続したメモリブロックを
利用することができない場合もある。さらにまた、連続
する大きなメモリブロックを取っておくのは浪費であ
り、できれば回避すべきである。
【0010】従って、本発明の課題は、文字フォントに
ついて動作する圧縮手順を有するページプリンタを提供
することにある。
【0011】本発明の別の課題は、選択的にフォントの
データ圧縮を行い、利用可能なバッファメモリサイズを
より有効に活用するページプリンタを提供することにあ
る。
【0012】本発明のさらに別の課題は、バッファメモ
リが不足した、又は「切れた」状態であることが示され
た場合に、選択的にフォントデータ圧縮を用いるページ
プリンタを提供することにある。
【0013】
【課題を解決するための手段】ページプリンタは、ある
種のページ構成を記憶するには容量が不十分なランダム
アクセスメモリ(RAM)と、プロセッサと、及び少な
くとも1つのデータ圧縮手順を保持する制御メモリとを
含んでいる。このページプリンタは、入力データストリ
ームの一部を記憶するについて不十分なRAMしか利用
可能でない場合にメモリ不足/切れ信号を生成するステ
ップと、入力データストリームの一部にラスタグラフィ
ックスイメージが存在する場合にかかるイメージを圧縮
してメモリ不足/切れ信号を除去しようと試みるステッ
プと、入力データストリーム中にラスタグラフィックス
イメージが存在しない場合にデータ圧縮手順を用いて文
字フォントを圧縮するステップと、ラスタグラフィック
スイメージを圧縮する試みがメモリ不足/切れ信号の除
去について不成功の場合にデータ圧縮手順を用いて文字
フォントを圧縮するステップとから構成される、フォン
ト圧縮方法を実行する。このページプリンタはまた、メ
モリ不足/切れ信号が存在しない状況の下で、サイズが
第2のしきい値(利用可能なプリンタのRAMに関連づ
けることができる)を超える、サイズの大きいフォント
を自動的にデータ圧縮するように制御が可能である。
【0014】
【実施例】以下では、レーザページプリンタに関して本
発明の説明を行うが、プロッタ、ファクシミリ装置その
他といった周辺装置においても、本明細書に記載の手順
を利用可能であることが理解されねばならない。
【0015】プリンタシステム 図1において、プリンタ10はプロセッサ12と、レー
ザプリントエンジン14と、及び入力/出力(I/O)
ポート16とを含み、これらは全て、バス18によって
接続されている。プリントエンジン14はレーザ印刷機
構からなり、これは作動された場合に一定速度で動作す
るものであって、その動作に遅れずについていくことの
できる速度においてビデオラスタ印刷データの供給を受
ける必要がある。バス18にはまた、ランダムアクセス
メモリ(RAM)20と読み出し専用メモリ(ROM)
22が接続されており、これらは、利用可能なRAM2
0が最も有効に用いられ、そしてオーバーランを回避す
るためにプリントエンジン14が常に印刷待ちデータを
有することを確実にするために必要な手順を含んでい
る。
【0016】受信したデータストリームの記憶に利用可
能なRAM20中のメモリ量は、1ページ分の全ビデオ
ラスタビットマップイメージを収容するのに必要な量に
比べると大幅に少ない。ホストプロセッサからのイメー
ジ及びフォントデータは、I/0モジュール16を介し
て受信され、RAM20に読み取られる。文字フォント
のダウンロードされたビットマップの場合、その文字に
は、文字の高さ、幅、文字が圧縮されているか否か、ど
の圧縮手順が用いられたかを識別するためのヘッダが付
される。
【0017】RAM20には、各種の用途、即ちユーザ
メモリ、ラスタイメージ、圧縮フォント、及びページ中
間体表示のために割り当てられた複数の領域が含まれて
いる。ROM22には、記憶されたスケーラブルフォン
ト、幾つかの圧縮手順、即ち「Mモード」(後述)、ビ
ットランレングス、及び文字フォントを受信した場合
(即ち「初期」)またはメモリ不足/切れ信号が与えら
れた場合のみ(即ち「後期」)の何れかに生成されうる
圧縮サイクルを実行するための手順が含まれている。
【0018】プリンタ10がイメージデータを受信する
と、データは構文解析され、文字及びイメージが処理さ
れる。イメージの処理は、RAM20に記憶されている
ラスタグラフィックスデータを導き出すために行われ
る。こうしたラスタグラフィックスイメージは、ビデオ
ラスタに容易に変換可能であり且つメモリの消費量を可
能な限り少なくするフォーマットで1ページ全体の情報
を表現する手段である、中間ページ表現(「ページ中間
体」)にリンクされる。ページ中間体の動作は本質的
に、1ページを複数のストリップに分割し、各々のスト
リップは、既定の数の命令を含む。各ストリップには、
高さ、及び全データ容量が割り当てられる。
【0019】グラフィックスデータをページ中間体に変
換する場合に、ストリップの内容が、ストリップのビデ
オバッファのサイズに基づいたしきい値を越えることが
明らかになる場合がある。また、複数のストリップをラ
スタイメージに変換した後に、ページ中間体の変換を完
了するのに不十分なメモリしか残っていないといった場
合も起こり得る。こうした場合には、プロセッサ12
は、さらなるイメージ圧縮手順の試みを生じさせるメモ
リ不足/切れ信号を送り出す。こうしたイメージ圧縮手
順については、本出願の優先権主張の基礎となる米国特
許出願日と同日に提出された、「Page Printer Having
Adaptive Data Compressin For Memory Minimization」
と題する米国特許出願(代理人書類番号1092076)に記
載されている。この米国特許出願の内容は、ここで参照
することによって本明細書中に取り入れるものとする。
【0020】本明細書に開示のプリンタにおいては、イ
メージデータ圧縮が不十分であって、メモリ不足/切れ
信号が除去されない場合、さらなるメモリ節約を達成す
るために、フォント圧縮手順が呼び出される。本発明の
別のバージョンでは、しきい値サイズを越える文字フォ
ントがホストプロセッサから受信された場合、それらは
メモリ不足/切れ信号が発生されたか否かとは無関係
に、直ちに圧縮される。このしきい値サイズは、利用可
能なプリンタRAMの量に関連している。
【0021】バンド化文字フォント 図2には、概略的に表示されたビットマップ30に包含
された文字Aが示されている。ビットマップ30は、表
示された特定の文字をオン又はオフ状態によって制御す
る個々のピクセルからなる、複数の水平ラスタ走査線か
ら構成されている。各ビットマップ30は複数のバンド
32、34、36等に分割されており、各々のバンドは
N行のピクセルから成る。以下で理解されるように、ビ
ットマップが複数のページ中間体ストリップにまたがる
場合には、文字ビットマップの「バンド化」によって、
圧縮されたビットマップの圧縮解除がより迅速に行える
ようになる。
【0022】各バンドは、圧縮された文字表現40によ
って示されているように、個別にデータ圧縮される。各
バンドは、サイズフィールド42とデータフィールド4
4を含むデータブロックとによる、圧縮文字表現40で
示されている。サイズフィールド42は、圧縮後におけ
るバンドのサイズを定義し、データフィールド44は、
ラスタビットイメージの再現を可能にする、エンコード
された文字を含んでいる。従って圧縮文字は本質的に、
複数のデータ構造(サイズ及びデータフィールド)から
構成されており、これらは各々、文字バンドを圧縮形態
で定義している。これらのバンドは、連続してRAMに
記憶することもできるし、あるいは非連続的にリンクす
ることも可能である。
【0023】全データ圧縮手順 図3に示すように、プリンタ10に用いられるデータ圧
縮手順は、I/Oモジュール16からデータストリーム
を受信した場合に開始される(ボックス50)。この段
階において、RAM22に記憶された手順の制御下にあ
るプロセッサ12は、入力データストリームからページ
中間体ストリップの作成を開始する(ボックス52)。
何時の時点であっても、プロセッサ12がメモリ不足/
切れ信号を発生した場合には(判定ボックス54)、あ
る圧縮手順が選択され(ボックス56)、受信したグラ
フィックスイメージを圧縮する試みがなされる(ボック
ス58)。選択される初期圧縮手順は、無損失圧縮動作
の達成を可能にするものである(即ち圧縮データは、情
報を失うことなしに再構成可能である)。
【0024】データ圧縮手順の試みがうまくいけば、メ
モリ不足/切れ信号は除去され(ボックス60)、この
手順はページ中間体ストリップの作成を続行する。メモ
リ不足/切れ信号が生じなければ、同様の動作が判定ボ
ックス54において行われる。
【0025】メモリ不足/切れ信号が残っている場合
(判定ボックス60)、プロセッサ12は、文字フォン
トについて無損失圧縮手順を開始する。文字フォントの
圧縮が成功し、メモリ不足/切れ信号が除去されたなら
ば(判定ボックス64)、手順は次いで、ページ中間体
処理へと回り戻る(ボックス52)。しかしながら、メ
モリ不足/切れ信号が残っている場合には、「有損失」
圧縮手順(ボックス66)がグラフィックイメージに対
して用いられるが、しかしこれは文字フォントには用い
られない。有損失圧縮は通常、メモリ不足/切れ信号信
号の除去を可能にするが、圧縮解除時のイメージ精度を
犠牲にすることになる。
【0026】フォント圧縮 図4には、フォント圧縮手順の好ましい実施例が示され
ている。文字印刷コマンド(ボックス70)に応答し
て、RAM作業空間が割り当てその他により獲得され
(ボックス72)、その文字の記述子が記憶される(ボ
ックス74)。該記述子からのデータは、非圧縮文字の
サイズの判定を可能にする。次に、このサイズに基づい
て、非圧縮文字の記憶に十分なRAM空間が利用可能か
否かが判定される(判定ボックス76)。十分な空間が
利用可能な場合には、その文字のビットマップが生成さ
れ(ボックス78)、ページ中間体処理が続行される
(ボックス80)。
【0027】これとは対照的に、非圧縮文字が利用可能
なRAM空間に納まらないと分かれば(判定ボックス7
6)、文字圧縮動作時に用いるために、バンドサイズ
(文字走査行で表す)が選択される。(文字のポイント
サイズが大きくなれば、各バンドにはより多くの走査行
が含まれることになる。)文字データは、例えば各々が
16走査行(あるいは他の構成可能な数)から成る複数
のバンドへと、先ずは文字の第1行から圧縮される。こ
れは、単一の文字がそのページの2つ以上のストリップ
にまたがる場合を容易にするために行われる。こうした
場合に、ストリップ内の文字の一部の圧縮解除は、スト
リップ内のデータを有する最初の16行のバンドから開
始される。16行のバンドは、各文字毎にどのくらいの
量の不必要なデータを圧縮解除しなければならないか
(15の走査行まで)と、1つのバンドにどのくらいの
量のデータを圧縮しなければならないか(バンド内のデ
ータが増大すると、それだけ圧縮比が高くなる)との間
の妥協として選択されたものである。従って、ある文字
が2つ以上のストリップに現れる場合、常にその文字の
圧縮イメージの始まりから圧縮解除を行うのではなし
に、オンザフライ式に圧縮解除を実施することが可能で
ある。
【0028】バンドサイズの選択に引き続き、処理すべ
き文字バンドが残されているか否かの判定が行われ(判
定ボックス84)、なければページ中間体処理が続行さ
れる(ボックス80)。しかしながら、文字圧縮がちょ
うど開始されようとしている場合に、明らかにバンドが
残されている場合には、記憶されている命令に従って、
その文字バンドのためにビットマップが生成される(ボ
ックス86)。このビットマップは次いで、適切な圧縮
手順を用いて圧縮される(ボックス88)。以下で理解
されるように、2つの圧縮手順、即ちMモード圧縮とビ
ットランレングス圧縮が好ましいが、他の圧縮手順を用
いることも可能である。
【0029】文字ビットマップが圧縮されたならば、R
AM空間がその圧縮バンドに利用可能か否かの判定が行
われ(判定ボックス90)、そしてもし利用可能ではな
く、またメモリ不足処理が試行されていなければ(判定
ボックス92)、かかるメモリ不足処理が実行される
(ボックス94)。この場合にメモリ不足処理は、以前
に試みられていない無損失又は有損失手順を用いて、非
圧縮イメージデータの圧縮を試みることからなる。メモ
リ不足処理が既に試みられている場合には、メモリ切れ
信号が生成される(ボックス96)。RAM空間が圧縮
文字バンドにとって利用可能である限り、この手順は、
全てのバンドが終了するまで続行される(判定ボックス
84)。この実施例において留意すべきは、フォントサ
イズとは無関係に、全ての文字を圧縮する試みがなされ
るという点である。
【0030】文字圧縮 図5に示すように、まず文字が獲得され(ボックス10
0)、次いでMモード圧縮が試みられたか否かの判定が
行われる(判定ボックス102)。Mモード圧縮とは、
データ圧縮を得るために、データブロックにおける水平
方向と垂直方向の両方における冗長性が検査される圧縮
手順である。Mモード圧縮の詳細については、図10及
び図11に関連して後述する。簡単に言えば、Mモード
圧縮は、文字バンドの走査行の各々に沿って、ワード長
データグループ(例えば8ビット又は16ビットワー
ド)の検査を行う。第1の走査行では、同様のワードの
出現に基づいて、ランレングス圧縮だけが実施される。
バンド内の後続行においては、ワードは直前の走査行に
おけるワードと比較され、一致状態又は一致状態の欠如
(即ち「同一」または「相違」)が判定される。同一又
は相違の判定に基づいて、1走査行における「同一」ワ
ードの数、及び一連の「同一」ワードを途切れさせる後
続の異なるワードの識別を示す、同一/相違コマンドが
発生される。ランレングスデータ圧縮は、異なるワード
が確認された後にも、次に同一ワードに遭遇するまで用
いられる(即ち直前の行のワードと同一のワード)。
【0031】Mモード圧縮は、極めて高速に実行される
ものであり、2:1〜8:1の範囲で圧縮を達成する。
例えば典型的には72ポイントのフォントは、8ビット
ワードを用いて、6:1に圧縮される。Mモード(8ビ
ットワードを利用)はまた、圧縮及び圧縮解除に際し
て、ビットランレングス圧縮よりも高速である(一般に
50%速い)。
【0032】図5に示すように、Mモード圧縮が試みら
れていなかった場合(判定ボックス102)、文字のバ
ンドはMモード圧縮され(ボックス104)、文字の記
述子には、「Mモード試行済」と表示される(ボックス
106)。文字が圧縮されたならば、記述子にはまた、
「Mモード圧縮済」と表示され、圧縮された文字が利用
される(ボックス108)。文字が圧縮されなかった場
合、手順は圧縮されない文字が残っているか否かの判定
に移行し(判定ボックス110)、残っていれば、手順
はボックス100に再循環する。Mモード圧縮が既に試
みられている場合(判定ボックス102)、手順は分岐
して、文字サイズがプリセットされたしきい値未満であ
るか否かの判定を行う(判定ボックス112)。この判
定は、ビットランレングス(BRL)圧縮を利用すべき
か否かの判定における重要な先行ステップである。BR
L圧縮は、所定のサイズ(例えば典型的には、24ポイ
ント以下を表すサイズ)よりも小さな文字ビットマップ
に用いられる。小さい文字中に存在するビットの連続は
典型的には4ビットよりも長く、BRLはビットの連続
の各々を4ビットフィールドにコード化するので、BR
Lは小さい文字に対して有効に機能する(典型的には
1.5:1〜1.8:1の圧縮比が得られる)。BRL
はより大きな文字にも有効であるが、より大きな文字は
行及びワードの同一性の度合いが高く、Mモードを用い
たほうがより有効な圧縮が行えるから、最適なものでは
ない。基本的なBRL圧縮ワードは、2つの4ビット値
である。最上位の4ビットは連続したゼロビットの数を
表しており、最下位の4ビットは連続した1ビットの数
を表している。15ビット以上連続する場合には、他方
のビット値に関する次のランレングスフィールドにゼロ
を入れることによって、別のワードにおいてカウントが
続行される。
【0033】判定ボックス112に示すように、文字サ
イズがプリセットしたしきい値以上の場合には、その文
字には「BRL試行済」と表示され(ボックス11
6)、その文字はRAMに記憶される(ボックス11
8)。文字がしきい値未満であることが見い出された場
合には、それに対してBRL圧縮が試みられたか否かの
判定が次に行われる(判定ボックス114)。試みられ
ている場合には、その文字はRAMに記憶され(ボック
ス118)、試みられていなければ、文字ビットマップ
から成るバンドに対してBRL圧縮が実行される(ボッ
クス120)。次いで文字記述子には、「BRL試行
済」と表示され(ボックス122)、圧縮されているな
らばその文字は利用され(非圧縮ビットマップの代わり
に)、その記述子には「BRL圧縮済」と表示される。
この手順は、そのフォントの全ての文字が処理されるま
で続行される。
【0034】初期フォント圧縮 図6を参照すると、メモリ不足/切れ信号が送り出され
たか否かに依存しない「初期」フォント圧縮が用いられ
る、本発明の第2の実施例が示されている。この場合に
は、フォントサイズが第1のしきい値を越えるならば、
文字の受信に際して自動的にその文字に対してフォント
圧縮が施される。文字のサイズが第1のしきい値未満で
あると判定されたならば、その文字は記憶され、また本
発明の第1の実施例におけるように全てのフォントサイ
ズについてではなく、第2のしきい値(即ち最小のポイ
ントサイズ)を越えるフォントだけが、メモリ不足/切
れ信号に際して圧縮される。
【0035】しきい値(「大」フォントサイズ)を越え
るフォントサイズを備えた文字に対する初期圧縮動作
は、より少ないメモリ断片化でもって、プリンタシステ
ムがより有効に機能することを可能にする。図7におい
てはページ160が示されており、そこには複数の大フ
ォントサイズ文字162が印刷される。ページ中間体ス
トリップ及び文字フォントの記憶に利用可能なランダム
アクセスメモリが制限されているとすると、印刷すべき
全ての大きい文字が処理されるよりかなり前に、メモリ
切れ状態になる。このため、フォント圧縮はこうした場
合には、メモリ不足/切れ信号の受信を待つことなく、
直ちに進められる。
【0036】図6に戻ると、ある文字を印刷するコマン
ドを受信すると(ボックス130)、まず文字の記述子
が検査され、そのフォントポイントサイズが所定のしき
い値、即ちしきい値「A」を越えるか否かが確かめられ
る(判定ボックス132)。この記述子の検査は、文字
がI/0モジュール16を介して最初に受信されてお
り、文字の残りの部分の処理が行われる前に実行され
る。
【0037】文字のポイントサイズがしきい値A未満で
あると判定された場合には、図8に示すように、「後
期」文字圧縮手順(ボックス134)が行われる。文字
ポイントサイズがしきい値Aを越えることが分かると、
文字ビットマップとその文字の圧縮バージョンの両方に
ついて、RAM作業空間が割り当てられる(ボックス1
36)。割り当てに利用可能なメモリが不十分な場合
(判定ボックス138)、この手順では、既に試行され
ていなければ、イメージデータに対してメモリ不足/切
れ処理を試行する(判定ボックス140、ボックス14
2)。メモリ不足/切れ処理が試行されている場合に
は、メモリ切れ信号が発生される。RAM作業空間の割
り当てがうまくいけば(判定ボックス138)、受信文
字に関して文字ビットマップが生成され(ボックス14
6)、次いでそれは、例えばMモードで圧縮される(ボ
ックス148)。文字は次に、圧縮解除時の利用に備え
て圧縮データリストにリストアップされ(ボックス15
0)、ページ中間体処理が続行される(ボックス15
2)。
【0038】図8には、しきい値Aより小さい文字フォ
ントが圧縮される、「後期」フォント圧縮手順が示され
ている。一般に、メモリ不足/切れ信号が存在しない場
合には(判定ボックス170)、ページ中間体処理が続
行される(ボックス172)。メモリ不足/切れ信号が
生成されたならば、処理を受けるページが検査され、グ
ラフィックスイメージがそこに存在するか否かの判定が
行われる(判定ボックス174)。存在する場合には、
そのイメージのデータ圧縮が試みられ(ボックス17
6)、次いで依然としてメモリ不足/切れ状態であるか
否かの判定が行われる。否の場合には、手順はページ中
間体処理を続行する。しかしそのような状態にある場合
には、文字フォントの圧縮が試みられる。同様にして、
ページにグラフィックスイメージが含まれていない場合
にも、文字フォントの圧縮が試みられる。
【0039】文字の圧縮は、ページ上の文字のビットマ
ップ表示を獲得し(ボックス180)、その記述子を検
査して、文字が既に圧縮されているか否かの判定を行う
(判定ボックス182)ことにより開始される。圧縮さ
れていなければ、その記述子をさらに検査して、そのポ
イントサイズが、第1のしきい値Aより小さな第2のし
きい値Bよりも小さいか否かの判定が行われる(判定ボ
ックス184)。この場合、しきい値Bは、7ポイント
(100バイト)又はそれ以下の文字サイズを表すこと
ができる。ポイントサイズがしきい値Bよりも大きな場
合には、文字バンドサイズが、ポイントサイズに基づい
て選択される(ボックス186)。個々の文字バンドは
次いで、適切な圧縮技術、例えばMモードを用いてデー
タ圧縮される(ボックス188)。文字バンドが全て圧
縮されるまで、圧縮は続行される(判定ボックス19
0)。
【0040】アクセスされた文字ビットマップが既に圧
縮されており、ポイントサイズがしきい値Bより小さ
く、或いは文字の圧縮が終了している場合には、圧縮す
べき文字がそれ以上あるか否かの判定が行われる(判定
ボックス92)。ある場合には、手順は再循環してボッ
クス180に戻る。なければ、メモリ不足/切れ状態が
依然として存在するか否かが判定され、存在する場合に
は、ページ上のイメージに関して他の圧縮手順が試みら
れる(ボックス196)。こうした手順の一つでは、こ
うしたイメージは有損失圧縮手順を受けることになる。
メモリ不足/切れ状態が文字圧縮動作によって除去され
たならば、ページ中間体処理が続行される(ボックス1
98)。
【0041】上述のように、初期圧縮は、しきい値Aを
越えるサイズの文字のフォントポイントサイズのために
予約されている。後期圧縮は、文字のフォントポイント
サイズが、しきい値AとBの間にある場合に用いられ
る。従って、しきい値Aのレベルが高くなると、より多
くの後期圧縮が行われることになる。不必要な初期圧縮
を最小限にとどめるため、より多くのRAMが利用可能
な場合には、しきい値Aは動的に調整されうる。文字フ
ォントのポイントサイズが十分に大きければ、初期圧縮
には、システムの残りの部分に関して利用可能なメモリ
が最大になり、フォントキャッシュにおいて利用可能な
文字数が最大になり、またメモリの断片化が最小限に抑
えられるという利点がある。さらに、この手順を非常に
大きい文字フォントに拡張する場合、初期圧縮がなけれ
ばプリンタがメモリを使い果たす可能性があるので、初
期圧縮が不可欠になる場合が多い。
【0042】圧縮解除 図9には、複数のページ中間体ストリップ200、20
2、及び204が示されている。文字A206は、ペー
ジ中間体ストリップ200及び202にまたがってお
り、その文字ビットマップは、バンド208、210、
212、214、及び216から構成されている。バン
ド208は、完全にストリップ200内に含まれるが、
バンド210はストリップ200及び202にまたがっ
ている。想起されるように、文字バンドの各々は、ペー
ジ中間体ストリップ内の複数のラスタ走査行を包含して
おり、圧縮した後にはサイズフィールドと、それに続い
てそのバンドを構成しているビットマップの圧縮値を示
すデータフィールドとからなる。図10から明らかにな
るように、文字のバンド化によって、その圧縮解除をよ
り迅速に行うことが可能となる。各々のバンドは、プリ
セットされた数の走査行から構成されるので、単に第1
のバンド208の第1の走査行を知るだけで、どのバン
ドの最初の走査行を見つけることもできる。
【0043】図10を参照して、そこに示されたフロー
チャートに関連して文字の圧縮解除について説明する。
こうした圧縮解除は、ページ中間体ストリップデータを
ストリップ全体のラスタ走査ビットマップ表示に変換す
る際に生じる。最初に、圧縮文字の第1のバンドがアク
セスされ(ボックス220)、これにより、その文字の
第1の走査行を判定することが可能になる。次に、スト
リップ中の印刷すべき第1のラスタ走査行が、アクセス
したバンドに含まれているか否かの判定が行われる(判
定ボックス222)。ページ中間体ストリップ202が
処理中であると仮定した場合、印刷すべき第1の走査行
は、ストリップ200と202の間のストリップ境界に
ある走査行である。従って、文字206のバンド208
に関しては、判定は否であり、次のバンド(210)が
アクセスされる(ボックス224)。次に判定ボックス
222では、印刷すべき第1の走査行がバンド210内
にあることが示される。手順は次いで、圧縮手順の補数
を利用して、バンド210を圧縮解除する(ボックス2
26)。文字の記述子には、どの圧縮技術が試行されて
いるか、実際にどんな圧縮手順を用いて文字ビットマッ
プが圧縮されたかということに関する完全な記録が含ま
れている。
【0044】バンド210の圧縮解除が行われ、バンド
ビットマップが再構成されると、ストリップ202の第
1の走査行に先行するラスタ走査行は無視される(ボッ
クス228)。次いでこの走査行から始めて、バンド2
10の残りの走査行が印刷される(ボックス230)。
引き続き、文字全体の印刷が済んだか否かの判定が行わ
れる(判定ボックス232)。済んでいなければ、ボッ
クス234、236、及び238に示すようにして、文
字全体の印刷が済むまで手順が続行され、印刷が済んだ
時点において、この手順はその特定の文字に関して終了
することになる。この手順は、ストリップ内の全ての後
続する文字について繰り返される。
【0045】Mモード圧縮 Mモード圧縮は、ランレングスエンコードと、バンド内
の各行毎に生ずる「デルタ」変化のエンコードの両方を
用いて、文字バンドの圧縮を試みる。Mモード手順では
その動作中に、「同一」、「相違」、及び「連続」状態
が利用される。「同一」状態は、ある行内のビットのバ
イト長が、先行行内において垂直方向にアライメントの
とれるバイトと同じになる毎に、カウントの累算を可能
にする。「相違」状態がアクティブの場合には、ある行
のバイトが先行行において垂直方向にアライメントのと
れるバイトと異なる毎に、カウントがインクリメントさ
れる。第3のカウントを用いて、ある行内で出現する同
一バイトのランレングスが記録される。
【0046】図11に示すように、Mモード圧縮手順の
初期状態が、「同一」にセットされているものと仮定す
る(ボックス250)。次いで、あるバンドの第1行が
検討され、その中のバイトに関してランレングス圧縮が
実行される(ボックス252)。バイトのランレングス
が存在する限り、「連続」バイト及び「連続」のカウン
トの各々に関して、ランレングスコマンドが生成され
る。さらに、その行にある残りのバイトは「同一/相
違」コマンドにおいて「相違」データとして出力され、
そこにおいて「同一」の値は0に等しくなるように設定
される。このコマンドについては、さらに詳細に後述す
る。
【0047】ボックス254に示すように、あるバンド
の第1行内にある各バイトは、定義によれば「相違」で
あるため(最初の行の上に行はない。)、「相違」カウ
ントがインクリメントされ、行の終わりにおいて、及び
第1行内の各々の連続の終わり毎にリセットされる。次
いで次の行がアクセスされ、左から開始して各バイトが
検査され、直前の行において垂直方向にアライメントの
とれるバイトと同じであるか否かの判定が行われる。
「同一」状態が満たされる限りにおいて、先行行におい
て垂直方向にアライメントのとれるバイトと異なるバイ
トに遭遇するまで、「同一」カウントがインクリメント
される(ボックス256)。
【0048】この手順は「相違」状態に切り換えられ、
「相違」状態が満たされる限り、「相違」カウントがイ
ンクリメントされる。「相違」のワードに関しては、連
続カウントが維持される。(「同一」状態時には、「連
続」に関するカウントが行われないので、この動作によ
って圧縮手順は高圧縮解除速度に対して最適化される。
「同一」状態時における連続カウントを考慮することに
よって、より高い圧縮比を達成することが可能にな
る。)状態の各切り換え毎に、「同一」カウント、「相
違」カウント、及び「同一」バイトに続く「相違」バイ
トの識別を含む、同一/相違コマンドが生成される。相
違状態は、(1)その行内において、上の行において垂
直方向にアライメントのとれるバイトと同じバイトに遭
遇するか、又は(2)2を越えるランレングスに遭遇す
るか、或いは(3)行が終了するまで続行される(ボッ
クス258)。この手順がまだ「相違」状態にある点に
留意すると、上の行と同じバイトに遭遇した場合には、
状態が切り換えられて「同一」に戻り、上述のようにし
て同一/相違コマンドが出力される。
【0049】2を越えるランレングスに遭遇し、それが
終了した場合には、連続カウント及び連続バイトを含む
連続コマンドが出力される。相違カウント及び相違バイ
トに遭遇すると、同一/相違コマンドもまた出力される
(ボックス260)。この相違カウントは、連続データ
のカウントは含まない。
【0050】次に、行が終了したか否かの判定が行われ
(ボックス262)、終了していなければ、同一の状態
に戻るよう切り換えが行われ(ボックス264)、手順
は再循環してボックス256に戻る。これに対し、行が
終了している場合には、現在の行全体が上の行と同じか
否かの判定が行われる(判定ボックス266)。同じで
あれば、その行に関して生成された同一/相違コマンド
は、同一/相違コマンドよりもコンパクトな「行反復」
コマンドに置き換えられる。しかしながら、現在の行が
上の行と同じでなければ、最後に生成されたコマンドが
ゼロの連続を示したか否かの判定が行われる(判定ボッ
クス270)。示している場合には、この最後のコマン
ドは行終了コードに置き換えられ、圧縮解除時にその行
にゼロが埋め込まれることが実現される(ボックス27
2)。
【0051】この段階において、文字の処理が終了した
か否かの判定が行われ(判定ボックス274)、終了し
ていなければ新しいバンドがアクセスされ(バンド27
6)、手順は再循環される。
【0052】ビットランレングス(BRL)圧縮 上述したように、BRLは小さい文字に対して有効に機
能するので、比較的小さい文字ビットマップ(即ち24
ポイント以下)に利用される。これは、その場合に存在
しているビットの連続が典型的には4ビットよりも長
く、BRLがビットの連続の各々を4ビットフィールド
にエンコードするからである。BRLはより大きい文字
にも有効であるが、より大きい文字は、行及びワードの
同一性の度合いが高く、Mモードを用いたほうがより有
効な圧縮が行えるので、最適なものではない。図13に
示すように、基本的なBRL圧縮バイトは、2つの4ビ
ットランレングス値である。最上位の4ビットは、連続
したゼロビットの数であり、最下位の4ビットは、連続
した1ビットの数である。15ビット以上連続すること
が必要な場合には、他方のビット値に関する次の4ビッ
トのランレングスフィールドにゼロを入れることによっ
て、それは別のワードにおいて続行される。従って、
(ボックス300に示すように)この手順は、相補ビッ
トが見つかるまで、同一のビットの数をカウントするこ
とによって開始される。見つかった時点において、8ビ
ットのバイトが用いられ(ボックス302)、カウント
されているビットのタイプに基づいて、第1の4ビット
フィールド又は第2の4ビットフィールドにカウントが
入力される。カウントが15を越えると、相補ビットフ
ィールドはゼロにセットされ、カウントは次のバイトに
継承される(ボックス304)。この手順は、ビットの
連続が終わるまで続行され、その時点において、真のビ
ットが現れるまで相補ビットのカウントが行われ、この
手順が繰り返される。
【0053】
【発明の効果】以上の説明は、本発明の例示にすぎない
ことが理解されねばならない。当業者であれば、本発明
から逸脱することなしに、各種の設計変更及び修正を案
出することが可能である。従って本発明は、特許請求の
範囲内に含まれる、かかる全ての設計変更、修正、及び
バリエーションを包含することを意図したものである。
【0054】以上の如く本発明によれば、各種の圧縮手
順を用いて選択的にフォントのデータ圧縮を行い、利用
可能なバッファメモリサイズをより有効に活用するペー
ジプリンタが提供される。圧縮はバッファメモリが不足
した、又は「切れた」状態であることが示された場合に
行うことができ、またかかるメモリ不足/切れとは関係
なしに、自動的にあるしきい値を越える大きなフォント
について実行するようにできる。かくして利用可能なメ
モリ資源を最適に活用することが可能になる。
【図面の簡単な説明】
【図1】本発明を実行するためのページプリンタの、高
レベルブロック図である。
【図2】データ圧縮時に用いられるバンドを示す、文字
ビットマップの説明図である。
【図3】図1のシステムによって用いられるデータ圧縮
手順の全体を示した、高レベルのフローチャートであ
る。
【図4】メモリ不足/切れ信号に用いられる、フォント
圧縮手順の第1の実施例の高レベルのフローチャートで
ある。
【図5】図4のフォント圧縮手順において用いられる、
文字圧縮手順の高レベルのフローチャートである。
【図6】メモリ不足/切れ信号に関係なく、受信時に大
きいフォントサイズの圧縮を行う(「初期圧縮」と呼ば
れる)本発明の第2の実施例を示す、高レベルのフロー
チャートである。
【図7】1ページ全体の印刷が行われる前にメモリ不足
/切れ信号を生じることになる、複数の大きい文字フォ
ントを含む1ページの平面図である。
【図8】圧縮動作時に小さいフォントサイズを無視する
「後期」フォント圧縮手順である。
【図9】ページ中間ストリップのストリップ境界に、バ
ンド化された文字がどのようにして重なることができる
かを示す概略図である。
【図10】ストリップ境界が重なる場合に文字の圧縮解
除を行う手順を示すフローチャートである。
【図11】図12と共に本発明で用いられる高速データ
圧縮技術(Mモードと呼ぶ)を示す、高レベルのフロー
チャートである。
【図12】図11と共に本発明で用いられる高速データ
圧縮技術(Mモードと呼ぶ)を示す、高レベルのフロー
チャートである。
【図13】本発明で用いられるビットランレングス(B
RL)圧縮手順を示す、高レベルのフローチャートであ
る。
【符号の説明】
10 プリンタ 12 プロセッサ 14 プリントエンジン 16 I/Oモジュール 18 バス 20 RAM 22 ROM 30 ビットマップ 32,34,36,208,210,212,214,
216 バンド 40 圧縮文字表現 42 サイズフィールド 44 データフィールド 200,202,204 ページ中間体ストリップ
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭60−176084(JP,A) 特開 平2−92652(JP,A) 特開 平2−178826(JP,A) 特開 平3−104666(JP,A) 特開 平4−232996(JP,A) 特開 平4−282271(JP,A) 特開 平4−293093(JP,A) 特開 平4−323060(JP,A) (58)調査した分野(Int.Cl.7,DB名) B41J 5/00 - 5/52 B41J 2/485 G06F 3/12 G06T 9/00 H04N 1/41 - 1/419

Claims (12)

    (57)【特許請求の範囲】
  1. 【請求項1】ある種のページ構成の記憶には不十分なラ
    ンダムアクセスメモリと、プロセッサと、少なくとも1
    つのデータ圧縮手順を備えた制御メモリとを有し、入力
    データストリームをページ構成の出力に変換する周辺装
    置であって文字フォントの圧縮を行うように構成された
    周辺装置において実施される方法であって、 a)前記入力データストリームの一部の記憶に利用可能
    なランダムアクセスメモリが不十分な場合、メモリ不足
    /切れ信号を発行するステップと、 b)前記入力データストリームの一部にグラフィックス
    イメージが存在する場合、該グラフィックスイメージを
    圧縮して前記メモリ不足/切れ信号の除去を試みるステ
    ップと、 c)前記ステップ(b)における圧縮の試みによる前記
    メモリ不足/切れ信号の除去が不成功に終わった場合、
    前記データ圧縮手順を用いて文字フォントを圧縮するス
    テップと、 d)前記入力データストリームの一部にグラフィックス
    イメージが存在しない場合、前記データ圧縮手順を用い
    て文字フォントを圧縮するステップと、 からなる方法。
  2. 【請求項2】前記ステップ(b)において、グラフィッ
    クスイメージの圧縮を試みる際に、無損失のデータ圧縮
    方法が使用される、請求項1の方法。
  3. 【請求項3】e)受信した前記入力データストリーム中
    の文字フォントが第1のしきい値サイズを超えている場
    合、該文字フォントを前記メモリ不足/切れ信号に関わ
    り無く圧縮するステップ、をさらに含む請求項2の方
    法。
  4. 【請求項4】前記文字フォントの各々が該文字フォント
    のサイズ判定を可能にするデータを伴い、該データと前
    記第1のしきい値サイズとを比較することにより、前記
    文字フォントが第1のしきい値サイズを超えているか否
    かを判定する、請求項3の方法。
  5. 【請求項5】ある種のページ構成の記憶には不十分なラ
    ンダムアクセスメモリと、プロセッサと、少なくとも1
    つのデータ圧縮手順を含む制御メモリと有し、入力デー
    タストリームを複数のストリップから成るページ構成の
    出力に変換する周辺装置において、前記入力データスト
    リームを介して受信されたフォントを圧縮および圧縮解
    するための方法であって、 a)文字フォントビットマップを複数の連続したバンド
    に分割して、該バンドの各々が所定数のラスタ走査行を
    有するようにするステップと、 b)前記文字フォントビットマップの各バンドをデータ
    圧縮して、各バンド内の前記ビットマップを該バンド内
    のビット構成を表わすコードで置換するステップと、c)処理中のストリップに存在する文字フォントのバン
    ドのうち、連続したストリップ間の境界と交差するバン
    ドを判定するステップと、 d)前記境界と交差するバンドから開始して圧縮された
    文字フォントを圧縮解除するステップと、 からなる方法。
  6. 【請求項6】前記ステップ(b)で使用される第1のデ
    ータ圧縮方法は、ラスタデータのバンドの連続した行間
    に存在する垂直方向の冗長性を示すコマンドを生成する
    とともに、前記行内に生じる水平方向のデータ冗長性を
    示すコマンドをさらに生成する、請求項5の方法。
  7. 【請求項7】前記ステップ(b)で使用される第1のデ
    ータ圧縮方法は、 前記ラスタ走査行から成るバンドの最初のラスター走査
    行のデータセグメントについてランレングスエンコード
    を実施し、該ラスタ走査行におけるデータセグメントの
    各ランについて、ラン数および該ランのデータセグメン
    トの識別を示す指示を出力するステップと、 前記バンドの後続のラスター走査行のデータセグメント
    について、該データセグメントが前記バンドの直前のラ
    スタ走査行のデータセグメントと同一であるか、相異す
    るかを比較するステップと、 前記後続のラスタ走査行について、いずれのデータセグ
    メントが「同一」状態のデータセグメントであり、いず
    れのデータセグメントが「相異」状態のデータセグメン
    トであるかを識別するコマンドを生成するステップと、 をさらに含む、請求項6の方法。
  8. 【請求項8】前記文字フォントに前記第1の圧縮方法が
    既に試行されているか否かを判定し、前記第1の圧縮方
    法が既に試行されていた場合で、かつ、前記文字フォン
    トサイズが所定のしきい値よりも小さい場合、前記文字
    フォントのラスタービットマップの各バンドにおける同
    一ビットのランを識別する第2の圧縮方法を前記文字フ
    ォントに使用するステップ、 をさらに含む請求項6の方法。
  9. 【請求項9】前記同一ビットのラン数は、ビット「0」
    のラン数を表すn/2ビットの第1のフィールドとビッ
    ト「1」のラン数を表すn/2ビットの第2のフィール
    ドとからなるnビットのデータセグメントで表現され
    る、請求項8の方法。
  10. 【請求項10】前記ビット「1」のラン数および前記ビ
    ット「0」のラン数のうちの一方がn/2ビットによる
    表現能力を超える場合、そのラン数は、他方のビットの
    ラン数を表すフィールドをゼロに設定した後続のデータ
    セグメントを用いて表現される、請求項9の方法。
  11. 【請求項11】前記ステップ(d)は、 前記連続したストリップ間の境界と交差するバンドを複
    数のラスタ走査行に変換するステップと、 変換された前記複数のラスタ走査行の中から処理中のス
    トリップの最初のラスタ走査行に一致するラスタ走査行
    を選択するステップと、 をさらに含む、請求項5の方法。
  12. 【請求項12】イメージを表現するデータを含みフォン
    トデータをさらに含む入力データフローをページ構成の
    出力に変換する周辺装置において実施される方法であっ
    て、 前記フォントデータによって表されるフォントサイズが
    所定の第1のしきい値以上である場合、前記フォントデ
    ータに無損失の圧縮方法を自動的に適用するステップ
    と、 前記フォントデータによって表されるフォントサイズが
    前記第1のしきい値未満である場合は、ランダムアクセ
    スメモリの容量が前記入力データフローから得られた情
    報を記憶するのに不十分である場合にのみ、前記フォン
    トデータに無損失の圧縮手順を適用するステップと、 からなる方法。
JP22028893A 1992-09-03 1993-09-03 自動フォント圧縮を行うページプリンタ Expired - Fee Related JP3486433B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/939,795 US5483622A (en) 1992-09-03 1992-09-03 Page printer having automatic font compression
US939795 1992-09-03

Publications (2)

Publication Number Publication Date
JPH06218986A JPH06218986A (ja) 1994-08-09
JP3486433B2 true JP3486433B2 (ja) 2004-01-13

Family

ID=25473745

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22028893A Expired - Fee Related JP3486433B2 (ja) 1992-09-03 1993-09-03 自動フォント圧縮を行うページプリンタ

Country Status (4)

Country Link
US (1) US5483622A (ja)
EP (1) EP0585522B1 (ja)
JP (1) JP3486433B2 (ja)
DE (1) DE69321798T2 (ja)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69431101T2 (de) * 1994-03-18 2002-11-28 Hewlett Packard Co Druckersystem mit komprimiertem Schriftsatzverfahren, das Speicherplatzeinsparüng ermöglicht
US6002411A (en) * 1994-11-16 1999-12-14 Interactive Silicon, Inc. Integrated video and memory controller with data processing and graphical processing capabilities
JPH08212023A (ja) * 1994-12-02 1996-08-20 Canon Inc 印刷制御装置及び方法
US5625712A (en) * 1994-12-14 1997-04-29 Management Graphics, Inc. Iterative compression of digital images
US5627534A (en) * 1995-03-23 1997-05-06 International Business Machines Corporation Dual stage compression of bit mapped image data using refined run length and LZ compression
US5675718A (en) * 1995-05-17 1997-10-07 Apple Computer, Inc. Method and apparatus for dynamic font availability
US5825991A (en) * 1995-10-30 1998-10-20 Xerox Corporation System for balancing CPU demands in a high-volume print server
US5859958A (en) * 1995-11-14 1999-01-12 Apple Computer, Inc. Compact representation of object slices for rendering raster graphics
US5793937A (en) * 1996-03-29 1998-08-11 Peerless Systems Corporation Fallback processing for page generation using memory reduction techniques
US5765157A (en) * 1996-06-05 1998-06-09 Sun Microsystems, Inc. Computer system and method for executing threads of execution with reduced run-time memory space requirements
US5995724A (en) * 1996-11-01 1999-11-30 Mikkelsen; Carl Image process system and process using personalization techniques
US6269190B1 (en) * 1996-09-24 2001-07-31 Electronics For Imaging, Inc. Computer system for processing images using a virtual frame buffer
JP3762496B2 (ja) * 1996-11-11 2006-04-05 株式会社沖データ ファクシミリ装置
US6330362B1 (en) * 1996-11-12 2001-12-11 Texas Instruments Incorporated Compression for multi-level screened images
US5930466A (en) * 1997-03-11 1999-07-27 Lexmark International Inc Method and apparatus for data compression of bitmaps using rows and columns of bit-mapped printer data divided into vertical slices
JPH111033A (ja) * 1997-04-17 1999-01-06 Canon Inc 印刷制御装置、印刷制御方法、及び、記憶媒体
US5999709A (en) * 1997-04-18 1999-12-07 Adobe Systems Incorporated Printer memory boost
US5970221A (en) * 1997-10-02 1999-10-19 Lexmark International, Inc. Printer with reduced memory
US6298173B1 (en) * 1997-10-03 2001-10-02 Matsushita Electric Corporation Of America Storage management system for document image database
US6040917A (en) * 1997-10-27 2000-03-21 Hewlett-Packard Company Memory partitioning for multi-resolution pauseless page printing
US6166827A (en) * 1998-04-22 2000-12-26 Hewlett-Packard Company Freeing memory in a page printer during punt protection
US6115135A (en) * 1998-04-22 2000-09-05 Hewlett-Packard Company Freeing memory in a page printer during duplex processing
US6556309B1 (en) 1998-08-28 2003-04-29 Hewlett-Packard Company Conservation of printer memory on the composition page in response to page pipe feedback
US5999272A (en) * 1998-10-20 1999-12-07 Hewlett-Packard Company Balancing compressed storage requirements with decompression times during punt protection processing in a page printer
US6683696B1 (en) * 1998-10-27 2004-01-27 Hewlett-Packard Development Company, L.P. Filter based data imaging method for an image forming device
US6304339B1 (en) 1998-11-16 2001-10-16 Hewlett-Packard Company Compound document page data processing
US6373583B1 (en) 1998-11-16 2002-04-16 Hewlett-Packard Company Compound document page data compression
DE10012521C2 (de) * 2000-03-15 2002-12-19 Heidelberger Druckmasch Ag Verfahren zur Komprimierung von Druckdaten
US20020067860A1 (en) * 2000-10-10 2002-06-06 Azam Syed Aamer System, method and computer program product for improved lossless compression for bitmap fonts
US6972868B1 (en) 2000-11-09 2005-12-06 Hewlett-Packard Development Company, L.P. Image data compression method
US7164369B2 (en) 2001-06-19 2007-01-16 Sharp Laboratories Of America, Inc. System for improving storage efficiency of digital files
US20030086118A1 (en) * 2001-09-05 2003-05-08 Miller Steven O. Compound document page data processing
CN100447684C (zh) * 2004-12-31 2008-12-31 明基电通股份有限公司 将一原始影像复印成m份包含n种样式的副件的影印系统
US7965422B2 (en) * 2006-04-28 2011-06-21 Xerox Corporation Super resolution encoded microprinting through postscript
JP2007296796A (ja) * 2006-05-02 2007-11-15 Konica Minolta Business Technologies Inc 画像形成装置、画像形成方法、および画像形成プログラム
KR101101826B1 (ko) * 2006-10-24 2012-01-05 삼성전자주식회사 화상처리장치 및 화상처리방법
JP6056468B2 (ja) * 2012-12-27 2017-01-11 ブラザー工業株式会社 画像処理装置およびコンピュータプログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4353653A (en) * 1979-10-19 1982-10-12 International Business Machines Corporation Font selection and compression for printer subsystem
JPS5794836A (en) * 1980-09-22 1982-06-12 Xerox Corp Method and apparatus for converting data stored into video band
US4555802A (en) * 1983-01-10 1985-11-26 International Business Machines Corporation Compaction and decompaction of non-coded information bearing signals
GB2172767B (en) * 1985-01-31 1989-02-08 Canon Kk Image signal processing system
JPS6233650A (ja) * 1985-08-08 1987-02-13 Nippon Denso Co Ltd 印字圧縮器
JPS62204955A (ja) * 1986-03-05 1987-09-09 Minolta Camera Co Ltd 文字画像発生回路
JP3018337B2 (ja) * 1988-09-17 2000-03-13 ブラザー工業株式会社 画像処理装置
DE69121345T2 (de) * 1990-09-25 1997-01-23 Brother Ind Ltd Zeichenausgabegerät
US5208676A (en) * 1990-12-04 1993-05-04 Fuji Xerox Co., Ltd. Image processing apparatus with data storage region management, memory space allocation in accordance with detected compression ratio of data
JP3144824B2 (ja) * 1991-05-08 2001-03-12 株式会社リコー 画像再生装置
US5150454A (en) * 1991-10-16 1992-09-22 Patrick Wood Printing system and method

Also Published As

Publication number Publication date
EP0585522A1 (en) 1994-03-09
DE69321798D1 (de) 1998-12-03
JPH06218986A (ja) 1994-08-09
EP0585522B1 (en) 1998-10-28
DE69321798T2 (de) 1999-05-27
US5483622A (en) 1996-01-09

Similar Documents

Publication Publication Date Title
JP3486433B2 (ja) 自動フォント圧縮を行うページプリンタ
US5490237A (en) Page printer having improved system for receiving and printing raster pixel image data from a host computer
US5602976A (en) Method and apparatus for saving printer memory
JP4101312B2 (ja) グラフィック画像の圧縮システムおよび方法
US5479587A (en) Page printer having adaptive data compression for memory minimization
US6337747B1 (en) System to adaptively compress raster image data
US6137589A (en) Efficient storage of dithered raster image data in a printer or the like
US5970221A (en) Printer with reduced memory
JPH09130262A (ja) データ圧縮伸張装置
EP0870277B1 (en) Image rendering for page printers
US20010015820A1 (en) Method and apparatus for conservation of memory in a printer through selective compression of a display list
US20040120007A1 (en) Method and apparatus for forming a display list
US5586229A (en) Band printing method for preventing band overrun error in page printer
JP2683506B2 (ja) データ圧縮方法及び装置、データ伸長方法及び装置
JP2001246793A (ja) プリンタコントローラ
JP3117987B2 (ja) 画像処理装置
JP3657081B2 (ja) プリンタコントローラ
JP3280171B2 (ja) データを圧縮保持する出力装置及びデータ圧縮制御方法
JP3323555B2 (ja) 画像処理装置およびその方法
JP2000227844A (ja) 画像処理装置
JPH11136525A (ja) 画像処理装置及び方法
JPH05205015A (ja) 画像処理装置
JPH03275370A (ja) 印刷制御装置および印刷用データバッファ装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees