JPH09269875A - Data compression/expansion method for page printer - Google Patents

Data compression/expansion method for page printer

Info

Publication number
JPH09269875A
JPH09269875A JP8078670A JP7867096A JPH09269875A JP H09269875 A JPH09269875 A JP H09269875A JP 8078670 A JP8078670 A JP 8078670A JP 7867096 A JP7867096 A JP 7867096A JP H09269875 A JPH09269875 A JP H09269875A
Authority
JP
Japan
Prior art keywords
data
unit
block
white
compression
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP8078670A
Other languages
Japanese (ja)
Other versions
JP3611921B2 (en
Inventor
Mutsuo Shitamae
睦夫 下前
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP07867096A priority Critical patent/JP3611921B2/en
Publication of JPH09269875A publication Critical patent/JPH09269875A/en
Application granted granted Critical
Publication of JP3611921B2 publication Critical patent/JP3611921B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To reduce the number of access times for a memory bus and to efficiently execute the expansion processing of compressed data by rasterizing document data in the block unit of a prescribed size and checking whether data of respective blocks are all white or not. SOLUTION: When CPU resterizes a PS file with a function as a PS interpreter 21, it checks whether data of one unit is all white dots or not. When they are all white, the white map table WMT of a compression memory 23 is directly set to NULL without using a compression part 22. If even only one black dot exists, the compression part 22 executes a compression processing for respective block words BW constituting the unit. An expansion part 25 reads the unit record of WMT. When data is all '0', it shows that the unit has all white dots. When data is '0', the reading and expansion processing of compressed data is not executed on BW.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】この発明は、白黒およびカラ
ーのレーザプリンタ,LEDプリンタ等のページプリン
タ(デジタル複写機のプリンタ部も含む)におけるデー
タ圧縮・伸長処理方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data compression / expansion processing method for a page printer (including a printer section of a digital copying machine) such as a monochrome or color laser printer or LED printer.

【0002】[0002]

【従来の技術】近年、レーザプリンタ等のページプリン
タの解像度は益々高くなり、最近では600DPIが主
流になっている。今後は800DPIや1200DPI
のプリンタが出現するであろうし、マルチ・リゾリュー
ション・プリンタ、すなわちエミュレーションに応じて
エンジンの解像度が変化するプリンタも増えてくるであ
ろう。
2. Description of the Related Art In recent years, the resolution of page printers such as laser printers has become increasingly higher, and recently 600 DPI has become mainstream. In the future, 800 DPI and 1200 DPI
Printers will emerge, and more multi-resolution printers, i.e., printers whose engine resolution changes in response to emulation, will also increase.

【0003】しかし、ページプリンタ内の1ページ分の
ビットマップデータを展開するフレームバッファのメモ
リ容量は、A4,600DPIで約4MB、A3,60
0DPIでは約8MBになる。このようなフレームバッ
ファのメモリ容量の増加は、製品価格に大きな影響を与
える。一方、ページプリンタの価格は逆に低価格へと推
移しているため、高解像度化に伴う価格上昇をなんらか
の手段で抑えなければならない。
However, the memory capacity of a frame buffer for developing bitmap data for one page in a page printer is about 4 MB at A4,600 DPI, and A3,60.
At 0 DPI it is about 8 MB. Such an increase in the memory capacity of the frame buffer greatly affects the product price. On the other hand, since the price of the page printer has been changing to a low price, it is necessary to suppress the price increase accompanying the high resolution by some means.

【0004】そのための2値画像データの可逆圧縮技術
には、ファクシミリ等で用いられるMH(ハフマン符号
化方式:一次元圧縮法によるG3ファクシミリの標準符
号化方式),MR(二次元圧縮法によるG3ファクシミ
リではオプションの符号化方式),MMR(MR符号化
方式の変形で、G4ファクシミリの標準符号化方式)
や、コンピュータで扱うテキストファイルやバイナリフ
ァイルに用いられる、例えばLZ方式の圧縮等がある。
また、最近では国際標準である算術符号化を用いたJB
IG方式もある。
For this purpose, lossless compression techniques for binary image data include MH (Huffman coding: a standard G3 facsimile coding method using a one-dimensional compression method) and MR (G3 using a two-dimensional compression method) used in facsimile and the like. Optional coding method for facsimile), MMR (standard coding method for G4 facsimile, which is a modification of MR coding method)
For example, there is LZ compression used for text files and binary files handled by a computer.
Recently, JB using the international standard arithmetic coding
There is also an IG method.

【0005】[0005]

【発明が解決しようとする課題】しかしながら、これら
の2値画像データ圧縮技術は、画像あるいはファイルの
先頭から順番に逐次符号化処理を行なうので、所望の任
意ブロックだけをリアルタイムに復元することはできな
い。
However, in these binary image data compression techniques, since an encoding process is performed sequentially from the head of an image or a file, only a desired arbitrary block cannot be restored in real time. .

【0006】ページプリンタでは、印刷すべき文書情報
がコンピュータのCRT上で実際に作成された順番にく
るため、ある大きさのブロック単位で圧縮処理を施さな
ければならない。従って、上記圧縮技術をそのまま使用
することはできない。また、2値画像データの固定長可
逆圧縮技術は世の中に存在しない。従って、対象とする
画像データによっては、所望の容量に圧縮できない場合
がある。
In a page printer, document information to be printed comes in the order in which it is actually created on a CRT of a computer, so that a compression process must be performed in block units of a certain size. Therefore, the above compression technique cannot be used as it is. There is no fixed-length lossless compression technology for binary image data in the world. Therefore, depending on the target image data, it may not be possible to compress it to a desired capacity.

【0007】そこで、本発明者等は先に、ページプリン
タにおいて印刷すべき文書データを所定の解像度にラス
タライズし、そのラスタライズされたデータに対して所
定の大きさのブロック単位で可変長可逆圧縮処理を施
し、その各圧縮コードを圧縮メモリに格納すると共に、
主走査方向又は副走査方向に連続する複数のブロックに
よって構成されるユニットが全て白データの場合には特
定コードを圧縮メモリに格納し、該圧縮メモリへの1ペ
ージ分あるいはそれを複数に分割したデータの圧縮コー
ドの格納が完了した後、その圧縮コードを伸長してプリ
ンタエンジンにビデオ信号を出力する画像データの圧縮
・伸長方法を発明した。
Therefore, the inventors of the present invention first rasterize document data to be printed in a page printer to a predetermined resolution, and perform variable length lossless compression processing on the rasterized data in block units of a predetermined size. And store each compressed code in the compressed memory,
When all the units formed by a plurality of blocks continuous in the main scanning direction or the sub scanning direction are white data, the specific code is stored in the compression memory, and one page to the compression memory or a plurality of the divided data are divided. The present invention invented a method for compressing / decompressing image data in which the compressed code of data is stored and then the compressed code is expanded to output a video signal to the printer engine.

【0008】さらに、その圧縮コードを伸長する際、上
記ユニット単位で上記特定コードの有無を判別し、該特
定コードがあると判別したときには、そのユニットの圧
縮コードに対して読み出し及び伸長を行なわず、直接全
白データをプリンタエンジンへ転送するようにした画像
データの圧縮・伸長方法も発明した。
Further, when decompressing the compressed code, the presence / absence of the specific code is discriminated for each unit, and when it is determined that the specific code is present, the compressed code of the unit is not read or decompressed. The inventor also invented a method for compressing / decompressing image data in which all white data is directly transferred to a printer engine.

【0009】このようにすれば、ページプリンタにおい
て、ラスタライズされた印刷用データを格納するフレー
ムバッファのメモリ容量を大幅に削減でき、高解像度の
ページプリンタを安価に提供できるようになる。しか
も、1ユニット内が全て白データであるときには、その
ユニットのデータを読み出さないので、1ユニット内の
各ブロック分のメモリアクセスを削減できるため、圧縮
コードの伸長処理を効率良く行なえる。
With this arrangement, the page printer can greatly reduce the memory capacity of the frame buffer for storing the rasterized print data, and a high-resolution page printer can be provided at a low cost. Moreover, when all the data in one unit is white data, the data of that unit is not read out, so that the memory access for each block in one unit can be reduced, so that the decompression process of the compressed code can be efficiently performed.

【0010】しかしながら、表計算アプリケーションに
よる印字等のように罫線の多い画像の場合には、殆ど白
となる部分が多く存在するにもかかわらず、極く一部に
黒データが存在するために、1ユニット内の各ブロック
の圧縮コードを全て読み出して伸長処理をすることにな
るため、メモリバスのアクセスが多く、処理効率を充分
高めることができないという問題があった。この発明は
このような問題を解決して、ラスタライズ後に圧縮され
てメモリに格納された印刷用データを伸長(解凍ともい
う)して、プリンタエンジンにビデオ信号を出力する処
理を、より効率よく行なえるようにすることを目的とす
る。
However, in the case of an image having a lot of ruled lines such as printing by a spreadsheet application, black data exists in a very small part even though there are many white parts. Since all the compressed codes of each block in one unit are read out and decompressed, there is a problem that the memory bus is frequently accessed and the processing efficiency cannot be sufficiently improved. The present invention solves such a problem, and more efficiently performs the process of decompressing (also referred to as decompressing) the print data compressed after rasterization and stored in the memory, and outputting the video signal to the printer engine. The purpose is to do so.

【0011】[0011]

【課題を解決するための手段】この発明によるデータ圧
縮・伸長処理方法は、上記の目的を達成するため、ペー
ジプリンタにおいて、印刷すべき文書データを所定の大
きさのブロック単位でラスタライズし、そのラスタライ
ズされたデータに対して上記ブロック単位で可変長可逆
圧縮処理を施して、その圧縮コードを圧縮メモリに格納
すると共に、主走査方向又は副走査方向に連続する複数
のブロックによって構成されるユニット毎に、そのユニ
ットを構成する各ブロックのデータがそれぞれ全白であ
るかどうかをチェックして、その結果を各ブロックのス
テータス情報として上記圧縮メモリに保存する。
In order to achieve the above object, a data compression / decompression processing method according to the present invention rasterizes document data to be printed in block units of a predetermined size in a page printer, and Variable length lossless compression is applied to the rasterized data in block units, the compression code is stored in the compression memory, and each unit is composed of a plurality of blocks continuous in the main scanning direction or the sub scanning direction. Then, it is checked whether the data of each block constituting the unit is all white, and the result is stored in the compression memory as status information of each block.

【0012】そして、圧縮メモリへの1ページ分あるい
はそれを複数に分割したデータの圧縮コードの格納が完
了した後、圧縮メモリ格納された各ユニットのブロック
毎の圧縮コードを読み出して伸長し、ビデオデータをプ
リンタエンジンへ転送する際に、上記ユニット単位で保
存された各ブロックのステータス情報を読み込んで、該
ステータス情報が全白を示すブロックの圧縮コードに対
しては読み出し及び伸長処理を行なわず、直接全白デー
タをプリンタエンジンへ送出することを特徴とする。
After the compression code of one page or the data obtained by dividing the compression code into a plurality of pieces has been stored in the compression memory, the compression code for each block of each unit stored in the compression memory is read out and decompressed. When the data is transferred to the printer engine, the status information of each block stored in the unit is read, and the compression code of the block in which the status information indicates all white is not read and expanded, The feature is that all white data is directly sent to the printer engine.

【0013】また、次のようなページプリンタにおける
データ圧縮・伸長方法も提供する。主走査方向にtドッ
トで構成されるブロックと、主走査方向あるいは副走査
方向にuブロックで構成されるユニットの2つの基本単
位を用い、印刷すべき文書データを1ページ分ずつラス
タライズするために必要なページバッファを前記ユニッ
ト単位に分割する。その分割した各ユニットのデータが
全て白であるかどうかをチェックし、その結果をmビッ
トのホワイトマップテーブル(WMT)に保存する。
Further, the following data compression / decompression method for a page printer is also provided. In order to rasterize the document data to be printed page by page using two basic units, a block composed of t dots in the main scanning direction and a unit composed of u blocks in the main scanning direction or the sub scanning direction. The necessary page buffer is divided into units. It is checked whether the data of each divided unit are all white, and the result is stored in the m-bit white map table (WMT).

【0014】そして、1ユニットのデータが全て白でな
い場合には、該ユニットを構成するブロック毎にそのデ
ータが全白であるかどうかをチェックして、その結果を
ホワイトマップテーブル(WMT)に各ブロックのステ
ータス情報として保存すると共に、上記ホワイトマップ
テーブル(WMT)にアドレスを格納して、そのアドレ
スで指定される領域に圧縮データテーブル(CDT)を
用意して、各ブロック毎にそのデータに対して可変長可
逆圧縮処理を施し、その圧縮コードを圧縮データレコー
ド(CDR)として格納する。
If the data of one unit is not all white, it is checked for each block that constitutes the unit whether the data is all white, and the result is stored in the white map table (WMT). In addition to saving as block status information, an address is stored in the white map table (WMT), a compressed data table (CDT) is prepared in an area designated by the address, and the data is stored for each block. Variable length lossless compression processing is performed, and the compression code is stored as a compressed data record (CDR).

【0015】上記ブロック毎の圧縮処理が不可能な場合
には、上記圧縮データテーブルで指定されるアドレス領
域にtビットの非圧縮データテーブル(UDT)を用意
して、該ブロックのデータをそのまま格納する。このよ
うにして、1ページ分のデータを格納した後、上記圧縮
データテーブル(CDT)に格納された各ユニットのブ
ロック毎の圧縮コードを読み出して伸長し、ビデオデー
タをプリンタエンジンへ転送する際に、上記ユニット単
位でホワイトマップテーブル(WMT)の各ブロックの
ステータス情報を読み込んで、該ステータス情報が全白
を示すブロックの圧縮コードに対しては読み出し及び伸
長処理を行なわず、直接tドットの全白データをプリン
タエンジンへ送出する。
When the compression processing for each block is impossible, a t-bit uncompressed data table (UDT) is prepared in the address area designated by the compressed data table, and the data of the block is stored as it is. To do. In this way, after storing one page of data, the compression code for each block of each unit stored in the compressed data table (CDT) is read and decompressed, and the video data is transferred to the printer engine. , The status information of each block of the white map table (WMT) is read in units of the above units, and the compression code of the block whose status information indicates all white is not read and decompressed, and all t dots are directly read. Send white data to the printer engine.

【0016】このようにすることにより、データが全白
のブロックについては圧縮コードの読み出し及び伸長、
さらにその伸長データのビデオバッファへの転送を行な
わないので、メモリバスのアクセス回数を削減でき、圧
縮データの伸長(解凍)処理を効率よく行なうことがで
きる。
By doing so, the compression code is read out and decompressed for the block whose data is all white,
Further, since the decompressed data is not transferred to the video buffer, the number of accesses to the memory bus can be reduced and the decompression (decompression) process of the compressed data can be efficiently performed.

【0017】[0017]

【発明の実施の形態】以下、この発明の実施の形態を図
面に基づいて具体的に説明する。図2はこの発明による
ページプリンタを用いた画像形成システムの構成例を示
す図であり、100はパーソナルコンピュータ、200
がページプリンタである。通常、ユーザはパーソナルコ
ンピュータ100のCRT画面とキーボードとDTP
(デスクトップ・パブリッシング)アプリケーションを
使って文書を作成し、プリンタドライバ101を通して
ページプリンタ200に転送して印刷を行なう。
Embodiments of the present invention will be specifically described below with reference to the drawings. FIG. 2 is a diagram showing a configuration example of an image forming system using a page printer according to the present invention, in which 100 is a personal computer and 200
Is a page printer. Usually, the user operates the CRT screen, keyboard and DTP of the personal computer 100.
(Desktop Publishing) A document is created using an application, transferred to the page printer 200 through the printer driver 101, and printed.

【0018】プリンタドライバ101は、通常印刷すべ
き文書内容をページプリンタ200がサポートするプリ
ンタ言語、例えばヒューレット・パッカード(HP)社
のPCLやAdobe社のポストスクリプト言語等にコ
ンバートする。前者に接続されたプリンタを一般にPC
Lエミュレーション・プリンタ、後者に接続されたプリ
ンタをポストスクリプト・プリンタと呼ぶ。また、パー
ソナルコンピュータ100側で全てラスタライズされた
ビットイメージを印刷するだけのダムプリンタと呼ばれ
るプリンタもある。
The printer driver 101 converts the content of a document to be printed normally into a printer language supported by the page printer 200, such as PCL of Hewlett-Packard (HP) or Postscript language of Adobe. The printer connected to the former is generally connected to a PC.
The L emulation printer and the printer connected to the L emulation printer are called PostScript printers. There is also a printer called a dumb printer which simply prints a bit image which is entirely rasterized on the personal computer 100 side.

【0019】ページプリンタ200としては、レーザプ
リンタやインクジェットプリンタ、あるいはサーマルプ
リンタ等があるが、高速印刷という点でレーザプリンタ
が勝る。最近はカラーのレーザプリンタも市場に出始め
ており、それを使用することも可能である。また、解像
度は年々高まる一方で、現在は600DPIが標準とな
っている。以下の実施例では、ページプリンタ200を
600DPIの白黒ポストスクリプト・レーザプリンタ
(以下単に「ページプリンタ」と称する)として説明す
るが、この発明はそれに限定されるものではない。
The page printer 200 may be a laser printer, an ink jet printer, a thermal printer, or the like, but the laser printer is superior in terms of high speed printing. Recently, a color laser printer has begun to appear on the market, and it is also possible to use it. Further, while the resolution is increasing year by year, 600 DPI is currently the standard. In the following embodiments, the page printer 200 will be described as a 600 DPI black and white PostScript laser printer (hereinafter simply referred to as “page printer”), but the present invention is not limited to this.

【0020】図3はそのページプリンタの外観図であ
り、図4はその内部機構の概略を示す縦断面図である。
このページプリンタ200は、給紙トレイ2を着脱可能
に備え、上部に第1排紙スタッカ3を設け、後部に第2
排紙スタッカ4を設けている。2個の排紙スタッカ3,
4への排紙は切換爪5によって切換え可能である。通常
は、排紙スタッカとして第1排紙スタッカ3が選択され
るが、封筒や葉書などのカールし易い紙を使用する場合
など、特別な場合に第2排紙スタッカ4が選択される。
FIG. 3 is an external view of the page printer, and FIG. 4 is a vertical sectional view showing the outline of the internal mechanism.
The page printer 200 has a paper feed tray 2 detachably provided, a first paper output stacker 3 provided at an upper portion, and a second paper output stacker 3 provided at a rear portion.
A discharge stacker 4 is provided. 2 paper output stackers 3,
4 can be switched by the switching claw 5. Normally, the first discharge stacker 3 is selected as the discharge stacker. However, the second discharge stacker 4 is selected in a special case such as when using easily curlable paper such as an envelope or a postcard.

【0021】さらに、内部にはプリンタエンジンの作像
部を構成する感光体ドラム10,帯電部11,光書込部
12,現像部13,転写部14,定着部15と、給紙ロ
ーラ16及びレジストローラ対17等による給紙部と、
搬送ローラとペーパガイド板等からなる排紙用搬送部1
8と、このページプリンタ全体を制御するプリンタコン
トローラを構成するコントローラ基板19及びプリンタ
エンジンのシーケンスコントローラを構成するエンジン
ドライバ基板20等が設けられている。
Further, inside thereof, a photosensitive drum 10, a charging unit 11, an optical writing unit 12, a developing unit 13, a transfer unit 14, a fixing unit 15, which constitute an image forming unit of a printer engine, a paper feed roller 16 and A paper feed section using a pair of registration rollers 17, etc.,
Paper discharge transport unit 1 composed of transport rollers and paper guide plates
8 and a controller board 19 constituting a printer controller for controlling the entire page printer, an engine driver board 20 constituting a sequence controller of the printer engine, and the like.

【0022】そして、プリンタエンジンのシーケンスコ
ントローラによりプリントシーケンスが開始されると、
給紙ローラ16によって給紙トレイ2から給紙を始め、
その用紙の先端をレジストローラ対17に突き当てた状
態で一時停止させる。一方、感光体ドラム10は図4の
矢印A方向へ回転し、帯電部11で帯電された表面に、
光書込部12によってプリンタコントローラからの画像
データに応じて変調されたレーザビームを、ドラム軸方
向に主走査しながら照射して露光し、感光体ドラム10
の表面に静電潜像を形成する。
When the print sequence is started by the sequence controller of the printer engine,
Paper is fed from the paper feed tray 2 by the paper feed roller 16,
The sheet is temporarily stopped in a state where the leading end of the sheet abuts against the pair of registration rollers 17. On the other hand, the photosensitive drum 10 rotates in the direction of arrow A in FIG. 4, and the surface charged by the charging unit 11 is
A laser beam modulated by the optical writing unit 12 according to the image data from the printer controller is irradiated while performing main scanning in the drum axis direction to be exposed, and the photosensitive drum 10 is exposed.
To form an electrostatic latent image on the surface of.

【0023】それを現像部13でトナーによって現像
し、レジストローラ対17によって所定のタイミングで
給送される用紙に転写部14において転写し、定着部1
5で加熱定着したプリント紙を第2排紙スタッカ4へ送
出するか、排紙用搬送部18を通して上部の第1排紙ス
タッカ3へ搬送する。
The developing unit 13 develops it with toner, and the registration roller pair 17 transfers it to a sheet fed at a predetermined timing by the transfer unit 14, and the fixing unit 1
The print paper heated and fixed in step 5 is sent to the second discharge stacker 4 or is conveyed to the first discharge stacker 3 above through the discharge conveyance section 18.

【0024】図5はコントローラ基板19の内部ブロッ
ク図である。このコントローラ基板19は、CPU20
1,NVRAM203,プログラムROM204,フォ
ントROM205,RAM206,及び4個のインタフ
ェース(以下「I/F」と略称する)207,209,
211,213と、これらを接続するバスライン215
によって構成されている。
FIG. 5 is an internal block diagram of the controller board 19. This controller board 19 has a CPU 20.
1, NVRAM 203, program ROM 204, font ROM 205, RAM 206, and four interfaces (hereinafter abbreviated as “I / F”) 207, 209,
211 and 213 and a bus line 215 connecting them
It is constituted by.

【0025】CPU201は、プログラムROM204
に格納されたプログラム、操作パネル210からのモー
ド指示、ホスト装置であるパーソナルコンピュータ(パ
ソコン)100からのコマンド等によって、このコント
ローラ全体を制御する。また、挿着されたICカード2
02から、フォントデータやプログラム等を取り込むこ
ともできる。この発明によるデータ圧縮・伸長処理もこ
のCPU201による制御のもとでなされる。NVRA
M203は、操作パネル210からのモード指示の内容
などを記憶しておく不揮発性メモリである。
The CPU 201 is a program ROM 204.
The controller is controlled by a program stored in the controller, a mode instruction from the operation panel 210, a command from a personal computer (personal computer) 100 as a host device, and the like. In addition, the inserted IC card 2
From 02, font data and programs can be imported. The data compression / decompression processing according to the present invention is also performed under the control of the CPU 201. NVRA
M203 is a non-volatile memory that stores the contents of the mode instruction from the operation panel 210.

【0026】プログラムROM204は、このコントロ
ーラの制御プログラムを格納している読出し専用メモリ
である。フォントROM205は、文字フォントのパタ
ーンデータなどを記憶する。RAM206は、CPU2
01のワークメモリ,入力データのインプットバッフ
ァ,プリントデータのページメモリ(フレームバッフ
ァ),ビデオバッファ,ダウンロードフォント用のメモ
リ等に使用するランダムアクセス・メモリである。
The program ROM 204 is a read-only memory that stores a control program for this controller. The font ROM 205 stores character font pattern data and the like. RAM206 is CPU2
No. 01 is a random access memory used as a work memory, an input buffer for input data, a page memory (frame buffer) for print data, a video buffer, a memory for downloaded fonts, and the like.

【0027】エンジンI/F207は、実際に印刷を行
なうプリンタエンジン208と接続されて、コマンド及
びステータスや印字データの通信を行なうインタフェー
スである。パネルI/F209は、操作パネル210と
接続されて、コマンド及びステータスの通信を行なうイ
ンタフェースであり、操作パネル210は、使用者に現
在のプリンタの状態を表示して知らせたり、使用者がモ
ード指示を行なったりするパネル装置である。
The engine I / F 207 is an interface that is connected to a printer engine 208 that actually performs printing and that communicates commands, status, and print data. A panel I / F 209 is an interface that is connected to the operation panel 210 and communicates commands and status. The operation panel 210 displays and informs the user of the current status of the printer, and allows the user to specify the mode. Panel device.

【0028】ホストI/F211は、ホスト装置である
パーソナルコンピュータ100と通信を行なうインタフ
ェースであり、通常はセントロニクスI/FやRS23
2Cを使用する。ディスクI/F213は、ディスク装
置214と通信を行なうためのディスクインタフェース
である。ディスク装置214は、フォントデータやプロ
グラム、あるいは印字データなどの種々のデータを記憶
しておくための外部記憶装置であり、フロッピディスク
装置やハードディスク装置などである。
The host I / F 211 is an interface for communicating with the personal computer 100 which is a host device, and is usually a Centronics I / F or RS23.
Use 2C. The disk I / F 213 is a disk interface for communicating with the disk device 214. The disk device 214 is an external storage device for storing various data such as font data, programs, and print data, and is a floppy disk device, a hard disk device, or the like.

【0029】次に、このページプリンタ200によるペ
ージ印刷の動作について説明する。図1は、図5に示し
たコントローラ基板19及び600DPIのプリンタエ
ンジン208による、ページ印刷の処理に係わる部分の
機能構成を示すブロック図である。そのPSインタープ
リタ21と圧縮部22及び伸長部25は、図5のCPU
201等による機能、圧縮メモリ23と非圧縮メモリ2
4はRAM206のメモリ領域、ビデオ出力部27はエ
ンジンI/F207の機能をそれぞれ示している。
Next, the page printing operation of the page printer 200 will be described. FIG. 1 is a block diagram showing a functional configuration of a part related to page printing processing by the controller board 19 and the printer engine 208 of 600 DPI shown in FIG. The PS interpreter 21, the compression unit 22 and the decompression unit 25 are the CPU of FIG.
Functions such as 201, compressed memory 23 and uncompressed memory 2
Reference numeral 4 indicates the memory area of the RAM 206, and the video output unit 27 indicates the function of the engine I / F 207.

【0030】図6は、この発明によるデータ圧縮・伸長
方法により1ページ分の印刷を行なう際の動作フロー図
である。そこで、この図6のフローに沿って、図1を参
照しながらページ印刷の動作を説明する。図2に示した
パーソナルコンピュータ100内のプリンタドライバ1
01が、印刷すべき文書データをページ毎にポストスク
リプト(以下、PSと記す)ファイルに変換してページ
プリンタ200へ送る。
FIG. 6 is an operation flow chart when printing one page by the data compression / decompression method according to the present invention. Therefore, along with the flow of FIG. 6, the page printing operation will be described with reference to FIG. Printer driver 1 in personal computer 100 shown in FIG.
01 converts the document data to be printed page by page into a Postscript (hereinafter referred to as PS) file and sends it to the page printer 200.

【0031】ページプリンタ200がそのPSファイル
を受信すると、図1に示したPSインタープリタ21
が、それをプリンタエンジン208の性能による印刷の
解像度と同じ600DPIの解像度であるで、ある大き
さのブロック単位でラスタライズし、そのラスタライズ
したデータに対して、圧縮部22がそのブロック単位で
可変長可逆圧縮処理を試みる。このブロック単位につい
ては追って詳述する。
When the page printer 200 receives the PS file, the PS interpreter 21 shown in FIG.
However, it has a resolution of 600 DPI, which is the same as the printing resolution due to the performance of the printer engine 208, and rasterizes it in block units of a certain size, and the compression unit 22 has a variable length in block units for the rasterized data. Attempt lossless compression processing. This block unit will be described later in detail.

【0032】そして圧縮できれば、その結果の圧縮コー
ドを圧縮メモリ23へストアする。この圧縮メモリ23
は、300DPIで1ページ分に相当する容量を持つペ
ージメモリで、図5に示したRAM206のメモリ領域
を使用する。圧縮できなかったら、ラスタライズされた
600DPIのデータを非圧縮メモリ24へストアす
る。実際には、この非圧縮メモリ24は圧縮メモリ23
を兼用することができるので、RAM206のメモリ容
量を増加させる必要はない。なお、この圧縮メモリ23
と非圧縮メモリ24を含むページメモリは、その1ペー
ジ分の領域をN個に分割した各領域に、上記圧縮コード
及び非圧縮のデータを順次格納していくようにしてもよ
い。
If compression is possible, the resulting compressed code is stored in the compression memory 23. This compression memory 23
Is a page memory having a capacity equivalent to one page at 300 DPI, and uses the memory area of the RAM 206 shown in FIG. If the data cannot be compressed, the rasterized data of 600 DPI is stored in the non-compressed memory 24. In practice, the uncompressed memory 24 is
Therefore, it is not necessary to increase the memory capacity of the RAM 206. The compression memory 23
In the page memory including the uncompressed memory 24 and the uncompressed memory 24, the compressed code and uncompressed data may be sequentially stored in each area obtained by dividing the area for one page into N areas.

【0033】1ページ分の処理が終了したら、圧縮画像
の伸長及びビデオ信号出力を行なう。すなわち、圧縮メ
モリ23へストアした圧縮コードをページの左上から順
番に伸長部25で伸長(解凍処理ともいう)し、600
DPIの画像データに復元して、ビデオ出力部27内の
ビデオバッファ(フレームメモリ)にビットマップ展開
する。非圧縮メモリ24にストアした600DPIの非
圧縮画像データは、そのままビデオバッフアの後述する
圧縮データテーブル(CDT)によって指定されたアド
レスに展開する。
When the processing for one page is completed, the compressed image is expanded and the video signal is output. That is, the compression code stored in the compression memory 23 is decompressed (also referred to as decompression processing) by the decompression unit 25 in order from the upper left of the page, and 600
The image data is restored to the DPI image data, and is developed into a bitmap in a video buffer (frame memory) in the video output unit 27. The uncompressed image data of 600 DPI stored in the uncompressed memory 24 is directly expanded to an address specified by a compressed data table (CDT) of the video buffer, which will be described later.

【0034】そして、このビデオバッファに展開された
画像データを、ビデオ出力部27がシリアルなビデオ信
号として、プリンタエンジン208へ送出して印刷させ
る。このときのビデオ出力部27内のビデオバッファ
は、図5のRAM206あるいは別のメモリに確保した
1ページ分のフレームメモリ領域を使用する。その具体
例は後述する。あるいは1ページ分のフレームメモリの
1/Nの大きさのメモリ領域を使用し、1ページ分の画
像データの展開およびそれによるビデオ信号の出力をN
回に分けて行なうこともできる。
Then, the video output unit 27 sends the image data expanded in the video buffer as a serial video signal to the printer engine 208 for printing. At this time, the video buffer in the video output unit 27 uses the frame memory area for one page secured in the RAM 206 of FIG. 5 or another memory. A specific example will be described later. Alternatively, the memory area of 1 / N of the frame memory for one page is used to expand the image data for one page and output the video signal by N.
It can also be done in batches.

【0035】次に、図1及び図6によって説明したブロ
ック単位の可変長可逆圧縮処理の詳細について図7乃至
図14を参照して説明する。PSファイルをラスタライ
ズするデータのブロック単位を、図7に示すようにtド
ット(dot) のブロックワードBWとする。そして、図7
の(a)又は(b)に示すように、このtドット(dot)
のブロックワードBWが主走査方向(a)あるいは副走
査方向(b)にu個分連続して1ユニット(unit)を構成
している。すなわち、1ユニット(unit)=u*BWであ
る。
Next, details of the variable length lossless compression processing in block units described with reference to FIGS. 1 and 6 will be described with reference to FIGS. 7 to 14. A block unit of data for rasterizing a PS file is a block word BW of t dots as shown in FIG. And FIG.
As shown in (a) or (b) of this t dot (dot)
The block words BW of are continuously formed by u in the main scanning direction (a) or the sub scanning direction (b) to form one unit. That is, 1 unit = u * BW.

【0036】そして、図5に示したCPU201は、図
1のPSインタープリタ21としての機能によってPS
ファイルをラスタライズ(描画)した際、その1ユニッ
トのデータが全て白ドットか否かを調べ、全て白の場合
には圧縮部22を使用せずに直接圧縮メモリ23のホワ
イトマップテーブルWMTをNULL(2xffffffff)に
する。黒ドットが1つでもあると、そのユニットを構成
する各ブロックワードBW毎に、圧縮部22に圧縮処理
を行なわせる。
Then, the CPU 201 shown in FIG. 5 has the function of the PS interpreter 21 of FIG.
When the file is rasterized (drawn), it is checked whether or not the data of one unit is all white dots. If all the data is white, the compression unit 22 is not used and the white map table WMT of the compression memory 23 is directly set to NULL ( 2xffffffff). If there is even one black dot, the compression unit 22 is caused to perform compression processing for each block word BW that constitutes that unit.

【0037】図8はそのブロックワードBW及びユニッ
トの具体例を示し、PSファイルをラスタライズしたデ
ータに対して、64ドット(dot) の白ドット及び/又は
黒ドットからなるブロックワードBWの8(line)分を1
ユニットとする。すなわち、1ユニット(unit)=8*
BW=8*64(dot)とする。
FIG. 8 shows a concrete example of the block word BW and the unit. For the rasterized data of the PS file, 8 (line) of the block word BW consisting of 64 dots (dots) of white dots and / or black dots is shown. ) Minutes
Unit. That is, 1 unit = 8 *
BW = 8 * 64 (dot).

【0038】さらに、各ユニットに対して図9に示すよ
うに、32bit のホワイトマップテーブル(White Ma
p Table:WMT)を用意する。そして、1ユニットの
データが全て白ドットなら、WMTをNULL(0xffff
ffff)とし、もし、黒ドットが1つ以上存在するなら、
図10に示す32bitの圧縮データテーブル(Compress
ion Data Table:CDT)の実アドレス(CDTアド
レス)を格納する。
Furthermore, as shown in FIG. 9, for each unit, a 32-bit white map table (White Ma
p Table: WMT) is prepared. If all the data for one unit is white dots, WMT is set to NULL (0xffff
ffff), and if there is more than one black dot,
The 32-bit compressed data table (Commpress shown in FIG.
The actual address (CDT address) of the ion data table (CDT) is stored.

【0039】なお、CDTアドレスが示すレコードの長
さは、図11に示すように8*CDT=8*32ビット
(bit)=32バイト(byte) とする。CDTは1つの
ブロックワードBWに対応し、後述の圧縮方式を試み
て、もし圧縮可能であったら、図10に示す圧縮データ
テーブルCDTのbit29〜bit0に、その圧縮コードを
格納する。また、もし圧縮不可能であったら、bit31
=1とし、bit30〜bit0に非圧縮時のデータ格納メモ
リアドレス(Uucompression Data TableAddress:UD
Tアドレス)を格納する(図12)。
The length of the record indicated by the CDT address is 8 * CDT = 8 * 32 bits (bit) = 32 bytes as shown in FIG. The CDT corresponds to one block word BW, and if the compression method described later is tried and if compression is possible, the compression code is stored in bits 29 to 0 of the compression data table CDT shown in FIG. Also, if compression is not possible, bit 31
= 1 and the data storage memory address (Uucompression Data Table Address: UD) at the time of non-compression in bit 30 to bit 0
(T address) is stored (FIG. 12).

【0040】ここで使用する圧縮方式は、次に示す2ス
テップからなる。まず始めに、対象となるブロックワー
ドBWが全部白ドットか、全部黒ドットかを調べる。も
し、そうであったらCDTアドレスをそれぞれ、0x0000
0000 又は 0x7fffffffとする。もし、そうでない場合に
は、先頭ドットが白ドットか黒ドットか(図10に示し
たCDTの bit30にて“0”か“1”で指定)に応じ
て、白ドットあるいは黒ドットのランレングスを図13
に示すハフマン・コードで符号化する、いわゆるランレ
ングス圧縮符号化方式で圧縮する。
The compression method used here consists of the following two steps. First, it is checked whether the target block word BW is all white dots or all black dots. If so, set the CDT address to 0x0000
Set to 0000 or 0x7fffffff. If not, depending on whether the first dot is a white dot or a black dot (designated by "0" or "1" in bit 30 of CDT shown in Fig. 10), the run length of the white dot or the black dot Figure 13
The coding is performed by the so-called run length compression coding method in which the Huffman code shown in FIG.

【0041】例えば、図14の(a)に示す64ドット
のブロックワードBWは、同図(b)に示す32ビット
の圧縮コードに変換される。なお、最後の白ドット(ラ
ンレングス=10)は、圧縮コードに含まれないが、最
後の黒ドット(ランレングス=19)の後ろが全て白ド
ットであることから復元が可能である。また、CDTの
余った領域には、1を書き込むようにする。
For example, the 64-dot block word BW shown in FIG. 14A is converted into the 32-bit compressed code shown in FIG. 14B. Note that the last white dot (run length = 10) is not included in the compressed code, but can be restored because all the dots after the last black dot (run length = 19) are white dots. Also, 1 is written in the surplus area of the CDT.

【0042】さらに、この発明によれば、1ユニットの
データが全て白でない場合には、該ユニットを構成する
ブロック毎にそのデータが全白であるかどうかをチェッ
クして、その結果をホワイトマップテーブル(WMT)
に各ブロックのステータス情報として保存する。
Further, according to the present invention, when the data of one unit is not all white, it is checked whether or not the data is white for each block constituting the unit, and the result is white-mapped. Table (WMT)
The status information of each block is saved in.

【0043】そのため、圧縮メモリ23内のホワイトマ
ップテーブル(WMT)において、各ユニット毎に用意
されるユニットレコードに、図15に示すようにCDR
ステータスとしてuビット(この例では上位 8bit)を
確保し、それをユニット内の各BWが全白がどうかを示
すステータス情報のフラグを格納するために使用し、圧
縮データテーブル内のこのユニットの圧縮コード格納領
域を示すCDRアドレスポインタ用には、残りの24ビ
ットを使用する。
Therefore, in the white map table (WMT) in the compression memory 23, the CDR as shown in FIG. 15 is added to the unit record prepared for each unit.
A u bit (upper 8 bits in this example) is reserved as a status, and it is used by each BW in the unit to store a flag of status information indicating whether or not all white is present, and compression of this unit in the compressed data table is performed. The remaining 24 bits are used for the CDR address pointer indicating the code storage area.

【0044】圧縮データテーブルCDTと非圧縮データ
テーブルUDTは64ビット(8バイト)単位以上の大
きさなので、CDT&UDT領域へのアドレスポインタ
は、下位3ビットが必ず“0”となる。そこでホワイト
マップテーブルWMTのユニットレコード内のCDRア
ドレスポインタは下位3ビットを省いた情報にできる。
つまり、アドレスポインタ情報として27ビット使用で
きれば問題はない。
Since the compressed data table CDT and the uncompressed data table UDT have a size of 64 bits (8 bytes) or more, the lower 3 bits of the address pointer to the CDT & UDT area are always "0". Therefore, the CDR address pointer in the unit record of the white map table WMT can be information omitting the lower 3 bits.
That is, there is no problem if 27 bits can be used as the address pointer information.

【0045】この図15に示すユニットレコード内のC
DRステータスは、ホワイトマップテーブルWMTの初
期化時は全て“1”である。そして、その8ビットの各
ビットをそのユニットを構成する各BWにそれぞれ対応
させ、前述のように対象となるBWのデータが全部白ド
ットか全部黒ドットかを調べたとき、全部白ドットであ
ればそのBWに対応するビットをクリアして“0”にす
る。
C in the unit record shown in FIG.
The DR statuses are all "1" when the white map table WMT is initialized. Then, each bit of the 8 bits is made to correspond to each BW constituting the unit, and when it is checked whether the data of the target BW is all white dots or all black dots as described above, it is determined that all white dots are white dots. For example, the bit corresponding to that BW is cleared to "0".

【0046】各ユニットに対する再書き込みにおいて、
圧縮動作前の上記判断で、新規に全白と判断されたブロ
ックワードBWがある場合は、CDRステータス内の対
応するビットをクリアして“0”にする。上記動作にお
いて、CDRステータス内のフラグが全て“0”となっ
た場合は、ユニットレコードのビット内容を全て“0”
にして、CDRに使用していたメモリを解放する。
In rewriting to each unit,
If there is a block word BW newly judged to be all white in the above judgment before the compression operation, the corresponding bit in the CDR status is cleared to "0". In the above operation, when all the flags in the CDR status are "0", all the bit contents of the unit record are "0".
Then, the memory used for the CDR is released.

【0047】次に、図6における「圧縮画像の伸長・ビ
デオ信号出力」の処理について、図16乃至図18によ
って説明する。図16は、図1における圧縮メモリ2
3,非圧縮メモリ24及びビデオバッファのメモリ領域
を有するRAM206と、伸長部25及びビデオ出力部
27と、プリンタエンジン208との関係を模式的に示
すブロック図であり、ビデオ出力部27とプリンタエン
ジン208との間に、図1では図示を省略したFIFO
メモリ28を設けている。29は、伸長(解凍)部25
及びビデオ出力部27からRAM206をアクセスする
ためのメモリバスである。
Next, the process of "decompression of compressed image / output of video signal" in FIG. 6 will be described with reference to FIGS. FIG. 16 shows the compression memory 2 in FIG.
3 is a block diagram schematically showing the relationship among the RAM 206 having the uncompressed memory 24 and the memory area of the video buffer, the decompression unit 25, the video output unit 27, and the printer engine 208. A FIFO, not shown in FIG.
A memory 28 is provided. 29 is a decompression (decompression) unit 25
And a memory bus for accessing the RAM 206 from the video output unit 27.

【0048】図17は、その伸長部25による(実際に
は図5のCPU201によって制御される)圧縮画像の
伸長処理を示すフローチャートである。このフローチャ
ートに従って、図16に示す伸長(解凍)部25による
処理を説明する。
FIG. 17 is a flow chart showing the expansion processing of the compressed image by the expansion unit 25 (actually controlled by the CPU 201 of FIG. 5). The processing by the decompression (decompression) unit 25 shown in FIG. 16 will be described with reference to this flowchart.

【0049】伸長部25はまず、RAM206による第
1の記憶部(WMTやCDR,UCDRが格納されてる
エリア)中のホワイトマップテーブルWMTの前述した
ユニットレコードを読み出す。このデータが全て“0”
の場合は、そのユニット(例:64ドット×8ライン)
が全て白ドットであることを示している。この実施形態
では、伸長部25内に第3の記憶部としてNULL(ヌ
ル)テーブルを設け、その該当する領域にCDRステー
タス情報をコピーして格納する。このNULLテーブル
は、1個のWMTのユニットレコードに対して8ビット
の情報、すなわち8スキャンライン(BW)分の情報を
持つ。
The decompression unit 25 first reads the above-mentioned unit record of the white map table WMT in the first storage unit (area storing WMT, CDR, UCDR) by the RAM 206. This data is all "0"
If, then the unit (eg: 64 dots x 8 lines)
Indicates that all are white dots. In this embodiment, a NULL table is provided as a third storage unit in the decompression unit 25, and the CDR status information is copied and stored in the corresponding area. This NULL table has 8-bit information for one WMT unit record, that is, information for 8 scan lines (BW).

【0050】WMTのユニットレコードの読み出しを1
スキャンライン分行なうと、ラインカウント値をu(こ
の例ではブロックワード数の8)にし、NULLテーブ
ルの該当するビットが“0”か否かをチェックする。そ
して、“0”であればそのBWに対しては、第1の記憶
部からの圧縮データの読み出し及び伸長処理は行なわな
い。該当するビットが“1”のときは、第1の記憶部か
らの圧縮データの読み出し及び伸長処理を行なってその
復元したデータを第2の記憶部であるビデオバッファV
Bに転送する。
Read 1 of WMT unit record
After scanning lines, the line count value is set to u (8 in this example, the number of block words), and it is checked whether or not the corresponding bit in the NULL table is "0". If it is "0", the compressed data is not read from the first storage unit and decompressed for the BW. When the corresponding bit is "1", the compressed data is read from the first storage unit and decompressed, and the restored data is restored to the video buffer V which is the second storage unit.
Transfer to B.

【0051】1スキャンライン(BW)の処理を終了す
ると、ラインカウント値を−1して、ラインカウント値
が0になるまで(この例では8スキャンライン)、順次
各スキャンライン(BW)に対して上述の処理を行な
う。図18に、WMT内のユニットレコードとCDRの
各BWの状態とNULLテーブルとの関連を示す。
When the processing for one scan line (BW) is completed, the line count value is decremented by 1 until the line count value becomes 0 (8 scan lines in this example), sequentially for each scan line (BW). Then, the above processing is performed. FIG. 18 shows the relationship between the unit record in the WMT, the state of each BW in the CDR, and the NULL table.

【0052】(A)はCDRの例である。何らかの黒ド
ットデータが存在するBWを網かけで示している。図示
の例では第2,4,5,7番目のBWに何らかの黒ドッ
トデータが存在し、第1,3,6,8番目のBWは全白
である。(B)は(A)のCDRに対応するユニットレ
コードの内容を示したものであり、各BWにおいて全白
のBWに対応するCDRステータス内のビットが“0”
になっている。1stBW〜8thBWがそれぞれCDRス
テータス内のbit31〜bit24に対応している。
(A) is an example of CDR. BW in which some black dot data is present is shown by shading. In the illustrated example, some black dot data exists in the second, fourth, fifth and seventh BWs, and the first, third, sixth and eighth BWs are all white. (B) shows the contents of the unit record corresponding to the CDR of (A). In each BW, the bit in the CDR status corresponding to the all white BW is "0".
It has become. 1st BW to 8th BW correspond to bits 31 to 24 in the CDR status, respectively.

【0053】(C)はNULLテーブルの例であり、ス
キャンライン方向のXnドットのbit7〜bit0が(B)
のユニットレコード内のCDRステータスのbit31〜b
it24に対応している。したがって、NULLテーブル
30においてこのビットが“0”になっているBWに対
しては、第1の記憶部からの圧縮データの読み出しも伸
長処理も行なわないので、メモリバス29のアクセス回
数を削減でき、処理効率を高めることができる。
(C) is an example of the NULL table, and bit 7 to bit 0 of Xn dots in the scan line direction are (B).
CDR status bits 31 to b in the unit record of
It corresponds to it24. Therefore, since the compressed data is neither read from the first storage unit nor decompressed for the BW whose bit is "0" in the NULL table 30, the number of accesses to the memory bus 29 can be reduced. The processing efficiency can be improved.

【0054】伸長(解凍)処理済みのデータは、第2の
記憶部であるビデオバッファBVに一旦格納されるが、
そのデータ転送を行なわないし、ビデオバッファBVか
らビデオ出力部27へのデータ転送も行なわないので、
メモリバス29のアクセス回数を一層削減できる。
The data that has been decompressed (decompressed) is temporarily stored in the video buffer BV which is the second storage unit.
Since the data transfer is not performed and the data transfer from the video buffer BV to the video output unit 27 is not performed,
The number of accesses to the memory bus 29 can be further reduced.

【0055】図16において、第2の記憶部であるビデ
オバッファVBに格納されたデータは、ビデオ出力部2
7のビデオキュー31及びFIFO28を介してプリン
タエンジン208に送出される。但し、伸長部25のN
ULLテーブルのフラグが“0”になっているBWに対
するデータは、ビデオバッファVBからの読み出しは行
なわず、ビデオ出力部27のビデオキュー31から直接
tドット(この例でき64ドット)の全白データをプリ
ンタエンジン208へ送出する。
In FIG. 16, the data stored in the video buffer VB which is the second storage unit is the video output unit 2
7 is sent to the printer engine 208 via the video queue 31 and the FIFO 28. However, N of the extension part 25
The data for BW whose flag in the ULL table is "0" is not read from the video buffer VB, but is directly output from the video queue 31 of the video output unit 27 as t dot (64 dots in this example) all-white data. To the printer engine 208.

【0056】[0056]

【発明の効果】以上説明してきたように、この発明によ
れば、ページプリンタのメモリ容量を削減して、高解像
度化と低価格化とを可能にすると共に、圧縮データの伸
長(解凍)及びビデオ信号送出の際に、メモリバスのア
クセス回数を大幅に削減して処理効率を高め、パフォー
マンスの向上を計ることができる。
As described above, according to the present invention, it is possible to reduce the memory capacity of the page printer to achieve high resolution and low cost, and to decompress (decompress) and compress compressed data. When sending a video signal, it is possible to significantly reduce the number of accesses to the memory bus, improve processing efficiency, and improve performance.

【図面の簡単な説明】[Brief description of drawings]

【図1】図2乃至図4に示したページプリンタ200に
おけるPSファイルの文書データを印刷するための処理
に係わる部分の機能構成を示すブロック図である。
FIG. 1 is a block diagram showing a functional configuration of a portion related to a process for printing document data of a PS file in page printer 200 shown in FIGS. 2 to 4.

【図2】この発明を適用したページプリンタを用いた画
像形成システムの構成例を示す図である。
FIG. 2 is a diagram showing a configuration example of an image forming system using a page printer to which the present invention is applied.

【図3】図2におけるページプリンタの一例を示す外観
図である。
FIG. 3 is an external view showing an example of the page printer in FIG.

【図4】同じくその内部機構の概略を示す縦断面図であ
る。
FIG. 4 is a longitudinal sectional view showing the outline of the internal mechanism of the same.

【図5】図4におけるコントローラ基板19の構成を示
すブロック図である。
5 is a block diagram showing a configuration of a controller board 19 in FIG.

【図6】図1に示した各部により1ページ分の印刷を行
なう際の動作フロー図である。
6 is an operation flow chart when printing one page by each unit shown in FIG. 1. FIG.

【図7】PSフアイルをラスタライズしたデータの1ユ
ニット(unit)の構成を示す図である。
FIG. 7 is a diagram showing a configuration of one unit of data obtained by rasterizing a PS file.

【図8】同じくそのブロックワードBWのドット数及び
1ユニットのライン数の具体例を示す図である。
FIG. 8 is a diagram similarly showing a specific example of the number of dots of the block word BW and the number of lines of one unit.

【図9】各ユニットに対するホワイトマップテーブル
(WMT)のサイズを示す図である。
FIG. 9 is a diagram showing the size of a white map table (WMT) for each unit.

【図10】図9のWMTに格納する圧縮データテーブル
(CDT)の構成を示す図である。
10 is a diagram showing the configuration of a compressed data table (CDT) stored in the WMT of FIG.

【図11】図10に示したCDTの実アドレス(CDT
アドレス)のレコードの長さを示す図である。
11 is a real address of the CDT shown in FIG. 10 (CDT
3 is a diagram showing the length of a record of (address). FIG.

【図12】非圧縮時のデータ格納メモリアドレス(UD
Tアドレス)をBWに格納する場合の説明図である。
FIG. 12 is a data storage memory address (UD when uncompressed)
It is explanatory drawing in the case of storing T address) in BW.

【図13】白ドットあるいは黒ドットのランレングスを
記述するハフマン・コードの説明図である。
FIG. 13 is an explanatory diagram of a Huffman code that describes a run length of white dots or black dots.

【図14】圧縮コードの変換例を示す図である。FIG. 14 is a diagram showing a conversion example of a compressed code.

【図15】ホワイトマップテーブル(WMT)内のユニ
ットレコードのビット構成を示す図である。
FIG. 15 is a diagram showing a bit configuration of a unit record in a white map table (WMT).

【図16】この発明による図6における圧縮画像の伸長
およびビデオ信号出力の処理に係わる部分の説明に供す
るブロック図である。
16 is a block diagram for explaining a part related to the process of expanding the compressed image and outputting the video signal in FIG. 6 according to the present invention.

【図17】図16に示す伸長部25による圧縮画像の伸
長処理を示すフロー図である。
17 is a flowchart showing a decompression process of a compressed image by the decompression unit 25 shown in FIG.

【図18】WMT内のユニットレコードとCDRの各B
Wの状態とNULLテーブルとの関連を示す図である。
FIG. 18: Unit record in WMT and each B in CDR
It is a figure which shows the relationship between the state of W and a NULL table.

【符号の説明】[Explanation of symbols]

10:感光体ドラム 11:帯電部 12:光書込部 13:現像部 14:転写部 15:定着部 19:コントローラ基板 20:エンジンドライバ基板 21:ポストスクリプト(PS)インタープリタ 22:圧縮部 23:圧縮メモリ 24:非圧縮メモリ 25:伸長部 27:ビデオ出力部 28:FIFOメモリ 29:メモリバス 30:NULLテーブル 31:ビデオキュー 100:パーソナルコンピュータ 101:プリンタドライバ 200:ページプリンタ 201:CPU 206:RAM 208:プリンタエンジン VB:ビデオバッファ 10: Photoconductor drum 11: Charging part 12: Optical writing part 13: Developing part 14: Transfer part 15: Fixing part 19: Controller board 20: Engine driver board 21: Postscript (PS) interpreter 22: Compressing part 23: Compressed memory 24: Non-compressed memory 25: Decompression unit 27: Video output unit 28: FIFO memory 29: Memory bus 30: NULL table 31: Video queue 100: Personal computer 101: Printer driver 200: Page printer 201: CPU 206: RAM 208: Printer engine VB: Video buffer

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 ページプリンタにおいて、印刷すべき文
書データを所定の大きさのブロック単位でラスタライズ
し、そのラスタライズされたデータに対して上記ブロッ
ク単位で可変長可逆圧縮処理を施して、その圧縮コード
を圧縮メモリに格納すると共に、主走査方向又は副走査
方向に連続する複数のブロックによって構成されるユニ
ット毎に、そのユニットを構成する各ブロックのデータ
がそれぞれ全白であるかどうかをチェックして、その結
果を各ブロックのステータス情報として前記圧縮メモリ
に保存し、 上記圧縮メモリへの1ページ分あるいはそれを複数に分
割したデータの圧縮コードの格納が完了した後、 その圧縮メモリに格納された各ユニットのブロック毎の
圧縮コードを読み出して伸長し、ビデオデータをプリン
タエンジンへ転送する際に、上記ユニット単位で保存さ
れた各ブロックのステータス情報を読み込んで、該ステ
ータス情報が全白を示すブロックの圧縮コードに対して
は読み出し及び伸長処理を行なわず、直接全白データを
プリンタエンジンへ送出することを特徴とするデータ圧
縮・伸長方法。
1. A page printer rasterizes document data to be printed in block units of a predetermined size, performs variable length lossless compression processing on the rasterized data in block units, and compresses the compressed code. Is stored in the compression memory, and it is checked whether or not the data of each block constituting the unit is all white, for each unit constituted by a plurality of blocks continuous in the main scanning direction or the sub scanning direction. , The result is stored in the compression memory as status information of each block, and is stored in the compression memory after the compression code of one page or the data obtained by dividing the data into a plurality of pieces is stored in the compression memory. Reads the compressed code for each block of each unit, decompresses it, and transfers the video data to the printer engine. At the time of transmission, the status information of each block stored in the unit unit is read, and the compression code of the block in which the status information shows all white is not read and decompressed, and all white data is directly read. A data compression / decompression method characterized by sending to a printer engine.
【請求項2】 ページプリンタにおいて、主走査方向に
tドットで構成されるブロックと、主走査方向あるいは
副走査方向にuブロックで構成されるユニットの2つの
基本単位を用い、印刷すべき文書データを1ページ分ず
つラスタライズするために必要なページバッファを前記
ユニット単位に分割し、 その分割した各ユニットのデータが全て白であるかどう
かをチェックし、その結果をmビットのホワイトマップ
テーブル(WMT)に保存し、 1ユニットのデータが全て白でない場合には、該ユニッ
トを構成するブロック毎にそのデータが全白であるかど
うかをチェックして、その結果をホワイトマップテーブ
ル(WMT)に各ブロックのステータス情報として保存
すると共に、前記ホワイトマップテーブル(WMT)に
アドレスを格納して、そのアドレスで指定される領域に
圧縮データテーブル(CDT)を用意して、各ブロック
毎にそのデータに対して可変長可逆圧縮処理を施し、そ
の圧縮コードを圧縮データレコード(CDR)として格
納し、 前記ブロック毎の圧縮処理が不可能な場合には、前記圧
縮データテーブル(CDT)で指定されるアドレス領域
にtビットの非圧縮データテーブル(UDT)を用意し
て、該ブロックのデータをそのまま格納することによ
り、1ページ分のデータを格納した後、 前記圧縮データテーブル(CDT)に格納された各ユニ
ットのブロック毎の圧縮コードを読み出して伸長し、ビ
デオデータをプリンタエンジンへ転送する際に、前記ユ
ニット単位で前記ホワイトマップテーブル(WMT)の
各ブロックのステータス情報を読み込んで、該ステータ
ス情報が全白を示すブロックの圧縮コードに対しては読
み出し及び伸長処理を行なわず、直接tドットの全白デ
ータをプリンタエンジンへ送出することを特徴とするデ
ータ圧縮・伸長処理方法。
2. Document data to be printed in a page printer using two basic units, a block composed of t dots in the main scanning direction and a unit composed of u blocks in the main scanning direction or the sub scanning direction. The page buffer required to rasterize each page by one page is divided into the above-mentioned units, and it is checked whether or not the data of each divided unit is all white, and the result is an m-bit white map table (WMT ), And if the data of one unit is not all white, it is checked whether the data is all white for each block that constitutes the unit, and the result is stored in the white map table (WMT). Save as block status information and store address in the white map table (WMT). , A compressed data table (CDT) is prepared in the area designated by the address, variable length lossless compression processing is applied to the data for each block, and the compression code is stored as a compressed data record (CDR). If the compression processing for each block is impossible, a t-bit uncompressed data table (UDT) is prepared in the address area specified by the compressed data table (CDT), and the data of the block is directly used. By storing the data for one page by storing, the compression code for each block of each unit stored in the compressed data table (CDT) is read and decompressed, and the video data is transferred to the printer engine. Read the status information of each block of the white map table (WMT) in units of A data compression / decompression processing method characterized in that t-dot all-white data is directly sent to a printer engine without performing reading and decompression processing on a compression code of a block whose status information indicates all white.
JP07867096A 1996-04-01 1996-04-01 Data compression / decompression method and page printer in page printer Expired - Fee Related JP3611921B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP07867096A JP3611921B2 (en) 1996-04-01 1996-04-01 Data compression / decompression method and page printer in page printer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP07867096A JP3611921B2 (en) 1996-04-01 1996-04-01 Data compression / decompression method and page printer in page printer

Publications (2)

Publication Number Publication Date
JPH09269875A true JPH09269875A (en) 1997-10-14
JP3611921B2 JP3611921B2 (en) 2005-01-19

Family

ID=13668312

Family Applications (1)

Application Number Title Priority Date Filing Date
JP07867096A Expired - Fee Related JP3611921B2 (en) 1996-04-01 1996-04-01 Data compression / decompression method and page printer in page printer

Country Status (1)

Country Link
JP (1) JP3611921B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000270226A (en) * 1999-03-17 2000-09-29 Fuji Xerox Co Ltd Image processor and image processing method
JP2018029275A (en) * 2016-08-18 2018-02-22 コニカミノルタ株式会社 Image processing apparatus, method, and program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000270226A (en) * 1999-03-17 2000-09-29 Fuji Xerox Co Ltd Image processor and image processing method
JP2018029275A (en) * 2016-08-18 2018-02-22 コニカミノルタ株式会社 Image processing apparatus, method, and program

Also Published As

Publication number Publication date
JP3611921B2 (en) 2005-01-19

Similar Documents

Publication Publication Date Title
US5704020A (en) Page printer resolution converting method, and variable-length reversible compression process
US20090147310A1 (en) Image processing method and apparatus for reprinting with a desired binding width having different print settings
US8294914B2 (en) Image forming apparatus and method for changing number of lines in band buffer based on memory size to be required
JP3962606B2 (en) Printing command generation apparatus and method, printing apparatus and control method thereof, information processing apparatus, and printing system
EP0398681A2 (en) Output apparatus
US6310693B1 (en) Printing control apparatus and method, and printing system for reducing processing overhead
JPH08278862A (en) Image output device and image processing method
JP3611921B2 (en) Data compression / decompression method and page printer in page printer
JP3581470B2 (en) Data processing method in page printer and page printer
JP3606985B2 (en) Data compression / decompression method and page printer in page printer
JP3655457B2 (en) Printer control device
JPH09270919A (en) Data compression method in page printer
JPH08307695A (en) Page printer and its data processing method
JPH09252409A (en) Data compression method in page printer
JPH1023272A (en) Data compression method and expansion method in page printer
JPH09248943A (en) Data compressing method for page printer
JPH08307696A (en) Data compression expansion method in page printer
JP3204136B2 (en) Image processing apparatus and compression processing method
JPH08307677A (en) Page printer able to print out multi-value image
JPH06171160A (en) Printing information processor
JPH08307676A (en) Page printer and its image data processing method
JPH0993425A (en) Image forming device
JP3514027B2 (en) Recording device, recording system, image transfer system
JPH11235849A (en) Image processing device, data processing method thereof, and storage medium storing program readable by computer
JP3257902B2 (en) Printing apparatus and data transfer control method for printing apparatus

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A132

Effective date: 20040511

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20041019

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041021

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

Free format text: PAYMENT UNTIL: 20071029

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20081029

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20081029

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091029

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20101029

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20111029

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121029

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20131029

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees