JP2003309729A - メモリの最小化のための適応型データ圧縮方法 - Google Patents

メモリの最小化のための適応型データ圧縮方法

Info

Publication number
JP2003309729A
JP2003309729A JP2003043602A JP2003043602A JP2003309729A JP 2003309729 A JP2003309729 A JP 2003309729A JP 2003043602 A JP2003043602 A JP 2003043602A JP 2003043602 A JP2003043602 A JP 2003043602A JP 2003309729 A JP2003309729 A JP 2003309729A
Authority
JP
Japan
Prior art keywords
image
data
compression
page
raster
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.)
Pending
Application number
JP2003043602A
Other languages
English (en)
Inventor
Russ Campbell
ラス・キャンベル
Gary Zimmerman
ゲーリー・ツィンマーマン
Thomas G Berge
トーマス・ジー・バージ
Terry M Nelson
テリー・エム・ネルソン
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 JP2003309729A publication Critical patent/JP2003309729A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3084Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
    • H03M7/3088Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method employing the use of a dictionary, e.g. LZ78
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/46Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind
    • H03M7/48Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind alternating with other codes during the code conversion process, e.g. run-length coding being performed only as long as sufficientlylong runs of digits of the same kind are present
    • 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

Abstract

(57)【要約】 【課題】 フルヘ゜ーシ゛テ゛ータより小さいハ゛ッファメモリサイス゛に適応可
能なテ゛ータ圧縮機能を備えたヘ゜ーシ゛フ゜リンタを提供する 【解決手段】 周辺装置10は、入力テ゛ータフロー(以下DF)をヘ
゜ーシ゛構成出力に変換し、ヘ゜ーシ゛全体のラスタテ゛ータの記憶には
不充分な容量のRAM20を有し、フ゜ロセッサ12と複数のテ゛ータ圧
縮手順34,36,38を保持する制御用メモリ22とを有し、その
各手順は異なる性能特性を示す。周辺装置10は、入力DF
の各部にRAMを割り当て(72)、その割り当てに使用でき
るRAM量の不足を判定し(78)、入力DFの各部に第1のテ゛ー
タ圧縮手順を用いて(82)圧縮テ゛ータ部を生成し、この圧縮テ
゛ータ部を検査して(78)閾値を超える或るレヘ゛ルの圧縮が達
成されたか判定し、それが未達成であれば次のテ゛ータ圧縮
手順(84,86)を用い、前記閾値に対して各手順毎に検査
を繰り返し、閾値の圧縮レヘ゛ルの達成を最初に可能にする
圧縮手順をそのDF部の圧縮に用いる圧縮手順とする、と
いうステッフ゜を含むデータ圧縮方法を実行する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はページプリンタに関
し、特に、フルページのプリンタデータに必要なものよ
り小さいバッファメモリサイズに適応させるためのデー
タ圧縮機能を備えたページプリンタに関する。
【0002】
【従来の技術】従来のページプリンタは、通常は、画像
を紙上に印刷する前にページ全体を捕捉する。かかるプ
リンタでは、フォーマッティングは、ホストコンピュー
タ上で実行される(大量のラスタ化データがプリンタに
送られる)か、又はプリンタのフォーマッタ上で行われ
る。レーザー印刷「エンジン」は一定速度で動作するの
で、このエンジンの動作に追い付くだけの速度で新しい
ラスタ化データが得られない場合には印刷の「オーバー
ラン」が発生し、ページ印刷が不能になる。
【0003】印刷オーバーランを防止するために様々な
技術が用いられている。ある技術では、印刷機構が常に
動作待ち状態のラスタ化データを持つように或るページ
全体の全てのラスタビットマップが記憶される。300ド
ット/インチの解像度では、この技術には各ページにつ
き約1Mバイトのラスタメモリが必要である。600ドッ
ト/インチでは、4Mバイトのメモリが必要である。更
に、レーザープリンタは、ラスタデータのパイプライン
処理によりその定格速度を達成するので、プリンタをそ
の定格速度で動作させるためには別のラスタメモリが必
要となる。さもなければ、前のページがプリンタの出力
トレーに排出されるまで次のページの作成を開始するこ
とができない。レーザープリンタの価格を低レベルに抑
えるために、必要なラスタメモリ量を削減する努力が払
われてきた。
【0004】メモリ低減の技術の1つとして、ページ記
述の構築がある。ページ記述は2つのステップで構築さ
れる。即ち、第1のステップでは、フォーマッティング
中に、ホストコンピュータから受信したデータが、何を
印刷すべきかを記述する表示コマンドと呼ばれる簡単な
コマンドのリストに変換される。第2のステップでは、
印刷用の表示コマンドリストが準備され、表示コマンド
の構文解析と記述されたオブジェクトのラスタビットマ
ップへの変換とが行われる。この手順には、フルページ
のラスタビットマップメモリが必要である。これは、連
続するページに同じメモリが用いられるからである。
【0005】必要なメモリ量を削減するために、この表
示コマンドリストによる手順は、各表示コマンドをその
ページ上の垂直位置に従ってソートすることにより修正
された。ページは次いでページストリップ又は「ページ
中間体(intermediate)」と呼ばれるセクションに分割さ
れ、その各ページストリップが印刷を行うために印刷エ
ンジンに順次送られる。あるページストリップ中の表示
コマンドが充分な速度でラスタ化データに変換される
際、最初のページストリップの記憶に用いられた同じメ
モリを(この最初のページストリップが紙上に転写され
れば)そのページ中の下方の後続ページストリップに対
して再使用することができる。
【0006】本出願人が製造するレーザープリンタ Las
er Jet III には、表示コマンドリストアルゴリズムが
採用されており、3つのラスタバッファが用いられてい
る。第1バッファはページの第4ストリップについて再
使用され、第2バッファは第5ストリップについて再使
用される、といった具合である。8ページ/分のプリン
タの場合、ストリップ1の終了と印刷機構がストリップ
4を要求する時間との間にはわずかな時間しか存在しな
い。ストリップが時間内に供給されないと、「印刷オー
バーラン」が発生し、ページは適正に印刷されない。
【0007】本出願人による「Method and Apparatus F
or Preventing Print Overruns」と題する米国特許出願
第07/701,235号では、ページプリンタが各ストリップ中
の全ての表示コマンドについて総ラスタ化実行時間を判
定する。ストリップのラスタ化実行時間が所定値を超え
た場合、印刷機構への次のデータ転送に用する時間を削
減するためにストリップが事前ラスタ化される。なお、
上記引用をもって上記特許出願に係る発明の開示内容を
本明細書に包含させたものとし、その詳細な説明は省略
する。
【0008】最近では、600ドット/インチの解像度の
プリンタが市場に導入されている。かかるプリンタは、
テキストだけでなくラインアートや各種の画像も扱うも
のである。かかるプリンタに要するメモリ量を最小限に
するために、データ圧縮技術が用いられている。例え
ば、プリンタへのデータ転送処理に、ホストプロセッサ
によりランレングス(run length)データ圧縮が用いられ
ている。ランレングスエンコード法では、繰り返し現わ
れるデータは、そのデータの同一性と繰り返しのランレ
ングスとを示すことによりエンコードされる。ランレン
グス圧縮は、テキスト及びラインアートに用いる場合に
は成功する。しかし、画像データに用いる場合には、か
かる圧縮法ははるかに不充分なものとなる。
【0009】ある種の画像は「順序付(ordered)ディ
ザ」又は「誤差拡散(error diffused)」のいずれかに分
類される。順序付ディザ画像(「クラスタ化画像」とも
呼ばれる)は、ページ全体にわたり中間調グレー表示を
含む中間調画像である。かかる画像は、一般に、かなり
のデータ冗長を反映し、無損失データエンコード技術
(例えばランレングス)に資するものである。これに対
し、誤差拡散(「分散(disperse)」とも呼ぶ)画像はデ
ータの冗長性がほとんどなく、異なる圧縮法を必要とす
る。その結果、ページプリンタに1つの圧縮法だけを用
いると、かかるプリンタは、最小限のオンボードラスタ
メモリ量を維持しつつ画像データを扱うことができなく
なる。
【0010】ランレングスエンコードに加え、従来の技
術には他のデータ圧縮法も多数存在する。例えば、Welc
hの米国特許第4,558,302号には、周知のLempel/Ziv/Wel
ch(LZW)データ圧縮技術が説明されている。この方法
では、入力データストリーム中で遭遇する文字ストリン
グをストリングテーブルに記憶することにより、入力デ
ータストリームを圧縮する。「圧縮器」が、入力ストリ
ームを探索して、記憶されたストリングと一致する最長
のものを判定する。圧縮器は、多くのストリングに遭遇
するに連れて「賢く」なっていき、次第により長い文字
を圧縮できるようになる。入力文字ストリングが記憶さ
れたテーブルストリングに一致するたびにコードが受信
器に送出される。その受信器には、その送信のデコード
を可能にする同一のストリングテーブルが存在する。
【0011】プリンタのラスタ走査線についてのランレ
ングスデータ圧縮が、Spiveyによる「Data Compression
Technique for APA Printer(Change Block Skippin
g)」及び「Hybrid Data Compression Technique for C
hange Block Skipping in anAPA Printer」(IBM Techn
ical Disclosure Bulletin, vol.23, No.12, May 1981,
5464-5470頁)に説明されている。Spiveyの方法では、
現在の走査線を前の画像における対応する走査線と比較
し、その間の一致の有無に応じてコードを出力する。Sp
iveyはまた、前述の方法をランレングスエンコードと組
み合わせて用いる複合技術を説明している。
【0012】
【発明が解決しようとする課題】従って、本発明の目的
は、データ圧縮用のシステムを含み、受信データの特性
に応じて適応可能なページプリンタを提供することであ
る。
【0013】本発明の別の目的は、限られた量のオンボ
ードメモリを効率的に用いることを可能にするようにデ
ータ圧縮技術を知的に(intelligently)選択するシステ
ムを採用したページプリンタを提供することである。
【0014】また、本発明の目的は、データ圧縮が行わ
れるまで印刷を継続することができない状態にオンボー
ドメモリがおかれた際に選択的に呼び出されるデータ圧
縮システムを備えたページプリンタを提供することであ
る。
【0015】更に、本発明の他の目的は、ページプリン
タで使用するための改良されたデータ圧縮技術を提供す
ることである。
【0016】
【課題を解決するための手段】周辺装置は、入力データ
フローをページ構成された出力に変換し、ページ全体の
ラスタデータの記憶にはサイズ的に不充分であるランダ
ムアクセスメモリ容量を有するものである。この周辺装
置はまた、プロセッサと複数のデータ圧縮手順を保持す
る制御用メモリとを有し、その各手順は異なる性能特性
を示す。周辺装置は、以下のステップを含む入力データ
フローの各部を圧縮する方法を実行する。即ち、その方
法は、入力データフローの各部にランダムアクセスメモ
リを割り当て、かかる割り当てに対して使用できるラン
ダムアクセスメモリの量の不足を判定し、入力データフ
ローの各部に対して第1のデータ圧縮手順を用いて圧縮
データ部を生成し、この圧縮データ部を検査してしきい
値を超える或るレベルの圧縮が達成されたか否かを判定
し、それが達成されていなければ次のデータ圧縮手順を
用いて、このしきい値に対する各手順毎に検査を繰り返
し、これにより、しきい値の圧縮レベルの達成を最初に
可能にする圧縮手順をそのデータフロー部の圧縮に用い
る圧縮手順とする、というステップを含むものである。
また、総体的(integral)及び独立の画像記述子を用いた
入力データフローを扱うための改良された圧縮方法及び
圧縮技術が説明される。
【0017】
【発明の実施の形態】以下、本発明をレーザプリンタの
場合について説明するが、プロッタ、ファクシミリ装置
等の他の周辺装置にも本発明で考案された手順を利用可
能であることが理解されよう。
【0018】プリンタシステム 図1において、プリンタ10は、プロセッサ12、印刷エン
ジン14及び入出力(I/O )ポート16を含み、これらは全
てバス18で接続されている。印刷エンジン14は、一定速
度で動作するレーザプリンタを有し、このレーザプリン
タにはその動作についていける速度でビデオラスタ印刷
データが提供されねばならない。また、ランダムアクセ
スメモリ(RAM)20及びリードオンリーメモリ(ROM)22
がバス18に接続されており、それらは、利用可能なRAM
20が最も効率的に使用されること、及び印刷オーバーラ
ンを防止するために印刷エンジン14が印刷待ち状態のデ
ータを有することを確実にするために必要な全ての手順
を含む。
【0019】この実施例では、プリンタ10は、ページプ
リンタであり、I/O モジュール16を介してホストプロセ
ッサから画像データを受信する。受信した画像データの
記憶に利用可能なRAM 20の記憶容量は、1ページ全ての
ビデオラスタビットマップ画像の記憶に必要な容量より
かなり小さいものである。RAM 20のサイズは、プリンタ
10が競争力のある最低価格で販売しうるよう制限されて
いる。
【0020】ホストプロセッサからの画像データは、I/
O モジュール16を介して受信され、RAM 20に読み込まれ
る。この画像データはいくつかの形態のうちの1つをと
る。その画像データは、副画像を含み、この場合、記述
子が各副画像と連続していて各副画像と共に処理され
る。かかる画像データが受信されると、この画像データ
自体が調べられて、データ圧縮が必要であるか否かが判
定される。本発明の第2の態様では、副画像の記述子が
実際の副画像データとは別個に受信される(ただし、実
際の副画像データにリンクされている)。第2の態様で
は、記述子中のデータと他の画像固有のデータとを用い
て、一連のデータ圧縮技術(もしあれば)のどれをこの
副画像データに適用すべきかの判定の一助にする。
【0021】本発明のいずれの態様においても、プリン
タ10が画像データを受信すると、構文解析が行われ、コ
マンド及びデータが処理されて、RAM 20に記憶されるラ
スタ図形データが導出される。この際に副画像が生成さ
れる。次に、ラスタ図形データベースに記憶された副画
像が中間ページ表現(「ページ中間体」)にリンクされ
る。ページ中間体は、最小限のメモリしか消費せずに1
ページ分の情報をビデオに簡単に変換することのできる
フォーマットで表現する手段である。ページ中間体の動
作は基本的には1ページを複数のストリップに分割し、
その各ストリップは所定数の「命令バケット」を含む。
各ストリップは、高さ(例えば128ドット)が割り当て
られ、一連の命令バケットへのポインタ(例えば、各バ
ケットのサイズは256バイト)を含み、各「バケット」
はストリップに対してラスタビデオをどのように生成す
べきかを定義する命令を含む。2つ以上のストリップに
またがる副画像(及び他の中間体オブジェクト)は、そ
れが存在する各ストリップ毎に1つの命令を有する。
【0022】ラスタ図形データのページ中間体への変換
においては、ストリップの内容がそのストリップのビデ
オバッファのサイズに基づくしきい値を超えることが明
らかになる場合がある。また、複数のストリップの変換
後に、ページ中間体の変換を完了するだけのメモリが残
っていないという事態も発生し得る。更に、1ページ全
体を変換した後に、このページが利用可能なRAMに記憶
するには複雑すぎることが明らかになる場合がある。上
記のいずれの場合にも、このシステムはそのメモリの制
約を克服しようとしてデータ圧縮動作を実行する。各場
合において、そのとき存在する変数の検討結果に応じて
複数の圧縮技術のうちの1つが選択される。このように
して、利用可能なRAMを最も高速かつ効率的に使用する
ことができるように圧縮手順が選択される。
【0023】以下に3つのデータ圧縮法を説明する。使
用すべきデータ圧縮法の選択がプリンタ機構から求めら
れる性能特性によって決まることが理解されよう。最高
速の圧縮を行う場合には、モードmと呼ばれる手順(mは
多次元変更(multi-dimensionchange)を意味する)が、
ラスタ走査行に加えられるランレングスと、行から行へ
の変化とに基づいてラスタ画像データブロックを圧縮す
る。モードmは極めて高速なデータ圧縮(及び圧縮解
除)法であるが、ある種の画像データの圧縮には有効で
はない。モードmは「無損失」圧縮技術(この圧縮中に
は、圧縮解除時に回復不能な画像データの損失は存在し
ない)である。
【0024】また、モードmより低速であるが、ある種
の画像データに対してはより効率的である別の無損失圧
縮技術が、改良型のLempel/Ziv/Welch(LZW)手順であ
る。第3の「有損失」圧縮手順が採用され、これは一般
に少なくとも4:1の圧縮率を保証するが、圧縮解除時に
回復不能な画像データの損失が幾分生じることになる。
【0025】ここで図1に戻る。このデータ変換及び圧
縮手順に用いられるサブルーチンはRAM 20及びROM 22に
リストされている。RAM 20は、ユーザに割り当てられた
メモリ領域24と、ラスタ画像の記憶に割り当てられた領
域26と、圧縮された画像に割り当てられた領域28と、ペ
ージ中間体データの記憶のための領域30と、以下で説明
する手順に用いられる変数の記憶に割り当てられた領域
32とを有する。
【0026】ROM 22は、LZW圧縮(34)と、モードm圧縮(3
6)と、有損失圧縮(38)とを実行するサブルーチンを含
む。更にROM 22は、「ストリップビデオ事前生成」(SVP
G)を実行するための手順を記憶する領域40と、「適応型
圧縮ページ保護」(ACPP)を実行するための手順を備えた
領域42と、圧縮解除時に有損失圧縮解除の行われた画像
が元の画像を(データ損失があるにもかかわらず)より
有効に表現し得るようにする有損失ディザテーブルを記
憶する領域44と、領域34,36,38で発見された1つ以上の
圧縮手順を用いてデータ圧縮を行うための手順を記憶す
る領域46とを有する。
【0027】モードm圧縮を実行する手順の動作中に
は、複数のカウンタ50,52,54を用いて或る圧縮カウント
の追跡を行うことが可能である。かかるカウンタの動作
を以下で考察する。
【0028】概略フローチャート ここで図2を参照する。同図は、1ページの生成過程中
にプリンタ10が実行する動作を示す概略フローチャート
である。まず、データがホストプロセッサから受信され
て(ステップ70)、ラスタ図形副画像を導出するための
事前処理を受ける。次に、この副画像を用いて画像デー
タのページ中間体ストリップが形成される(ステップ7
2)。上述のように、この手順は、図形副画像のページ
ストリップへの割り当てを含み、各ストリップは命令バ
ケットからなる。その命令バケットは、それぞれが所定
サイズを有し、恐らくは所定サイズの副画像命令を含む
ものである。プリンタ10はまた、(一般には3つの)ペ
ージ中間体のストリップの変換の結果として発生するラ
スタビデオビットマップを保持するためにRAM 20の領域
30を事前割り当てする。従って、プリンタ10は1ページ
を10以上のストリップに分割することができるが、RAM
20はページ中間体の3つのストリップから結果的に得ら
れるラスタビデオビットマップしか保持することができ
ない。
【0029】各ページ中間体ストリップが完成すると、
プリンタ10は、各ストリップ中の命令をラスタビデオビ
ットマップデータに変換し、このデータをRAM領域26に
記憶させる。このRAM領域26は(本実施例では)3つの
ラスタバッファ領域に細分化されている。3つのバッフ
ァ領域の全て(RAM領域26)が一杯の場合、印刷エンジ
ン14が始動し、そこに記憶されているラスタビデオ情報
がプロセッサ12の制御下で印刷エンジン14へと供給され
る。ラスタビデオデータが印刷エンジン14に読み込まれ
ている間には、印刷エンジン14へのデータ転送が完了し
たバッファ領域を用いてページ中間体のストリップバッ
ファビデオへの変換処理が続行される。
【0030】ページ中間体の形成過程において、1つの
ストリップに対して命令数が多すぎる場合がある(判定
ステップ74)。この場合には、大きすぎると判明したラ
スタ図形部分は直ちにビデオラスタデータに変換され、
無損失圧縮技術、例えばモードmを用いて圧縮される
(ステップ76)。この手順の詳細については図3を参照
して後で説明する。
【0031】ページ中間体の形成中には、利用可能なス
トリップラスタバッファ領域26の量が追跡される。残り
のストリップラスタバッファ領域が「少ない」又は「無
し」と判定された場合(判定ステップ78)、この手順
は、ページ中間体命令の指示する図形画像データをデー
タ圧縮してメモリの空部分を作ることができるか否かを
判定するために分岐する。このため、この手順は圧縮技
術の選択へと移行する(ステップ80)。最初に、モード
m無損失圧縮を試行し(ステップ82)、これによりメモ
リ切れ又はメモリ不足状態が解消された場合、この手順
はこの処理を出てページ中間体の形成を続行する(ステ
ップ72)。一般に、メモリ切れ又はメモリ不足状態が継
続する場合には、無損失LZW圧縮手順が用いられて(ス
テップ84)、メモリ切れ/不足検査が繰り返される。こ
こでメモリ切れ/不足指示が残る場合には、有損失圧縮
手順(ステップ86)が試行され、再びその結果が検査さ
れて、メモリ切れ又は不足状態が解消されたか否かが判
定される。メモリ切れ又は不足状態が継続する場合、そ
のページは印刷することができない。しかし、ほとんど
の場合、有損失圧縮技術は、通常は4:1のデータ圧縮を
行うので、メモリ切れ又は不足状態が解消される。
【0032】ページ中間体ストリップ処理が完了すると
(判定ステップ90)、ページ中間体データが構文解析さ
れて、そのデータをビデオラスタビットマップデータに
変換するのに要する時間が見積もられる。この見積もり
時間が印刷エンジン14の許容可能な時間より長い場合、
適応型圧縮ページ保護(ACPP)が実施されて「ページが
複雑すぎる」という指示が発せられる(判定ステップ9
2)。かかる条件下で、高レベルの複雑性を有するペー
ジ中間体のストリップがページ中を下に向かって順に処
理されて、ラスタに変換され、一時バッファに入れられ
る。次いで、そのラスタデータストリップに圧縮技術を
用いて、「ページが複雑すぎる」という指示の除去、及
び利用可能なRAMへの既変換ストリップの適合化を試み
る。
【0033】各ストリップが変換されて(可能であれ
ば)圧縮されると、その記憶領域のRAM 20中における発
見を試みる。圧縮されたオブジェクトの複雑性は一般に
印刷エンジン14に許容される最大の複雑性より遥かに低
いため、印刷オーバーランを起こすことなく1ページが
印刷される。
【0034】ストリップビデオ事前再生 ここで図3を参照して(図2のステップ74,76に示す)
ストリップビデオ事前生成中に用いられる手順を説明す
る。ページがオープンされると、各ストリップ毎にペー
ジ中間体のサイズのしきい値が設定される(ステップ10
0)。このしきい値は、バケット単位で設定され、1バ
ケットはページ中間体の記憶領域の最小の割り当て単位
である。この実施例では、1バケットが約256バイト長
であると仮定する。各バケットは、必要であれば、スト
リップのページ中間体データの記憶のためにリンクされ
る。バケットのしきい値は、利用可能なプリンタのメモ
リ量を、1ページ上のストリップ数と1バケット当たり
のバイト数との積で除算することにより算出される。利
用可能なメモリを約800,000バイトと仮定すると、前記
しきい値は約125バケットに設定され、各ストリップの
しきい値がその値に初期設定される。
【0035】次に、ページ中間体処理が開始されて(ス
テップ72)、ページ中間体データ構造が生成される。ラ
スタ図形のページ中間体への変換処理中の任意時間にお
いて、或る1つのストリップについての命令バケット数
が予め設定されたしきい値を超えていると判定された場
合、そのストリップを直ちにラスタに変換し圧縮してプ
リンタメモリ量を一定に保たねばならない場合がある。
従って、しきい値を超えた場合には判定ステップ102に
より出力YESが提供される。次いで、ストリップラスタ
ビットマップ用の残りのRAMが2つのストリップのため
のスペースより小さいか否かが判定される(判定ステッ
プ104)。その答がNOである場合、ページ中間体の生成
が続行される。しかし、その答がYESである(2つのス
トリップを保持するにはRAM残量が不充分である)場合
には、そのしきい値を超えるストリップは、そのページ
中間体データが直ちにラスタビデオデータに変換される
(ステップ106)。
【0036】判定ステップ104に示す条件により、変換
を伴わずに一層多くのページ中間体の記憶を行うのに充
分なメモリが存在する際にストリップがラスタビデオデ
ータに変換されることを防止することができる。従っ
て、ビデオ事前生成を必要としないページは、そのペー
ジ上の2、3のストリップが非常に大きい(他は小さ
い)というだけで時間的不利益を払わねばならないとい
うことはない。
【0037】「大きすぎる」ストリップがラスタビデオ
に変換されると、以下で説明するように、そのストリッ
プのデータのモードm圧縮を用いた圧縮が試行される
(ステップ108)。モードm圧縮動作の結果としてストリ
ップビデオデータが圧縮されている場合には(判定ステ
ップ110)、その既圧縮ストリップが用いられる(ステ
ップ112)。また、ストリップが圧縮されていない場合
には、その未圧縮ストリップが用いられる(ステップ11
4)。或る条件下では、圧縮技術を用いることによりス
トリップデータの拡張が発生することになる、という点
に留意されたい。このような場合、拡張されたストリッ
プデータの代わりに未圧縮ストリップデータが用いられ
る。
【0038】次に、ストリップラスタビデオ用のスペー
スのRAM 20における割り当てが試行される(ステップ11
6)。連続したメモリスペースが利用可能である場合
(判定ステップ118)、ストリップはそのメモリスペー
スに記憶される(ステップ120)。また、メモリ中に連
続したスペースが見つからず、充分なフラグメント(断
片)メモリスペースが利用可能である場合(判定ステッ
プ119)には、ストリップはRAM 20中のリンクされたメ
モリフラグメントに記憶される(ステップ122)。更
に、連続した又は断片的なメモリスペースが不充分にし
か存在しない場合には、「メモリ切れ」が発生し、その
ページの印刷は、印刷できるものを印刷する、という状
態で続行される(ステップ121)。
【0039】ストリップがメモリに記憶されると、現在
のメモリ状態に基づき、そのストリップ用の新しいバケ
ットしきい値が確定される(ステップ124)。このしき
い値は初期のしきい値と同様に計算される。ただし、変
換されたばかりのストリップが消費したバケット数が引
かれることになる。従って、新しいしきい値は、(利用
可能なRAM量の変化に従って調整された)古いしきい値
から既変換ビデオラスタストリップのサイズを減算し、
1バケット当たりのバイト数で除算したものに等しい。
この調整により、しきい値は、ストリップが変換されて
利用可能なメモリが少なくなるにつれて小さくなる。新
しいしきい値が設定されると(ステップ124)、ページ
中間体の生成が続行される(ステップ72)。
【0040】図3に示す手順は、メモリ切れ又はメモリ
不足の指示に先立って発生する。この手順は、ページ中
間体データの複雑なストリップの存在の結果として発生
するメモリ上の制約を予測するはたらきをする。しか
し、ページ中間体の処理中に、どのストリップも1つの
みではストリップビデオ事前生成しきい値を超えない状
態で、複数の複雑なストリップがメモリ切れ又はメモリ
不足の指示を発生させることになる可能性がある。この
ような場合、この手順はプリンタ10で利用可能な圧縮法
から1つを選択してページ中間体のラスタ図形データの
圧縮を試行する。
【0041】圧縮手順の選択を可能にする判定手順を説
明する前に、ROM 22に含まれる各圧縮手順について考察
する。図4を参照して先ずモードm圧縮について考察す
る。
【0042】モードm圧縮 モードm圧縮は、ページ中間体データのラスタビットマ
ップブロックを考慮し、各行毎にランレングスエンコー
ドを用い、及び、ブロック中の行の間から発生するデル
タ変化のエンコードにより、そのブロックを圧縮しよう
とする。ここで用いる「行」という用語は、任意長のデ
ータを意味し、そのデータのサイズは画像のラスタ走査
行のサイズに等しくても等しくなくてもよい。
【0043】モードm手順は、図1に示す「同一」カウ
ンタ50、「異種」カウンタ52、及び「ラン」カウンタ54
を用いる。モードm圧縮手順は、ページ中間体の副画像
ブロックにアクセスし、この手順に対して2つの初期条
件即ち「同一」と「異種」との一方を設定することによ
り開始される。「同一」初期条件は、ブロックの行のあ
るワードが前の行の垂直方向に並んだワードと同一であ
る毎にカウントを累算させることを可能にする。このカ
ウントは「同一」カウンタ50に入力される。これに対
し、「異種」条件が有効である場合には、1つの行のあ
るワードが前の行の垂直方向に並んだワードと異なる毎
に異種カウンタ52がインクリメントされる。第3のカウ
ンタ即ちランカウンタ54は、ある行に現われる同一ワー
ドのランレングスをカウントするのに用いられる。
【0044】ここで図4に戻る。初期条件は「同一」に
設定されていると仮定する(ステップ150)。副画像ブ
ロックの第1の行が次いで考慮され、それに対し周知の
方法でランレングス圧縮が行われる(ステップ152)。
何らかのランレングスの文字が存在する限り、各「ラ
ン」文字及び「ラン」カウントについてランレングスコ
マンドが発せられる。更に、その行の残りの文字は(以
下で説明する)同一/異種コマンド中の「異種」ワード
として出力される。この場合、同一の値は0である。更
に(ステップ154に示すように)、第1のブロック行中
の各ワードは(最初の行の上には行が存在しないので)
明らかに「異種」であるから、異種カウンタ52において
異種カウントがインクリメントされ、その行の最後に
(及び第1行中の各ランの最後に)リセットされる。次
いで、次行がアクセスされ、左側から各ワードが調べら
れて、それが、直前の行中の垂直方向に並んだワードと
同じであるか否かが判定される。「同一」の条件が満足
される限り、「同一」カウンタ50は、前の行中の垂直方
向に並んだワードと異なるワードが現われるまでインク
リメントされる(ステップ156)。
【0045】次いで、この手順は「異種」モードに切り
換わり、「異種」条件が満足される限り、カウンタ52中
の「異種カウント」をインクリメントする。必要な範囲
で、ランカウンタ54中のランカウントは、繰り返し現わ
れる「異種」ワードについて入力される。これにより、
この処理が高圧縮解除速度(即ち「同一」モード中には
「ラン」をカウントしないもの)に「調整される」。同
一モード中のランカウントを考慮することにより一層高
い圧縮率を達成することができる。
【0046】モード状態が切り換わるたびに、「同一」
カウント、「異種」カウント、及び「同一」ワードに続
く「異種」ワードを含む同一/異種コマンドが発せられ
る。異種モードは、(1)行の中に、その上の行中の垂直
方向に並んだワードと同じワードが現われるか、(2)2
より大きいランレングスが現われて終了するか、(3)行
が終了するまで、継続する(ステップ158)。この手順
が依然として「異種モード」にあることに留意すると、
上の行と同じワードが現われた際に、「同一」への条件
切り換えが行われ、上述のように同一/異種コマンドが
出力される。2より大きいランレングスが現われて終了
すると、ランカウントとランされるワードとを含むラン
コマンドが出力される。また、同一/異種コマンドが、
異種カウンタ52からの異種カウントと、現われた異種ワ
ードと共に出力される(ステップ160)。この異種カウ
ントは、ランデータのカウントを含まない。
【0047】この時点で、その行が終了したか否かが判
定され(ステップ162)、終了していなければ、同一条
件への切り換えが行われ(ステップ164)、手順は図4
のステップ156に戻る。これに対し、行が終了している
場合には、カレント行全体が上の行と同じであるか否か
が判定される(ステップ166)。同じであれば、その行
に対して発せられた同一/異種コマンドは、その同一/
異種コマンドよりはるかに簡潔な「行繰り返し」コマン
ドに置き換えられる(ステップ168)。しかし、カレン
ト行が上の行と同じでない場合には、最後に発せられた
コマンドが0の連続を示したか否かが判定される(判定
ステップ170)。その判定結果がYESであれば、その最後
のコマンドが「ライン終了」コードに置き換えられ、圧
縮解除時にはそのラインはゼロパディングされることに
なる(ステップ172)。この段階で、副画像ブロックが
終了したか否かが判定され、その判定結果がYESであれ
ば、モードm圧縮手順が終了する。またその判定結果がN
Oであれば、手順はステップ156に戻り、次の行に対して
続行される。代替方法では、「行終了」境界を無視して
「同一」又は「異種」カウントを「行終了」境界を超え
て行うことができる。この機能により、データ圧縮は幾
分改善される。
【0048】モードmデータ圧縮手順、圧縮解除手順
は、極めて高速であり、レーザプリンタによりオンザフ
ライで用いることができる。このため、一般に、この手
順が最初に選択される圧縮技術となる(例外もある)。
モードmの使用後にメモリ切れ又は不足の指示が依然と
して存在する場合には、第2の無損失の技術、例えばLZ
Wが用いられる。LZWは、無損失態様で圧縮及び圧縮解除
を行うが、モードmより低速である。しかし、LZWテーブ
ル中における突き合わせの結果として出力されるコード
の長さを制限することにより(例えば32ビットワードに
つき3コード)、その圧縮速度及び圧縮解除速度を上げ
ることができる。しかし、LZWは、分散画像を圧縮する
ことはできない(モードmも同様)。分散画像の圧縮にL
ZWが用いられた場合に発生する時間の浪費を無くすため
に、かかる画像は、モードm圧縮の結果として圧縮率が
1.125〜1より小さくなる場合を判定することによってそ
の一部が検出され、上記値より小さくなっている場合に
は、その画像は分散されたものと判定される。LZWはか
かる画像には用いられない。これは、その場合にデータ
圧縮を行うことができないことが周知であるためであ
る。
【0049】クラスタ化/分散化の判定 クラスタ化画像は、規則的に間隔のあいたドットを呈
し、モードm、LZWその他の技術を用いて無損失に圧縮す
ることができるものである。これに対し、分散化画像
は、ドットが規則的な繰り返しパターンを有さず、従っ
て無損失の圧縮法には不適当なものである。画像又は副
画像は、その画像の2進値を(以下に示す)「隣接(nei
ghbor)テーブル」中の項目と比較することにより、クラ
スタ化画像又は分散化画像のいずれかに分類することが
できる。隣接テーブルのクラスタ化部分中の項目に一致
する画像の各バイト毎に値「+1」が割り当てられる。
また、隣接テーブルの「分散化」部分中の項目に一致す
る画像の各バイト毎に値「−1」が割り当てられる。そ
のテーブル中の項目に一致しない画像の他の全てのバイ
トは「不明」であり、値「0」が割り当てられる。画像
圧縮の最後に、その割り当てられた値が合計され、負の
値が示された場合には画像は分散化されているものとみ
なされ、また正の値が示された場合には画像はクラスタ
化されているものとみなされる。かかる分類を可能にす
る隣接テーブルの各項目を以下に示す。
【0050】画像タイプを予測するための隣接テーブル 2進値 指示 値 00001110 クラスタ化 1 00011100 クラスタ化 1 00011110 クラスタ化 1 00100100 クラスタ化 1 00110011 クラスタ化 1 00111000 クラスタ化 1 00111100 クラスタ化 1 00111110 クラスタ化 1 01001001 クラスタ化 1 01100110 クラスタ化 1 01110000 クラスタ化 1 01111000 クラスタ化 1 01111100 クラスタ化 1 01111110 クラスタ化 1 10010010 クラスタ化 1 11001100 クラスタ化 1 00010100 分散化 −1 00100110 分散化 −1 00101000 分散化 −1 00110110 分散化 −1 01010101 分散化 −1 01011010 分散化 −1 01011101 分散化 −1 01100100 分散化 −1 01101100 分散化 −1 10010101 分散化 −1 10011010 分散化 −1 10100101 分散化 −1 10101001 分散化 −1 10111010 分散化 −1 LZW圧縮 ここで図6を参照する。モードmは、圧縮手順として既
に試みられており、LZWを試みるという判断が既に下さ
れていることが仮定されている。判定ステップ200に示
すように、第1の問い合わせは、画像のいずれかの部分
に有損失圧縮技術が用いられたか否かということであ
る。有損失圧縮技術が用いられていれば、LZW手順は中
止され、調べられている画像部分について有損失圧縮が
続行される(副画像に有損失圧縮が適用されると、画像
の一部のみについて無損失圧縮技術が用いられた場合に
画像の美しさが失われることになる)。
【0051】有損失圧縮が画像のどの部分にも用いられ
ていない場合には、次いでモードm圧縮の結果として画
像全体に対して少なくとも1.125:1の圧縮率が得られる
か否かが判定される(ステップ202)。その判定結果がY
ESであれば、この画像はクラスタ化されているものとみ
なされ、手順がステップ204に移行して、LZW手順が以前
に試行されていない限り、各副画像に対してLZW手順が
試行される。
【0052】これに対し、モードm圧縮の結果として圧
縮率が1.125:1より小さくなった場合には、その画像か
ら副画像が選択され(ステップ206)、上述と同様の態
様で隣接テーブルを用いてその副画像がクラスタ化され
たものであるか分散化されたものであるかが判定され
る。その副画像がクラスタ化されたものであると判定さ
れると(判定ステップ208)、手順はその副画像に対し
てLZW圧縮技術を試行する。しかし、その副画像が分散
化したものであると判定されると、LZWではそれを圧縮
することができないことがわかっており、その副画像は
「LZW不能」とマークされる(ステップ210)。
【0053】この時点で、その画像中の全ての副画像が
検査されたか否かが判定され(判定ステップ212)、そ
の判定結果がNOであれば、手順はステップ206に戻って
続行される。また、全ての副画像が検査されていると判
定された場合には、全ての画像が終了しているか否かが
判定され、その判定結果がNOであれば、手順がステップ
202に戻って続行される(判定ステップ214)。また、そ
の判定結果がYESであれば、メモリ切れ又はメモリ不足
の指示を調べて(判定ステップ216)その指示が除去さ
れたか否かが判定される。その判定結果がYESであれ
ば、ページ中間体の処理が続行される。また、その判定
結果がNOであれば、手順は有損失圧縮技術の試行へと移
行する。
【0054】有損失圧縮 有損失圧縮手順は最後の手段として用いられる。これ
は、この技術が回復不能なデータ損失を伴うからであ
る。有損失圧縮技術は、主として無損失技術を用いて圧
縮することのできない画像に用いることを意図したもの
である。一般にこの範疇に含まれる画像は、誤差拡散手
順(即ち「分散化」)を用いた中間調の画像である。
【0055】図7に示すように、有損失圧縮技術は、ま
ず、モードm又はLZWを用いて以前に行われたデータ圧縮
のレベルに基づいてページ上の画像をソートすることか
ら始まる(ステップ220)。次いで、最も圧縮度の悪い
画像が最初に調べられ(ステップ222)、その画像が有
損失圧縮が達成可能なものより良好に圧縮されていれ
ば、その画像はスキップされる(ステップ224)。一例
として、4×4ビットセルのラスタビデオデータが4ビッ
トワードに圧縮されるものと仮定する。従って、有損失
圧縮技術によって4:1の圧縮が達成される。しかし、そ
れ以前に無損失圧縮技術によって4:1より大きい圧縮率
が達成されていれば、有損失圧縮技術は試行されない。
各圧縮手順は、画像又は副画像の未圧縮状態のものに適
用され、既に圧縮されている画像又は副画像は、まず圧
縮解除しない限り更に圧縮されることは決してないこと
を想起されたい。
【0056】この段階で、カレント画像が調べられて、
それがクラスタ化されたものであるか分散化されたもの
であるかを指示するためにタグ付けされ(ステップ22
6)、そのいずれの場合にも有損失圧縮が行われる(ス
テップ228)。そのタグは、後で明らかになるように、
圧縮解除時に用いられる。画像が圧縮されると、その画
像中の全ての副画像が有損失圧縮され得るように有損失
フラグがセットされてその画像に関係づけられる(ステ
ップ228)。次いで、メモリ切れ又はメモリ不足の指示
が除去されたか否かが判定される(判定ステップ23
2)。その判定結果がNOであって全ての画像が完了して
いれば(判定ステップ240)、メモリ切れの状態のまま
であっても印刷動作が開始され、それ以外の場合には次
の画像がアクセスされ(ステップ241)、それに対して
有損失圧縮が行われる。メモリ切れ又はメモリ不足の指
示が除去されると(判定ステップ232)、手順はページ
中間体変換を続行する。
【0057】ここで図8ないし図10を参照する。同図
において、図7のステップ228,230に示す手順の詳細に
ついて考察する。まず、上述のように、副画像中の各バ
イトが調べられて隣接テーブルのクラスタ化/分散化の
値と比較される(ステップ242)。クラスタ化項目に一
致する任意のバイトには値「+1」が割り当てられ、分
散化項目に一致する任意のバイトには値「−1」が割り
当てられ、そのどちらでもない(不明の)ものには値
「0」が割り当てられる(ステップ244)。その割り当
てられた値は次いで合計されて(ステップ246)その副
画像と関係付けて記憶される。次に、この4×4ビットブ
ロックの副画像がアクセスされ(ステップ248)、その
副画像中の「オン」ビット数がカウントされ、「オン」
ビット数を示す4ビット値が前記ブロックに割り当てら
れて記憶される(ステップ250)。16のカウント値は15
として記憶される。このようにして、4×4ビットセルの
副画像のそれぞれが、4ビット値と、その副画像がクラ
スタ化されているか分散化されているかを示す更に割り
当てられた値とによって表わされる。この4ビットの圧
縮された値は、元のセルの元の黒の領域を表わすのに用
いられる。黒のデータが必ずしも同じ位置になくても圧
縮解除はその領域を維持することができる。
【0058】この有損失圧縮された画像が4×4のブロッ
クに圧縮解除されるとき、まずそのブロックにクラスタ
化値又は分散化値が割り当てられていたか否かが判定さ
れる。クラスタ化値が割り当てられていた場合、そのブ
ロックの4ビット値に応じて図9の4×4のマトリクスが
選択される。例えば、その4ビット値が11個の「オン」
又は黒のドットがあったことを示す場合には、図9に示
すマトリクスのうちマトリクス252が選択される。これ
に対し、このブロックが分散化されたものとして示さ
れ、4ビット値がやはり11に等しい場合には、図10の
「オン」ドットのマトリクス254が選択される。従っ
て、クラスタ化又は分散化標識により、圧縮解除の実行
にどのマトリクスグループを用いるかが決定され、また
4ビット値により、マトリクスグループのうちのどのマ
トリクスを選択するかが決定される。図9及び図10の
マトリクスのパターンは、実験的に導出され、他の方法
では4ビット圧縮値から直接回復することのできない損
失情報のいくつかを回復することを可能にする。これら
のテーブルは一般的な場合を表わすものである。このよ
うなテーブルは装置毎に異なるものとすることができ
る。
【0059】メモリ切れ又はメモリ不足手順 以上、モードm、LZW、及び有損失の圧縮技術を説明して
きたが、ページ中間体の処理中にメモリ切れ又はメモリ
不足の指示があった場合に本発明で行う手順について考
察する。図11及び図12に示すように、メモリ切れ又
はメモリ不足の指示があった場合(判定ステップ30
0)、まず画像のいずれかの部分で以前に有損失圧縮が
適用されたものがあるか否かが判定される(判定ステッ
プ302)。その判定結果がYESの場合、この手順は(図7
に示すように)その画像に対する有損失圧縮の実行へと
分岐する。また前記判定結果がNOの場合には、その画像
を調べてその画像に対して以前にモードm圧縮が行われ
ているか否かが判定される(判定ステップ304)。その
判定結果がYESであれば、モード圧縮を再度行う理由は
なく、手順はLZW圧縮の試行(図6参照)へと分岐す
る。この画像に対してそれ以前にモードm圧縮が行われ
ていなければ、モードmが試行される(ステップ306)。
【0060】この時点で、その画像の1つの副画像が調
べられて、それが有損失圧縮された場合のサイズが判定
される。この値は、その画像の高さ及び幅に基づき直接
計算することができる(ステップ308)。その計算値が
次いで有損失圧縮中に用いられ(図7のステップ224参
照)、その有損失圧縮において、以前に試行された無損
失圧縮により有損失圧縮を用いた場合に得られるものよ
り良好な圧縮レベルが達成されたか否かが判定される。
【0061】次に、この手順は、モードm圧縮によって
1対1より大きな副画像圧縮が行われたか否かを判定す
る(判定ステップ310)。その判定結果がYESであれば、
圧縮された副画像は保持され(ステップ312)、NOであ
れば圧縮されていない副画像が保持され、それは、モー
ドmに失敗したものとしてマークされる(ステップ31
4)。次いでこの手順は、全ての副画像が処理されたか
否かを判定し(判定ステップ316)、その判定結果がNO
であれば次の副画像を獲得して(ステップ318)判定ス
テップ304に戻って圧縮動作を繰り返す。全ての副画像
が処理済みであれば、ページ上の最後の画像が処理され
ているか否かを判定し(判定ステップ320)、その判定
結果がYESであれば、この手順はメモリ切れ又はメモリ
不足状態が除去されたか否かの判定に移行する(判定ス
テップ322)。その判定結果がNOであれば、この手順
は、そのページの副画像に対するLZW圧縮の試行へと分
岐する。
【0062】更に圧縮すべき画像が残っていると判定さ
れた場合(判定ステップ320)、新しい画像がアクセス
され(ステップ322)、この手順は判定ステップ302に戻
る。メモリ切れ又はメモリ不足状態が除去されると、こ
の手順はページ中間体を継続する(ステップ326)。
【0063】以上の説明から、本発明を実施したプリン
タには様々なデータ圧縮技術を用いることができ、これ
らのデータ圧縮技術は各圧縮技術の利点に基づいた順序
で用いられ(即ち、最も高速なものが最初に用いられ
る)、用いるべきデータ圧縮技術の選択は以前に用いら
れたデータ圧縮技術の成功(又は成功の欠如)に基づい
て行われる、ということが理解されよう。このようにし
て、画像データは、必要なときにのみそれに最も適した
技術を用いて圧縮される(有損失技術は最後の選択肢で
ある)。
【0064】適応型圧縮ページ保護 ここで図2に戻る。ページ中間体処理(ステップ72)の
最後に、ページ完了指示(判定ステップ90)が発生す
る。ページ中間体ストリップの処理中、各命令が記憶さ
れる度に、この命令について実験的に導出された「複雑
性定数」が累算されて、そのストリップについての複合
「複雑性値」が生成される。
【0065】ページの複雑性は、ページ中間体のビデオ
ラスタへの変換に要する時間の見積もったものである。
見積もり時間(又はその一部)が印刷エンジンに許容さ
れる時間より長い場合に、ページ保護が採用されて、図
13ないし図15に示す動作が開始される。ページ複雑
性時間は、副画像オブジェクト(及びそれに含まれる命
令)を含む各ストリップのページ中間体オブジェクトを
読み出し、ラスタビデオへの変換過程で各オブジェクト
の要する時間に基づいて見積もり時間を累算することに
より、見積もられる。この見積もりは、画像オブジェク
トの高さ及び幅と、画像処理がオブジェクトの各命令を
実行するのに要する時間を示す定数とに基づいて行われ
る。
【0066】ページ複雑性時間(即ちストリップのラス
タビデオへの変換に要する時間)の見積もり処理中であ
れば如何なるときでも、累算見積もりが印刷エンジンの
許容範囲より最低1エンジンストリップ時間だけ大きく
なると、圧縮ページ保護がはたらく。ページ複雑性時間
はまた、プリンタによるストリップのラスタへの変換を
可能とすること及びこの処理を刻時する(刻時された事
前ラスタ化)ことによっても、計算することができる。
【0067】ページ複雑性時間は、ストリップ作成をシ
ステムタイマで刻時することによって実験的に測定する
ことができる。この技術により、ページ処理速度を落と
すことなくストリップの複雑性の計算に伴う不確実性を
低減させることができる。計算されたストリップの複雑
性が、良好な(OK)しきい値を下回っている場合には、そ
れは印刷オーバーランを引き起こすことは全くなく、事
前ラスタ化されることはない。同様に、計算されたスト
リップの複雑性が、強制(will)印刷オーバーランしきい
値を上回っている場合には、その有害ストリップは確実
に印刷オーバーランを引き起こすものであり、事前ラス
タ化されなければならない。また、ストリップの複雑性
が、良好しきい値と強制印刷オーバーランしきい値との
間にある場合には、実験的な測定によって印刷オーバー
ランの不確実性は大幅に軽減される。実験的測定によっ
てストリップが非印刷オーバーランとして分類され、中
間体に要するメモリがストリップ(又はストリップの圧
縮されたもの)より小さい場合、事前ラスタ化されたデ
ータは破棄され、そのストリップは他の非印刷オーバー
ランストリップと同様にして処理される。それ以外の場
合には、事前ラスタ化されたデータが用いられ、処理は
他の印刷オーバーランストリップと同じ経路に沿って続
行される。不確実なストリップの実験的測定を用いない
ページ圧縮の実際の適用においては、問題になるストリ
ップは安全のためにおそらく事前ラスタ化される。実験
的測定を用いれば、顕著な時間又は処理的な不利益を伴
うことなくメモリの使用を低減させることができる。
【0068】図13において、ブロック72,90は図2と
同様である。ページ中間体が完了したと示されると、ペ
ージストリップの複雑性の複合値が前述のように計算さ
れる(ステップ350)。その複雑性値が、ページストリ
ップを直ちに印刷することができることを示している場
合に、印刷が開始される(判定ステップ352)。これに
対し、ページが複雑すぎる場合には、ページ中間体の第
1のストリップがアクセスされ(ステップ354)、ラス
タビデオに変換される(ステップ356)。
【0069】ストリップがラスタビデオに変換される
と、残っている各ページ中間体ストリップが調べられ
て、それが未圧縮状態でユーザRAMに入るか否かが判定
される(判定ステップ358)。その判定結果がYESであれ
ば、そのストリップが未圧縮のものとしてフラグがセッ
トされる(ステップ360)。また、前記判定結果がNOで
あり、そのページに対して以前にLZW圧縮が用いられて
いる場合には(判定ステップ362)、ラスタビデオスト
リップに対してLZW圧縮が試行される(ステップ362)。
これに対し、そのページに対してLZW圧縮が用いられて
いない場合には、モードm圧縮が試行される(ステップ3
64)。次いで、そのストリップがいずれかの圧縮動作に
より実際に圧縮されたか否かが判定され(判定ステップ
366)、その判定結果がNOである場合、(考えられる既
拡張ストリップの使用を防止するために)未圧縮ストリ
ップが用いられる(ステップ368)。
【0070】次いで、そのストリップに対するスペース
の割り当てが試行される(ステップ369)。図15に示
すように、連続したスペースを利用可能であることが発
見された場合(判定ステップ370)、そのストリップは
その発見されたスペースに記憶される(ステップ37
2)。また、連続したスペースが発見されない場合に
は、そのストリップをリンクされたメモリフラグメント
として記憶するメモリ空間があるか否かが判定される
(判定ステップ374)。その判定結果がYESであれば、そ
のストリップはリンクされたフラグメントとして記憶さ
れ(ステップ376)、次いで手順がページ中間体の次の
ストリップにアクセスし(ステップ378)、更に処理す
べきストリップがあるか否かが判定される(判定ステッ
プ380)。ストリップがそれ以上存在しない場合には、
印刷が開始される。また、更にストリップが存在する場
合には、次のストリップがページ中間体からラスタビデ
オに変換されて(ステップ356)、処理が続行される。
【0071】また、判定ステップ374に戻り、ストリッ
プをリンクされたフラグメントとして記憶するメモリ空
間がなく、このストリップに対して未圧縮のフラグがセ
ットされている場合(判定ステップ382)には、メモリ
切れ指示が発生して印刷が開始される。また、そのスト
リップに対して未圧縮のフラグがセットされていない場
合には、モードm圧縮又はLZW圧縮が、以前に試行された
のがどちらであるかに応じて(判定ステップ384,386)
試行される。モードm圧縮及びLZW圧縮の両方が既に試行
されている場合に印刷が開始される。
【0072】つまり、ページ中間体のストリップ(又は
複雑なストリップの選択された部分集合)がページの下
に向かって順次ラスタビデオに変換されて、一時バッフ
ァに入れられる。LZW圧縮がページ上のどこかで既に用
いられている場合にはLZW圧縮が試行され、そうでなけ
ればモードm圧縮が試行される。これは、LZW圧縮が以前
にそのページ上で、そのページがページ保護が必要とす
るほど使用された(非常に複雑である)場合には、モー
ドmは、恐らくはそのページをより良好に圧縮すること
ができないからである。
【0073】圧縮後、そのラスタストリップのための記
憶領域をメインメモリ中で探す。メインメモリ中に記憶
領域がなかった場合には、かかる記憶領域をメインメモ
リの断片又はかかる状況のために別途設けられる緊急メ
モリプールで探す。この手順が終了すると、ページ印刷
が開始される。「ストリップの大きさの」圧縮されたオ
ブジェクトの複雑性は印刷エンジンの許容し得る最大限
の複雑性よりはるかに低いので、ページはオーバーラン
を起こすことなく印刷される。
【0074】以上の説明では、連続的に記憶された記述
子を有する画像に適用されたデータ圧縮について考察し
てきた。画像記述子は、ビットマップ副画像とは別に記
憶することもできる。記述子があれば、本発明の2つの
実施方法を区別する任意の手段となる。ここで図16に
画像記述子の一例を示す。この記述子は、画像の高さ、
幅、画像識別子(例えば連続番号)、及び「クラス」の
表記の定義を含む。更に、画像記述子は、メモリ中の他
の場所にある関連する画像ビットマップのアドレスを示
す。
【0075】画像記述子中の「クラス」表記は、データ
圧縮及び圧縮解除中に用いられる画像に関する事実を示
す項目である。例えば、項目「2」は、画像が「未加
工」であり、データ圧縮操作を受けていないことを示
す。また、項目「3」は、画像がモードmデータ圧縮さ
れていることを示す。更に、項目「8」又は「9」は、
状況に応じて画像がクラスタ画像であるか分散化画像で
あるかを示す。他のクラス表記は、画像に用いられたデ
ータ圧縮手順、即ちLZW、有損失その他を示す。不連続
の画像記述子が用いられる場合、ラスタ図形のラスタビ
デオビットマップは記述子とは全く別個のものであり、
圧縮が実行された際に記述子のビットマップに対するポ
インタだけが変更される。ページ中間体(表示リスト)
を変更する必要は全くなく、圧縮システムはページ中間
体の知識を全く有さない。
【0076】サンプリングされた副画像圧縮 この圧縮技術は、メモリ割り当て要求に失敗したことに
よりメモリ不足状態がトリガされた際に開始される。こ
の技術には、画像中の副画像のサンプリングと、そのサ
ンプリングされた副画像履歴から得られる期待される全
体的な画像圧縮の予測と、画像中の全ての副画像への適
切な圧縮技術の適用とが含まれる。この手順において、
圧縮を含む所定組のメモリ割り当て操作が優先順位に従
って順序づけられ、既に試行された無損失方法が必要メ
モリスペースを提供しない場合に、有損失方法が用いら
れる。最後の手段として、無損失圧縮から有損失圧縮へ
の変換を、4倍の標準的な有損失の場合の圧縮率より低
く圧縮されたあらゆる無損失画像について実行すること
ができる。
【0077】図17に示すように、この手順は「選択さ
れた全ての副画像を圧縮」と題されている。まず、ある
画像中の全ての副画像が、場合に応じて未圧縮リスト又
は既圧縮リストのいずれかに割り当てられる。従って、
この手順の始めには、全ての副画像が未圧縮リストに列
挙される。これは、まだそれらが圧縮を受けていないか
らである。この処理は、未圧縮リストの次の細副画像に
アクセスすることにより開始される(ステップ442)。
次いで、そのリスト中の全ての副画像が完了したか否か
が判定され(判定ステップ444)、その判定結果がYESで
あれば、手順は終了する(ステップ445)。また、前記
判定結果がNOであれば、その副画像の記述子がチェック
されて、その副画像が属する画像が「未加工」状態、即
ち未圧縮であるか否かが判定される(判定ステップ44
6)。その画像が未加工でないと判定された場合、副画
像は図17の左下に示す手順が実行される。
【0078】また、その画像が「未加工」であると判定
された場合には、図17の右側に示す分類手順に進む。
この分類手順は、その画像に属する全ての副画像に対し
て用いるべき圧縮方法の割り当てを含むものである。こ
の手順は、ステップ460に示すように、画像中の全ての
副画像をカウントし、及び副画像の適当な大きさのサン
プルを選択することにより、開始される。サンプリング
される部分集合の大きさは、副画像の利用可能数によっ
て変動する。副画像の数が16より少なければ、全ての副
画像が用いられる。それより大きな数の副画像が存在す
る場合には、その総数のうちの数分の一が用いられ、そ
の分割数は副画像の数が増えるにつれて大きくなる。好
適には、部分集合は、6つの副画像毎に1つという比率
より決して小さくはならない。明らかに、上記の数及び
比率は好適例として挙げたものであり、その数及び比率
の値は具体的な状況に応じて変更し得るものであること
が、当業者には理解されよう。
【0079】次いで、選択された副画像のそれぞれが
「次の」優先順位の無損失方法で圧縮される。最初にモ
ードMが用いられる。これは、その方法が圧縮及び圧縮
解除において最も高速であるからである。サンプル中の
全ての副画像が、選択された無損失方法を用いて圧縮さ
れると、平均圧縮率が計算されて(ステップ464)所定
の圧縮しきい値と比較される。その圧縮方法による圧縮
結果の圧縮率が前記しきい値を超えることがわかった場
合、判定ステップ466,472に示すようにその方法が直ち
に選択される。方法が選択されると、それが画像の全副
画像に割り当てられ(ステップ474)、手順は図17の
左側に移行する。
【0080】しきい値を超えず、未試行の他の無損失圧
縮技術が存在する場合には(判定ステップ468)、手順
はステップ462に戻り、次に低い優先順位の無損失方法
を実行する。判定ステップ468で、利用可能な無損失方
法がそれ以上存在しないことが示された場合には、有損
失技術が用いられ、画像は分散化画像又はクラスタ化画
像のいずれかとして判定される(ステップ470)。この
場合、有損失方法は画像の全ての副画像に対して割り当
てられ、手順は判定ステップ448に移行する。
【0081】分類手順中に、副画像の選択されたサンプ
ルに対して圧縮が発生するが、かかる圧縮の結果は保持
されない(圧縮率の計算及び前記しきい値との比較を目
的とする場合を除く)。画像及び副画像の実際の圧縮
は、図17の左側に示すように発生する。
【0082】あるページ上の画像の圧縮中には、共通の
圧縮法を割り当てられた全ての画像が順次処理され、別
の圧縮法を割り当てられた画像はその次に順次処理され
る。従って、全ての場合において、圧縮ルーチン「選択
された全副画像の圧縮」で現在用いられている方法と一
致する圧縮方法が割当てられた画像に現在の副画像が属
するか否かが判定ステップ448でチェックされる。その
判定結果がNOの場合、ステップ442で未圧縮リスト中の
次の副画像がアクセスされて手順が繰り返される。ま
た、前記判定結果がYESであり、適当な圧縮ルーチンが
実行されている場合には、個々の副画像に対して直ちに
圧縮が実行され、その結果がステップ450に示すように
予備メモリに記憶される。副画像の圧縮が終了すると、
古いビットマップメモリは割り当てが解除される。次い
で、既圧縮画像の記述子が既圧縮リストに移動され(ス
テップ454)、手順は次の副画像のアクセスに移行す
る。
【0083】フォント圧縮 高速レーザプリンタでは、フォントは一般には圧縮ルー
チンによる処理を受けることはない。しかし、プリンタ
制御言語によっては、フォントビットマップがプリンタ
のメモリ内で連続していることを必要とする(例えばPC
L)。これは、小さいフォントの場合には問題にならな
い。なぜなら、それに伴うビットマップが小さく、大き
なメモリ領域を占有することがないからである。しか
し、大きなフォントはメモリ切れの問題を生じさせるも
のとなる。これは、かかるフォントの記憶に要するブロ
ックサイズがフォントの「ポイント」サイズの2乗で大
きくなるためである。そのような大きなフォントを受け
取った場合に、プリンタ内で多数の連続ブロックを利用
することができないことがある。更に、非常に大きな連
続するメモリブロックを確保するということは浪費的で
あり、できれば避けるべきである。また、(図18に示
すように)ページ430上に印刷された大きなフォントサ
イズの場合を考えると、所望のフォントでページ全体が
印刷されるより充分前にメモリ切れ状態が発生する。こ
れを防止するために、受信フォントに対してデータ圧縮
が加えられる。
【0084】ここで図19を参照する。フォント圧縮手
順が、まず文字フォントサイズを識別する(ステップ43
2)。フォントサイズが所定のしきい値より大きい場合
(判定ステップ433)、このフォントはモードmを用いて
直ちに圧縮される。これに対し、文字フォントサイズが
しきい値より小さい場合、直ちに圧縮を行うことはな
く、メモリ切れ又はメモリ不足指示が出るまで圧縮動作
は保留される(ステップ436)。
【0085】以上の説明は本発明の例示にすぎないこと
が理解されよう。当業者であれば、本発明から逸脱する
ことなく様々な代替態様や修正態様を実施することが可
能である。従って、本発明は、特許請求の範囲内に含ま
れる代替、修正、変形態様の全てを含むことが意図され
ている。
【0086】
【発明の効果】本発明は上述のように構成したので、デ
ータ圧縮用のシステムを含み、受信データの特性に応じ
て適応可能なページプリンタを提供することが可能とな
り、また、限られた量のオンボードメモリを効率的に用
いることを可能にするようにデータ圧縮技術を知的に選
択するシステムを採用したページプリンタを提供するこ
とが可能となる。
【図面の簡単な説明】
【図1】本発明の実施に適合された周辺装置を示す高水
準ブロック図である。
【図2】本発明の手順全体を示す概略的なフローチャー
トである。
【図3】ストリップビデオの事前生成の為の手順を示す
高水準フローチャートである。
【図4】ここで用いるモードmと呼ばれる高速データ圧
縮技術を示す高水準フローチャートである(1/2)。
【図5】ここに用いるモードmと呼ばれる高速データ圧
縮技術を示す高水準フローチャートである(2/2)。
【図6】Lempel/Ziv/Welchデータ圧縮手順を示す高水準
フローチャートである。
【図7】Lossy圧縮手順を示す高水準フローチャートで
ある。
【図8】画像がクラスタ化されているか分散しているか
を判定するのに用いられる手順を示す高水準フローチャ
ートである。
【図9】図8の手順の結果に従って用いられるクラスタ
化有損失圧縮解除マトリクスを示す説明図である。
【図10】図8の手順の結果に従って用いられる分散化
有損失圧縮解除マトリクスを示す説明図である。
【図11】図1のシステムにおいてメモリ残量のない状
態又は不足した状態において用いるべき圧縮手順を判定
する際に用いられる手順を示す高水準フローチャートで
ある(1/2)。
【図12】図1のシステムにおいてメモリ残量のない状
態又は不足した状態において用いるべき圧縮手順を判定
する際に用いられる手順を示す高水準フローチャートで
ある(2/2)。
【図13】「ページ中間体」動作が完了し、ページが複
雑すぎることが発見された場合に実行される手順を示す
高水準フローチャートである(1/3)。
【図14】「ページ中間体」動作が完了し、ページが複
雑すぎることが発見された場合に実行される手順を示す
高水準フローチャートである(2/3)。
【図15】「ページ中間体」動作が完了し、ページが複
雑すぎることが発見された場合に実行される手順を示す
高水準フローチャートである(3/3)。
【図16】本発明の第2の態様におけるビットマップ副
画像を伴う記述子を示す説明図である。
【図17】採用すべき圧縮手順を判定するために本発明
の第2の態様において実行される手順を示すフローチャ
ートである。
【図18】大きなポイントサイズのフォントの印刷に応
じて「メモリ切れ」指示が発生した場合のページを示す
説明図である。
【図19】受信フォントに圧縮が加えられる場合を示す
フローチャートである。
【符号の説明】
10 プリンタ 20 ランダムアクセスメモリ 22 リードオンリーメモリ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ゲーリー・ツィンマーマン アメリカ合衆国アイダホ州83704ボイス, ノース・ファロウ・4849 (72)発明者 トーマス・ジー・バージ アメリカ合衆国アイダホ州83712ボイス, イースト・ジェーファーソン・ストリー ト・702 (72)発明者 テリー・エム・ネルソン アメリカ合衆国アイダホ州83709ボイス, モホーク・ドライヴ・10930 Fターム(参考) 2C187 AC07 BF14 DD04 DD07 FC09 GB03 5B021 CC08 DD03 5C078 AA01 BA22 CA01 CA27 DA01 DA05

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】(a)画像の最初のラスタ行のデータセグ
    メントに対してランレングス符号化を実施して、前記行
    のデータセグメントの各ランについて、ランデータセグ
    メントのランカウント及び識別を示すランレングスコマ
    ンドを出力するステップ(152)と、(b)前記画像
    の後続行のデータセグメントについて、該データセグメ
    ントが、直前のラスタ行のデータセグメントと同じであ
    るか異なるかを判定するステップ(156)と、(c)
    前記後続ラスタ行について、前記データセグメントのう
    ち、前記「同じ」状態を示しているもの、及び前記「異
    なる」状態を示しているものを特定するコマンドを発行
    するステップ(160)からなる、ラスタ画像をデータ
    圧縮するための方法。
  2. 【請求項2】前記ステップ(b)がさらに、前記後続ラ
    スタ行のデータセグメントのランの存在を識別し、前記
    ランにおいて繰り返されるデータセグメントのカウント
    値及び識別を含むランコマンドを出力する(158、1
    60)、請求項1の方法。
  3. 【請求項3】前記データセグメントのランの識別が、異
    なるデータセグメントが決定された後で、同じデータセ
    グメントが次に検出される前にのみ行われる、請求項2
    の方法。
  4. 【請求項4】ランレングス符号化を、前記ランが終了す
    るまで、ラスタ行間にわたって実施することができる、
    請求項3の方法。
  5. 【請求項5】前記ステップ(c)で発行される前記コマ
    ンドが、同じデータセグメントのカウント値を含み、該
    カウント値の後に、この同じデータセグメントに続く異
    なるデータセグメントのカウント値及び識別が続くこと
    からなる、請求項1乃至4のいずれかの方法。
  6. 【請求項6】あるラスタ行がすぐ隣の行と同じであるこ
    とがわかった場合には、そのラスタ行に対して発行され
    る任意のコマンドを削除する(166、168)ステッ
    プと、 前記すぐ隣の行を繰り返すようにする行繰り返しコマン
    ドを発行するステップからさらになる、請求項1乃至5
    のいずれかの方法。
  7. 【請求項7】行の終わりでゼロ(0)のランが検出され
    た場合に、ライン終了コマンドを挿入するステップ(1
    72)と、 復元時に、所定の行長までに終了する任意の行をゼロで
    パディングするステップからさらになる、請求項1乃至
    6のいずれかの方法。
  8. 【請求項8】ラスタ構成画像をデータ圧縮するための方
    法であって、(a)クラスタ化ビットパターンからなる
    画像、及び、分散化ビットパターンからなる画像を示す
    データセグメントパターンの第1のテーブルを提供する
    ステップ(242)と、(b)画像のデータセグメント
    を、前記第1のテーブルの前記データセグメントパター
    ンと比較して、前記画像の種別を決定するステップであ
    って、前記種別は、クラスタ化種別と分散化種別を含む
    ことからなる、ステップ(244)と、(c)前記画像
    のn×nビットの各ブロックをnビットのデータセグメ
    ントに縮小することによって前記画像を圧縮し、この圧
    縮された画像に種別標識を付加するステップ(250)
    と、(d)前記nビットのデータセグメントを使用して
    前記画像を復元し、前記種別標識に従って、記憶された
    n×n画素のマトリクスを一対のマトリクステーブルか
    らアクセスするステップ(図9、10)であって、前記
    テーブルのうちのあるテーブルは、クラスタ化されたも
    のとして分類されるn×nビット画像を含み、別のテー
    ブルは、分散化されたものとして分類されるn×nビッ
    ト画像を含み、これらの各テーブルは、前記nビットの
    データセグメントに従ってアドレスされることからな
    る、ステップとからなる方法。
  9. 【請求項9】前記第1のテーブルのクラスタ化データセ
    グメントパターンに合致する前記画像の任意のデータセ
    グメントに第1の値を割り当てることにより、及び、前
    記第1のテーブルの分散化データセグメントパターンに
    合致する任意のデータセグメントに第2の値を割り当て
    ることにより、前記画像を、クラスタ化されたもの、ま
    たは分散化されたもののいずれかとして分類する(22
    6)、請求項8の方法であって、この分類が、前記第1
    の値と第2の値とを組み合わせ、この組み合わせた値を
    しきい値と比較することによって決定されることからな
    る、方法。
  10. 【請求項10】前記第1の値が正の数であり、前記第2
    の値が負の数であり、前記しきい値がそれらの値の中間
    値である、請求項9の方法。
  11. 【請求項11】前記ページ構成出力のビデオラスタ画像
    全体を記憶するために割り当てるには不十分なランダム
    アクセスメモリ(20)を備え、入力データフローをペ
    ージ構成出力に変換するための周辺装置(10)におい
    て、前記入力データフローを、前記ページ構成出力を構
    成する複数の画像ストリップを有するページ中間体に変
    換するための方法であって、各画像ストリップが、該各
    画像ストリップのラスタビデオ形式への変換を可能にす
    る画像処理コマンドを含み、(a)画像ストリップのデ
    ータセグメントのしきい値を設定するステップと、
    (b)画像ストリップ内のデータセグメントの数が、前
    記しきい値より大きいか否か(1)、及び、前記ランダ
    ムアクセスメモリの残存メモリが、所定のレベルより小
    さいか否か(2)を判定し、さらに、これらの判定
    (1)及び(2)の結果が真であるか否かを判定するス
    テップ(104)と、(c)前記画像ストリップをラス
    タビデオにすぐに変換し(106)、それの圧縮を試み
    る(108)ステップと、(d)前記ステップ(c)で
    得られた圧縮されたラスタビデオを、前記ランダムアク
    セスメモリに記憶するステップ(120、122)と、
    (e)前記しきい値を、前記ランダムアクセスメモリの
    残存するメモリを見込むより小さな値に調整するステッ
    プ(124)と、(f)前記ページの残りの画像ストリ
    ップに対して前記ステップ(a)〜(e)を繰り返すス
    テップとからなる方法。
  12. 【請求項12】前記ステップ(c)が、ラスタデータの
    ブロックを検査する圧縮処理(108)を使用し、前記
    ラスタデータの各ブロックの垂直方向データ及び水平方
    向データの両方の冗長性を考慮する圧縮処理を実行す
    る、請求項11の方法。
  13. 【請求項13】前記圧縮処理が、ラスタデータのブロッ
    クの後続行間に存在する垂直方向データの冗長性を示す
    出力コマンドを提供するステップと、さらに、前記行に
    存在する水平方向データの冗長性を示すコマンドを提供
    するステップを含む、請求項12の方法。
  14. 【請求項14】ストリップの複雑さをシステムタイマに
    よる測定によって経験的に求めることができ、複雑さの
    予測値が不確定な複雑さを示すウインドウ内にあると
    き、ストリップを事前にラスタ化するかどうかを確定す
    るためにその求めた結果を使用する、請求項11の方
    法。
JP2003043602A 1992-09-03 2003-02-21 メモリの最小化のための適応型データ圧縮方法 Pending JP2003309729A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/940,111 US5479587A (en) 1992-09-03 1992-09-03 Page printer having adaptive data compression for memory minimization
US940111 1992-09-03

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP22028793A Division JP3566973B2 (ja) 1992-09-03 1993-09-03 メモリの最小化のための適応型データ圧縮方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2004082496A Division JP2004274776A (ja) 1992-09-03 2004-03-22 メモリを最小にするための適応型データ圧縮方法

Publications (1)

Publication Number Publication Date
JP2003309729A true JP2003309729A (ja) 2003-10-31

Family

ID=25474251

Family Applications (3)

Application Number Title Priority Date Filing Date
JP22028793A Expired - Fee Related JP3566973B2 (ja) 1992-09-03 1993-09-03 メモリの最小化のための適応型データ圧縮方法
JP2003043602A Pending JP2003309729A (ja) 1992-09-03 2003-02-21 メモリの最小化のための適応型データ圧縮方法
JP2004082496A Pending JP2004274776A (ja) 1992-09-03 2004-03-22 メモリを最小にするための適応型データ圧縮方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP22028793A Expired - Fee Related JP3566973B2 (ja) 1992-09-03 1993-09-03 メモリの最小化のための適応型データ圧縮方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2004082496A Pending JP2004274776A (ja) 1992-09-03 2004-03-22 メモリを最小にするための適応型データ圧縮方法

Country Status (4)

Country Link
US (1) US5479587A (ja)
EP (1) EP0585524B1 (ja)
JP (3) JP3566973B2 (ja)
DE (1) DE69322023T2 (ja)

Families Citing this family (130)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5436981A (en) * 1992-06-24 1995-07-25 Canon Kabushiki Kaisha Image processing method, and apparatus therefor
US5602976A (en) * 1993-02-23 1997-02-11 Adobe Systems Incorporated Method and apparatus for saving printer memory
JPH07205496A (ja) * 1994-01-14 1995-08-08 Oki Electric Ind Co Ltd ページプリンタ及びデータ圧縮方法
DE69431101T2 (de) * 1994-03-18 2002-11-28 Hewlett Packard Co Druckersystem mit komprimiertem Schriftsatzverfahren, das Speicherplatzeinsparüng ermöglicht
US6009242A (en) * 1994-06-30 1999-12-28 Canon Kabushiki Kaisha Print controller, printer, data transfer method, and printing condition setting method
US5615314A (en) * 1994-08-30 1997-03-25 Management Graphics, Inc. Interface for providing rasterized data to an imaging device
US7190284B1 (en) * 1994-11-16 2007-03-13 Dye Thomas A Selective lossless, lossy, or no compression of data based on address range, data type, and/or requesting agent
US6170047B1 (en) * 1994-11-16 2001-01-02 Interactive Silicon, Inc. System and method for managing system memory and/or non-volatile memory using a memory controller with integrated compression and decompression capabilities
US6002411A (en) * 1994-11-16 1999-12-14 Interactive Silicon, Inc. Integrated video and memory controller with data processing and graphical processing capabilities
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
US6650761B1 (en) 1999-05-19 2003-11-18 Digimarc Corporation Watermarked business cards and methods
US5729668A (en) * 1995-09-15 1998-03-17 Hewlett-Packard Company Optimized hardware compression and decompression architecture for use by an image processor in a laser printer
US6137589A (en) * 1995-09-20 2000-10-24 Hewlett-Packard Company Efficient storage of dithered raster image data in a printer or the like
US5825991A (en) * 1995-10-30 1998-10-20 Xerox Corporation System for balancing CPU demands in a high-volume print server
US6266449B1 (en) * 1995-11-22 2001-07-24 Canon Kabushiki Kaisha Information processing apparatus and method which selectively controls data encoding by monitoring amount of encoded data
US5710909A (en) * 1996-01-23 1998-01-20 International Business Machines Corporation Data compression utilization method and apparatus for computer main store
US5797689A (en) * 1996-01-24 1998-08-25 Hewlett-Packard Company Avoiding memory fragmentation in printers
US5793937A (en) * 1996-03-29 1998-08-11 Peerless Systems Corporation Fallback processing for page generation using memory reduction techniques
US5852711A (en) 1996-04-24 1998-12-22 Hewlett-Packard Company Efficient pattern use in printers
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
JPH1023271A (ja) * 1996-07-05 1998-01-23 Canon Inc 画像形成方法とその装置
JPH1051642A (ja) * 1996-07-31 1998-02-20 Fuji Xerox Co Ltd 画像処理装置
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
US5867632A (en) * 1996-11-07 1999-02-02 Xionics Document Technologies, Inc. System and method for providing glossy compression and contone/bitonal image conversion
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
JPH10147018A (ja) * 1996-11-18 1998-06-02 Canon Inc 印刷装置及びメモリ管理方式
US5982937A (en) * 1996-12-24 1999-11-09 Electronics For Imaging, Inc. Apparatus and method for hybrid compression of raster data
JPH10202962A (ja) * 1997-01-22 1998-08-04 Brother Ind Ltd 印字データ処理装置及び入力データ作成装置
US5971518A (en) * 1997-01-28 1999-10-26 Lexmark International, Inc. Method of printing with an ink jet printer to inhibit the formation of a print artifact
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
JP3580982B2 (ja) * 1997-04-30 2004-10-27 パイオニア株式会社 情報記録方法及び装置
US5999710A (en) * 1997-06-17 1999-12-07 Hewlett-Packard Company Merge plane generation for a data processing pipeline
US6879266B1 (en) 1997-08-08 2005-04-12 Quickshift, Inc. Memory module including scalable embedded parallel data compression and decompression engines
US6038033A (en) * 1997-08-20 2000-03-14 Lexmark International, Inc. Method and apparatus for compressing and decompressing print data in the background operations of a printer
US6130759A (en) * 1997-08-26 2000-10-10 Hewlett-Packard Company Reducing memory fragmentation by coalescing and redistributing previously distributed page strips
US6031624A (en) * 1997-09-08 2000-02-29 Lexmark International, Inc. Method and apparatus for adaptive data buffering in a parallelized printing system
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
US6151131A (en) * 1997-11-03 2000-11-21 Xerox Corporation Print system with deferred job assembly feature
US6115134A (en) * 1997-12-05 2000-09-05 Hewlett-Packard Company Scan line splitting in a multi-staged image processing pipeline
US6337747B1 (en) 1998-01-29 2002-01-08 Canon Kabushiki Kaisha System to adaptively compress raster image data
US6115135A (en) * 1998-04-22 2000-09-05 Hewlett-Packard Company Freeing memory in a page printer during duplex processing
US6166827A (en) 1998-04-22 2000-12-26 Hewlett-Packard Company Freeing memory in a page printer during punt protection
US6018400A (en) * 1998-05-05 2000-01-25 Hewlett-Packard Company Laser printer employing overlapped color plane processing
US20010015820A1 (en) * 1998-07-13 2001-08-23 Hewlett-Packard Company Method and apparatus for conservation of memory in a printer through selective compression of a display list
US20020063894A1 (en) * 1998-08-28 2002-05-30 Russell Campbell Conservation of printer memory on the composition page
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
US6429949B1 (en) 1998-10-15 2002-08-06 Electronics For Imaging, Inc. Low memory printer controller
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
US6192157B1 (en) 1998-10-27 2001-02-20 Hewlett-Packard Company Modifications of postscript adaptive data compression (ADC) for 3 plane, 8 bit color images, JPEG lossy compression, and variable Q factors
US6624761B2 (en) 1998-12-11 2003-09-23 Realtime Data, Llc Content independent data compression method and system
US6195024B1 (en) 1998-12-11 2001-02-27 Realtime Data, Llc Content independent data compression method and system
US6822589B1 (en) 1999-01-29 2004-11-23 Quickshift, Inc. System and method for performing scalable embedded parallel data decompression
US7129860B2 (en) * 1999-01-29 2006-10-31 Quickshift, Inc. System and method for performing scalable embedded parallel data decompression
US6583887B1 (en) * 1999-02-26 2003-06-24 Hewlett-Packard Development Company, L.P. Method and apparatus for data compression
US6604158B1 (en) 1999-03-11 2003-08-05 Realtime Data, Llc System and methods for accelerated data storage and retrieval
US6601104B1 (en) 1999-03-11 2003-07-29 Realtime Data Llc System and methods for accelerated data storage and retrieval
US6738150B1 (en) * 1999-04-14 2004-05-18 Hewlett-Packard Development Company, L.P. Methods and systems for processing image data
US6594029B1 (en) 1999-04-19 2003-07-15 Hewlett-Packard Company Guard-banding methods, dynamic guard-banding methods, and related apparatus for real time image-data processing
US6832187B1 (en) * 1999-05-10 2004-12-14 Hewlett-Packard Development Company, L.P. Methods of providing page protection in a digital printing system having multiple output devices
JP2001030552A (ja) * 1999-07-26 2001-02-06 Canon Inc データ転送方法およびデータ転送装置ならびに記録装置
US6188333B1 (en) * 1999-08-12 2001-02-13 Unisys Corporation LZW data compression apparatus and method using look-ahead mathematical run processing
JP2001199135A (ja) * 2000-01-20 2001-07-24 Canon Inc 印刷制御装置および印刷制御方法および記憶媒体
US7181608B2 (en) 2000-02-03 2007-02-20 Realtime Data Llc Systems and methods for accelerated loading of operating systems and application programs
US20030191876A1 (en) 2000-02-03 2003-10-09 Fallon James J. Data storewidth accelerator
US7076016B1 (en) * 2000-02-28 2006-07-11 Advanced Micro Devices, Inc. Method and apparatus for buffering data samples in a software based ADSL modem
US6731814B2 (en) * 2000-05-01 2004-05-04 Xerox Corporation Method for compressing digital documents with control of image quality and compression rate
US6804401B2 (en) 2000-05-12 2004-10-12 Xerox Corporation Method for compressing digital documents with control of image quality subject to multiple compression rate constraints
US8692695B2 (en) 2000-10-03 2014-04-08 Realtime Data, Llc Methods for encoding and decoding data
US9143546B2 (en) 2000-10-03 2015-09-22 Realtime Data Llc System and method for data feed acceleration and encryption
US7417568B2 (en) 2000-10-03 2008-08-26 Realtime Data Llc System and method for data feed acceleration and encryption
US7386046B2 (en) 2001-02-13 2008-06-10 Realtime Data Llc Bandwidth sensitive data compression and decompression
US7162080B2 (en) * 2001-02-23 2007-01-09 Zoran Corporation Graphic image re-encoding and distribution system and method
US6701020B2 (en) * 2001-03-15 2004-03-02 Hewlett-Packard Development Company, L.P. JADE-JPEG based adaptive document compression engine
US6516397B2 (en) * 2001-04-09 2003-02-04 Hewlett-Packard Company Virtual memory system utilizing data compression implemented through a device
US7164369B2 (en) 2001-06-19 2007-01-16 Sharp Laboratories Of America, Inc. System for improving storage efficiency of digital files
JP3736394B2 (ja) * 2001-07-10 2006-01-18 松下電器産業株式会社 画像圧縮装置
WO2003081898A1 (en) * 2002-03-22 2003-10-02 Sipec Corporation Image data compression device, image data compression method, recording medium, and program
US20030202209A1 (en) * 2002-04-30 2003-10-30 Mellor Douglas J. System and method for optimizing memory resources in printing devices
JP2004080520A (ja) * 2002-08-20 2004-03-11 Ricoh Co Ltd 画像処理装置、画像読取装置及び画像形成装置
US7564861B1 (en) * 2002-08-22 2009-07-21 3Com Corporation Systems and methods for compressing data
US7715640B2 (en) * 2002-11-05 2010-05-11 Konica Minolta Business Technologies, Inc. Image processing device, image processing method, image processing program and computer-readable recording medium on which the program is recorded
US7170628B2 (en) * 2002-12-20 2007-01-30 Texas Instruments Incorporated Efficient processing of images in printers
US20040125385A1 (en) * 2002-12-30 2004-07-01 Mellor Douglas J. Estimating a guarantee time
US7663772B2 (en) * 2003-01-24 2010-02-16 Infoprint Solutions Company, Llc Dynamic early preparation of presentation objects for efficient printing
US7305490B2 (en) * 2003-07-29 2007-12-04 Hewlett-Packard Development Company, L.P. Preparing electronic data for transmission
JP4136825B2 (ja) * 2003-08-08 2008-08-20 キヤノン株式会社 画像処理装置および画像処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム
US9614772B1 (en) 2003-10-20 2017-04-04 F5 Networks, Inc. System and method for directing network traffic in tunneling applications
US7098822B2 (en) * 2003-12-29 2006-08-29 International Business Machines Corporation Method for handling data
US7580564B2 (en) * 2004-05-13 2009-08-25 Lexmark International, Inc. Method of an image processor for transforming a n-bit data packet to a m-bit data packet using a lookup table
JP4328689B2 (ja) * 2004-08-06 2009-09-09 キヤノン株式会社 画像処理装置および画像処理装置の制御方法
US8024483B1 (en) 2004-10-01 2011-09-20 F5 Networks, Inc. Selective compression for network connections
US7675646B2 (en) * 2005-05-31 2010-03-09 Xerox Corporation Flexible print data compression
US8184691B1 (en) * 2005-08-01 2012-05-22 Kevin Martin Henson Managing telemetry bandwidth and security
US7783781B1 (en) 2005-08-05 2010-08-24 F5 Networks, Inc. Adaptive compression
US8533308B1 (en) 2005-08-12 2013-09-10 F5 Networks, Inc. Network traffic management through protocol-configurable transaction processing
US8275909B1 (en) 2005-12-07 2012-09-25 F5 Networks, Inc. Adaptive compression
US7882084B1 (en) 2005-12-30 2011-02-01 F5 Networks, Inc. Compression of data transmitted over a network
US7873065B1 (en) 2006-02-01 2011-01-18 F5 Networks, Inc. Selectively enabling network packet concatenation based on metrics
US8565088B1 (en) 2006-02-01 2013-10-22 F5 Networks, Inc. Selectively enabling packet concatenation based on a transaction boundary
US20070216696A1 (en) * 2006-03-16 2007-09-20 Toshiba (Australia) Pty. Limited System and method for document rendering employing bit-band instructions
US7849241B2 (en) * 2006-03-23 2010-12-07 International Business Machines Corporation Memory compression method and apparatus for heterogeneous processor architectures in an information handling system
US8526049B2 (en) * 2006-03-31 2013-09-03 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for display list management
US9356824B1 (en) 2006-09-29 2016-05-31 F5 Networks, Inc. Transparently cached network resources
DE102007040675A1 (de) * 2006-11-13 2008-05-15 Abb Technology Ag System und Verfahren zur verlustfreien Verarbeitung von Prozesswerten einer technischen Anlage oder eines technischen Prozesses
US8085426B2 (en) 2006-11-22 2011-12-27 Sharp Laboratories Of America, Inc. Intelligent page buffer allocation
US8417833B1 (en) 2006-11-29 2013-04-09 F5 Networks, Inc. Metacodec for optimizing network data compression based on comparison of write and read rates
US8314961B1 (en) * 2007-01-18 2012-11-20 Marvell International Ltd. Method and apparatus for printing raster page
US9106606B1 (en) 2007-02-05 2015-08-11 F5 Networks, Inc. Method, intermediate device and computer program code for maintaining persistency
JP4953905B2 (ja) * 2007-04-27 2012-06-13 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
US8593654B2 (en) * 2007-10-03 2013-11-26 Hewlett-Packard Development Company, L.P. Setting a partition size for a print job
US8782371B2 (en) * 2008-03-31 2014-07-15 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for memory management for rasterization
US8228555B2 (en) * 2008-03-31 2012-07-24 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for parallel display list rasterization
US8817032B2 (en) 2008-08-29 2014-08-26 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for framebuffer management
US8854680B2 (en) * 2008-09-11 2014-10-07 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for optimal memory allocation units
US8861014B2 (en) * 2008-09-30 2014-10-14 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for optimized printer throughput in a multi-core environment
JP4868016B2 (ja) * 2009-03-26 2012-02-01 富士ゼロックス株式会社 画像処理装置、画像形成装置及びプログラム
AU2009233627B2 (en) * 2009-10-30 2012-03-29 Canon Kabushiki Kaisha Compression method selection for digital images
US9639792B2 (en) * 2011-07-18 2017-05-02 Ricoh Company, Ltd. Resolution of out of memory conditions for shared memory in a print controller
JP6056468B2 (ja) * 2012-12-27 2017-01-11 ブラザー工業株式会社 画像処理装置およびコンピュータプログラム
US9235612B1 (en) * 2013-04-03 2016-01-12 Time Warner Cable Enterprises Llc Management of event data
AU2013211450A1 (en) 2013-07-30 2015-02-19 Canon Kabushiki Kaisha Fixed memory rendering
US10594890B2 (en) * 2016-02-11 2020-03-17 Hewlett-Packard Development Company, L.P. Compressing each object in an electronic document
WO2019190498A1 (en) 2018-03-28 2019-10-03 Hewlett-Packard Development Company, L.P. Reprocessing of page strips responsive to low memory condition
US20220166855A1 (en) * 2020-11-25 2022-05-26 Generalplus Technology Inc. System for development interface and data transmission method for development interface
US20220318980A1 (en) * 2021-04-01 2022-10-06 Allstate Insurance Company Computer Vision Methods for Loss Prediction and Asset Evaluation Based on Aerial Images

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4325085A (en) * 1980-06-09 1982-04-13 Digital Communications Corporation Method and apparatus for adaptive facsimile compression using a two dimensional maximum likelihood predictor
US4558302A (en) * 1983-06-20 1985-12-10 Sperry Corporation High speed data compression and decompression apparatus and method
US4701803A (en) * 1984-06-05 1987-10-20 Canon Kabushiki Kaisha Image data compression apparatus
KR930003416B1 (ko) * 1988-03-29 1993-04-29 주식회사 금성사 폰트의 함축방법
JPH0753454B2 (ja) * 1990-07-06 1995-06-07 株式会社日立製作所 テキスト情報処理装置
US5367620A (en) * 1990-09-25 1994-11-22 Brother Kogyo Kabushiki Kaisha Character output device
US5129049A (en) * 1991-05-16 1992-07-07 Hewlett-Packard Company Method and apparatus for preventing print overruns
US5179378A (en) * 1991-07-30 1993-01-12 University Of South Florida Method and apparatus for the compression and decompression of data using Lempel-Ziv based techniques
US5260693A (en) * 1991-10-11 1993-11-09 Spacelabs Medical, Inc. Method and system for lossless and adaptive data compression and decompression
US5150454A (en) * 1991-10-16 1992-09-22 Patrick Wood Printing system and method

Also Published As

Publication number Publication date
JP3566973B2 (ja) 2004-09-15
US5479587A (en) 1995-12-26
EP0585524A1 (en) 1994-03-09
DE69322023D1 (de) 1998-12-17
JP2004274776A (ja) 2004-09-30
EP0585524B1 (en) 1998-11-11
DE69322023T2 (de) 1999-06-10
JPH06233141A (ja) 1994-08-19

Similar Documents

Publication Publication Date Title
JP3566973B2 (ja) メモリの最小化のための適応型データ圧縮方法
US5483622A (en) Page printer having automatic font compression
EP0613102B1 (en) Method and apparatus for saving printer memory
JP4101312B2 (ja) グラフィック画像の圧縮システムおよび方法
US5535311A (en) Method and apparatus for image-type determination to enable choice of an optimum data compression procedure
EP0593968B1 (en) Cache-based data compression/decompression
US6337747B1 (en) System to adaptively compress raster image data
US6137589A (en) Efficient storage of dithered raster image data in a printer or the like
JPS6343036B2 (ja)
JPH10147018A (ja) 印刷装置及びメモリ管理方式
US5729668A (en) Optimized hardware compression and decompression architecture for use by an image processor in a laser printer
GB2329993A (en) Printer with reduced memory
GB2339490A (en) Printer memory conservation using compression
US7259891B2 (en) Image compression method, decompression method thereof and program therefor
JP2001044850A (ja) データ圧縮方法、データ復元方法及び情報処理装置
JP2683506B2 (ja) データ圧縮方法及び装置、データ伸長方法及び装置
JPH08223428A (ja) 画像データ圧縮装置および画像データ伸長装置
JP4001482B2 (ja) 画像圧縮方法、その復元方法及びそのプログラム
US20030160981A1 (en) Recognizing the content of device ready bits
JP2003046784A (ja) 画像符号化装置、画像符号化方法、プログラム及び該プログラムを記録した記録媒体
GB2305277A (en) A lossy data compression method
EP0896295A2 (en) Character recognition method and system
JPH11136525A (ja) 画像処理装置及び方法
JPH0411907B2 (ja)
JPH11284518A (ja) 前処理付きデータ圧縮方法および圧縮データの伸長方法

Legal Events

Date Code Title Description
A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20031224

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20040105

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040322

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040420

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040716

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040816

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20040816

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20040917