JPH10151815A - Printing-processing apparatus - Google Patents

Printing-processing apparatus

Info

Publication number
JPH10151815A
JPH10151815A JP8312165A JP31216596A JPH10151815A JP H10151815 A JPH10151815 A JP H10151815A JP 8312165 A JP8312165 A JP 8312165A JP 31216596 A JP31216596 A JP 31216596A JP H10151815 A JPH10151815 A JP H10151815A
Authority
JP
Japan
Prior art keywords
data
unit
print
input
scan line
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
JP8312165A
Other languages
Japanese (ja)
Inventor
Yoshinori Wada
義則 和田
Hiroshi Ishikawa
宏 石川
Yuji Onozawa
雄二 小野澤
Noriaki Seki
範顕 関
Tetsuo Kawada
哲郎 河田
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox 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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP8312165A priority Critical patent/JPH10151815A/en
Publication of JPH10151815A publication Critical patent/JPH10151815A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To uniform a burden of each developing processing part and improve efficiency when a plurality of developing processing parts for rasterization are provided to raster scan data in a dispersed manner. SOLUTION: Printing data are input to a generating processing part 3 via a printing data input part 2, and converted to intermediate data which is basically trapezoidal. The intermediate data are input to a plurality of developing processing parts 4 simultaneously. Each developing processing part 4 develops the data to a bit map at a scan line designated by a developing scan line- designating part among areas where the intermediate data are plotted, and stores in a 1/N page buffer 522. When the whole intermediate data are totally developed to the bit map at the whole of the developing processing parts 4, the data are transferred by a read part 6 to an output part 7 and printed.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、プリンタコントロ
ーラのグラフィックス処理などに特に有効な印刷処理装
置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a print processing apparatus which is particularly effective for graphics processing of a printer controller.

【0002】[0002]

【従来の技術】小型、高速のデジタル印刷に適した電子
写真方式のページプリンタの開発に伴い、従来の文字情
報中心の印刷から脱皮した、画像、図形、文字などを同
様に取り扱い、図形、文字等の拡大、回転、変形などが
自由に制御できる記述言語を用いる印刷処理装置が一般
に普及してきた。この記述言語の代表例として、Pos
tScript(米国Adobe Systems社商
標)、Interpress(米国Xerox社商
標)、Acrobat(米国Adobe System
s社商標)、GDI(Graphics Device
Interface、米国Microsoft社商
標)等が知られている。
2. Description of the Related Art With the development of an electrophotographic page printer suitable for small, high-speed digital printing, images, figures, characters, and the like, which have escaped from the conventional printing of mainly character information, are handled in the same manner. 2. Description of the Related Art A printing processing apparatus using a description language in which enlargement, rotation, deformation, and the like of an image can be freely controlled has been widely used. As a representative example of this description language, Pos
tScript (trademark of Adobe Systems, Inc., USA), Interpress (trademark of Xerox, USA), Acrobat (Adobe System, USA)
s company trademark), GDI (Graphics Device)
Interface, a trademark of Microsoft Corporation in the United States) and the like are known.

【0003】記述言語で作成されている印刷データは、
ページ内の任意の位置の画像、図形、文字を表現する描
画命令が任意の順で構成されており、本発明に係わるペ
ージプリンタで印字するためには、印字前に印刷データ
をラスタ化しなければならない。ラスタ化というのは、
ページ又はページの一部を横切る一連の個々のドットま
たは画素へ展開してラスタ走査線を形成し、そのページ
の下へ引き続く走査線を次々に発生する過程である。こ
の画像処理は非常にコストのかかるものであり、どのよ
うにして高速にこの処理を行うかは長年の課題となって
いる。
[0003] Print data created in a description language is:
A drawing command for expressing an image, a figure, and a character at an arbitrary position in a page is configured in an arbitrary order, and in order to print with the page printer according to the present invention, the print data must be rasterized before printing. No. Rasterization is
This is the process of developing a raster scan line by developing it into a series of individual dots or pixels that traverse the page or part of the page, and successively generating successive scan lines below the page. This image processing is very costly, and how to perform this processing at high speed has been a long-standing problem.

【0004】このための一つの手法として、ビットマッ
プデータに展開する処理の並列化技術が提案されてい
る。この先行技術は、特開平6−214555号公報に
開示されている。この先行技術では、中間データを展開
する展開処理手段が複数個設けられ、各々の展開処理手
段は1ページ分の記憶手段を持ち、これらの展開処理手
段に読み出し部が接続する構成を取っている。本先行技
術では、印刷データを解釈して得られる中間データは展
開処理手段の数に分割して各々の展開処理手段に分配さ
れ、各々の展開処理手段は割当てられた中間データのみ
を処理し、記憶手段に展開したビットマップデータを一
時保持する。記憶手段の各ピクセルには優先度データが
記録され、他の記憶手段の優先度データと比較すること
により、各々のピクセルに対しどの記憶手段に格納され
ているデータを用いるべきか決定することができる。読
み出し部はこの記憶手段特定の作業を行い、印刷を行う
ビットマップデータが格納されている記憶手段を切り替
えながら、出力部にビットマップデータを出力する。
[0004] As one technique for this purpose, a technique for parallelizing processing for expanding into bitmap data has been proposed. This prior art is disclosed in JP-A-6-214555. In this prior art, a plurality of decompression processing means for decompressing intermediate data are provided, each decompression processing means has one page of storage means, and a reading unit is connected to these decompression processing means. . In this prior art, the intermediate data obtained by interpreting the print data is divided into the number of expansion processing units and distributed to each expansion processing unit, and each expansion processing unit processes only the assigned intermediate data, The developed bitmap data is temporarily stored in the storage means. Priority data is recorded in each pixel of the storage means, and by comparing with priority data of other storage means, it is possible to determine which storage means to use data stored in for each pixel. it can. The reading unit performs the operation of specifying the storage unit, and outputs the bitmap data to the output unit while switching the storage unit that stores the bitmap data to be printed.

【0005】[0005]

【発明が解決しようとする課題】しかしながら、上述の
先行技術では、各々の中間データはある一つの展開処理
手段に分配されるため、中間データの分配の仕方によっ
てはビットマップデータへの展開に要する計算量に差が
出ることがある。展開処理手段の性能が同一のとき、展
開に要する計算量の差は展開終了時刻の差を生むことに
なり、一つの展開処理手段の展開終了待ちのために他の
展開処理手段がアイドル状態になる恐れが高く、効率的
に並列処理を行うことができない可能性がある。
However, according to the above-mentioned prior art, each intermediate data is distributed to a certain expansion processing means. Therefore, depending on the distribution of the intermediate data, it is necessary to expand the data into bitmap data. There may be a difference in the amount of calculation. When the performance of the expansion processing means is the same, the difference in the amount of calculation required for expansion will cause a difference in the expansion end time, and the other expansion processing means will be in an idle state to wait for the expansion end of one expansion processing means. It is highly likely that parallel processing cannot be performed efficiently.

【0006】また、複数個の記憶手段はそれぞれが1ペ
ージ分のビットマップデータを保持するため、高価なメ
モリを大量に使用するという問題があった。
Further, since each of the plurality of storage means holds one page of bitmap data, there is a problem that a large amount of expensive memory is used.

【0007】さらに、読み出し部が複数個の記憶手段の
うち、どの記憶手段から読み出しを行うかを示すための
優先度情報をビットマップデータの各画素に対して与え
てやる必要があった。
Further, it is necessary for the read section to give priority information for indicating which storage means of the plurality of storage means to read from, to each pixel of the bitmap data.

【0008】本発明はこのような従来の問題点を鑑み
て、各々の中間データをすべての展開処理手段に転送
し、各々の展開処理手段は互いに重なり合わない一部の
領域の中間データのビットマップ展開を担当することに
より、展開処理手段における負荷の配分をより均等化す
ることを可能とする。また、このとき、各々の記憶手段
は互いに重なり合わない、一部の領域のビットマップデ
ータのみを保持することになり、複数の記憶手段の総メ
モリ量をビットマップデータを格納するのに最低限必要
なメモリ量のみに押さえることを可能とする。さらに、
読み出し部が、読み出すビットマップデータの領域に従
って記憶手段を切り替えることによって、ビットマップ
データのピクセル単位による記憶手段の指定を行うこと
を不要とする。
In view of such a conventional problem, the present invention transfers each intermediate data to all expansion processing means, and each expansion processing means transmits the intermediate data bits of a part of the non-overlapping area. By being in charge of map development, it is possible to more evenly distribute loads in the development processing means. At this time, each storage means holds only bitmap data of a part of the areas which do not overlap each other, and the total memory capacity of the plurality of storage means is at least a minimum for storing the bitmap data. It is possible to reduce only the necessary memory amount. further,
The reading unit switches the storage unit according to the area of the bitmap data to be read, so that it is not necessary to specify the storage unit in pixel units of the bitmap data.

【0009】[0009]

【課題を解決するための手段】このような課題を解決す
るために、本発明は、所定の言語で印刷内容を記述した
印刷データを入力して、この印刷データをビットマップ
データに展開して出力する印刷処理装置において、前記
印刷データを入力し、描画コマンドに変換して出力する
生成処理手段と、前記描画コマンドを入力し、ビットマ
ップデータを出力するN(Nは2以上の整数)個の展開
処理手段と、前記展開処理手段の各々に対応する、ビッ
トマップデータを一時保持するN個の記憶手段と、前記
N個の記憶手段から選択的にビットマップデータを読み
出す読み出し手段と、前記読み出し手段によって読み出
されたビットマップデータを出力する出力手段とを有
し、前記生成処理手段において生成された描画コマンド
は前記N個の展開処理手段のすべてに入力され、前記N
個の展開処理手段は、入力された描画コマンドに応じ
て、対応する特定のスキャンラインのビットマップデー
タのみを選択的に生成し、前記N個の記憶手段のうち、
n番目(0≦n<N)の記憶手段は、n番目の展開処理
手段によって生成されたビットマップデータを保持し、
前記読み出し手段は、読み出すスキャンラインに対応し
て前記記憶手段を切り替えることを特徴とする。
In order to solve such a problem, the present invention is to input print data describing print contents in a predetermined language, and develop the print data into bitmap data. A print processing apparatus for outputting the print data, converting the print data into a drawing command and outputting the drawing command, and outputting N (N is an integer of 2 or more) pieces of the drawing command and outputting bitmap data; Expansion processing means, corresponding to each of the expansion processing means, N storage means for temporarily holding bitmap data, reading means for selectively reading bitmap data from the N storage means, Output means for outputting the bitmap data read by the reading means, wherein the drawing command generated by the generation processing means is used for the N development processing. Is input to all means, the N
Expansion processing means selectively generate only bitmap data of a corresponding specific scan line in accordance with the input drawing command, and among the N storage means,
The n-th (0 ≦ n <N) storage means holds the bitmap data generated by the n-th expansion processing means,
The reading means switches the storage means in accordance with a scan line to be read.

【0010】この構成においては、各々の展開処理手段
が同一の描画コマンドのそれぞれ一部をビットマップ展
開することにより、展開処理手段における負荷の配分を
できるだけ均等化することが可能となる。また、各々の
記憶手段は互いに重なり合わない、ある特定の領域のビ
ットマップデータのみを保持することによって、複数の
記憶手段の総メモリ量とビットマップデータを格納する
のに最低限必要なメモリ量のみに抑えることが可能とな
る。
In this configuration, each development processing means performs bitmap development of a part of the same drawing command, so that the load distribution in the development processing means can be equalized as much as possible. In addition, each storage means holds only bitmap data of a specific area which does not overlap with each other, so that the total memory capacity of the plurality of storage means and the minimum memory capacity required for storing the bitmap data are stored. It is possible to suppress only.

【0011】また、この構成においては、前記n番目の
展開処理手段が、スキャンライン番号lのNによる剰余
がnであるスキャンラインのビットマップデータのみを
選択的に生成するようにすることができる。
Further, in this configuration, the n-th expansion processing means can selectively generate only the bitmap data of the scan line in which the remainder of the scan line number 1 by N is n. .

【0012】また、前記読み出し手段は、読み出すスキ
ャンラインのライン番号がlのとき、lのNによる剰余
の数をnとすると、n番目の記憶手段から読み出すよう
にすることができる。
Further, when the line number of the scan line to be read is 1 and the number of remainders of 1 by N is n, the read means can read from the n-th storage means.

【0013】また、前記N個の記憶手段の各々は、前記
印刷データの1ページに相当するビットマップデータを
記憶するための容量の1/Nのサイズを持つようにする
ことができる。
Further, each of the N storage means may have a size of 1 / N of a capacity for storing bitmap data corresponding to one page of the print data.

【0014】また、前記N個の記憶手段は少なくとも2
組設けられ、前記N個の展開処理手段は、前記印刷デー
タの1ページを分割してなる分割領域の各々に対して生
成されるビットマップデータを前記分割領域毎に切り替
えて前記少なくとも2組のN個の記憶手段に供給し、前
記記憶手段の各々は、前記分割領域のビットマップデー
タを記憶するための容量の1/Nのサイズを持つように
することができる。
[0014] The N storage means may include at least two storage means.
And the N number of rasterization processing units switch bitmap data generated for each of the divided areas obtained by dividing one page of the print data for each of the divided areas, and The data is supplied to N storage units, and each of the storage units has a size of 1 / N of a capacity for storing the bitmap data of the divided area.

【0015】[0015]

【発明の実施の形態】以下、図面に基づき本発明に係わ
る印刷処理装置の実施例について説明する。 [実施例1]図1は本発明の印刷処理装置の実施の形態
を示すブロック図である。図1において、印刷処理装置
は、印刷データ作成部1と、印刷データ入力部2と、生
成処理部3と、少なくとも1つの展開処理部4と、読み
出し部6と、出力部7とから構成されている。さらに、
展開処理部は展開したビットマップイメージを一時保存
する1/Nページバッファ522を有する。ここで、1
/Nページバッファ522とは、1ページのビットマッ
プイメージ(印字データ)の1/Nを保持するための領
域である。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of a print processing apparatus according to the present invention will be described below with reference to the drawings. [Embodiment 1] FIG. 1 is a block diagram showing an embodiment of a print processing apparatus according to the present invention. In FIG. 1, the print processing apparatus includes a print data creation unit 1, a print data input unit 2, a generation processing unit 3, at least one expansion processing unit 4, a read unit 6, and an output unit 7. ing. further,
The expansion processing unit has a 1 / N page buffer 522 for temporarily storing the expanded bitmap image. Where 1
The / N page buffer 522 is an area for holding 1 / N of the bitmap image (print data) of one page.

【0016】印刷データ作成部1は、パーソナルコンピ
ュータやワークステーション内において、文書作成や編
集等を処理するアプリケーションプログラムで生成され
た文書データから記述言語で記述された印刷データを作
成する機能を備えたものである。本実施例で対象とする
記述言語は、例えばGDIであるが、Acrobatで
代表されるPDF(Portable Documen
t Format)、PostScriptで代表され
るページ記述言語であってもよい。
The print data creating section 1 has a function of creating print data described in a description language from document data generated by an application program for processing document creation and editing in a personal computer or a workstation. Things. The description language targeted in this embodiment is, for example, GDI, but is a PDF (Portable Document) represented by Acrobat.
t Format) or a page description language represented by PostScript.

【0017】印刷データ入力部2は、印刷データ作成部
1で生成された印刷データを入力するための通信機能、
あるいは生成処理部3へ出力されるまでの間印刷データ
を一時記憶する機能等を備えたものである。
The print data input unit 2 has a communication function for inputting the print data generated by the print data creation unit 1,
Alternatively, it has a function of temporarily storing print data until the print data is output to the generation processing unit 3.

【0018】生成処理部3は、印刷データ入力部2より
入力された印刷データから展開処理部4における印字デ
ータへの展開処理可能な中間データを生成するものであ
る。中間データを生成する目的は、展開処理部4での高
速な展開処理を可能にすることである。そのため中間デ
ータは単純な図形(例えば台形)の集合で表される。
The generation processing section 3 generates intermediate data from the print data input from the print data input section 2 and can be expanded into print data in the expansion processing section 4. The purpose of generating the intermediate data is to enable high-speed expansion processing in the expansion processing unit 4. Therefore, the intermediate data is represented by a set of simple figures (for example, trapezoids).

【0019】展開処理部4は、生成処理部3から出力さ
れる中間データを受け取り、展開スキャンライン指示部
(図8に符号54で示す)で指示されたスキャンライン
のビットマップデータを作成し、展開処理部4内の1/
Nページバッファ522に印字データを作成する。この
とき、1/Nページバッファ522に蓄積されるデータ
は展開スキャンライン指示部54(図8)で指示された
スキャンラインのみから構成されるビットマップデータ
である。
The development processing unit 4 receives the intermediate data output from the generation processing unit 3 and creates bitmap data of the scan line designated by the development scan line designating unit (designated by reference numeral 54 in FIG. 8). 1 / in the expansion processing unit 4
Print data is created in the N page buffer 522. At this time, the data stored in the 1 / N page buffer 522 is bitmap data composed of only the scan lines specified by the expanded scan line specifying unit 54 (FIG. 8).

【0020】読み出し部6は、複数の1/Nページバッ
ファ522に蓄積されたビットマップデータを、読み出
しを行うスキャンラインに従って1/Nページバッファ
522を切替えながら読み出し、出力部7に転送する。
The reading section 6 reads the bitmap data accumulated in the plurality of 1 / N page buffers 522 while switching the 1 / N page buffer 522 in accordance with the scan line to be read, and transfers it to the output section 7.

【0021】出力部7は、読み出し部6から出力される
印字データを受け取って、記録用紙に印字し出力するも
のである。一例として、CMYBk(シアン、マゼン
タ、イエロー、ブラック)カラーの色毎に露光、現像、
転写を繰り返すことによりフルカラー画像を出力できる
レーザー走査方式の電子写真方式を用いたカラーページ
プリンタが挙げられる。
The output unit 7 receives the print data output from the read unit 6, prints it on recording paper, and outputs it. As an example, exposure, development, CMYBk (cyan, magenta, yellow, black)
A color page printer using an electrophotographic system of a laser scanning system capable of outputting a full-color image by repeating transfer is exemplified.

【0022】次に上述したように構成された印刷処理装
置における印刷データの流れについて整理する。印刷デ
ータ作成部1で作成された印刷データは、印刷データ入
力部2を介して、生成処理部3に入力される。そして、
生成処理部3において、台形を基本とする中間データに
変換される。生成処理部3により生成された中間データ
は同時に複数の展開処理部4へ入力される。
Next, the flow of print data in the print processing apparatus configured as described above will be summarized. The print data created by the print data creation unit 1 is input to the generation processing unit 3 via the print data input unit 2. And
The generation processing unit 3 converts the data into intermediate data based on a trapezoid. The intermediate data generated by the generation processing unit 3 is input to a plurality of expansion processing units 4 at the same time.

【0023】各々の展開処理部4では、中間データの描
画する領域のうち、展開スキャンライン指示部54(図
8)で指示されたスキャンラインにおけるビットマップ
展開が行われ、1/Nページバッファ522に蓄積され
る。こうして全部の中間データのビットマップ展開がす
べての展開処理部4で行われると、読み出し部6によっ
て出力部7への転送が行われ印字される。このとき、読
み出すスキャンラインに従って、1/Nページバッファ
522が逐次切り替えられる。カラープリンタの場合、
上記展開処理部4の印字データへの展開及び出力部7で
の印字が色毎に繰り返される。さらに、上記印刷データ
が複数ページで構成される場合は、全ページの出力が終
了するまで繰り返される。
In each of the expansion processing sections 4, bitmap expansion is performed on the scan line designated by the expansion scan line instructing section 54 (FIG. 8) in the area where the intermediate data is drawn, and the 1 / N page buffer 522 Is accumulated in When the bitmap expansion of all the intermediate data is performed in all the expansion processing units 4 in this way, the reading unit 6 transfers the data to the output unit 7 and prints the data. At this time, the 1 / N page buffer 522 is sequentially switched according to the scan line to be read. For color printers,
The development of the development processing unit 4 into print data and the printing of the output unit 7 are repeated for each color. Further, when the print data includes a plurality of pages, the process is repeated until the output of all pages is completed.

【0024】以上、本発明の印刷処理装置の概要につい
て記述した。次に、この印刷処理装置の主要部の詳細に
ついて説明する。
The outline of the print processing apparatus of the present invention has been described above. Next, details of a main part of the print processing apparatus will be described.

【0025】初めに、生成処理部4について詳細を説明
する。図2は生成処理部の詳細を示し、この図におい
て、生成処理部4は、字句解析部30と、トークン解釈
部31と、命令実行部32と、画像処理部33と、描画
状態記憶部34と、ベクターデータ生成部35と、フォ
ント管理部36と、マトリックス変換部37と、ショー
トベクター生成部38と、台形データ生成部39と、台
形データ管理部40と、台形データ記憶部42とから構
成される。
First, the generation processing unit 4 will be described in detail. FIG. 2 shows details of the generation processing unit. In this figure, the generation processing unit 4 includes a lexical analysis unit 30, a token interpretation unit 31, an instruction execution unit 32, an image processing unit 33, and a drawing state storage unit 34. A vector data generation unit 35, a font management unit 36, a matrix conversion unit 37, a short vector generation unit 38, a trapezoid data generation unit 39, a trapezoid data management unit 40, and a trapezoid data storage unit 42. Is done.

【0026】字句解析部30は、印刷データ入力部2よ
り入力された印刷データを定められた記述言語のシンタ
ックスに従ってトークンとして切り出し、そのトークン
をトークン解釈部31に出力するものである。トークン
解釈部31は、字句解析部30から入力されたトークン
を解釈し、内部命令に変換して命令実行部32へ送る。
命令実行部32は、トークン解釈部31から送られてき
た命令に応じて画像処理部33、描画状態記憶部34、
ベクターデータ生成部35へ転送する。画像処理部33
は、入力された画像ヘッダと画像データをもとに各種の
画像処理を行って出力画像ヘッダと出力画像データを生
成し、台形データ管理部40へ転送する。描画状態記憶
部34は、命令実行部32の命令によって与えられる描
画に必要な情報を記憶する。ベクターデータ生成部35
は、命令実行部32の命令とそれに付加された情報、描
画状態記憶部34からの情報、フォント管理部36から
の情報を使用して描画すべきベクターデータを生成し、
マトリックス変換部37へ転送する。フォント管理部3
6は、各種フォントのアウトラインデータを管理記憶
し、要求に応じて文字のアウトラインデータを提供す
る。マトリックス変換部37は、ベクターデータ生成部
35から入力されたベクターデータを描画状態記憶部3
4の変換マトリックスによってアフィン変換し、ショー
トベクター生成部38へ転送する。ショートベクター生
成部38は、入力されたベクター中の曲線に対するベク
ターを複数の直線のベクター集合(ショートベクター)
で近似し、台形データ生成部39へ送る。台形データ生
成部39は、入力されたショートベクターから描画する
台形データを生成して、台形データ管理部40へ転送す
る。台形データ管理部40では、入力された台形データ
に、管理情報と描画状態記憶部34や画像処理部33か
ら入力された色情報とを付加し、中間データとして展開
処理部へ転送する。尚、上記に説明したトークン解釈部
31から中間データの展開処理部4への転送までの処理
は、描画命令が入力されるたびに繰り返し行われる。
The lexical analysis unit 30 cuts out the print data input from the print data input unit 2 as a token according to the syntax of a predetermined description language, and outputs the token to the token interpretation unit 31. The token interpreter 31 interprets the token input from the lexical analyzer 30, converts the token into an internal instruction, and sends the internal instruction to the instruction executing unit 32.
The command execution unit 32 includes an image processing unit 33, a drawing state storage unit 34 in accordance with a command transmitted from the token interpretation unit 31,
The data is transferred to the vector data generator 35. Image processing unit 33
Performs various types of image processing based on the input image header and image data to generate an output image header and output image data, and transfers them to the trapezoid data management unit 40. The drawing state storage unit 34 stores information required for drawing given by a command from the command execution unit 32. Vector data generator 35
Generates vector data to be drawn using the command of the command execution unit 32 and the information added thereto, the information from the drawing state storage unit 34, and the information from the font management unit 36,
The data is transferred to the matrix conversion unit 37. Font management unit 3
Reference numeral 6 manages and stores outline data of various fonts, and provides outline data of characters as required. The matrix conversion unit 37 stores the vector data input from the vector data generation unit 35 in the drawing state storage unit 3
Affine transformation is performed by the transformation matrix of No. 4 and transferred to the short vector generation unit 38. The short vector generation unit 38 converts a vector corresponding to the curve in the input vector into a plurality of linear vector sets (short vector).
And sends it to the trapezoid data generator 39. The trapezoid data generation unit 39 generates trapezoid data to be drawn from the input short vector, and transfers the trapezoid data to the trapezoid data management unit 40. The trapezoid data management unit 40 adds the management information and the color information input from the drawing state storage unit 34 and the image processing unit 33 to the input trapezoid data, and transfers them to the expansion processing unit as intermediate data. The processing from the token interpretation unit 31 to the transfer of the intermediate data to the expansion processing unit 4 described above is repeatedly performed every time a drawing command is input.

【0027】以下では、実際のデータ構造を示しなが
ら、生成処理部3の各部の動作をより詳細に説明する。
Hereinafter, the operation of each unit of the generation processing unit 3 will be described in more detail while showing the actual data structure.

【0028】トークン解釈部31は、字句解析部30か
ら入力されたトークンを解釈し、内部命令やその引数に
変換し、それら内部命令と引数の組を命令実行部32へ
転送する。例えば内部命令には、文字/図形/画像の描
画を実行する描画命令や、色や線属性など描画必要な情
報を設定する描画状態命令などがある。
The token interpreter 31 interprets the token input from the lexical analyzer 30, converts the token into an internal command and its arguments, and transfers a set of these internal commands and arguments to the instruction executing unit 32. For example, the internal commands include a drawing command for executing drawing of characters / graphics / images, and a drawing state command for setting information required for drawing such as color and line attribute.

【0029】命令実行部32は、トークン解釈部31か
ら送られてきた内部命令を実行する。ここで実行する命
令は、主に描画命令と描画状態命令がある。例えば描画
命令には、表1に示すように3種類の描画命令があり、
それぞれの描画に必要な情報が示されている。このうち
アンダーラインがある情報については、描画命令中の引
数として与えられ、その他の情報は予め初期設定や先行
する命令などにより描画状態記憶部34に記憶されてい
る。描画命令の実行は、画像描画以外は受け取った描画
命令をそのままベクターデータ生成部35へ転送する。
画像描画の場合は、受け取った描画命令を画像処理部3
3へ転送するとともに、画像ヘッダの縦と横の大きさを
ベクターデータ生成部35へ転送する。また描画状態命
令については、命令を描画状態記憶部34へ転送する。
The instruction execution unit 32 executes the internal instruction sent from the token interpretation unit 31. The commands executed here mainly include a drawing command and a drawing state command. For example, there are three types of drawing commands as shown in Table 1,
Information necessary for each drawing is shown. Among them, information with an underline is given as an argument in a drawing command, and other information is stored in the drawing state storage unit 34 in advance by initial setting, a preceding command, or the like. For the execution of the drawing command, the received drawing command other than the image drawing is transferred to the vector data generating unit 35 as it is.
In the case of image drawing, the received drawing command is sent to the image processing unit 3.
3 and the vertical and horizontal sizes of the image header are transferred to the vector data generator 35. For the drawing state command, the command is transferred to the drawing state storage unit 34.

【0030】[0030]

【表1】 画像処理部33は、命令実行部32から入力された命令
の引数である入力画像ヘッダと入力画像データを、描画
状態記憶部34から獲得した変換マトリックスを使って
アフィン変換したり、入力画像の色空間を出力装置の色
空間に変換する色空間変換などの処理を行い、出力画像
ヘッダと出力画像データを生成して台形データ管理部4
0へ転送する。
[Table 1] The image processing unit 33 performs an affine transformation on the input image header and the input image data, which are the arguments of the command input from the command execution unit 32, using the conversion matrix acquired from the drawing state storage unit 34, and performs color conversion of the input image. It performs processing such as color space conversion for converting the space to the color space of the output device, generates an output image header and output image data, and generates a trapezoidal data management unit 4.
Transfer to 0.

【0031】描画状態記憶部34は、命令実行部32か
ら受け取った命令に含まれる引数の値で、例えば表1に
示したアンダーラインの無い情報についての値の設定を
行い、それらを記憶する。また、画像処理部33、ベク
ターデータ生成部35、マトリックス変換部37、ショ
ートベクター生成部38、台形データ管理部40などの
要求に従って、それらの値を転送する。
The drawing state storage unit 34 sets values of, for example, information without underline shown in Table 1 with the values of the arguments included in the command received from the command execution unit 32, and stores them. In addition, these values are transferred according to requests from the image processing unit 33, the vector data generation unit 35, the matrix conversion unit 37, the short vector generation unit 38, the trapezoid data management unit 40, and the like.

【0032】ベクターデータ生成部31では、命令実行
部32から送られてきた命令と引数、描画状態記憶部3
3の値を使用して、塗りつぶし描画を除く、新たに描画
するためのベクターデータを生成する。まず文字描画の
場合について説明する。引数で与えられた文字コードと
描画状態記憶部33から獲得したフォントIDをフォン
ト管理部36へ転送して、文字のアウトラインデータを
獲得する。獲得したアウトラインデータには、描画原点
(カレントポイント)の情報が含まれていないので、描
画状態記憶部34から獲得したカレントポイントのオフ
セットをアウトラインデータに加えることによって、目
的のベクターデータを生成する。画像描画の場合には、
引数で与えられた画像ヘッダの縦と横のサイズからそれ
に対する矩形ベクターを生成し、描画状態記憶部34か
ら獲得したカレントポイントのオフセットを加えること
で目的のベクターデータを生成する。ストローク描画の
場合は、引数で与えられたベクターと描画状態記憶部3
4から獲得した各種の線属性から、図3に示すような太
さを持った線のアウトラインベクターを生成する。この
ように生成したベクター(塗りつぶし描画の場合は命令
実行部32から直接受け取ったベクター)を、マトリッ
クス変換部37へ転送する。
In the vector data generating unit 31, the command and the argument transmitted from the command executing unit 32, the drawing state storing unit 3
Using the value of 3, vector data for new drawing except for the solid drawing is generated. First, the case of character drawing will be described. The character code given by the argument and the font ID obtained from the drawing state storage unit 33 are transferred to the font management unit 36 to obtain character outline data. Since the acquired outline data does not include information on the drawing origin (current point), the target vector data is generated by adding the offset of the current point acquired from the drawing state storage unit 34 to the outline data. In the case of image drawing,
A rectangular vector corresponding to the vertical and horizontal sizes of the image header given by the argument is generated, and the target vector data is generated by adding the offset of the current point acquired from the drawing state storage unit. In the case of stroke drawing, the vector given by the argument and the drawing state storage unit 3
An outline vector of a line having a thickness as shown in FIG. The vector generated in this manner (in the case of the solid drawing, the vector directly received from the instruction execution unit 32) is transferred to the matrix conversion unit 37.

【0033】フォント管理部36は、各種フォントに対
するアウトラインベクターデータを記憶するとともに、
与えられた文字コードとフォントIDによって、その文
字に対するアウトラインベクターデータを提供する。
The font management unit 36 stores outline vector data for various fonts,
Outline vector data for the character is provided by the given character code and font ID.

【0034】マトリックス変換部37は、ベクターデー
タ生成部35から受け取ったベクターデータを、描画状
態記憶部34から獲得した変換マトリックスによってア
フィン変換する。このアフィン変換の主な目的は、アプ
リケーションの解像度(座標系)からプリンタの解像度
(座標系)に変換するためのものである。変換マトリッ
クスには下式(1)に示すような3x3のものが使わ
れ、入力ベクターデータ(Xn,Yn)は、出力ベクタ
ーデータ(Xn’,Yn’)に変換されてショートベク
ター生成部38へ送られる。
The matrix conversion unit 37 performs affine transformation on the vector data received from the vector data generation unit 35 using the conversion matrix obtained from the drawing state storage unit 34. The main purpose of the affine transformation is to convert the resolution (coordinate system) of the application to the resolution (coordinate system) of the printer. A 3 × 3 matrix as shown in the following equation (1) is used for the conversion matrix, and the input vector data (Xn, Yn) is converted into output vector data (Xn ′, Yn ′) and sent to the short vector generation unit 38. Sent.

【0035】[0035]

【数1】 ショートベクター生成部38は、入力されたベクターの
中に曲線のベクターがある場合にその曲線のベクター
を、誤差が描画状態記憶部34から獲得したフラットネ
ス(flatness)値より小さくなるように、複数
のショートベクターで近似する処理を行う。例えば曲線
のベクターには、図4に示す4つの制御点で表現される
ベジエ曲線が使われる。この場合ショートベクター化の
処理は、図4に示す通りベジエ曲線を再帰的に分割し、
高さ(距離d)がフラットネスで与えられた値より小さ
くなった時点で分割を終了する。そして分割された各ベ
ジエ曲線の始点と終点を順番に結ぶことにより、ショー
トベクター化が完了する。生成されたショートベクター
は、台形データ生成部39へ送られる。
(Equation 1) The short vector generation unit 38 converts a curve vector into a plurality of vectors so that an error is smaller than a flatness value obtained from the drawing state storage unit 34 when the input vector includes a curve vector. Perform the approximation process using the short vector. For example, a Bezier curve represented by four control points shown in FIG. 4 is used as a curve vector. In this case, the short vector processing recursively divides the Bezier curve as shown in FIG.
The division ends when the height (distance d) becomes smaller than the value given by the flatness. Then, the start point and the end point of each of the divided Bezier curves are connected in order, thereby completing the short vectorization. The generated short vector is sent to the trapezoid data generator 39.

【0036】台形データ生成部39は、入力されたベク
ターデータから、描画領域を示す台形データ(三角形の
場合もあるがデータ構造は台形と同じである)の集合を
生成する。例えば図5(a)に示す太線で示された多角
形のベクターは、4つの台形により描画領域が示され
る。尚、この台形は出力装置のスキャンラインに平行な
2辺を持った台形であり、1つの台形は図5(b)に示
すように(sx,sy,x0,x1,x2,h)の6つ
のデータで表現される。生成された台形は、台形データ
管理部40へ転送される。
The trapezoid data generation unit 39 generates a set of trapezoid data (in some cases, a triangle, but the data structure is the same as the trapezoid) indicating the drawing area from the input vector data. For example, a polygonal vector indicated by a bold line shown in FIG. 5A has a drawing area indicated by four trapezoids. This trapezoid is a trapezoid having two sides parallel to the scan line of the output device, and one trapezoid has 6 (sx, sy, x0, x1, x2, h) as shown in FIG. It is represented by two data. The generated trapezoid is transferred to the trapezoid data management unit 40.

【0037】台形データ管理部40は、入力された台形
データに付加情報をつけて中間データを生成し、中間デ
ータを展開処理部4に転送する。付加情報は、中間デー
タを管理するための管理情報と、台形データを何色で塗
りつぶすかを示す色情報である。文字/図形の描画命令
に対する管理情報は、オブジェクトID、オブジェクト
の種類、台形数のデータであり、例えばCMYBkの値
が色情報である。これらのデータは、図6(a)に示す
ように、描画命令によって生成された台形データの前に
付加される。画像の描画命令に対する管理情報は文字/
図形と同じであるが、色情報は画像ヘッダと画像データ
となる。また図6(b)に示すように、画像ヘッダと画
像データは、描画命令によって生成されたバンド毎の台
形データそれぞれに対して1つずつ付加される。また画
像ヘッダと画像データは画像処理部33から入力される
が、中間データとして付加される画像データは、図7に
示すように変換された画像を示すベクターの最小矩形に
対する画像データであってもよいし、各台形毎の最小矩
形に対する画像データであってもよい。さらに画像デー
タは容量が大きくなるため、圧縮された形で格納されて
いてもよい。
The trapezoid data management unit 40 generates intermediate data by adding additional information to the input trapezoid data, and transfers the intermediate data to the expansion processing unit 4. The additional information is management information for managing the intermediate data and color information indicating in what color the trapezoidal data is to be painted. The management information for the character / graphic drawing command is data of the object ID, the type of the object, and the number of trapezoids. For example, the value of CMYBk is the color information. These data are added before the trapezoid data generated by the drawing command, as shown in FIG. The management information for the image drawing command is text /
It is the same as a figure, but the color information is an image header and image data. Further, as shown in FIG. 6B, one image header and one image data are added to each of the trapezoidal data for each band generated by the drawing command. Although the image header and the image data are input from the image processing unit 33, the image data added as the intermediate data may be the image data for the minimum rectangle of the vector indicating the converted image as shown in FIG. Alternatively, the image data may be image data corresponding to a minimum rectangle for each trapezoid. Further, since the image data has a large capacity, it may be stored in a compressed form.

【0038】次に、展開処理部4について詳細に説明す
る。図8に、展開処理部4のブロック図を示す。生成処
理部3から転送された中間データは、一旦メモリ部52
のワークメモリ521へ書き込まれる。描画部53は、
ワークメモリ521から中間データを読み込んで、展開
スキャンライン指示部54に示されたスキャンラインに
関するビットマップ展開を行い、1/Nページバッファ
522に描画する。
Next, the expansion processing section 4 will be described in detail. FIG. 8 shows a block diagram of the development processing unit 4. The intermediate data transferred from the generation processing unit 3 is temporarily stored in the memory unit 52.
Is written to the work memory 521. The drawing unit 53
The intermediate data is read from the work memory 521, bitmap development is performed on the scan line indicated by the development scan line instruction unit 54, and the data is drawn in the 1 / N page buffer 522.

【0039】印字データ転送制御部51は、描画済の1
/Nページバッファ522から展開された印字データを
読み込み、これを読み込んだワード毎にシリアル変換し
て、読み出し部6からの制御に従って出力部7へ出力す
る。リフレッシュ制御部54は、ワークメモリ521、
1/Nページバッファ522からなる記憶部52のリフ
レッシュを制御する。アービトレーション部55は、描
画部53、リフレッシュ制御部54、中間データ転送制
御部50、印字データ転送制御部51それぞれがメモリ
部52をアクセスする際に、それぞれのブロックのアク
セスのプライオリティに応じてアービトレーション制御
を行う。
The print data transfer control unit 51 determines that the drawn 1
The read print data is read from the / N page buffer 522, converted into serial data for each read word, and output to the output unit 7 under the control of the read unit 6. The refresh control unit 54 includes a work memory 521,
The refresh of the storage unit 52 including the 1 / N page buffer 522 is controlled. When each of the drawing unit 53, the refresh control unit 54, the intermediate data transfer control unit 50, and the print data transfer control unit 51 accesses the memory unit 52, the arbitration unit 55 controls arbitration according to the access priority of each block. I do.

【0040】描画部53は、入力した中間データをなす
台形データ(sx,sy,x0,x1,x2,h)を、
図10に示されるような4点からなるデータ形式に変換
し、台形領域の中で展開スキャンライン指示部に示され
たスキャンラインを描画する。
The drawing section 53 converts trapezoidal data (sx, sy, x0, x1, x2, h) constituting the input intermediate data into
The data is converted into a data format composed of four points as shown in FIG. 10, and the scan line indicated by the developed scan line designating unit is drawn in the trapezoidal area.

【0041】図9に、描画部53のブロック図を示す。
中間データ入力部530は、ワークメモリから1つ1つ
の台形をなすデータを読み込んで、座標計算部A531
および座標計算部B532に台形データを出力する。座
標計算部A531は、台形の左側のエッジ(図10のエ
ッジP0P1)のうち、展開スキャンライン指示部54
に示されたスキャンラインのエッジの座標計算を担当
し、エッジ上の座標値をP0からP1に向かって順に出
力する。座標計算部B532は、台形の右側のエッジ
(図10のエッジP2P3)のうち、展開スキャンライ
ン指示部に示されたスキャンラインのエッジの座標計算
を担当し、エッジ上の座標値をP2からP3に向かって
順に出力する。エッジ描画部533は、座標計算部A5
31及び座標計算部B532から入力される座標値によ
り、台形のx軸に平行な直線を描画する。
FIG. 9 shows a block diagram of the drawing section 53.
The intermediate data input unit 530 reads data forming a trapezoid one by one from the work memory, and reads the coordinate calculation unit A531.
And the trapezoid data is output to the coordinate calculation unit B532. The coordinate calculation unit A531 outputs the expanded scan line instruction unit 54 from the left edge of the trapezoid (the edge P0P1 in FIG. 10).
Is in charge of calculating the coordinates of the edge of the scan line shown in (1), and outputs the coordinate values on the edge in order from P0 to P1. The coordinate calculation unit B532 is in charge of calculating the coordinates of the edge of the scan line indicated by the developed scan line instruction unit among the right edges of the trapezoid (edge P2P3 in FIG. 10), and changes the coordinate values on the edge from P2 to P3. Output in order toward. The edge drawing unit 533 includes a coordinate calculation unit A5
A straight line parallel to the trapezoidal x-axis is drawn based on 31 and the coordinate values input from the coordinate calculation unit B532.

【0042】展開スキャンライン指示部54は現在のス
キャンライン番号Sと図示されていない展開処理部番号
レジスタに記録されている展開処理部番号n、図示され
ていない展開処理部総数レジスタに記録されている展開
処理部4の総数Nをもとに以下の計算を行う。
The expanded scan line instructing section 54 is recorded in a current scan line number S, an expanded processing section number n recorded in an expanded processing section number register (not shown), and recorded in an expanded processing section total number register (not shown). The following calculation is performed based on the total number N of the existing expansion processing units 4.

【0043】[0043]

【数2】y=S mod N −n ここで、S mod NはSをNで割ったときの剰余を
示す。y≠0となるスキャンラインのとき、座標計算部
531、532に対し、描画処理要求を行わない。y=
0となるスキャンラインのとき、座標計算部A531は
P0とP1を結ぶ直線と現在のスキャンラインとの交点
の座標値を出力し、座標計算部B532はP2とP3を
結ぶ直線と現在のスキャンラインとの交点の座標値を出
力する。一例を挙げると、展開処理部4を3つもつ印刷
処理装置の場合、1番目の印刷処理装置はスキャンライ
ン番号が1、4、7 ・・・のときに座標計算部53
1、532で計算を行う。2番目の印刷処理装置はスキ
ャンライン番号が2、5、8・・・のときに座標計算部
531、532で計算を行う。3番目の印刷処理装置は
スキャンライン番号が3、6、9 ・・・のときに座標
計算部531、532で計算を行う。そして、エッジ描
画部533は、座標計算部A531及び座標計算部B5
32から入力される座標値により、台形のx軸に平行な
直線を描画する。
Y = S mod N−n Here, S mod N indicates a remainder when S is divided by N. When the scan line satisfies y ≠ 0, no drawing processing request is sent to the coordinate calculation units 531 and 532. y =
When the scan line is 0, the coordinate calculation unit A531 outputs the coordinate value of the intersection between the straight line connecting P0 and P1 and the current scan line, and the coordinate calculation unit B532 outputs the straight line connecting P2 and P3 and the current scan line. The coordinate value of the intersection with is output. As an example, in the case of a print processing apparatus having three rasterization processing sections 4, the first print processing apparatus has the coordinate calculation section 53 when the scan line numbers are 1, 4, 7,.
The calculation is performed at 1,532. In the second print processing apparatus, when the scan line numbers are 2, 5, 8,..., The coordinate calculation units 531 and 532 perform calculations. In the third print processing apparatus, when the scan line numbers are 3, 6, 9,..., The coordinate calculation units 531 and 532 perform calculations. The edge drawing unit 533 includes a coordinate calculation unit A531 and a coordinate calculation unit B5.
A straight line parallel to the trapezoidal x-axis is drawn based on the coordinate values input from 32.

【0044】図11に、座標計算部531、532のブ
ロック図を示す。入力された台形データ(sx,sy,
x0,x1,x2,h)はDDAパラメータ計算部53
4で4点の台形データ(P0,P1,P2,P3)に変
換されて、傾きや残差の初期値などのDDAのパラメー
タを計算し、DDA処理部535に出力する。DDA処
理部535は、入力されたパラメータに基づいてDDA
処理を行い、最後に求めた点に対する移動方向と移動量
を出力する。座標更新部536は、入力された移動方向
と移動量から現在保持している座標値を更新して出力す
る。座標の初期値は、図示されていないCPUなどであ
らかじめ設定されているものとする。
FIG. 11 is a block diagram of the coordinate calculators 531 and 532. Input trapezoidal data (sx, sy,
x0, x1, x2, h) are the DDA parameter calculation unit 53
In 4, the data is converted into four-point trapezoidal data (P 0, P 1, P 2, P 3), and the DDA parameters such as the slope and the initial value of the residual are calculated and output to the DDA processing unit 535. The DDA processing unit 535 performs the DDA processing based on the input parameters.
The processing is performed, and the moving direction and the moving amount for the last obtained point are output. The coordinate updating unit 536 updates the currently held coordinate value based on the input moving direction and moving amount and outputs the updated coordinate value. It is assumed that the initial values of the coordinates are set in advance by a CPU (not shown) or the like.

【0045】図12は、エッジ描画部533のブロック
図である。エッジ描画部533は、座標値A/B及び画
像データを入力して台形の内部領域を塗りつぶす。アド
レス計算部537は、座標値A/Bを入力して、描画す
るエッジ成分のアドレスを計算する。マスク演算部53
8は、座標値A/Bの値を入力して、描画するワード中
の有効なビットを表すマスクを出力する。データ演算部
539は、入力されたデータが文字/図形の場合には台
形領域によって固定的な色を表す色データを入力し、こ
の値を用いてスクリーン処理をして出力する。入力され
たデータが画像データの場合には、画像データ入力に対
してスクリーン処理をして出力する。RmodW部54
0は、入力されたアドレス、マスク、データを用いて以
下の処理をすることにより描画を行う。まず、アドレス
により、1/Nページバッファをリードする。これによ
り読み込まれたデータをSource、マスクデータを
Mask、描画データをDataとすると、(Mask
*Data+Mask#*Source)の値を演算し
て同一アドレスに書き戻す。ただし、*は論理積、+は
論理和、#は論理否定をそれぞれ表す。この処理は、描
画するエッジが含まれるワード毎に繰り返し行われる。
FIG. 12 is a block diagram of the edge drawing section 533. The edge drawing unit 533 inputs the coordinate values A / B and the image data, and paints the trapezoidal internal area. The address calculator 537 receives the coordinate values A / B and calculates the address of the edge component to be drawn. Mask operation unit 53
Numeral 8 inputs the values of the coordinate values A / B and outputs a mask representing valid bits in the word to be drawn. When the input data is characters / graphics, the data calculation unit 539 inputs color data representing a fixed color by a trapezoidal area, performs screen processing using this value, and outputs the result. If the input data is image data, screen processing is performed on the input image data and the image data is output. RmodW unit 54
For 0, drawing is performed by performing the following processing using the input address, mask, and data. First, the 1 / N page buffer is read according to the address. Assuming that the read data is Source, the mask data is Mask, and the drawing data is Data, (Mask
* Data + Mask # * Source) is calculated and written back to the same address. Here, * represents logical product, + represents logical sum, and # represents logical negation. This process is repeated for each word including the edge to be drawn.

【0046】次に、読み出し部6について詳細に説明す
る。図13に読み出し部6のブロック図を示す。展開処
理部4での中間データのビットマップ展開がすべて終了
すると、読み出し部6はバッファ切替え手段60で指示
される展開処理部内の1/Nページバッファから読み出
しを開始し、出力部7からのスキャンライン同期信号に
同期してビットマップデータを出力部7に転送する。
Next, the reading section 6 will be described in detail. FIG. 13 shows a block diagram of the reading unit 6. When the bitmap expansion of the intermediate data in the expansion processing unit 4 is completed, the reading unit 6 starts reading from the 1 / N page buffer in the expansion processing unit designated by the buffer switching unit 60, and scans from the output unit 7. The bitmap data is transferred to the output unit 7 in synchronization with the line synchronization signal.

【0047】バッファ切替え手段60は、スキャンライ
ンカウンタ61に保持されたスキャンライン番号Sと、
展開処理部4の展開処理部総数レジスタ62に記憶され
ている展開処理部4の総数Nをもとに、次の計算を行
う。
The buffer switching means 60 includes a scan line number S held in the scan line counter 61,
The following calculation is performed based on the total number N of the expansion processing units 4 stored in the expansion processing unit total number register 62 of the expansion processing unit 4.

【0048】[0048]

【数3】n=S mod N そして、n番目の展開処理部4の1/Nページバッファ
522から、1スキャンライン分のビットマップメモリ
を取り出し、出力部7に転送する。一例を挙げると、展
開処理部4を3つもつ印刷処理装置の場合、スキャンラ
イン番号1のとき、1番目の展開処理部4の1/Nペー
ジバッファ522からビットマップデータを読み出し、
出力部7に転送する。そして、スキャンライン番号2の
とき2番目の展開処理部4の1/Nページバッファ52
2、スキャンライン番号3のとき3番目の展開処理部4
の1/Nページバッファ522、スキャンライン番号4
のとき1番目の展開処理部4の1/Nページバッファ5
22・・・と順次読み出す1/Nページバッファ522
を切り替えながら、1スキャンライン分のビットマップ
データを出力部7に転送する。これをすべてのデータが
出力部7に転送されるまで繰り返す。
N = S mod N Then, a bit map memory for one scan line is extracted from the 1 / N page buffer 522 of the n-th expansion processing unit 4 and transferred to the output unit 7. For example, in the case of a print processing apparatus having three rasterization processing units 4, when the scan line number is 1, bitmap data is read from the 1 / N page buffer 522 of the first rasterization processing unit 4,
Transfer to the output unit 7. When the scan line number is 2, the 1 / N page buffer 52 of the second rasterization processing unit 4
2. When the scan line number is 3, the third expansion processing unit 4
1 / N page buffer 522, scan line number 4
1 / N page buffer 5 of the first expansion processing unit 4
1 / N page buffer 522 sequentially read out as 22.
, The bit map data for one scan line is transferred to the output unit 7. This is repeated until all data is transferred to the output unit 7.

【0049】以上が本印刷装置の主要部の詳細である。
本実施例においては展開処理部4と読み出し部6は別の
モジュールとして説明したが、LSI化する際は展開処
理部と読み出し部は一チップで実現することが望まし
い。この場合の展開処理部と読み出し部の構成を図14
に示す。バッファ切替え部は、図示されていない展開処
理部番号レジスタと展開処理部総数レジスタと、スキャ
ンラインレジスタの値をもとに、現在のスキャンライン
がこの展開処理部で展開されたかどうかを判断し出力す
る。セレクタ70は、バッファ切替え部60の出力をも
とに、展開処理部内の1/Nページバッファか外部入力
のビットマップデータを選択し出力する。そして、ラッ
チ71は出力部から送られる出力クロックに従って、ビ
ットマップデータを出力する。
The details of the main part of the printing apparatus have been described above.
In the present embodiment, the expansion processing unit 4 and the reading unit 6 have been described as separate modules, but it is desirable that the expansion processing unit and the reading unit are realized by one chip when implementing an LSI. FIG. 14 shows the configurations of the expansion processing unit and the reading unit in this case.
Shown in The buffer switching unit determines whether or not the current scan line has been expanded by this expansion processing unit, based on the values of the expansion processing unit number register, the expansion processing unit total register (not shown), and the scan line register, and outputs the result. I do. The selector 70 selects and outputs 1 / N page buffer in the expansion processing unit or externally input bitmap data based on the output of the buffer switching unit 60. Then, the latch 71 outputs bitmap data according to the output clock sent from the output unit.

【0050】本実施例で説明したように、1つの中間コ
ードをスキャンライン単位で分割して、複数の展開処理
部4で処理を行うことにより、展開処理部4における負
荷の配分を比較的均等化することができる。なお、DD
A処理にかかる時間はメモリの読み出し、書き込みに要
する時間の1/3程度である。そのため、展開処理部4
の総数としてN=3を指定するとメモリの入出力のボト
ルネックが解消され、より効率的となる。
As described in this embodiment, one intermediate code is divided in units of scan lines, and the processing is performed by the plurality of expansion processing units 4, so that the load distribution in the expansion processing units 4 can be relatively evenly distributed. Can be Note that DD
The time required for the process A is about 1/3 of the time required for reading and writing the memory. Therefore, the expansion processing unit 4
If N = 3 is specified as the total number of memory cells, the bottleneck of memory input / output is eliminated, and the efficiency becomes higher.

【0051】[実施例2]実施例1では、画像1ページ
分のビットマップデータを複数の1/Nページバッファ
に記憶する場合を説明した。実施例2では、画像1ペー
ジを印刷用紙の搬出方向に水平な領域(バンド)で分割
し、1バンド分のビットマップデータを複数の1/Nバ
ンドバッファに記憶する場合を説明する。
[Second Embodiment] In the first embodiment, the case where bitmap data for one image page is stored in a plurality of 1 / N page buffers has been described. In the second embodiment, a case will be described in which one page of an image is divided into regions (bands) that are horizontal in the direction in which the printing paper is carried out, and bitmap data for one band is stored in a plurality of 1 / N band buffers.

【0052】従来のページプリンタは、印字前にページ
全体の印刷データをラスタ化し、ページバッファメモリ
に記憶していた。しかしながら、ページ全体に対するラ
スタデータを記憶するためには、大量のメモリを必要と
する。特に、最新の電子写真方式のカラーページプリン
タでは、C(Cyan)、M(Magenta)、Y
(Yellow)、Bk(Black)の4色のトナー
に対応するラスタデータを必要とするとともに、白黒ペ
ージプリンタ以上に画質が要求されるため、1画素当た
り複数のビット情報を持つのが一般的であり、さらに大
量のメモリを必要とする。
In a conventional page printer, print data of the entire page is rasterized before printing and stored in a page buffer memory. However, storing raster data for an entire page requires a large amount of memory. In particular, in the latest electrophotographic color page printer, C (Cyan), M (Magenta), Y
Raster data corresponding to four color toners (Yellow) and Bk (Black) is required, and image quality is required more than that of a monochrome page printer. Yes, and requires more memory.

【0053】この大量のメモリの必要性に対し、コスト
低減の観点からメモリ容量を低減させる技術として、最
近バンドメモリ技術が登場してきた。バンドメモリ技術
は、ページプリンタの印字前に1ページ分の印刷データ
を全てラスタ化するのではなく、記述言語で作成されて
いる印刷データを、印刷データをラスタ化するよりも速
くラスタ化可能な比較的簡単な中間データに変換し、1
ページを隣接する複数の領域(バンド)に分割し、各バ
ンドに対応する中間データを記憶した後、ラスタ展開処
理部に順次転送し、バンドに対応するバッファメモリに
展開する技術である。バンドメモリ技術では、中間デー
タを記憶するためのメモリは新たに必要であるが、ラス
タデータのための大容量を必要とするバッファメモリを
低減することが可能となる。
In response to this need for a large amount of memory, band memory technology has recently emerged as a technology for reducing the memory capacity from the viewpoint of cost reduction. Band memory technology can rasterize print data created in a description language faster than rasterizing print data instead of rasterizing all print data for one page before printing by a page printer. Convert to relatively simple intermediate data,
This technique divides a page into a plurality of adjacent areas (bands), stores intermediate data corresponding to each band, sequentially transfers the intermediate data to a raster development processing unit, and develops the data in a buffer memory corresponding to the band. In the band memory technology, a memory for storing intermediate data is newly required, but it is possible to reduce a buffer memory that requires a large capacity for raster data.

【0054】図15は本発明の印刷処理装置の実施の他
の形態を示すブロック図である。図15において、印刷
処理装置は、印刷データ作成部1と、印刷データ入力部
2と、生成処理部3と、展開処理部4と、読み出し部6
と、出力部7とから構成されている。さらに、展開処理
部4は各々2つの1/Nバンドバッファ525、526
を有する。ここで、1/Nバンドバッファ525、52
6とは、1バンドの1/Nのビットマップイメージ(印
字データ)を保持するための領域である。
FIG. 15 is a block diagram showing another embodiment of the print processing apparatus of the present invention. In FIG. 15, the print processing device includes a print data creation unit 1, a print data input unit 2, a generation processing unit 3, a development processing unit 4, and a readout unit 6.
And an output unit 7. Further, the expansion processing unit 4 includes two 1 / N band buffers 525 and 526, respectively.
Having. Here, 1 / N band buffers 525 and 52
Reference numeral 6 denotes an area for holding a 1 / N bitmap image (print data) of one band.

【0055】印刷データ作成部1と印刷データ入力部2
と出力部7は実施例1と同一であるので、ここでは説明
を省略する。
Print data creation unit 1 and print data input unit 2
And the output unit 7 are the same as those in the first embodiment, and the description is omitted here.

【0056】生成処理部3は、印刷データ入力部2より
入力された印刷データから展開処理部4における印字デ
ータへの展開処理可能な中間データを生成するものであ
る。まず、字句解析部30により、印刷データ入力部2
より入力された印刷データを定められた記述言語のシン
タックスに従ってトークンとして切り出す。そして、ト
ークンを解釈し、描画命令を実行し、各描画命令に対す
る台形を基本単位としたデータを生成し、それらを中間
データとしてバンド毎に管理し記憶する。これらのデー
タは、必要に応じて展開処理部4から読み出される。中
間データを生成する目的は、展開処理部4での高速な展
開処理を可能にすることである。そのため、中間データ
は単純な図形(台形)の集合で表され、バンド単位に分
類されている。尚、生成処理部3と展開処理部4との間
の接続は、転送帯域を保証するリアルタイムデータ転送
が使用される。リアルタイムデータ転送のため、例え
ば、IEEE1394ハイ・パフォーマンス・シリアル
・バスのアイソクロナス転送モードが使用される。
The generation processing unit 3 generates intermediate data that can be expanded from the print data input from the print data input unit 2 into print data in the expansion processing unit 4. First, the lexical analysis unit 30 causes the print data input unit 2
The input print data is cut out as a token according to the syntax of a predetermined description language. Then, it interprets the token, executes the drawing command, generates data in the form of a trapezoid for each drawing command as a basic unit, and manages and stores the data as intermediate data for each band. These data are read from the expansion processing unit 4 as needed. The purpose of generating the intermediate data is to enable high-speed expansion processing in the expansion processing unit 4. Therefore, the intermediate data is represented by a set of simple figures (trapezoids), and is classified in band units. The connection between the generation processing unit 3 and the development processing unit 4 uses real-time data transfer that guarantees a transfer band. For real-time data transfer, for example, the isochronous transfer mode of the IEEE 1394 high performance serial bus is used.

【0057】展開処理部4は、生成処理部3に記憶され
た中間データをバンド単位に読み出し、バンド内の領域
のうち、展開スキャンライン指示部54で指示されたス
キャンラインのビットマップデータを展開処理部4内の
1/Nバンドバッファ525、526に作成する。この
処理の結果生成されたビットマップデータは展開処理部
4内の2つの1/Nバンドバッファ525、526に交
互に蓄積される。
The expansion processing unit 4 reads out the intermediate data stored in the generation processing unit 3 in band units, and expands the bit map data of the scan line designated by the development scan line instruction unit 54 in the area within the band. It is created in the 1 / N band buffers 525 and 526 in the processing unit 4. The bitmap data generated as a result of this processing is alternately stored in two 1 / N band buffers 525 and 526 in the expansion processing unit 4.

【0058】読み出し部6は、複数の展開処理部4の1
/Nバンドバッファ525、526に蓄積されたビット
マップデータを、読み出しを行うスキャンラインに従っ
て1/Nバンドバッファ525、526を切替えながら
読み出し、出力部7に転送する。
The reading section 6 is provided for one of the plurality of development processing sections 4.
The bitmap data stored in the / N band buffers 525 and 526 are read out while switching the 1 / N band buffers 525 and 526 according to the scan line to be read out, and transferred to the output unit 7.

【0059】次に上述したように構成された印刷処理装
置における印刷データの流れについて整理する。印刷デ
ータ作成部1で作成された印刷データは、印刷データ入
力部2を介して、生成処理部3に入力される。生成処理
部3により生成された中間データは同時に複数の展開処
理部4へ入力される。
Next, the flow of print data in the print processing apparatus configured as described above will be summarized. The print data created by the print data creation unit 1 is input to the generation processing unit 3 via the print data input unit 2. The intermediate data generated by the generation processing unit 3 is input to a plurality of expansion processing units 4 at the same time.

【0060】各々の展開処理部4では、1バンド分の中
間データを受け取り、展開スキャンライン指示部54で
指示されたスキャンラインにおけるビットマップ展開が
行われ、バッファメモリ525、526に蓄積される。
そして、出力部7のサイクルアップが完了すると、バッ
ファメモリ525、526から出力部7に、出力部7の
記録速度に応じて印字データが1ライン毎に転送され、
印字が行われる。このとき、読み出すスキャンラインに
従って、バッファメモリ525、526が逐次切り替え
られる。各々の展開処理部4では、1つの1/Nバンド
バッファ(例えば525)の印字データが印字されてい
る間に、片側の1/Nバンドバッファ(例えば526)
が印字データで満たされるまで展開処理が実行される。
上記展開処理部4の印字データへの展開及び出力部での
印字は、1ページ分の印刷データが処理されるまで、色
毎に繰り返される。さらに、上記印刷データが複数ペー
ジで構成される場合は、全ページの出力が終了するまで
繰り返される。
Each of the expansion processing units 4 receives the intermediate data for one band, performs bitmap expansion on the scan line specified by the expansion scan line instructing unit 54, and accumulates them in the buffer memories 525 and 526.
When the cycle-up of the output unit 7 is completed, print data is transferred from the buffer memories 525 and 526 to the output unit 7 line by line in accordance with the recording speed of the output unit 7.
Printing is performed. At this time, the buffer memories 525 and 526 are sequentially switched according to the scan line to be read. In each of the expansion processing units 4, while the print data of one 1 / N band buffer (for example, 525) is being printed, the 1 / N band buffer (for example, 526) on one side is printed.
Is developed until is satisfied with the print data.
The expansion of the print data by the expansion processing unit 4 and the printing by the output unit are repeated for each color until the print data for one page is processed. Further, when the print data includes a plurality of pages, the process is repeated until the output of all pages is completed.

【0061】以上、本発明の印刷処理装置の概要につい
て記述した。次に、この印刷処理装置の主要部の詳細に
ついて説明する。
The outline of the print processing apparatus of the present invention has been described above. Next, details of a main part of the print processing apparatus will be described.

【0062】初めに、生成処理部3について詳細を説明
する。生成処理部3は、図16に示すように、字句解析
部30と、トークン解釈部31と、命令実行部32と、
画像処理部33と、描画状態記憶部34と、ベクターデ
ータ生成部35と、フォント管理部36と、マトリック
ス変換部37と、ショートベクター生成部38と、台形
データ生成部39と、バンド分解部41と、台形データ
管理部40と、台形データ記憶部42とから構成され
る。
First, the generation processing unit 3 will be described in detail. As shown in FIG. 16, the generation processing unit 3 includes a lexical analysis unit 30, a token interpretation unit 31, an instruction execution unit 32,
Image processing unit 33, drawing state storage unit 34, vector data generation unit 35, font management unit 36, matrix conversion unit 37, short vector generation unit 38, trapezoid data generation unit 39, band decomposition unit 41 And a trapezoidal data management unit 40 and a trapezoidal data storage unit 42.

【0063】トークン解釈部31と、命令実行部32
と、画像処理部33と、描画状態記憶部34と、ベクタ
ーデータ生成部35と、フォント管理部36と、マトリ
ックス変換部37と、ショートベクター生成部38と、
台形データ生成部39と、台形データ管理部40とは実
施例1と同等の機能を持つものであるので、ここでは省
略する。
The token interpreter 31 and the instruction executor 32
An image processing unit 33, a drawing state storage unit 34, a vector data generation unit 35, a font management unit 36, a matrix conversion unit 37, a short vector generation unit 38,
The trapezoid data generation unit 39 and the trapezoid data management unit 40 have the same functions as those in the first embodiment, and thus will not be described here.

【0064】バンド分解部41は、入力された台形デー
タのうち複数のバンドにまたがる台形データをバンド毎
の台形データに分割し、バンド毎に台形データを台形デ
ータ管理部40へ転送する。例えば図17では、4つの
台形データがバンド分解部によって6つの台形データに
分割される。
The band decomposition section 41 divides the trapezoid data spanning a plurality of bands from the input trapezoid data into trapezoid data for each band, and transfers the trapezoid data to the trapezoid data management section 40 for each band. For example, in FIG. 17, four trapezoidal data are divided into six trapezoidal data by the band decomposition unit.

【0065】台形データ記憶部42は、台形データ管理
部40で生成された中間データをバンド単位に記憶し、
展開処理部4の要求に応じて中間データを転送する。
The trapezoid data storage unit 42 stores the intermediate data generated by the trapezoid data management unit 40 in band units.
The intermediate data is transferred in response to a request from the development processing unit 4.

【0066】上記に説明した字句解析部30から台形デ
ータ記憶部42への書き込みまでの処理は、描画命令が
入力されるたびに繰り返し行われる。また台形データ記
憶部42から各々の展開処理部4への中間データの転送
は、1ページ分の中間データが記憶された後に行われ
る。
The above-described processing from the lexical analysis unit 30 to the writing to the trapezoidal data storage unit 42 is repeatedly performed each time a drawing command is input. The transfer of the intermediate data from the trapezoid data storage unit 42 to each of the expansion processing units 4 is performed after the intermediate data for one page is stored.

【0067】次に、展開処理部4について詳細に説明す
る。図18に、展開処理部4のブロック図を示す。生成
処理部3で生成されたバンド毎の中間データは、中間デ
ータ転送制御部50により読み込まれ、メモリ部52の
入力バッファA523あるいは入力バッファB524へ
書き込まれる。描画部53は、入力バッファA523あ
るいは入力バッファB524から中間データを読み込ん
で、展開スキャンライン指示部54に示されたスキャン
ラインに関するビットマップ展開を行い、1/Nバンド
バッファA525あるいは1/NバンドバッファB52
6へ描画する。
Next, the expansion processing section 4 will be described in detail. FIG. 18 shows a block diagram of the development processing unit 4. The intermediate data for each band generated by the generation processing unit 3 is read by the intermediate data transfer control unit 50 and written to the input buffer A 523 or the input buffer B 524 of the memory unit 52. The drawing unit 53 reads the intermediate data from the input buffer A 523 or the input buffer B 524, performs bit map development on the scan line indicated by the developed scan line instructing unit 54, and executes the 1 / N band buffer A 525 or the 1 / N band buffer. B52
6 is drawn.

【0068】印字データ転送制御部51は、描画済の1
/NバンドバッファA525あるいは1/Nバンドバッ
ファB526から展開された印字データを読み込み、こ
れを読み込んだワード毎にシリアル変換して、読み出し
部6からの制御に従って出力部7へ出力する。リフレッ
シュ制御部55は、入力バッファA523、入力バッフ
ァB524、1/NバンドバッファA525、1/Nバ
ンドバッファB526からなるメモリ部52のリフレッ
シュを制御する。アービトレーション部56は、描画部
53、リフレッシュ制御部54、中間データ転送制御部
50、印字データ転送制御部51それぞれがメモリ部5
2をアクセスする際に、それぞれのブロックのアクセス
のプライオリティに応じてアービトレーション制御を行
う。
The print data transfer control unit 51 determines that the drawn 1
The print data developed from the / N band buffer A 525 or the 1 / N band buffer B 526 is read, the read data is converted into serial data for each read word, and output to the output unit 7 under the control of the read unit 6. The refresh control unit 55 controls refresh of the memory unit 52 including the input buffer A 523, the input buffer B 524, the 1 / N band buffer A 525, and the 1 / N band buffer B 526. The arbitration unit 56 includes a drawing unit 53, a refresh control unit 54, an intermediate data transfer control unit 50, and a print data transfer control unit 51, each of which is a memory unit 5.
When accessing block 2, arbitration control is performed according to the access priority of each block.

【0069】入力バッファと1/Nバンドバッファの使
用方法について説明する。図19(a)及び図19
(b)はそれぞれ、入力バッファAと入力バッファBに
中間データを入力中の、各バッファの使用状態を示すも
のである。図19(a)においては、バンドiに対応す
る中間データを入力バッファAに入力中であり、入力バ
ッファBには既にバンド(i−1)に対応する中間デー
タが入力済みである。描画部53は入力バッファBに蓄
えられた中間データを読み出して、展開スキャンライン
指示部54に示されたスキャンラインに関するビットマ
ップ展開を行い、1/NバンドバッファBに描画する。
1/NバンドバッファAには、バンド(i−2)に対応
する中間データを展開描画した結果の印字データが蓄え
られており、印字データ転送制御部51はこれを出力部
7に読み出している。
A method of using the input buffer and the 1 / N band buffer will be described. FIG. 19 (a) and FIG.
(B) shows the use state of each buffer while the intermediate data is being input to the input buffer A and the input buffer B, respectively. In FIG. 19A, intermediate data corresponding to band i is being input to input buffer A, and intermediate data corresponding to band (i-1) has already been input to input buffer B. The drawing unit 53 reads the intermediate data stored in the input buffer B, performs bitmap development on the scan line indicated by the developed scan line instruction unit 54, and renders the data in the 1 / N band buffer B.
The 1 / N band buffer A stores print data as a result of developing and rendering intermediate data corresponding to the band (i-2), and the print data transfer control unit 51 reads this to the output unit 7. .

【0070】図19(b)においては、バンド(i+
1)に対応する中間データを入力バッファBに入力中で
あり、入力バッファAには既にバンドiに対応する中間
データが入力済みである。描画部53は、入力バッファ
Aに蓄えられた中間データを読み出し、展開スキャンラ
イン指示部54に示されたスキャンラインに関するビッ
トマップ展開を行い、1/NバンドバッファAに描画す
る。1/NバンドバッファBには、バンド(i−1)に
対応する中間データを展開描画した結果の印字データが
蓄えられており、印字データ転送制御部51はこれを出
力部7に読み出している。
In FIG. 19B, the band (i +
The intermediate data corresponding to 1) is being input to the input buffer B, and the intermediate data corresponding to the band i has already been input to the input buffer A. The rendering unit 53 reads the intermediate data stored in the input buffer A, performs bitmap development on the scan line indicated by the development scan line instruction unit 54, and renders the data in the 1 / N band buffer A. The 1 / N band buffer B stores print data as a result of developing and rendering intermediate data corresponding to band (i-1), and the print data transfer control unit 51 reads this to the output unit 7. .

【0071】描画部53及び読み出し部6の処理は中間
データの処理の単位が1ページであることと、1バンド
であることを除いては実施例1と同等なので、ここでは
省略する。
The processing of the drawing unit 53 and the reading unit 6 is the same as that of the first embodiment except that the unit of the processing of the intermediate data is one page and one band, so that the description is omitted here.

【0072】以上が本印刷装置の主要部の詳細である。
本実施例においては展開処理部4と読み出し部6は別の
モジュールとして説明したが、LSI化する際は展開処
理部と読み出し部は一チップで実現することが望まし
い。この場合の展開処理部と読み出し部は実施例1と同
様に図14に示すように構成できる。
The details of the main part of the printing apparatus have been described above.
In the present embodiment, the expansion processing unit 4 and the reading unit 6 have been described as separate modules, but it is desirable that the expansion processing unit and the reading unit are realized by one chip when implementing an LSI. In this case, the expansion processing unit and the reading unit can be configured as shown in FIG. 14 similarly to the first embodiment.

【0073】本実施例においても、1つの中間コードを
スキャンライン単位で分割して、複数の展開処理部で処
理を行うことにより、展開処理部における負荷の配分を
比較的均等化することができる。なお、DDA処理にか
かる時間はメモリの読み出し、書き込みに要する時間の
1/3程度である。そのため、展開処理部の総数として
N=3を指定するとメモリの入出力のボトルネックが解
消され、より効率的となる。
Also in the present embodiment, one intermediate code is divided in units of scan lines, and processing is performed by a plurality of expansion processing units, so that the load distribution in the expansion processing units can be relatively equalized. . Note that the time required for the DDA process is about one third of the time required for reading and writing the memory. Therefore, if N = 3 is specified as the total number of the expansion processing units, the bottleneck of the memory input / output is eliminated, and the efficiency is improved.

【0074】なお以上の実施例においては、1スキャン
ライン毎に展開処理部を切り替えるようにしているが、
複数本のスキャンライン単位で展開処理部を切り替える
ようにしてもよい。
In the above embodiment, the developing unit is switched every scan line.
The development processing unit may be switched in units of a plurality of scan lines.

【0075】[0075]

【発明の効果】上述したように、本発明によれば、各々
の展開処理手段が同一の描画コマンドのそれぞれ一部を
ビットマップ展開することにより、展開処理手段におけ
る負荷の配分をできるだけ均等化することが可能とな
る。また、各々の記憶手段は互いに重なり合わない、あ
る特定の領域のビットマップデータのみを保持すること
によって、複数の記憶手段の総メモリ量とビットマップ
データを格納するのに最低限必要なメモリ量のみに押さ
えることが可能となる。さらに、読み出し部が、読み出
すビットマップデータの領域に従って記憶手段を切り替
えることによって、ビットマップデータのピクセル単位
による記憶手段の指定を行うことが不要となる。
As described above, according to the present invention, each development processing means develops a part of the same drawing command as a bit map, so that the load distribution in the development processing means is made as uniform as possible. It becomes possible. In addition, each storage means holds only bitmap data of a specific area which does not overlap with each other, so that the total memory capacity of the plurality of storage means and the minimum memory capacity required for storing the bitmap data are stored. It is possible to hold down only to. Further, the reading unit switches the storage unit according to the area of the bitmap data to be read, so that it is not necessary to specify the storage unit in the pixel unit of the bitmap data.

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

【図1】 本発明の実施例1を示すブロック図である。FIG. 1 is a block diagram showing a first embodiment of the present invention.

【図2】 実施例1の生成処理部を示すブロック図であ
る。
FIG. 2 is a block diagram illustrating a generation processing unit according to the first embodiment.

【図3】 実施例1のアウトラインベクターを説明する
図である。
FIG. 3 is a diagram illustrating an outline vector of Example 1.

【図4】 ベジエ曲線の再帰的な分割を説明する図であ
る。
FIG. 4 is a diagram illustrating recursive division of a Bezier curve.

【図5】 台形データを説明する図である。FIG. 5 is a diagram illustrating trapezoidal data.

【図6】 台形データのデータ表現の一例を説明する図
である。
FIG. 6 is a diagram illustrating an example of a data representation of trapezoid data.

【図7】 台形データへの画像データの対応を説明する
図である。
FIG. 7 is a diagram for explaining correspondence of image data to trapezoidal data.

【図8】 実施例1の展開処理部を示すブロック図であ
る。
FIG. 8 is a block diagram illustrating a development processing unit according to the first embodiment.

【図9】 実施例1の描画部を示すブロック図である。FIG. 9 is a block diagram illustrating a drawing unit according to the first embodiment.

【図10】 描画部での台形データ描画を説明する図で
ある。。
FIG. 10 is a diagram illustrating trapezoidal data drawing by a drawing unit. .

【図11】 実施例1の座標計算部を示すブロック図で
ある。
FIG. 11 is a block diagram illustrating a coordinate calculation unit according to the first embodiment.

【図12】 実施例1のエッジ描画部を示すブロック図
である。
FIG. 12 is a block diagram illustrating an edge drawing unit according to the first embodiment.

【図13】 実施例1の読み出し部を示すブロック図で
ある。
FIG. 13 is a block diagram illustrating a reading unit according to the first embodiment.

【図14】 展開処理部と読み出し部を1チップで実現
するときのブロック図である。
FIG. 14 is a block diagram when the development processing unit and the reading unit are realized by one chip.

【図15】 本発明の実施例2を示すブロック図であ
る。
FIG. 15 is a block diagram showing a second embodiment of the present invention.

【図16】 実施例2の生成処理部を示すブロック図で
ある。
FIG. 16 is a block diagram illustrating a generation processing unit according to the second embodiment.

【図17】 台形データのバンド境界での分割を説明す
る図である。
FIG. 17 is a diagram illustrating division of trapezoidal data at a band boundary.

【図18】 実施例2の展開処理部を示すブロック図で
ある。
FIG. 18 is a block diagram illustrating a development processing unit according to the second embodiment.

【図19】 入力バッファと1/Nバンドバッファの使
用方法を説明する図である。
FIG. 19 is a diagram illustrating how to use an input buffer and a 1 / N band buffer.

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

1 印刷データ作成部 2 印刷データ入力部 3 生成処理部 4 展開処理部 6 読み出し部 7 出力部 30 字句解析部 31 トークン解釈部 32 命令実行部 33 画像処理部 34 描画状態記憶部 35 ベクターデータ生成部 36 フォント管理部 37 マトリックス変換部 38 ショートベクター生成部 39 台形データ生成部 40 台形データ管理部 41 バンド分解部 42 台形データ記憶部 50 中間データ転送制御部 51 印字データ転送制御部 52 メモリ部 521 ワークメモリ 522 ページバッファ 523 入力バッファA 524 入力バッファB 525 1/NバンドバッファA 526 1/NバンドバッファB 53 描画部 54 展開スキャンライン指示部 55 リフレッシュ制御部 56 アービトレーション部 530 中間データ入力部 531 座標計算部A 532 座標計算部B 533 エッジ描画部 534 DDAパラメータ計算部 535 DDA処理部 536 座標更新部 537 アドレス計算部 538 マスク演算部 539 データ演算部 540 RmodW処理部 60 バッファ切替え部 61 スキャンラインカウンタ 62 展開処理部総数レジスタ 70 セレクタ 71 ラッチ DESCRIPTION OF SYMBOLS 1 Print data creation part 2 Print data input part 3 Generation processing part 4 Expansion processing part 6 Reading part 7 Output part 30 Lexical analysis part 31 Token interpretation part 32 Command execution part 33 Image processing part 34 Drawing state storage part 35 Vector data generation part 36 font management unit 37 matrix conversion unit 38 short vector generation unit 39 trapezoidal data generation unit 40 trapezoidal data management unit 41 band decomposition unit 42 trapezoidal data storage unit 50 intermediate data transfer control unit 51 print data transfer control unit 52 memory unit 521 work memory 522 page buffer 523 input buffer A 524 input buffer B 525 1 / N band buffer A 526 1 / N band buffer B 53 drawing unit 54 development scan line instructing unit 55 refresh control unit 56 arbitration unit 530 intermediate data input 531 Coordinate calculation unit A 532 Coordinate calculation unit B 533 Edge drawing unit 534 DDA parameter calculation unit 535 DDA processing unit 536 Coordinate update unit 537 Address calculation unit 538 Mask calculation unit 539 Data calculation unit 540 RmodW processing unit 60 Buffer switching unit 61 Scan line Counter 62 Total number of expansion processing units register 70 Selector 71 Latch

───────────────────────────────────────────────────── フロントページの続き (72)発明者 関 範顕 神奈川県足柄上郡中井町境430 グリーン テクなかい 富士ゼロックス株式会社内 (72)発明者 河田 哲郎 神奈川県足柄上郡中井町境430 グリーン テクなかい 富士ゼロックス株式会社内 ──────────────────────────────────────────────────続 き Continuing on the front page (72) Inventor Noriaki Seki 430 Nakaicho, Nakaicho, Ashigarakami-gun, Kanagawa Prefecture Inside Fuji Xerox Fuji Xerox Co., Ltd. In company

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】 所定の言語で印刷内容を記述した印刷デ
ータを入力して、この印刷データをビットマップデータ
に展開して出力する印刷処理装置において、 前記印刷データを入力し、描画コマンドに変換して出力
する生成処理手段と、 前記描画コマンドを入力し、ビットマップデータを出力
するN(Nは2以上の整数)個の展開処理手段と、 前記展開処理手段の各々に対応する、ビットマップデー
タを一時保持するN個の記憶手段と、 前記N個の記憶手段から選択的にビットマップデータを
読み出す読み出し手段と、 前記読み出し手段によって読み出されたビットマップデ
ータを出力する出力手段とを有し、 前記生成処理手段において生成された描画コマンドは前
記N個の展開処理手段のすべてに入力され、前記N個の
展開処理手段は、入力された描画コマンドに応じて、対
応する特定のスキャンラインのビットマップデータのみ
を選択的に生成し、前記N個の記憶手段のうち、n番目
(0≦n<N)の記憶手段は、n番目の展開処理手段に
よって生成されたビットマップデータを保持し、前記読
み出し手段は、読み出すスキャンラインに対応して前記
記憶手段を切り替えることを特徴とする印刷処理装置。
1. A print processing apparatus for inputting print data describing print content in a predetermined language, developing the print data into bitmap data and outputting the bitmap data, wherein the print data is input and converted into a drawing command (N is an integer of 2 or more) expansion processing means for inputting the drawing command and outputting bitmap data, and a bitmap corresponding to each of the expansion processing means N storage means for temporarily holding data; reading means for selectively reading bitmap data from the N storage means; and output means for outputting bitmap data read by the reading means. The drawing command generated by the generation processing means is input to all of the N development processing means, and the N development processing means Only the bitmap data of the corresponding specific scan line is selectively generated according to the input drawing command, and the n-th (0 ≦ n <N) storage unit of the N storage units is: A print processing apparatus which holds bitmap data generated by an n-th raster processing unit, and wherein the reading unit switches the storage unit in accordance with a scan line to be read.
【請求項2】 前記n番目の展開処理手段は、スキャン
ライン番号lのNによる剰余がnであるスキャンライン
のビットマップデータのみを選択的に生成することを特
徴とする請求項1に記載の印刷処理装置。
2. The apparatus according to claim 1, wherein the n-th expansion processing means selectively generates only bitmap data of a scan line whose remainder of the scan line number 1 by N is n. Print processing device.
【請求項3】 前記読み出し手段は、読み出すスキャン
ラインのライン番号がlのとき、lのNによる剰余の数
をnとすると、n番目の記憶手段から読み出すことを特
徴とする請求項2に記載の印刷処理装置。
3. The apparatus according to claim 2, wherein when the line number of the scan line to be read is 1, and the number of remainders of N by 1 is n, the reading means reads from the n-th storage means. Print processing device.
【請求項4】 前記N個の記憶手段の各々は、前記印刷
データの1ページに相当するビットマップデータを記憶
するための容量の1/Nのサイズを持つことを特徴とす
る請求項1、2または3に記載の印刷処理装置。
4. The apparatus according to claim 1, wherein each of the N storage units has a size of 1 / N of a capacity for storing bitmap data corresponding to one page of the print data. 4. The print processing device according to 2 or 3.
【請求項5】 前記N個の記憶手段は少なくとも2組設
けられ、前記N個の展開処理手段は、前記印刷データの
1ページを分割してなる分割領域の各々に対して生成さ
れるビットマップデータを前記分割領域毎に切り替えて
前記少なくとも2組のN個の記憶手段に供給し、前記記
憶手段の各々は、前記分割領域のビットマップデータを
記憶するための容量の1/Nのサイズを持つことを特徴
とする請求項1に記載の印刷処理装置。
5. The image forming apparatus according to claim 1, wherein at least two sets of the N storage units are provided, and the N expansion processing units include a bit map generated for each of the divided areas obtained by dividing one page of the print data. Data is switched for each of the divided areas and supplied to the at least two sets of N storage means, each of which has a size of 1 / N of a capacity for storing bitmap data of the divided area. The print processing apparatus according to claim 1, further comprising:
JP8312165A 1996-11-22 1996-11-22 Printing-processing apparatus Pending JPH10151815A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8312165A JPH10151815A (en) 1996-11-22 1996-11-22 Printing-processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8312165A JPH10151815A (en) 1996-11-22 1996-11-22 Printing-processing apparatus

Publications (1)

Publication Number Publication Date
JPH10151815A true JPH10151815A (en) 1998-06-09

Family

ID=18026026

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8312165A Pending JPH10151815A (en) 1996-11-22 1996-11-22 Printing-processing apparatus

Country Status (1)

Country Link
JP (1) JPH10151815A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6529289B1 (en) 1999-02-22 2003-03-04 Fuji Xerox Co., Ltd. Image processing apparatus
US6654139B1 (en) 1998-11-11 2003-11-25 Nec Corporation Printer system with image processing system in which drawing operations are executed in parallel
JP2009146251A (en) * 2007-12-17 2009-07-02 Fuji Xerox Co Ltd Image processing device, and image forming system and program
JP2014164551A (en) * 2013-02-26 2014-09-08 Renesas Electronics Corp Image processing LSI and image processing program

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6654139B1 (en) 1998-11-11 2003-11-25 Nec Corporation Printer system with image processing system in which drawing operations are executed in parallel
US6529289B1 (en) 1999-02-22 2003-03-04 Fuji Xerox Co., Ltd. Image processing apparatus
JP2009146251A (en) * 2007-12-17 2009-07-02 Fuji Xerox Co Ltd Image processing device, and image forming system and program
JP4543340B2 (en) * 2007-12-17 2010-09-15 富士ゼロックス株式会社 Image processing apparatus, image forming system, and program
US8154766B2 (en) 2007-12-17 2012-04-10 Fuji Xerox, Co., Ltd. Image processing device, image forming system, image forming method and computer readable medium storing program
JP2014164551A (en) * 2013-02-26 2014-09-08 Renesas Electronics Corp Image processing LSI and image processing program

Similar Documents

Publication Publication Date Title
US6219149B1 (en) Print processing apparatus
EP0575134B1 (en) Method and apparatus for printing according to a graphic language
JP3834935B2 (en) Print processing device
JP3125863B2 (en) Print processing device
JPH10151815A (en) Printing-processing apparatus
JP3885282B2 (en) Print data processing apparatus and print data processing method
JP3640133B2 (en) Print processing device
JP2001096854A (en) Apparatus and method for printing processing
JP4103164B2 (en) Print processing device
JP3204136B2 (en) Image processing apparatus and compression processing method
JP3671633B2 (en) Print data processing device
JPH10157217A (en) Printing-processing apparatus
JP3864535B2 (en) Print processing apparatus and print processing method
JPH11144062A (en) Printing processor
JPH10305639A (en) Print processor and processing method
JPH1110961A (en) Print processor and printing method
JP3700363B2 (en) Print processing device
JPH10147019A (en) Printing process device
JPH10157216A (en) Printing-processing apparatus
JP2000255116A (en) Apparatus for processing printing and method for processing printing
JPH11119930A (en) Printing processor and printing processing method
JP2002024840A (en) Drawing processing device
JP3864520B2 (en) Print processing apparatus and print processing method
JPH10333852A (en) Plotting processor
JPH111032A (en) Printing-processing apparatus