JP2001047673A - Apparatus and method for processing data and memory medium with computer readable program stored thereon - Google Patents

Apparatus and method for processing data and memory medium with computer readable program stored thereon

Info

Publication number
JP2001047673A
JP2001047673A JP11225933A JP22593399A JP2001047673A JP 2001047673 A JP2001047673 A JP 2001047673A JP 11225933 A JP11225933 A JP 11225933A JP 22593399 A JP22593399 A JP 22593399A JP 2001047673 A JP2001047673 A JP 2001047673A
Authority
JP
Japan
Prior art keywords
band
data
intermediate language
area
unit
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
JP11225933A
Other languages
Japanese (ja)
Inventor
Masanari Toda
雅成 戸田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP11225933A priority Critical patent/JP2001047673A/en
Publication of JP2001047673A publication Critical patent/JP2001047673A/en
Pending legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)

Abstract

PROBLEM TO BE SOLVED: To increase a plotting process speed by reducing the number of band divisions at a plotting process. SOLUTION: A graphic sub system 302 converts a printing command from a predetermined application program to intermediate language data and holds the converted intermediate language data in units of pages. In this case, information on a plotting range to be plotted by analyzing the converted intermediate data is divided to a plurality of regions and registered. A spool sub system 303 analyzes each registered plotting range information, determines a variable band memory region where the intermediate language data is to be plotted, bit map develops the held intermediate language data in units of band memory regions to a band memory 3038, generates a printing command from the registered plotting range information and bit map data, and sends the command to a printing apparatus 100.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、所定の通信媒体を
介して印刷装置と通信可能なデータ処理装置に係り、特
に、中間言語データをバンドメモリを介して展開される
イメージデータと描画範囲情報とから印刷装置へ転送す
べき印刷命令を生成処理可能なデータ処理装置およびデ
ータ処理方法およびコンピュータが読み出し可能なプロ
グラムを格納した記憶媒体に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data processing device capable of communicating with a printing device via a predetermined communication medium, and more particularly, to image data and drawing range information developed from intermediate language data through a band memory. The present invention relates to a data processing device and a data processing method capable of generating and processing a print command to be transferred from a computer to a printing device, and a storage medium storing a computer-readable program.

【0002】[0002]

【従来の技術】図13は、従来のデータ処理装置を適用
した印刷システムの構成を説明するブロック図であり、
一般的には、図13に示すようにセントロニクスインタ
フェースといったパラレル通信手段やネットワーク通信
手段を介してホストコンピュータ200と印刷装置10
0とが接続されて印刷システムが構成される。
2. Description of the Related Art FIG. 13 is a block diagram for explaining a configuration of a printing system to which a conventional data processing device is applied.
Generally, as shown in FIG. 13, the host computer 200 and the printing apparatus 10 are connected via parallel communication means such as a Centronics interface or network communication means.
0 are connected to form a printing system.

【0003】ホストコンピュータ200側では、ワード
プロセッサや表計算のようなアプリケーションソフトウ
エア(アプリケーション)201(以下アプリと略称)
がWindows(米国Microsoft社の登録商
標)のようないわゆる基本ソフトの上で動作している。
On the host computer 200 side, application software (application) 201 such as a word processor or a spreadsheet (hereinafter abbreviated as an application)
Operates on so-called basic software such as Windows (registered trademark of Microsoft Corporation, USA).

【0004】こうしたアプリケーションから印刷を行う
場合は、そのプログラム内から、基本ソフトが提供する
いくつかのサブシステムのうちグラフィックサブシステ
ム202の機能を用いて行う。このグラフィックサブシ
ステムは、例えばWindowsでは、GDI(Gra
phic Device Interface)20
21と呼ばれておりディスプレイやプリンタに対する画
像情報の処理を司っている。なお、220はディスプレ
イモニタ、210はキーボード、211はマウスであ
る。
[0004] When printing is performed from such an application, the printing is performed using the function of the graphic subsystem 202 among several subsystems provided by the basic software from the program. This graphics subsystem is, for example, in Windows, GDI (Gra
phy Device Interface) 20
21 and is responsible for processing image information for a display and a printer. Reference numeral 220 denotes a display monitor, 210 denotes a keyboard, and 211 denotes a mouse.

【0005】このGDI2021は、ディスプレイやプ
リンタといった各デバイス毎の依存性を吸収するために
デバイスドライバと呼ばれるモジュールを動的にリンク
し、それぞれのデバイスに対する出力処理を行う。プリ
ンタに対するこのモジュールはプリンタドライバ202
2と呼ばれる。
The GDI 2021 dynamically links modules called device drivers in order to absorb the dependence of each device such as a display and a printer, and performs output processing for each device. This module for the printer is the printer driver 202
Called 2.

【0006】このプリンタドライバ2022では、その
能力や機能などに応じてあらかじめデバイスドライバに
実装することが決められているDDI(Device
Driver Interface)と呼ばれる関数
群を用意する必要がある。アプリのAPI(Appli
cation Programing Interf
ace)コールをGDI2021がデバイスドライバ用
にデータ変換を行い、このDDI関数群が適宜GDI2
021からコールされ所定の印刷処理が実行されるよう
な仕組みになっている。
In the printer driver 2022, a DDI (Device) which is previously determined to be installed in a device driver in accordance with its capability, function, and the like is determined.
It is necessary to prepare a function group called “Driver Interface”. Application API (Appli
Cation Programming Interf
ace) The GDI 2021 performs data conversion for the device driver for the call, and the DDI function group
021 and a predetermined print process is executed.

【0007】GDI2021では、このようにプリンタ
ドライバ2022を介してアプリからの印刷要求をシー
ケンシャルに処理している。
The GDI 2021 sequentially processes print requests from applications via the printer driver 2022 in this way.

【0008】このプリンタドライバの処理系は、PDL
モードタイプ2023とイメージモードタイプ2024
〜2026の2種類に大別できる。
The processing system of this printer driver is a PDL.
Mode type 2023 and image mode type 2024
262026.

【0009】PDLモードタイプとは、印刷装置側にP
DL(Printer Description L
anguage)と呼ばれる制御コマンドを処理可能な
コントローラを搭載するもの向けで、プリンタドライバ
2022はシステムからDDIを介して渡される情報を
PDLのコマンドに変換し次第、GDI2028を介し
てプリンタに送出する。
[0009] The PDL mode type means that a P
DL (Printer Description L)
The printer driver 2022 sends the information to the printer via the GDI 2028 as soon as the information passed from the system via the DDI is converted into a PDL command.

【0010】プリンタドライバ2022の処理はDDI
で受け取ったデータからコマンドを生成するだけなの
で、プリンタドライバにとっては軽い処理といえる。P
DLモードタイプの特徴として、プリンタのPDLコマ
ンドを解析する能力が高ければGDIから抽象度の高い
データを受け取り、そのまま送出できるので通常のペー
ジ印刷においては転送するデータサイズを小さくするこ
とが可能である。
The processing of the printer driver 2022 is a DDI
Since the command is only generated from the data received by the printer driver, it can be said that the processing is light for the printer driver. P
As a feature of the DL mode type, if the ability to analyze the PDL command of the printer is high, data with a high degree of abstraction can be received from the GDI and transmitted as it is, so that the data size to be transferred can be reduced in normal page printing. .

【0011】一方、イメージモードタイプでは、印刷装
置側では高度な描画処理は行わないよう、プリンタドラ
イバ側で確保したメモリ空間上に印刷イメージの展開を
行い、それを印刷装置で直接印刷できる形態に変換し、
インタフェース2029を介して印刷装置100に送り
印刷するものである。
On the other hand, in the image mode type, a print image is developed in a memory space secured by a printer driver so that a high-level drawing process is not performed on the print device, and the print image can be directly printed by the print device. Converted,
The print is sent to the printing apparatus 100 via the interface 2029.

【0012】プリンタドライバの処理としては、PDL
モードタイプ同様に、GDIからDDIインタフェース
を介して渡されたデータを使ってイメージモード用プリ
ンタドライバ2024〜2026がバンドメモリ202
7に描画処理を行い、GDI2028を介して印刷装置
にビットマップデータを送出するものである。
The processing of the printer driver includes PDL
Similarly to the mode type, the image mode printer drivers 2024 to 2026 use the data passed from the GDI via the DDI interface to the band memory 202.
7 performs drawing processing, and sends bitmap data to the printing apparatus via the GDI 2028.

【0013】イメージモードの特徴として、高解像度カ
ラーイメージや複雑なグラフィックスデータの描画処理
が高速である。一方文字や、簡単な図形でもページ全体
のイメージデータを送ることになるため、高速印刷は苦
手である。
As a feature of the image mode, the drawing process of a high-resolution color image or complicated graphics data is performed at high speed. On the other hand, even for characters and simple figures, image data of the entire page is sent, so high-speed printing is not good.

【0014】なお、両モード共、描画処理を行うには、
メモリ領域が必要である。さらにカラープリンタではR
GB各色8ビットで600DPI,A4フルページ分の
メモリを確保しようとすると96Mbyte必要であ
り、現状ではホストマシンでも確保することは困難であ
る。
In both modes, in order to perform a drawing process,
Requires memory area. For color printers, R
In order to secure 600 DPI and A4 full page memory with 8 bits for each GB color, 96 Mbytes are required, and at present it is difficult to secure even a host machine.

【0015】そこで、カラープリンタの描画処理は出力
形式であるYMCK各色1or2bitの色空間を使
い、さらにページをいくつかの領域に分割したバンドメ
モリを使うことで描画処理用メモリの削減を行ってい
る。
Therefore, the drawing process of the color printer uses a color space of 1 or 2 bits for each color of YMCK, which is an output format, and further uses a band memory in which a page is divided into several regions to reduce the drawing process memory. .

【0016】このように、1ページを複数のバンドに分
割して描画処理を行うことをバンディング処理と呼んで
いる。バンディング処理は、OSまたはプリンタドライ
バが1ページ分の描画命令を保持し、各バンドに必要な
印刷命令のみを処理することで各バンドの描画処理を実
現するものである。
Thus, dividing a page into a plurality of bands and performing drawing processing is called banding processing. In the banding process, the OS or the printer driver holds a drawing command for one page and processes only a printing command necessary for each band, thereby realizing a drawing process for each band.

【0017】通常、描画処理で用いるバンドメモリは、
有効印字範囲全体をバンド領域に分割し、描画処理もそ
の単位で行っている。
Usually, the band memory used in the drawing process is
The entire effective print range is divided into band areas, and the drawing processing is also performed in the unit.

【0018】図14,図15は、従来のデータ処理装置
を適用した印刷システムにおけるバンド描画処理状態を
説明する模式図である。
FIGS. 14 and 15 are schematic diagrams for explaining a band drawing processing state in a printing system to which a conventional data processing apparatus is applied.

【0019】図において、例えばページ400をイメー
ジモードで処理する場合、ページ全体401を処理可能
なバンドメモリサイズで分割したバンド単位で区切り、
それぞれのバンドで描画処理を実施する。
In the figure, for example, when a page 400 is processed in the image mode, the entire page 401 is divided by a band unit divided by a band memory size that can be processed.
The drawing process is performed for each band.

【0020】1バンド分の描画処理終了後、バンドメモ
リ全体のスキャンを行い、各バンド内の描画領域の最外
郭を求めその範囲のビットマップデータを印刷命令とし
て印刷装置に転送する。この例の場合、描画オブジェク
トが関係しているのは6バンドあり、印刷命令403〜
408として転送することになる。
After the drawing process for one band is completed, the entire band memory is scanned, the outermost edge of the drawing area in each band is obtained, and the bitmap data in that range is transferred to the printing apparatus as a print command. In this example, the drawing objects are related to six bands, and the print commands 403 to
408.

【0021】[0021]

【発明が解決しようとする課題】従来のホストコンピュ
ータ側における印刷制御においては、,に示す問題
点があった。
In the conventional print control on the host computer side, there are the following problems.

【0022】常にバンドサイズが固定のため、描画面
積が小さくても、細かくバンディング処理が必要となる
ため、例えばバンド単位で分割できない描画オブジェク
トをバンディング処理する場合に、何度も描画処理を繰
り返す必要があり、オーバヘッド増加に繋がり、描画処
理効率が低下する。
Since the band size is always fixed, a fine banding process is required even if the drawing area is small. For example, when performing a banding process on a drawing object that cannot be divided in band units, the drawing process needs to be repeated many times. This leads to an increase in overhead and a reduction in drawing processing efficiency.

【0023】具体例を示せば、図15の(A)に示すよ
うに、描画オブジェクト1201はパスフィル命令であ
るが、このように複数バンドに跨ったときに、Band
2〜Band6全てでバスの展開命令(パスフィル命
令)1202の処理を行わねばならず、バンド数は極力
減らしたいにもかかわらずオーバヘッドが増加してしま
う。
As a specific example, as shown in FIG. 15A, the drawing object 1201 is a pass-fill command.
The processing of the bus expansion instruction (passfill instruction) 1202 must be performed in all of the second to sixth bands, and the overhead increases despite the desire to reduce the number of bands as much as possible.

【0024】転送データサイズを減らすために、バン
ド単位で描画領域の最外郭をスキャンして求めているた
め、メモリスキャン時間がかかる。また、モノクロイメ
ージモード時は1バンド単位で処理しているため、無駄
な領域も送りやすい。
In order to reduce the transfer data size, since the outermost edge of the drawing area is determined by scanning in band units, a memory scan time is required. Further, in the monochrome image mode, processing is performed in units of one band, so that useless areas can be easily sent.

【0025】特に、図15の(B)に示すようなページ
1203をモノクロ1ビットイメージモードで処理する
場合、4Mバイトの描画用メモリがある場合バンド数は
「1」となる。そのとき、描画オブジェクト1204,
1205の最外郭矩形1206を描画範囲とすることと
なり、無駄な部分も印刷命令となって印刷装置に対して
送られて、印刷装置側の印刷命令解析処理負担が重くな
り、印刷処理効率を低下させていた。
In particular, when a page 1203 as shown in FIG. 15B is processed in the monochrome 1-bit image mode, the number of bands is "1" when there is a 4 Mbyte drawing memory. At that time, the drawing object 1204,
The outermost rectangle 1206 of 1205 is set as the drawing range, and the useless portion is also sent to the printing apparatus as a printing command, so that the printing command analysis processing load on the printing apparatus increases, and the printing processing efficiency decreases. I was letting it.

【0026】本発明は、上記の問題点を解決するために
なされたもので、本発明の目的は、所定のアプリケーシ
ョンプログラムからの印刷命令を中間言語データに変換
し、変換された中間言語データをページ単位に保持する
際に、変換される中間言語データを解析して描画すべき
描画範囲情報を複数の領域に分けて登録し、登録された
各描画範囲情報を解析して前記中間言語データを描画す
べき可変域のバンドメモリ領域を決定し、保持された中
間言語データに基づくビットマップイメージを決定した
バンドメモリ領域単位分描画処理したら、登録した描画
範囲情報と描画されるビットマップデータとから決定さ
れたバンド領域数分の印刷命令を生成して印刷装置に送
出することにより、確保可能なバンドメモリ容量内でイ
メージモードの描画処理時におけるバンド領域が可変領
域として確保可能となり、かつ、バンド分割数を減らす
ことが可能となり、印刷装置に転送すべき印刷命令数を
格段に削減でき印刷装置における描画処理速度を高速化
できること、また、1ページ内の描画範囲情報を仮想さ
れるバンド単位で細かく保持することにより、印刷命令
作成時に高速に必要な印刷領域だけを印刷命令として生
成可能となり、印刷装置が処理すべき印刷命令数が削減
され、印刷処理開始までの処理時間を短縮することがで
きるデータ処理装置およびデータ処理方法およびコンピ
ュータが読み出し可能なプログラムを格納した記憶媒体
を提供することである。
An object of the present invention is to solve the above-mentioned problems, and an object of the present invention is to convert a print command from a predetermined application program into intermediate language data and convert the converted intermediate language data. When holding in the unit of page, the intermediate language data to be converted is analyzed and the drawing range information to be drawn is divided into a plurality of regions and registered, and each registered drawing range information is analyzed to convert the intermediate language data. After the band memory area of the variable area to be drawn is determined and the bitmap image based on the held intermediate language data is drawn for the determined band memory area unit, the drawing range information registered and the bitmap data to be drawn are obtained. By generating print commands for the determined number of band areas and sending them to the printing device, the image mode drawing can be performed within the available band memory capacity. The band area at the time of processing can be secured as a variable area, and the number of band divisions can be reduced, the number of print commands to be transferred to the printing apparatus can be significantly reduced, and the drawing processing speed in the printing apparatus can be increased, Also, by storing the drawing range information in one page in units of virtual bands in detail, it is possible to generate only a necessary print area as a print command at a high speed at the time of creating a print command, and the number of print commands to be processed by the printing apparatus. It is an object of the present invention to provide a data processing device, a data processing method, and a storage medium storing a computer-readable program, which can reduce the processing time until the start of print processing.

【0027】[0027]

【課題を解決するための手段】本発明に係る第1の発明
は、所定の通信媒体を介して印刷装置と通信可能なデー
タ処理装置であって、所定のアプリケーションプログラ
ムからの印刷命令を中間言語データに変換する第1の変
換手段(図2に示すプリンタドライバ3022)と、前
記第1の変換手段により変換された中間言語データをペ
ージ単位に保持する保持手段(図2に示すPDF303
1がメモリ上に保持させる)と、前記第1の変換手段に
より変換される中間言語データを解析して描画すべき描
画範囲情報を複数の領域に分けて登録する登録手段(図
2に示すチェックモジュール3023によりプレチェッ
クファイル3032としてメモリ上に登録処理する)
と、前記登録手段により登録された各描画範囲情報を解
析して前記中間言語データを描画すべき可変域のバンド
メモリ領域を決定する決定手段(図2に示すデスプーラ
3033)と、前記保持手段に保持された中間言語デー
タに基づくビットマップイメージを前記決定手段により
決定したバンドメモリ領域単位分描画処理する描画手段
(図2に示すドライバ3035〜3037のいずれか)
と、前記登録手段により登録した描画範囲情報と前記描
画手段により描画されるビットマップデータとから決定
されたバンド領域数分の印刷命令を生成して前記印刷装
置に送出する第2の変換手段(図2に示すドライバ30
35〜3037のいずれか)とを有するものである。
According to a first aspect of the present invention, there is provided a data processing apparatus capable of communicating with a printing apparatus via a predetermined communication medium, wherein a printing instruction from a predetermined application program is transmitted to an intermediate language. First conversion means (printer driver 3022 shown in FIG. 2) for converting data into data, and holding means (PDF 303 shown in FIG. 2) for holding the intermediate language data converted by the first conversion means in page units.
And a registration unit for analyzing the intermediate language data converted by the first conversion unit and registering the drawing range information to be drawn in a plurality of areas (see the check shown in FIG. 2). The registration processing is performed on the memory as a precheck file 3032 by the module 3023.)
Determining means (despooler 3033 shown in FIG. 2) for analyzing each drawing range information registered by the registration means and determining a variable band memory area in which the intermediate language data is to be drawn; Drawing means (one of the drivers 3035 to 3037 shown in FIG. 2) for drawing a bitmap image based on the held intermediate language data for the band memory area unit determined by the determination means.
And a second conversion unit for generating print commands for the number of band areas determined from the drawing range information registered by the registration unit and the bitmap data drawn by the drawing unit, and sending the print commands to the printing apparatus. Driver 30 shown in FIG.
35-3037).

【0028】本発明に係る第2の発明は、前記登録手段
は、ページが複数の仮想バンド領域に分割された各仮想
バンド領域に対する複数の描画範囲から特定される最外
郭矩形を描画範囲として複数領域分登録するものであ
る。
According to a second aspect of the present invention, in the image processing apparatus, the registration means sets a plurality of outermost rectangles specified from a plurality of drawing ranges for each virtual band area obtained by dividing the page into a plurality of virtual band areas as a drawing area. The registration for the area is performed.

【0029】本発明に係る第3の発明は、前記決定手段
は、1ページ分の中間言語データを前記保持手段に保持
する時に、描画領域の幅に応じて描画処理に用いるバン
ドメモリ領域のバンド高さを変更するものである。
According to a third aspect of the present invention, when the determining means holds one page of intermediate language data in the holding means, the band of a band memory area used for a drawing process according to the width of the drawing area is stored. It is to change the height.

【0030】本発明に係る第4の発明は、前記第2の変
換手段は、前記保持手段に保持した描画範囲情報と前記
バンドメモリ領域とを結び付け有効描画範囲を印刷する
ための所定の印刷命令を複数領域分生成するものであ
る。
According to a fourth aspect of the present invention, in the image processing apparatus, the second converting means links the drawing range information held in the holding means with the band memory area and prints a predetermined printing command for printing an effective drawing range. For a plurality of regions.

【0031】本発明に係る第5の発明は、前記登録手段
は、前記描画手段による描画結果が白画素以外となる描
画処理命令時は、描画範囲の最外郭矩形を更新し、前記
描画手段による描画結果が白画素となる描画命令時は、
描画範囲の最外郭矩形を削減するものである。
In a fifth aspect according to the present invention, the registration means updates the outermost rectangle of the drawing range when the drawing processing command causes the drawing result by the drawing means to be other than a white pixel, At the time of a drawing command in which the drawing result is a white pixel,
This is to reduce the outermost rectangle of the drawing range.

【0032】本発明に係る第6,第11の発明は、所定
の通信媒体を介して印刷装置と通信可能なデータ処理装
置におけるデータ処理方法であって、あるいは所定の通
信媒体を介して印刷装置と通信可能なデータ処理装置を
制御するコンピュータが読み出し可能なプログラムを格
納した記憶媒体であって、所定のアプリケーションプロ
グラムからの印刷命令を中間言語データに変換する第1
の変換工程(図示しない)と、前記第1の変換工程によ
り変換された中間言語データをページ単位に保持する保
持工程と、前記第1の変換工程により変換される中間言
語データを解析して描画すべき描画範囲情報を複数の領
域に分けて登録する登録工程(図7に示すステップS7
01〜S704)と、前記登録工程により登録された各
描画範囲情報を解析して前記中間言語データを描画すべ
き可変域のバンドメモリ領域を決定する決定工程(図1
0に示すステップS801〜S814)と、前記保持工
程に保持された中間言語データに基づくビットマップイ
メージを前記決定工程により決定したバンドメモリ領域
単位分描画処理する描画工程(図示しない)と、前記登
録工程により登録した描画範囲情報と前記描画手段によ
り描画されるビットマップデータとから決定されたバン
ド領域数分の印刷命令を生成して前記印刷装置に送出す
る第2の変換工程(図示しない)とを有するものであ
る。
The sixth and eleventh inventions according to the present invention relate to a data processing method in a data processing device capable of communicating with a printing device via a predetermined communication medium, or a printing device via a predetermined communication medium. A storage medium storing a computer readable program that controls a data processing device capable of communicating with a first processing unit that converts a print command from a predetermined application program into intermediate language data
Conversion step (not shown), a holding step of holding the intermediate language data converted by the first conversion step in page units, and rendering by analyzing the intermediate language data converted by the first conversion step A registration step of registering the drawing range information to be divided into a plurality of areas (step S7 shown in FIG. 7)
01 to S704) and a determining step of analyzing each drawing range information registered in the registration step to determine a variable band memory area in which the intermediate language data is to be drawn (FIG. 1).
0), a drawing step (not shown) of drawing a bitmap image based on the intermediate language data held in the holding step for the band memory area unit determined in the determination step, and the registration step. A second conversion step (not shown) of generating print commands for the number of band areas determined from the drawing range information registered in the step and the bitmap data drawn by the drawing means and sending the print commands to the printing apparatus; It has.

【0033】本発明に係る第7,第12の発明は、前記
登録工程は、ページが複数の仮想バンド領域に分割され
た各仮想バンド領域に対する複数の描画範囲から特定さ
れる最外郭矩形を描画範囲として複数領域分登録するも
のである。
In a seventh and twelfth aspect of the present invention, in the registration step, the outermost rectangle specified by a plurality of drawing ranges for each virtual band area obtained by dividing a page into a plurality of virtual band areas is drawn. A plurality of areas are registered as ranges.

【0034】本発明に係る第8,第13の発明は、前記
決定工程は、1ページ分の中間言語データを前記メモリ
に保持する時に、描画領域の幅に応じて描画処理に用い
るバンドメモリ領域のバンド高さを変更するものであ
る。
According to an eighth or thirteenth aspect of the present invention, in the determining step, when holding one page of intermediate language data in the memory, a band memory area used for a drawing process according to a width of the drawing area. Is to change the band height.

【0035】本発明に係る第9,第14の発明は、前記
第2の変換工程は、前記メモリに保持した描画範囲情報
と前記バンドメモリ領域とを結び付け有効描画範囲を印
刷するための所定の印刷命令を複数領域分生成するもの
である。
In a ninth and a fourteenth invention according to the present invention, in the second conversion step, the predetermined conversion step for connecting the drawing range information held in the memory to the band memory area to print an effective drawing range. The print command is generated for a plurality of areas.

【0036】本発明に係る第10,第15の発明は、前
記登録工程は、前記描画工程による描画結果が白画素以
外となる描画処理命令時は、描画範囲の最外郭矩形を更
新し、前記描画手段による描画結果が白画素となる描画
命令時は、描画範囲の最外郭矩形を削減するものであ
る。
In a tenth and a fifteenth aspect according to the present invention, in the registration step, at the time of a drawing processing command in which a drawing result in the drawing step is other than a white pixel, the outermost rectangle of the drawing range is updated. At the time of a drawing command in which the drawing result by the drawing means is a white pixel, the outermost rectangle of the drawing range is reduced.

【0037】[0037]

【発明の実施の形態】〔第1実施形態〕本実施形態の構
成を説明する前に、本発明に係るデータ処理装置を提供
可能な印刷システムのカラーレーザービームプリンタ
(以下「カラーLBP」と記述)の構成について図1を
参照しながら説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS [First Embodiment] Before describing the configuration of the present embodiment, a color laser beam printer (hereinafter referred to as "color LBP") of a printing system capable of providing a data processing apparatus according to the present invention. ) Will be described with reference to FIG.

【0038】図1は、本発明に係るデータ処理装置を提
供可能な印刷システムのカラーレーザービームプリンタ
の構成を説明する断面図であり、例えば600ドット/
インチ(dpi)の解像度を有し、各色成分各画素が8
ビットで表現された多値データに基づいて画像記録を行
うカラーLBPの場合に対応する。
FIG. 1 is a sectional view for explaining the structure of a color laser beam printer of a printing system which can provide a data processing apparatus according to the present invention.
It has a resolution of inches (dpi) and each pixel of each color component is 8
This corresponds to the case of a color LBP in which an image is recorded based on multi-value data expressed by bits.

【0039】図1において、100はカラーLBPの印
刷装置であり、外部に接続されているホストコンピュー
タなどから供給されるプリントデータ(文字コードや画
像データ等)及び制御コードから成る印刷情報を入力し
て記憶するとともに、それらの情報に従って対応する文
字パターンやイメージ等を作成し記憶媒体である記録紙
上に像を形成する装置である。
In FIG. 1, reference numeral 100 denotes a color LBP printing apparatus which inputs print data (character codes, image data, etc.) and print information comprising control codes supplied from an externally connected host computer or the like. This is an apparatus that creates and stores corresponding character patterns and images in accordance with the information and forms an image on recording paper as a storage medium.

【0040】110はフォーマッタ制御部で、ホストコ
ンピュータから供給される印刷情報を解析し印刷イメー
ジの生成処理を行うとともにカラーLBP本体100の
制御を行う。また、フォーマッタ制御部110は、ユー
ザによる操作およびユーザに対する状態通知のためのス
イッチおよびLED表示器等が配されているオペレーシ
ョンパネル部120と接続されており、そのオペレーシ
ョンパネル部120は印刷装置100の外装の一部とし
て配設されている。
Reference numeral 110 denotes a formatter control unit which analyzes print information supplied from the host computer, performs print image generation processing, and controls the color LBP main body 100. Further, the formatter control unit 110 is connected to an operation panel unit 120 in which switches for operation by the user and notification of the status to the user, an LED display, and the like are arranged. It is provided as part of the exterior.

【0041】また、フォーマッタ制御部110において
生成された最終的な印刷イメージはビデオ信号として出
力制御部130に送出され、出力制御部130は印刷装
置100の不図示の各種センサからの状態入力とともに
光学ユニット140および各種駆動系機構部に対し制御
信号を出力し印刷装置100としての印刷処理を制御を
司るものである。
The final print image generated by the formatter control unit 110 is sent to the output control unit 130 as a video signal, and the output control unit 130 outputs the optical signal together with the status input from various sensors (not shown) of the printing apparatus 100. A control signal is output to the unit 140 and various drive system mechanisms to control the printing process of the printing apparatus 100.

【0042】給紙カセット161から給紙された用紙P
は、その先端をグリッパ154fにより狭持されて、転
写ドラム154の外周に保持される。光学ユニット14
0により感光ドラム151上に形成された各色の潜像
は、イエロー(Y),マゼンタ(M),シアン(C),
ブラック(B)の各色現像器Dy,Dm,Dc,Dbに
より現像化されて、転写ドラム外周の用紙に複数回転写
されて多色画像が形成される。その後、用紙Pは転写ド
ラム154より分離されて、定着ユニット155で定着
され、排紙部159より排紙トレー部160に排出され
る。ここで各色の現像器Dy,Dm,Dc,Dbは、そ
の両端に回転支軸を有し、各々がその軸を中心に回転可
能となるように現像器選択機構部152に保持される。
The sheet P fed from the sheet cassette 161
Is held on the outer periphery of the transfer drum 154 with its tip held by a gripper 154f. Optical unit 14
0, the latent images of each color formed on the photosensitive drum 151 are yellow (Y), magenta (M), cyan (C),
Each of the black (B) color developing units Dy, Dm, Dc, and Db is developed and transferred to a sheet around the transfer drum a plurality of times to form a multicolor image. Thereafter, the sheet P is separated from the transfer drum 154, is fixed by the fixing unit 155, and is discharged from the discharge unit 159 to the discharge tray unit 160. Here, the developing devices Dy, Dm, Dc, and Db of the respective colors have rotation support shafts at both ends thereof, and are held by the developing device selection mechanism 152 so that each can rotate around the shaft.

【0043】これによって、各現像器Dy,Dm,D
c,Dbは、図1に示すように現像器選択のために現像
器選択機構部152が回転軸152aを中心にして回転
しても、その姿勢を一定に維持できる構成をとってい
る。選択された現像器が現像位置に移動後、現像器選択
機構部152は現像器と一体で支点153bを中心にし
て(選択機構保持フレーム153がソレノイド153a
により感光ドラム151方向へ引っ張られ、感光ドラム
151方向へ移動し現像処理が行われるように構成され
ている。
Thus, each of the developing devices Dy, Dm, D
As shown in FIG. 1, c and Db have a configuration in which the posture can be maintained constant even if the developing device selection mechanism 152 rotates about the rotation shaft 152a for developing device selection. After the selected developing device is moved to the developing position, the developing device selecting mechanism 152 is integrated with the developing device about the fulcrum 153b (the selecting mechanism holding frame 153 is connected to the solenoid 153a).
, Is pulled in the direction of the photosensitive drum 151, moves in the direction of the photosensitive drum 151, and is subjected to development processing.

【0044】次に、帯電器156によって感光ドラム1
51が所定の極性に均一に帯電される。フォーマッタ制
御部110において画像イメージとして展開された印刷
情報は、対応するパターンのビデオ信号に変換されレー
ザドライバに出力され半導体レーザ141を駆動する。
Next, the photosensitive drum 1 is charged by the charger 156.
51 is uniformly charged to a predetermined polarity. The print information developed as an image in the formatter control unit 110 is converted into a video signal of a corresponding pattern, output to a laser driver, and drives the semiconductor laser 141.

【0045】入力されたビデオ信号に応じて半導体レー
ザ141から発射されるレーザ光はオンオフ制御され
(さらにスキャナモータ143によって高速回転するポ
リゴンミラー142で左右方向に振らされ、ポリゴンレ
ンズ144、反射鏡145を介して感光ドラム151上
を走査露光する。これにより、感光ドラム151上には
画像パターンの静電潜像が形成されることになる。
The laser light emitted from the semiconductor laser 141 in accordance with the input video signal is controlled to be turned on and off (further, the laser light is swung right and left by a polygon mirror 142 rotating at a high speed by a scanner motor 143, a polygon lens 144 and a reflection mirror 145). The scanning exposure is performed on the photosensitive drum 151 through the above process, whereby an electrostatic latent image of an image pattern is formed on the photosensitive drum 151.

【0046】次に、例えば、M(マゼンタ)色の静電潜
像がM(マゼンタ)色の現像器Dmにより現像され、感
光ドラム151上にM(マゼンタ)色の第1のトナー像
が形成される。一方、所定のタイミングで転写紙Pが給
紙され、トナーと反対極性(例えばプラス極性)の転写
バイアス電圧が転写ドラム154に印加され、感光ドラ
ム151上の第1のトナー像が転写紙Pに転写されると
共に、転写紙Pが転写ドラム154の表面に静電吸着さ
れる。
Next, for example, an M (magenta) electrostatic latent image is developed by an M (magenta) developer Dm to form a first M (magenta) toner image on the photosensitive drum 151. Is done. On the other hand, the transfer paper P is fed at a predetermined timing, a transfer bias voltage of the opposite polarity (for example, positive polarity) to the toner is applied to the transfer drum 154, and the first toner image on the photosensitive drum 151 is transferred to the transfer paper P. At the same time as the transfer, the transfer paper P is electrostatically attracted to the surface of the transfer drum 154.

【0047】その後、感光ドラム151はクリーナー1
57によって残留するM(マゼンタ)色トナーが除去さ
れ、次の色の潜像形成及び現像行程に備える。以下同様
の手順によってC(シアン)、Y(イエロ)、B(ブラ
ック)の順で第2,3,4色目のトナー像の転写が行わ
れる。但し、各色の転写時には、転写ドラム154には
前回よりも高いバイアス電圧が印加される点は異なる。
Thereafter, the photosensitive drum 151 is connected to the cleaner 1
57 removes the remaining M (magenta) color toner and prepares for the next color latent image formation and development process. Thereafter, the toner images of the second, third, and fourth colors are transferred in the order of C (cyan), Y (yellow), and B (black) in the same procedure. However, the difference is that a higher bias voltage is applied to the transfer drum 154 at the time of transfer of each color.

【0048】4色のトナー像が重畳転写された転写紙P
の先端部が分離位置に近ずくと、分離爪158が接近し
てその先端が転写ドラム154の表面に接触し、転写紙
Pを転写ドラム154から分離させる。分離された転写
紙Pは定着ユニット155に搬送され、ここで転写紙上
のトナー像が定着されて排紙トレイ160上に排出され
る。本実施形態のカラーレーザビームプリンタは、以上
のような画像形成過程を経て600ドット/インチ(d
pi)の解像度で画像出力を行う。
Transfer paper P on which four color toner images are superimposedly transferred
When the leading end of the transfer paper P approaches the separation position, the separation claw 158 approaches and the leading end contacts the surface of the transfer drum 154 to separate the transfer paper P from the transfer drum 154. The separated transfer paper P is transported to the fixing unit 155, where the toner image on the transfer paper is fixed, and is discharged onto the discharge tray 160. The color laser beam printer according to the present embodiment performs 600 dots / inch (d) through the above-described image forming process.
An image is output at a resolution of pi).

【0049】なお、本発明を適用可能なプリンタは、カ
ラーLBPに限られるものではなく、インクジェットプ
リンタやサーマルプリンタ等、他のプリント方式のカラ
ープリンタでもよい。
The printer to which the present invention can be applied is not limited to a color LBP, but may be a color printer of another printing system such as an ink jet printer or a thermal printer.

【0050】次に、印刷装置100におけるフォーマッ
タ制御部110について図3を用いて説明する。
Next, the formatter control section 110 in the printing apparatus 100 will be described with reference to FIG.

【0051】図2は、図1に示したフォーマッタ制御部
110の詳細構成を説明するブロック図である。以下、
構成および動作について説明する。
FIG. 2 is a block diagram for explaining the detailed configuration of the formatter control section 110 shown in FIG. Less than,
The configuration and operation will be described.

【0052】このフォーマット制御部110は、通常は
PDLコントローラなどとも呼ばれている部分であり、
ホストコンピュータとの接続手段であるところのインタ
フェース(I/F)部111と、受信データ等を一時的
に保持管理するための受信バッファ1121、送信デー
タ等を一時的に保持管理するための送信バッファ112
2、印刷データの解析を司るコマンド解析部113、印
刷制御処理実行部114、描画処理実行部115、ペー
ジメモリ116等より構成されている。
The format control unit 110 is a part usually called a PDL controller or the like.
An interface (I / F) unit 111 serving as connection means with the host computer; a reception buffer 1121 for temporarily holding and managing received data and the like; a transmission buffer for temporarily holding and managing transmission data and the like 112
2. It is composed of a command analysis unit 113 for analyzing print data, a print control processing execution unit 114, a drawing processing execution unit 115, a page memory 116, and the like.

【0053】インタフェース(I/F)部111は、ホ
ストコンピュータ300との印刷データの送受信を行う
通信手段であり、通信プロトコルとしてIEEE−12
84に準拠した通信を可能とするものである。但し本発
明では、この通信手段に限定するものでなく、ネットワ
ークを介してさまざまなプロトコルによる接続であって
もよいし、IEEE−1394に準じた通信手段であっ
てもよい。
An interface (I / F) unit 111 is a communication means for transmitting and receiving print data to and from the host computer 300, and uses IEEE-12 as a communication protocol.
This enables communication conforming to G.84. However, in the present invention, the present invention is not limited to this communication means, and may be a connection using various protocols via a network or a communication means conforming to IEEE-1394.

【0054】このインタフェース部111を通して受信
した印刷データは、そのデータを一時的に保持する記憶
手段である受信バッファ1121に逐次蓄積され、必要
に応じてコマンド解析部113または描画処理実行部1
15によって読み出され処理される。コマンド解析部1
13は、各PDLコマンド体系や印刷ジョブ制御言語に
準じた制御プログラムにより構成されており、文字印
字、図形、イメージなどの描画に関する印刷データの解
析結果は、描画処理実行部115に指示を与えて処理
し、給紙選択やリセット命令などの描画以外のコマンド
は、印刷制御処理実行部114に指示を出し処理する。
The print data received through the interface unit 111 is sequentially stored in a reception buffer 1121 which is a storage unit for temporarily storing the data, and the command analysis unit 113 or the drawing processing execution unit 1
15 and processed. Command analyzer 1
Reference numeral 13 includes a control program conforming to each PDL command system and a print job control language. The analysis result of print data relating to drawing of character printing, graphics, images, and the like is given to the drawing processing execution unit 115 by giving an instruction. Processing is performed, and commands other than drawing, such as a sheet feed selection and a reset command, are instructed to the print control processing execution unit 114 to be processed.

【0055】描画処理実行部115では、文字やイメー
ジの各描画オブジェクトをページメモリ116に逐次展
開して行くレンダラである。図1で前述したカラーLB
Pに対しては、MCYKの面順次でページデータを送出
する必要があるが、標準状態では、そのために必要なメ
モリをすべて確保するわけではなく、1プレーン(1o
r2bit/Pixel)の数分の1のバンド領域とし
てメモリが確保され、そのバンド領域を使いまわして画
像をエンジン速度に同期して処理するように構成されて
いる。
The rendering process execution unit 115 is a renderer that sequentially develops each rendering object such as a character or an image in the page memory 116. The color LB described above with reference to FIG.
For P, it is necessary to send page data in MCYK plane sequence. However, in the standard state, not all the memory required for this is secured, and one plane (1o
A memory is secured as a band area that is a fraction of (r2 bit / Pixel), and the band area is reused to process an image in synchronization with the engine speed.

【0056】通常はこのようにYMCKレンダラによる
展開処理とプリンタエンジンへのビデオ信号のシッピン
グの追いかけっこ、つまりバンディング制御によってペ
ージメモリ116は管理されているが、十分なメモリが
ある場合は1ページ分が展開可能な領域を確保しても良
い。
Normally, the page memory 116 is managed by the development processing by the YMCK renderer and the tracking of the video signal shipping to the printer engine, that is, banding control. May be secured.

【0057】なお、一般的に、フォーマッタ制御部11
0は、中央演算処理装置(CPU)、リードオンリーメ
モリ(ROM)、ランダムアクセスメモリ(RAM)な
どを用いたコンピュータシステムによって構成されてい
る。また、各部の処理は、マルチタスクモニタ(リアル
タイムOS)のもとでタイムシェアリングに処理される
構成であっても良いし、各機能ごとに専用のコントロー
ラハードウエアを用意して独立して処理される構成であ
ってもかまわない。
Generally, the formatter controller 11
Reference numeral 0 denotes a computer system using a central processing unit (CPU), a read only memory (ROM), a random access memory (RAM), and the like. In addition, the processing of each unit may be processed in a time-sharing manner under a multitask monitor (real-time OS), or a dedicated controller hardware may be prepared for each function and independently processed. Configuration may be used.

【0058】オペレーションパネル120は、前述した
通り印刷装置の各種状態を設定・表示するためのもので
ある。出力制御部130は、ページメモリ116の内容
をビデオ信号に変換処理し、プリンタエンジン部140
へ画像転送を行う。プリンタエンジン部140は受け取
ったビデオ信号を記録紙に永久可視画像形成するための
印刷機構部であり、図1において前述したものである。
The operation panel 120 is for setting and displaying various states of the printing apparatus as described above. The output control unit 130 converts the content of the page memory 116 into a video signal, and
Perform image transfer to The printer engine unit 140 is a printing mechanism unit for forming the received video signal into a permanent visible image on recording paper, and has been described above with reference to FIG.

【0059】以上、印刷装置100について説明した
が、次にホストコンピュータ200を含む本実施形態の
印刷システムの全体構成について説明を加える。
The printing apparatus 100 has been described above. Next, the overall configuration of the printing system of this embodiment including the host computer 200 will be described.

【0060】図2において、300はホストコンピュー
タであり、プリントデータ及び制御コードから成る印刷
情報を印刷装置100に出力するものである。
In FIG. 2, reference numeral 300 denotes a host computer for outputting print information including print data and control codes to the printing apparatus 100.

【0061】ホストコンピュータ300は、入力デバイ
スであるところのキーボード310やポインティングデ
バイスであるところのマウス311と、表示デバイスで
あるディスプレイモニタ320を合わせた一つのコンピ
ュータシステムとして構成されている。
The host computer 300 is configured as a single computer system including a keyboard 310 as an input device, a mouse 311 as a pointing device, and a display monitor 320 as a display device.

【0062】ホストコンピュータ300は、Windo
wsNT(商品名)などの基本OSによって動作してい
るものとする。ホストコンピュータ側について、本発明
に関する機能的な部分にのみ注目し、基本OS上での機
能を大きく分類すると、アプリケーションソフトウエア
301、グラフィックサブシステム302、印刷情報格
納手段および印刷装置との通信手段を含むスプールサブ
システム303に大別される。
The host computer 300 is a Windows computer.
It is assumed that the system is operated by a basic OS such as wsNT (product name). On the host computer side, focusing only on the functional parts related to the present invention and broadly classifying the functions on the basic OS, the application software 301, the graphic subsystem 302, the print information storage unit, and the communication unit with the printing device are The spool subsystem 303 includes a spool subsystem 303.

【0063】アプリケーションソフトウエア301は、
例えば、ワープロや表計算などの基本ソフトウエア上で
動作する応用ソフトウエアを指すものである。グラフィ
ックサブシステム302は、ウインドウズ等の基本OS
の機能の一部であるGraphic Device I
nterface(以後、GDIと記す)3021とそ
のGDI3021から動的にリンクされるデバイスドラ
イバであるところのプリンタドライバ3022によって
構成されている。
The application software 301 is
For example, it refers to application software that operates on basic software such as a word processor or a spreadsheet. The graphic subsystem 302 is a basic OS such as Windows.
Device I that is part of the functionality of
An interface (hereinafter, referred to as GDI) 3021 and a printer driver 3022, which is a device driver dynamically linked from the GDI 3021.

【0064】プリンタドライバ3022は、GDI30
21からDDI(DeviceDriver Inte
rface)というインタフェースを介してコールさ
れ、デバイスに応じた処理を描画オブジェクト毎に行う
ものである。
The printer driver 3022 is the GDI 30
21 to DDI (DeviceDriver Inte
rface), and performs processing corresponding to the device for each drawing object.

【0065】本システムでは、DDI関数に渡された情
報(描画オブジェクトを特定する中間言語データ)をペ
ージ単位でPDF3031(ページデータファイル)と
してスプールするわけであるが、その際に、プリンタド
ライバ3022から描画オブジェクトの種類、サイズ、
描画範囲をチェックするモジュールであるプリチェック
モジュール(PreCheckモジュール)3023を
コールすることで、そのページのデータ解析を行う。
In the present system, the information (intermediate language data specifying the drawing object) passed to the DDI function is spooled as a PDF 3031 (page data file) in page units. Type, size,
By calling a pre-check module (PreCheck module) 3023 which is a module for checking a drawing range, data analysis of the page is performed.

【0066】そして、チェックした結果は、ページ単位
でGDI3021を通じて、実体は印刷情報格納手段で
あるRAMまたはハードディスク上にプレチェックファ
イル(PCF)3032としてセーブする。
The result of the check is saved as a pre-check file (PCF) 3032 on a RAM or a hard disk as print information storage means through the GDI 3021 in page units.

【0067】スプールサブシステム303は、グラフイ
ックサブシステム302の後段に位置するプリンタデバ
イスに特有のサブシステムであり、デスプーラと呼ばれ
ている。デスプーラは印刷情報格納手段であるところの
メモリ上のPDF3031、ページ単位のチェック結果
であるPCF3032を読み込み、PCF3032の結
果に基づいてPDF3031を処理するドライバ303
4〜3037を決定し、決定したドライバでデスプール
処理を行うものである。
The spool subsystem 303 is a subsystem unique to a printer device located downstream of the graphic subsystem 302, and is called a despooler. The despooler reads the PDF 3031 on the memory, which is the print information storage unit, and the PCF 3032, which is the check result of each page, and processes the PDF 3031 based on the result of the PCF 3032.
4 to 3037 are determined, and despooling is performed by the determined driver.

【0068】そして、選択されたドライバ3034〜3
037は、イメージモードであれば、バンドメモリ30
38を用いてイメージ展開を行い、PDLモードであれ
ばスプールファイルからPDLコマンドへの変換処理を
行い、I/F3039を介して印刷装置100にデータ
を送出する。
Then, the selected drivers 3034-3
037 is the band memory 30 in the image mode.
In the PDL mode, conversion processing from a spool file to a PDL command is performed, and data is transmitted to the printing apparatus 100 via the I / F 3039.

【0069】なお、基本OSによって、上述したこれら
の名称や機能的な枠組みは若干異なる場合があるが、本
発明で言う各技術的手段が実現できるモジュールであれ
ば、それらの名称や枠組みは本発明にとってあまり大き
な問題ではない。
Although the above-mentioned names and functional frameworks may be slightly different depending on the basic OS, the names and frameworks of the modules that can implement the technical means described in the present invention may be different from those of the basic OS. It is not a big problem for the invention.

【0070】例えば、スプーラやスプールファイルと呼
ばれるものは、別のOSにおいてプリントキューと呼ば
れるモジュールに処理を組み込むことによっても実現可
能である。
For example, what is called a spooler or a spool file can be realized by incorporating a process into a module called a print queue in another OS.

【0071】なお、一般的に、これらの各機能モジュー
ルを含むホストコンピュータ300は、中央演算処理装
置(CPU)、リードオンリーメモリ(ROM)、ラン
ダムアクセスメモリ(RAM)、ハードディスクドライ
ブ(HDD)、各種入出力制御部(I/O)などのハー
ドウエアのもとで、基本ソフトと呼ばれるソフトウエア
がその制御を司り、その基本ソフトの元で、それぞれの
応用ソフト、サブシステムプロセスが機能モジュールと
して動作するようになっている。
Generally, a host computer 300 including these functional modules includes a central processing unit (CPU), a read only memory (ROM), a random access memory (RAM), a hard disk drive (HDD), Under the hardware such as input / output control unit (I / O), software called basic software controls the control, and under the basic software, each application software and subsystem process operate as a function module. It is supposed to.

【0072】(ホスト側プリンタドライバのさらに詳し
い説明)本発明を実現するためには、ホストマシンで動
くプリンタドライバで最低限以下の機能処理手段(描画
データスプール手段,描画領域チェック手段,可変バン
ド領域算出手段,可変バンディング対応イメージドライ
バ)が必要である。
(More Detailed Description of the Host-side Printer Driver) In order to realize the present invention, a printer driver operating on the host machine must have the following minimum function processing means (drawing data spooling means, drawing area checking means, variable band area Calculation means and a variable banding compatible image driver) are required.

【0073】先ず、描画データスプール手段の機能処理
について説明する。
First, the function processing of the drawing data spool means will be described.

【0074】WindowsNT4.0においては、G
DI3021からコールされる描画用DDI関数とし
て、以下のものが挙げられる。DrvCopyBits
(),DrvBitBlt(),DrvStretch
Blt(),DrvStrokePath(),Drv
FillPath(),DrvStrokeAndFi
llPath(),DrvPaint(),DrvTe
xtOut()等であり、これらの関数には引数を介し
て、GDI3021から描画オブジェクトが渡される。
In Windows NT 4.0, G
The drawing DDI function called from the DI 3021 includes the following. DrvCopyBits
(), DrvBitBlt (), DrvStretch
Blt (), DrvStrokePath (), Drv
FillPath (), DrvStrokeAndFi
llPath (), DrvPaint (), DrvTe
xtOut (), etc., and a drawing object is passed from the GDI 3021 to these functions via arguments.

【0075】例えば、イメージの描画処理関数であるD
rvCopyBits()の引数は図3に示すようなも
のとなる。
For example, D which is an image drawing processing function
Arguments of rvCopyBits () are as shown in FIG.

【0076】図3は、本発明に係るデータ処理装置にお
けるイメージの描画処理関数であるDrvCopyBi
ts()の引数を説明する図である。
FIG. 3 shows DrvCopyBi which is an image drawing function in the data processing apparatus according to the present invention.
It is a figure explaining the argument of ts ().

【0077】イメージモードでは、psoDestと、
prclDestが示す先にpsoSrcとpptlS
rcが示すイメージをpcoが示す領域に限りコピー処
理を行えば良い。
In the image mode, psoDest and
psoSrc and pptlS are indicated before pclDest
Copy processing may be performed on the image indicated by rc only in the area indicated by pco.

【0078】本発明を実現するためには、1ページ分の
描画情報から描画範囲を求める必要がある。そのために
は、プリンタドライバ3022がDDI関数に渡された
情報を解析し、ページの特徴を表す中間言語としてPD
F(ページデータファイル)3031に変換してスプー
ルする。その際に描画範囲をチェックモジュール302
3がチェックし、すべての描画オブジエクトの描画領域
のチェック終了後、描画領域情報に従って、スプールし
た中間言語としてのPDFデータを描画処理を行うこと
が必要である。
In order to realize the present invention, it is necessary to obtain a drawing range from drawing information for one page. To this end, the printer driver 3022 analyzes the information passed to the DDI function, and outputs a PD as an intermediate language representing the characteristics of the page.
It is converted to F (page data file) 3031 and spooled. At this time, a drawing range check module 302
After checking the drawing areas of all the drawing objects, it is necessary to draw the spooled PDF data as the intermediate language according to the drawing area information.

【0079】以下にそれぞれについて基本OSとしてW
indowsNT4.0を例にとり、図4を参照して説
明を行う。
In the following, W is used as the basic OS for each.
The description will be made with reference to FIG. 4 taking Windows NT 4.0 as an example.

【0080】図4は、図2に示したPDF3031のデ
ータ構造を説明する模式図である。
FIG. 4 is a schematic diagram for explaining the data structure of the PDF 3031 shown in FIG.

【0081】まず、スプールデータはページ単位で保持
する必要がある。そこで、図4のPDF900は、ペー
ジを特定するためのpageID901に続いて、ペー
ジのサイズや、データサイズ、格納したオブジェクト数
等を保持するページ情報902をヘッダとして持つ。
First, it is necessary to hold spool data in page units. Therefore, the PDF 900 in FIG. 4 has, as a header, page information 902 that holds the page size, data size, the number of stored objects, and the like, following the page ID 901 for specifying the page.

【0082】その後ろに続いて、DDI関数でコールさ
れた描画関数を示す番号がエリア903に入る。ここで
はDrvCopyBitsを例に説明を行う。
Subsequently, the number indicating the drawing function called by the DDI function enters the area 903. Here, a description will be given using DrvCopyBits as an example.

【0083】904はデータサイズ(datasiz
e)で、DrvCopyBitsのスプールにかかった
サイズが設定される。905はsoDsetで、Drv
CopyBits()関数に渡される描画先のサーフェ
ース情報を示すpsoDestで獲得可能な情報が格納
される。
Reference numeral 904 denotes a data size (datasize)
In e), the size of the spool of the DrvCopyBits is set. 905 is soDset, and Drv
Information that can be obtained by psoDest indicating the surface information of the drawing destination passed to the CopyBits () function is stored.

【0084】906はsoSrcで、DrvCopyB
its()関数に渡されるソースサーフェース情報を示
すpsoDestで獲得可能な情報が格納される。90
7はソースイメージデータで、psoSrcから獲得可
能なソースイメージデータの実態である。
Reference numeral 906 denotes soSrc, DrvCopyB
Stores information that can be obtained by psoDest indicating source surface information passed to the it (s) function. 90
Reference numeral 7 denotes source image data, which is the actual state of the source image data that can be obtained from psoSrc.

【0085】908はcoで、DrvCopyBits
()関数に渡される描画先のクリップ情報を示すpco
から獲得可能な情報が格納される。また、クリップデー
タが存在する場合は、その後ろにクリップデータ909
を格納する。
908 is co, DrvCopyBits
Pco indicating the clip information of the drawing destination passed to the () function
Information that can be obtained from is stored. If clip data exists, the clip data 909 follows the clip data.
Is stored.

【0086】910はxloで、DrvCopyBit
s()関数に渡される色変換情報を示すpxolで獲得
可能な情報が格納される。911はrclDestで、
DrvCopyBits()関数に渡される描画先のサ
ーフェース上の矩形を示すprclDestから獲得可
能な情報が格納される。
Reference numeral 910 denotes xlo, and DrvCopyBit
Information that can be obtained by pxol indicating color conversion information passed to the s () function is stored. 911 is rclDest,
Information that can be obtained from pclDest that indicates a rectangle on the drawing destination surface that is passed to the DrvCopyBits () function is stored.

【0087】912はptlSrcで、DrvCopy
Bits()関数に渡されるソースサーフェース上のど
の位置から描画を行うかを示すpptlSrcから獲得
可能な情報が格納される。以降、描画関数913毎にそ
れぞれに必要なデータのスプールが1ページ分続く。
Reference numeral 912 denotes ptlSrc, which is DrvCopy.
Information that can be obtained from pptlSrc that indicates from which position on the source surface the drawing is to be passed to the Bits () function is stored. After that, spooling of necessary data for each drawing function 913 continues for one page.

【0088】デスプール時には、デスプーラが選択され
たドライバのDDI関数にスプールした情報に戻して渡
すことで、DDI関数仕様のままでこれまでのプリンタ
ドライバが動作可能である。以上が描画データスプール
手段の機能処理である。
At the time of despooling, the despooler returns the spooled information to the DDI function of the selected driver and passes the spooled information, so that the existing printer driver can operate with the DDI function specifications. The above is the functional processing of the drawing data spooling means.

【0089】次に、描画領域チェック手段の機能処理に
ついて説明する。
Next, the function processing of the drawing area check means will be described.

【0090】描画領域チェック手段(図2に示すチェッ
クモジュール3023)は、プリンタドライバ3022
に渡される描画命令データをスプールする際にその描画
命令によって発生する描画領域を描画命令データから読
みとり、更新するものである。
The drawing area check means (check module 3023 shown in FIG. 2)
When spooling the drawing command data passed to the CPU, a drawing area generated by the drawing command is read from the drawing command data and updated.

【0091】そこで、本実施形態においては、描画命令
をスプールする際に描画領域に関する情報を獲得し、図
5に示すPCF(プレチェックファイル)のデータ構造
体1000に登録することで実現するものである。
Therefore, in the present embodiment, the information is obtained by acquiring information about the drawing area when spooling the drawing command and registering it in the data structure 1000 of the PCF (pre-check file) shown in FIG. is there.

【0092】図5は、図2に示したPCF3032のデ
ータ構造を説明する模式図である。なお、PCF(プレ
チェックファイル)3032はチェック用の仮想バンド
情報格納部1009がページを分割するバンド数分用意
されるものとし、仮想バンドの高さは、600DPIの
プリンタにおいて、仮に256ドット固定値とする。こ
の値は細かく取ればそれだけ描画領域を細かく保持可能
となり、転送時の無駄を省くことが可能となる。しかし
細かくしすぎると(極端な場合1ライン単位のバンド)
チェック処理にかかる時間が増えてしまう。逆に、大き
く取ると、描画領域の特定が大ざっばになってしまい、
本発明の目的を達成することが困難となる場合がある。
FIG. 5 is a schematic diagram illustrating the data structure of PCF 3032 shown in FIG. The PCF (pre-check file) 3032 is prepared for the number of bands for which the virtual band information storage unit for checking 1009 divides a page. The height of the virtual band is assumed to be a fixed value of 256 dots in a 600 DPI printer. And The smaller this value is, the more finely the drawing area can be held, and the waste at the time of transfer can be reduced. However, if you make it too fine (in extreme cases a band per line)
The time required for the check process increases. Conversely, if you take it large, the specification of the drawing area will be rough,
It may be difficult to achieve the object of the present invention.

【0093】図12において、1001はpageID
で、ページを特定する番号が設定される。1002はd
atasizeで、本ページのPCFのサイズが設定さ
れる。1003はsetColModeで、本ページの
指定されたカラーモードが設定される。1004はde
siColModeで、本ページの決定カラーモードが
設定される。1005はdesiModeで、本ページ
のモードが設定される。1006はPDLDataSi
zeで、PDLデータで送った場合のプリンタ内部のデ
ータサイズ予測値が設定される。1007はImage
DataSizeで、イメージモードで送った場合のデ
ータサイズが設定される。1008はbandCnt
で、チェック用のバンド数が設定される。
In FIG. 12, reference numeral 1001 denotes a page ID.
, A number for specifying the page is set. 1002 is d
The size of the PCF of this page is set in “atsize”. Reference numeral 1003 denotes a setColMode in which a designated color mode of this page is set. 1004 is de
The determined color mode of this page is set in siColMode. 1005 is a desiMode, in which the mode of this page is set. 1006 is PLDDataSi
In ze, a data size prediction value inside the printer when sent as PDL data is set. 1007 is Image
DataSize sets the data size when sent in the image mode. 1008 is bandCnt
Sets the number of bands for checking.

【0094】仮想バンド情報格納部1009は、バンド
の番号10091,このバンドを処理することに決まっ
たモードdesiMode10092、描画処理予測時
間rendTime10093、そのバンドの矩形領域
BandRectL10094、そのバンド内の最外郭
描画領域RendRectL10095,PDLコマン
ドで送った場合のデータサイズPDLDataSize
10096、そのバンドに描画処理が行われたかを示す
フラグobjflg10097、そのバンドに有彩色に
よる描画処理が行われたかを示すフラグcolflg1
0098で構成されている。
The virtual band information storage unit 1009 stores a band number 10091, a mode “desiMode” 10092 determined to process this band, a drawing processing predicted time endTime 10093, a rectangular region BandRectL10094 of the band, and an outermost drawing region RendRectL10095 in the band. , Data size when sent by PDL command PLDDataSize
10096, a flag objflg10097 indicating whether a drawing process has been performed on the band, and a flag colflg1 indicating whether a chromatic drawing process has been performed on the band.
0098.

【0095】なお、描画領域のチェックには、Band
Inf〔bndno〕.BandRectL1009
4,BandInf〔bndno〕.RendRect
L10095,BandInf〔bndno〕.0bj
flg10097を用いて行う。以下、図6を用いて描
画領域のチェック方法(更新方法)の具体例を示す。
Note that, in checking the drawing area, Band
Inf [bndno]. BandRectL1009
4, BandInf [bndno]. RendRect
L10095, BandInf [bndno]. 0bj
This is performed using flg10097. Hereinafter, a specific example of the drawing area check method (update method) will be described with reference to FIG.

【0096】図6は、本発明に係るデータ処理装置にお
ける描画領域のチェック処理状態を説明する模式図であ
る。
FIG. 6 is a schematic diagram for explaining the state of the drawing area check processing in the data processing apparatus according to the present invention.

【0097】図において、601は描画命令によって仮
想バンドメモリ上に白以外の描画処理が行われるときの
ページ内の仮想バンド領域を示したものである。この仮
想バンド領域601には図形1として描画命令6011
による描画領域が図5に示した仮想バンド情報格納部1
009のBandInf〔bndo〕.RendRec
tLにすでに登録されているものする。また、最外郭矩
形6013の上に一部、重なるようにして図形2とし
て、描画命令6012が渡された時、図形2の最外郭矩
形6014と最外郭矩形6013の最小値、最大値をそ
れぞれ取り、この領域内の描画領域の最外郭矩形602
1を得る。
In the figure, reference numeral 601 denotes a virtual band area in a page when drawing processing other than white is performed on a virtual band memory by a drawing command. In this virtual band area 601, a drawing command 6011
The virtual band information storage unit 1 shown in FIG.
009 BandInf [bdo]. RendRec
It is assumed that it is already registered in tL. Also, when a drawing command 6012 is passed as a figure 2 so as to partially overlap the outermost rectangle 6013, the minimum value and the maximum value of the outermost rectangle 6014 and the outermost rectangle 6013 of the figure 2 are taken. , The outermost rectangle 602 of the drawing area in this area
Get 1.

【0098】この値を仮想バンド情報格納部1009の
BandInf〔bndno〕.RendRectLに
登録しなおす。
This value is stored in BandInf [bndno]. Register to RenderRectL again.

【0099】BandInf〔bndno〕.Rend
RectLに描画領域が存在するときには、BandI
nf〔bndno〕.objflgをTRUEにセット
する。
BandInf [bndno]. Rend
When there is a drawing area in RectL, BandI
nf [bndno]. Set objflg to TRUE.

【0100】次に、白い矩形で描画処理が行われる場合
の描画領域の更新方法を図6を参照しながら説明する。
Next, a description will be given, with reference to FIG. 6, of a method of updating a drawing area when a drawing process is performed on a white rectangle.

【0101】603はページ内の仮想バンド領域を示し
たものである。この仮想バンド領域603には図形1と
して描画命令6031による描画領域が仮想バンド情報
格納部1009のRendRectLにすでに登録され
ているものとする。
Reference numeral 603 denotes a virtual band area in the page. In this virtual band area 603, it is assumed that a drawing area according to the drawing command 6031 as the graphic 1 has already been registered in RenderRectL of the virtual band information storage unit 1009.

【0102】最外郭矩形6033の上に一部、重なるよ
うにして図形2として、矩形領域6032を白で塗りつ
ぶすような描画命令が渡された時、図形2として描画範
囲が最外郭矩形6012によって最外郭矩形6013を
削った時の最小値、最大値をそれぞれ取ることによっ
て、この領域内の描画領域の最外郭矩形6041を得る
ことができ、この値を仮想バンド情報格納部1009の
RendRectLに登録し直す。
When a drawing command to fill the rectangular area 6032 with white is passed as the figure 2 so as to partially overlap the outermost rectangle 6033, the drawing range of the figure 2 is set by the outermost rectangle 6012. By taking the minimum value and the maximum value when the outer rectangle 6013 is shaved, the outermost rectangle 6041 of the drawing area in this area can be obtained, and this value is registered in the RendRectL of the virtual band information storage unit 1009. cure.

【0103】BandInf〔bndno〕.Rend
RectLがなくなった場合は、BandInf〔bn
dno〕.objflgをFALSEにセットする。
BandInf [bndno]. Rend
If RectL disappears, BandInf [bn
dno]. Set objflg to FALSE.

【0104】以上の処理の流れを、図7のフローチャー
トを用いて説明する。
The flow of the above processing will be described with reference to the flowchart of FIG.

【0105】図7は、本発明に係るデータ処理装置にお
ける第1のデータ処理手順の一例を示すフローチャート
であり、白い矩形で描画処理が行われる場合の描画領域
の更新手順に対応する。なお、S701〜S704は各
ステップを示す。
FIG. 7 is a flowchart showing an example of a first data processing procedure in the data processing apparatus according to the present invention, and corresponds to a procedure for updating a drawing area when a white rectangle is used for drawing processing. S701 to S704 indicate each step.

【0106】先ず、ステップS701で、描画命令の中
に含まれている描画色を検出し、塗りモードか、消しモ
ードかを決定する。ここで、DrvCopyBitsを
例に取ると、DrvCopyBitsの第2引数のpo
sSrcと、第4引数のpxloからソースビットマッ
プの情報を獲得することが可能である。1,4,8BP
Pビットマップはpxloからからパレット情報を獲得
し、psoSrcが示すビットマップデータの番号が示
す色情報と結びつけることで、何色で描画処理を行うの
かを求めることが可能である。
First, in step S701, the drawing color included in the drawing command is detected, and it is determined whether the mode is the paint mode or the erase mode. Here, taking DrvCopyBits as an example, the second argument of DrvCopyBits, po
Source bitmap information can be obtained from sSrc and pxlo of the fourth argument. 1,4,8BP
The P bitmap can obtain the palette information from pxlo and link it with the color information indicated by the bitmap data number indicated by psoSrc to determine in what color the drawing process is to be performed.

【0107】しかし、DrvCopyBits,Drv
StretchBltといったイメージ系描画命令で描
画結果を予測するには、ソースイメージのピクセル値全
部をチェックしなくてはならず、現実的ではない。そこ
で、本実施形態では、イメージ系描画命令の場合は常に
塗りモードとし、DrvPaint,DrvFillP
athといった図形描画命令時に塗りつぶしにだけ、正
確な色チェックを行うものとする。
However, DrvCopyBits, Drv
In order to predict a drawing result by an image drawing command such as StretchBlt, it is necessary to check all pixel values of the source image, which is not realistic. Therefore, in the present embodiment, in the case of an image-based drawing command, the painting mode is always set, and DrvPaint, DrvFillP
It is assumed that an accurate color check is performed only for a fill at the time of a figure drawing command such as ath.

【0108】そして、ステップS702で、描画命令の
中に含まれている描画範囲情報を獲得する。ここで、D
rvCopyBitsを例に取れば、DrvCopyB
itsには、第五引数にprclDestという描画先
矩形領域をRECTL(矩形の左上座標点と右下座標点
を示す構造体)で指定してくる。
Then, in step S702, drawing range information included in the drawing command is obtained. Where D
Taking rvCopyBits as an example, DrvCopyB
In the “its”, a drawing destination rectangular area called “prclDest” is specified as a fifth argument by RECTL (a structure indicating an upper left coordinate point and a lower right coordinate point of a rectangle).

【0109】また、第二引数にはpcoといってクリッ
プ範囲を指定するクリップ情報構造体へのポインタが渡
される。DrvCopyBitsに関しては、描画先の
矩形領域と、クリップ領域の小さい方を描画領域とす
る。
Also, a pointer to a clip information structure that specifies a clip range, called pco, is passed to the second argument. Regarding DrvCopyBits, the smaller of the drawing destination rectangular area and the clip area is set as the drawing area.

【0110】なお、ステップS701で塗りと判断され
た場合は、求める矩形領域はpco,prclDest
の最外郭矩形を求めるが、消しと判断された場合は、描
画領域が矩形でしかも矩形内がすべて白で塗りつぶされ
ることが条件となる。
If it is determined in step S701 that the image is to be painted, the rectangular area to be obtained is pco, prclDest.
The outermost rectangle is determined. If it is determined to be erased, the condition is that the drawing area is a rectangle and all the inside of the rectangle is filled with white.

【0111】そして、ステップS703で、求めた描画
領域が、どの仮想バンドにかかるかを算出する。次に、
ステップS704で、ステップS703で求めたバンド
の描画領域を塗りモード、消しモードに従い、更新し
て、処理を終了する。
Then, in step S703, it is calculated which virtual band the obtained drawing area covers. next,
In step S704, the drawing area of the band obtained in step S703 is updated according to the painting mode and the erasing mode, and the process ends.

【0112】以上の処理を描画オブジェクト毎に実行
し、1ページ分の情報がスプールされたところで、Ba
ndInf〔bndno〕を仮想バンド数分PCFとし
てページIDと共にスプールし、デスプールに備える。
The above processing is executed for each drawing object, and when information for one page is spooled, Ba
ndInf [bndno] is spooled together with the page ID as PCFs for the number of virtual bands and prepared for despooling.

【0113】続いて、可変バンド領域算出手段の機能処
理について図8を参照して説明する。
Next, the function processing of the variable band area calculation means will be described with reference to FIG.

【0114】図8は、本発明に係るデータ処理装置にお
ける可変バンド領域算出手順を説明する模式図である。
FIG. 8 is a schematic diagram for explaining a variable band area calculation procedure in the data processing apparatus according to the present invention.

【0115】なお、上述した描画領域チェック処理をす
べての描画命令をスプールする際に行った後に、デスプ
ーラ3033は、PCF3032内の各仮想バンドの仮
想バンド情報格納部1009を用いてイメージモードに
用いるバンドのサイズと位置を決定する。
After performing the above-described drawing area check processing when spooling all the drawing commands, the despooler 3033 uses the virtual band information storage unit 1009 of each virtual band in the PCF 3032 to store the band used in the image mode. Determine the size and position of the

【0116】図8を使って具体例を示すと、ページ50
0を仮想バンドBB0〜BB6で区切り、上述した描画
領域チェックによって、描画命令5001,5002が
関係するバンドの描画領域を求める。
A specific example is shown in FIG.
0 is divided by virtual bands BB0 to BB6, and a drawing area of a band to which the drawing commands 5001 and 5002 are related is obtained by the above-described drawing area check.

【0117】ページ502において、第1に、描画範囲
が更新されたバンドの描画範囲5021〜5024から
X方向の最小値と最大値を求め、その値を描画処理に用
いるバンド幅BandWとし、バンドのX座標値はすべ
て固定とする。
On the page 502, first, the minimum value and the maximum value in the X direction are obtained from the drawing ranges 5021 to 5024 of the band whose drawing range has been updated, and the values are set as the band width BandW used for the drawing process. All X coordinate values are fixed.

【0118】第2に、バンド幅で描画処理に利用可能な
メモリサイズを割って、利用可能なバンド高さBand
Hを求めて、バンドサイズE決定し、該求めた幅Ban
dW、高さBandHのバンドメモリ503を使って仮
想バンド内の描画領域5021〜5024を可能な限り
少ないバンド分割で網羅するように各バンドの座標、高
さを決定する。これにより、3つのバンド5041〜5
043に分割される。
Second, by dividing the available memory size for the drawing process by the bandwidth, the available band height Band
H, the band size E is determined, and the obtained width Ban
Using the band memory 503 of dW and height BandH, the coordinates and height of each band are determined so as to cover the drawing areas 5021 to 5024 in the virtual band with as few band divisions as possible. Thereby, three bands 5041-5
043.

【0119】従来の実施形態を示す図14では、6つの
バンド(バンド403〜408)分割が必要だったペー
ジが本手法によれば、3つのバンド5041〜5043
にしか分割されずに済む状態が示されている。
In FIG. 14 showing the conventional embodiment, a page that needs to be divided into six bands (bands 403 to 408) is replaced by three bands 5041 to 5043 according to the present method.
The state shown in FIG.

【0120】以上の処理の詳しい方法を図5、図9,図
10を用いて説明する。
A detailed method of the above processing will be described with reference to FIGS. 5, 9, and 10.

【0121】図9は、本発明に係るデータ処理装置にお
けるバンド情報を説明する模式図であり、図5に示した
PCF1000は、描画領域をチェックした結果が格納
されているデータ構造体であったのに対して、図9に示
すデータ構造体1100では描画処理に用いるバンドメ
モリの情報をセットするためのものであり、描画処理に
用いることが可能なバンドメモリ用メモリサイズMem
Size1101,バンドメモリの最大高さBandH
1102,バンドメモリの最大幅BandW1103及
びバンド数分のデータ構造体DevBandInfo
〔devbndno〕1104で構成されている。
FIG. 9 is a schematic diagram for explaining band information in the data processing apparatus according to the present invention. The PCF 1000 shown in FIG. 5 is a data structure storing a result of checking a drawing area. On the other hand, the data structure 1100 shown in FIG. 9 is for setting information of the band memory used for the drawing process, and the memory size Mem for the band memory that can be used for the drawing process.
Size1101, the maximum height BandH of the band memory
1102, the maximum width BandW1103 of the band memory and the data structure DevBandInfo for the number of bands
[Devbndno] 1104.

【0122】この中で、MemSize1101はプリ
ンタドライバ初期化時にホストのメモリ搭載量等に従っ
て、初期値がセットされているものとする。
It is assumed that the initial value of the MemSize 1101 is set at the time of initializing the printer driver according to the amount of memory installed in the host.

【0123】また、DevBandlnf1104は、
バンドの位置、サイズを格納するBandRectL1
1041,バンド内の描画領域を示すRendRect
L11042で構成されている。
Also, DevBandlnf 1104 is
BandRectL1 that stores the position and size of the band
1041, RenderRect indicating the drawing area in the band
L11042.

【0124】図10は、本発明に係るデータ処理装置に
おける第2のデータ処理手順の一例を示すフローチャー
トである。なお、S801〜S814は各ステップを示
す。
FIG. 10 is a flowchart showing an example of the second data processing procedure in the data processing device according to the present invention. S801 to S814 indicate each step.

【0125】先ず、ステップS801で、仮想バンド番
号bndno、描画バンド番号devbndnoをそれ
ぞれ「0」に初期化する。次に、ステップS802で、
全仮想バンドの描画範囲情報(BandInf〔〕)1
009のRendRectL10095から読み取り、
X座標の最小値Xminと最大値Xmaxを求め、描画
処理に用いるバンドメモリの横幅BandW1101を
算出する。
First, in step S801, the virtual band number bndno and the drawing band number devbndno are each initialized to “0”. Next, in step S802,
Drawing range information (BandInf []) 1 for all virtual bands
009 from RendRectL10095,
The minimum value Xmin and the maximum value Xmax of the X coordinate are obtained, and the width BandW1101 of the band memory used for the drawing process is calculated.

【0126】そして、ステップS803で、イメージモ
ードで利用可能なメモリサイズMemSize1100
をBandW1101で割り最大バンド高さBandH
1102を求める。
Then, in step S803, the memory size MemSize 1100 usable in the image mode
Is divided by BandW1101 and the maximum band height BandH
Find 1102.

【0127】次に、ステップS804で、仮想バンド情
報BandInf〔bndno〕のobjflgが「T
RUE」になるまでbndnoをインクリメント(+
+)し、ステップS805で、DevBandInf
〔devbndno〕.BandRectL.top,
DevBandInf〔devbndno〕.Rend
RectL.topにBandInf〔bndno〕.
RendRectL.topをセットするとともに、D
evBandInf〔devbndno〕.BandR
ectl.bottomにバンド位置+最大バンド高さ
(DevBandInf〔devbndno〕.Ban
dRectL.top+BandH)をセットするとと
もに、DevBandInf〔devbndno〕.B
andRectL.left,DevBandInf
〔devbndno〕.BandRectL.righ
tにそれぞれXmin,Xmaxをセットする。
Next, in step S804, the objflg of the virtual band information BandInf [bndno] is set to “T
RUE "until bndno is incremented (+
+), And in step S805, DevBandInf
[Devbndno]. BandRectL. top,
DevBandInf [devbndno]. Rend
RectL. BandInf [bndno].
RendRectL. Set top and D
evBandInf [devbndno]. BandR
ectl. At the bottom, the band position + the maximum band height (DevBandInf [devbndno] .Ban)
dRectL. top + BandH) as well as DevBandInf [devbndno]. B
andRectL. left, DevBandInf
[Devbndno]. BandRectL. right
Xmin and Xmax are set to t, respectively.

【0128】次に、ステップS806で、DevBan
dInf〔devbndno〕にBanInf〔bnd
no〕の描画範囲がすべて含まれるかどうかを判断し
て、一部でも欠けると判断した場合は、ステップS80
7で、DevBandInf〔devbndno〕の描
画領域を最大バンド高さ位置にセットする。
Next, in step S806, DevBan
BanInf [bnd to dInf [devbndno]
No], it is determined whether or not the entire drawing range is included. If it is determined that any part of the drawing range is missing, step S80 is performed.
In step 7, the drawing area of DevBandInf [devbndno] is set at the maximum band height position.

【0129】そして、ステップS808で、DevBn
dnoをインクリメント(++)とし、ステップS80
9で、DevBandInf〔devbndno〕.B
andRectL.top,DevBandInf〔d
evbndno〕.RendRectL.topに一つ
前のバンドの下部の座標(DevBandInf〔de
vbndno−1〕,BandRectL.botto
m)をセット、DevBandInf〔devbndn
o〕.BandRectl.bottomにバンド位置
十最大バンド高さ(DevBandInf〔devbn
dno〕.BandRectL.top+BandH)
をセットするとともに、DevBandInf〔dev
bndno〕.BandRectL.left,Dev
BandInf〔devbndno〕.BandRec
tL.rightにそれぞれXmin,Xmaxをセッ
トして、ステップS806へ戻る。
Then, in step S808, DevBn
dno is incremented (++), and step S80 is executed.
9, DevBandInf [devbndno]. B
andRectL. top, DevBandInf [d
evbndno]. RendRectL. The coordinates (DevBandInf [de
vbndno-1], BandRectL. bootto
m) is set, and DevBandInf [devbdnn
o]. BandRectl. In the bottom, the band position and the maximum band height (DevBandInf [devbn
dno]. BandRectL. top + BandH)
Is set, and DevBandInf [dev
bndno]. BandRectL. left, Dev
BandInf [devbndno]. BandRec
tL. Xmin and Xmax are set for right, respectively, and the process returns to step S806.

【0130】一方、ステップS806で、描画範囲がす
べて含まれると判断した場合は、DevBandInf
〔devbndno〕.RendRectL.bott
om=BandInf〔bndno〕.RendRec
tL.bottomとし、ステップS811で、bnd
noをインクリメント(++)する。
On the other hand, if it is determined in step S806 that the entire drawing range is included, DevBandInf
[Devbndno]. RendRectL. boott
om = BandInf [bndno]. RendRec
tL. bottom, and in step S811, bnd
No is incremented (++).

【0131】次に、ステップS812で、チェックバン
ド(BandInf)の読み込みすべて終了したかどう
かを判定して、YESならば処理を終了し、NOならば
ステップS813へ進み、BandInf〔bndn
o〕.objflgがTRUEかどうかを判定して、F
ALSE(NO)であると判定した場合は、ステップS
811へ戻り、TRUE(YES)であると判定した場
合は、ステップS814へ進み、DevBandInf
〔devbndno〕.BandRectl.bott
omがチェックバンドの描画領域と重なっているか(D
evBandInf〔devbndno〕.BandR
ectl.bottom>BandInf〔bndn
o〕.RendRectl.top)どうかを判定し
て、重なっていないと判定した場合は、ステップS81
5へ進み、DevBandInf〔devbndn
o〕.BandRectl.bottomを描画領域に
合わせる(DevBandInf〔devbttdn
o〕.BandRectl.bottom=DevBa
ndInf〔devbndno〕.RcndRect
l.bottom)、かつDevBndnoをインクリ
メントとして、ステップS804へ戻る。
Next, in step S812, it is determined whether or not all reading of the check band (BandInf) has been completed. If YES, the process ends. If NO, the process proceeds to step S813, where BandInf [bdnn
o]. Determine if objflg is TRUE and F
If it is determined to be ALSE (NO), step S
Returning to 811, if it is determined to be TRUE (YES), the process proceeds to step S 814, and DevBandInf
[Devbndno]. BandRectl. boott
om overlaps the check band drawing area (D
evBandInf [devbndno]. BandR
ectl. bottom> BandInf [bdnn
o]. RendRectl. top), if it is determined that they do not overlap, step S81
5 and move to DevBandInf [devbndn
o]. BandRectl. Adjust bottom to the drawing area (DevBandInf [devbttdn
o]. BandRectl. bottom = DevBa
ndInf [devbndno]. RcndRect
l. bottom), and DevBndno is incremented, and the process returns to step S804.

【0132】以上の処理を終了することによって、(d
evbndno−1)個の実際に処理に用いるバンドの
位置とサイズがDevBandlnf〔〕に決定する。
By ending the above processing, (d)
The positions and sizes of the (evbndno-1) pieces of bands actually used for processing are determined as DevBandlnf [].

【0133】次に、上述した可変バンディング対応イメ
ージドライバの機能処理について説明する。
Next, the function processing of the above-described image driver compatible with variable banding will be described.

【0134】上述した可変バンド領域算出処理で作成し
たDevBandInf〔〕を使って、PDFファイル
としてスプールした描画情報を再構築する。
The drawing information spooled as a PDF file is reconstructed using DevBandInf [] created in the above-described variable band area calculation processing.

【0135】このとき、バンド数(devbndno)
が1つと、それ以上の時で処理が異なる。
At this time, the number of bands (devbndno)
And the processing is different at more times.

【0136】先ず、バンド数が1つの場合は、スプール
した描画情報は、スプールした順に描画処理すればよ
い。バンド数が1つ以上の時は、スプールした描画命令
を描画するバンドをDevBandInf〔devbn
dcnt〕.BandRectLのtopとbotto
mの間に入っているかをチェックして求め、各バンドに
関連する描画オブジェクトを描画順に繁ぎ直したリスト
を作成する。
First, when the number of bands is one, the spooled drawing information may be drawn in the order of spooling. When the number of bands is one or more, the band for drawing the spooled drawing command is DevBandInf [devbn
dcnt]. BandRectL top and bottom
A check is made to determine whether the drawing object is within the range m, and a list is created in which drawing objects related to the respective bands are reordered in the drawing order.

【0137】1ページ分のPDFデータをバンドリスト
に緊いだら、DevBandInf
If the PDF data for one page is tight in the band list, DevBandInf

〔0〕.BandR
ectLからDevBandInf〔devbndn
o〕.BandRectLを、順にバンド領域として描
画処理を行う。描画処理が行われたバンド504は、対
応するBandInf〔〕.RendRectLに保持
されている描画範囲内のビットマップデータを印刷命令
505に変換し、印刷装置に転送する。
[0]. BandR
evtL to DevBandInf [devbdnn
o]. Drawing processing is performed with BandRectL as a band area in order. The band 504 on which the drawing processing has been performed is the corresponding BandInf []. The bitmap data in the drawing range held in RenderRectL is converted into a print command 505 and transferred to the printing device.

【0138】図8に示した印刷命令505を例とすれ
ば、描画処理バンド5041は5051部がBandI
nf
If the print command 505 shown in FIG. 8 is taken as an example, the drawing processing band 5041 has 5051 copies of BandI.
nf

〔0〕,BandInf〔1〕のRendRect
L部分を印刷命令として転送、描画バンド5042は、
BandInf〔3〕,BandInf〔4〕,Ban
dInf〔5〕の領域5052を印刷命令として印刷装
置100に転送される。
[0], RendRect of BandInf [1]
The L part is transferred as a print command, and the drawing band 5042 is
BandInf [3], BandInf [4], Ban
The area 5052 of dInf [5] is transferred to the printing apparatus 100 as a print command.

【0139】〔第2実施形態〕以下に、本発明における
第2実施形態を説明する。なお、本実施形態において第
1実施形態と同一の構成についてはその説明を省略す
る。
[Second Embodiment] Hereinafter, a second embodiment of the present invention will be described. In this embodiment, the description of the same configuration as that of the first embodiment will be omitted.

【0140】第1実施形態では、チェック用バンドの描
画領域の最大値から最小値を引いたもので、描画用バン
ドのサイズを決定しているが、横幅サイズも変化させる
ことで分割バンド数が少なく出来る場合は変化させても
良い。
In the first embodiment, the size of the drawing band is determined by subtracting the minimum value from the maximum value of the drawing area of the check band, but the number of divided bands can be reduced by changing the width. If it can be reduced, it may be changed.

【0141】図11は、本発明の第2実施形態を示すデ
ータ処理装置におけるバンド処理状態を説明する模式図
である。
FIG. 11 is a schematic diagram for explaining a band processing state in the data processing apparatus according to the second embodiment of the present invention.

【0142】図において、ページ1300を印刷する場
合、第1実施形態の手法で描画するバンド領域を求めた
場合、仮想バンド1301で描画領域を求め、X軸方向
の最大描画領域、最小描画領域の差をバンド幅としたと
きの、バンドメモリ1302を用いて描画処理を行おう
とすると、6つのバンド1303を使って描画処理を行
うことになる。
In the figure, when printing a page 1300, when a band area to be drawn by the method of the first embodiment is obtained, a drawing area is obtained by a virtual band 1301, and a maximum drawing area and a minimum drawing area in the X-axis direction are obtained. If the drawing process is performed using the band memory 1302 when the difference is the bandwidth, the drawing process is performed using the six bands 1303.

【0143】これを、仮想バンド上の描画領域が0〜4
バンド目までの幅が狭い領域は、描画バンド1304を
用い、仮想バンドで5バンド目だけは横幅を広く取った
描画バンド1305で描画処理を行う。こうすること
で、分割バンド数は3つのバンド1306に減らすこと
が可能となる。
It is assumed that the drawing area on the virtual band is 0 to 4
A drawing band 1304 is used for an area where the width up to the band is narrow, and drawing processing is performed using a drawing band 1305 having a wide horizontal width for only the fifth band in the virtual band. In this way, the number of divided bands can be reduced to three bands 1306.

【0144】なお、本発明は、複数の機器(例えばホス
トコンピュータ、インタフェース機器、リーダ、プリン
タなど)から構成されるシステムに適用しても、1つの
機器からなる装置(例えば、複写機、ファクシミリ装置
など)に適用しても良い。
Even if the present invention is applied to a system composed of a plurality of devices (for example, a host computer, an interface device, a reader, a printer, etc.), a single device (for example, a copier, a facsimile machine) Etc.).

【0145】本発明を記憶媒体に適応する場合、その記
憶媒体には、先に説明したフローチャートに対応するプ
ログラムコードを格納することになる。
When the present invention is applied to a storage medium, the storage medium stores program codes corresponding to the flowcharts described above.

【0146】上記実施形態によれば、イメージモードの
描画処理でバンド分割数を減らすことで描画処理速度を
高速化し、描画範囲を細かい範囲で保持しているため、
印刷命令作成時に高速に必要な領域だけを印刷命令とし
て生成可能となる。
According to the above embodiment, the drawing processing speed is increased by reducing the number of band divisions in the drawing processing in the image mode, and the drawing range is held in a small range.
Only a necessary area can be generated as a print command at a high speed when the print command is generated.

【0147】以下、図12に示すメモリマップを参照し
て本発明に係るデータ処理装置を適用可能な印刷システ
ムで読み出し可能なデータ処理プログラムの構成につい
て説明する。
The configuration of a data processing program readable by a printing system to which the data processing apparatus according to the present invention can be applied will be described below with reference to a memory map shown in FIG.

【0148】図12は、本発明に係るデータ処理装置を
適用可能な印刷システムで読み出し可能な各種データ処
理プログラムを格納する記憶媒体のメモリマップを説明
する図である。
FIG. 12 is a diagram illustrating a memory map of a storage medium that stores various data processing programs that can be read by a printing system to which the data processing device according to the present invention can be applied.

【0149】なお、特に図示しないが、記憶媒体に記憶
されるプログラム群を管理する情報、例えばバージョン
情報,作成者等も記憶され、かつ、プログラム読み出し
側のOS等に依存する情報、例えばプログラムを識別表
示するアイコン等も記憶される場合もある。
Although not shown, information for managing a group of programs stored in the storage medium, for example, version information, a creator and the like are also stored, and information dependent on the OS or the like on the program reading side, for example, a program is stored in the storage medium. An icon or the like for identification display may also be stored.

【0150】さらに、各種プログラムに従属するデータ
も上記ディレクトリに管理されている。また、各種プロ
グラムをコンピュータにインストールするためのプログ
ラムや、インストールするプログラムが圧縮されている
場合に、解凍するプログラム等も記憶される場合もあ
る。
Further, data subordinate to various programs is also managed in the directory. In addition, a program for installing various programs on a computer or a program for decompressing a program to be installed when the program to be installed is compressed may be stored.

【0151】本実施形態における図7,図10に示す機
能が外部からインストールされるプログラムによって、
ホストコンピュータにより遂行されていてもよい。そし
て、その場合、CD−ROMやフラッシュメモリやFD
等の記憶媒体により、あるいはネットワークを介して外
部の記憶媒体から、プログラムを含む情報群を出力装置
に供給される場合でも本発明は適用されるものである。
The functions shown in FIGS. 7 and 10 in this embodiment are executed by a program installed from the outside.
It may be performed by a host computer. And in that case, CD-ROM, flash memory, FD
The present invention is applicable even when a group of information including a program is supplied to an output device from a storage medium such as the above or from an external storage medium via a network.

【0152】以上のように、前述した実施形態の機能を
実現するソフトウエアのプログラムコードを記録した記
憶媒体を、システムあるいは装置に供給し、そのシステ
ムあるいは装置のコンピュータ(またはCPUやMP
U)が記憶媒体に格納されたプログラムコードを読出し
実行することによっても、本発明の目的が達成されるこ
とは言うまでもない。
As described above, the storage medium storing the program codes of the software for realizing the functions of the above-described embodiments is supplied to the system or the apparatus, and the computer (or CPU or MP) of the system or the apparatus is supplied.
It goes without saying that the object of the present invention is also achieved when U) reads and executes the program code stored in the storage medium.

【0153】この場合、記憶媒体から読み出されたプロ
グラムコード自体が本発明の新規な機能を実現すること
になり、そのプログラムコードを記憶した記憶媒体は本
発明を構成することになる。
In this case, the program code itself read from the storage medium realizes the novel function of the present invention, and the storage medium storing the program code constitutes the present invention.

【0154】プログラムコードを供給するための記憶媒
体としては、例えば、フロッピーディスク,ハードディ
スク,光ディスク,光磁気ディスク,CD−ROM,C
D−R,磁気テープ,不揮発性のメモリカード,RO
M,EEPROM等を用いることができる。
As a storage medium for supplying the program code, for example, a floppy disk, hard disk, optical disk, magneto-optical disk, CD-ROM, C
DR, magnetic tape, nonvolatile memory card, RO
M, EEPROM and the like can be used.

【0155】また、コンピュータが読み出したプログラ
ムコードを実行することにより、前述した実施形態の機
能が実現されるだけでなく、そのプログラムコードの指
示に基づき、コンピュータ上で稼働しているOS(オペ
レーティングシステム)等が実際の処理の一部または全
部を行い、その処理によって前述した実施形態の機能が
実現される場合も含まれることは言うまでもない。
When the computer executes the readout program code, not only the functions of the above-described embodiment are realized, but also the OS (Operating System) running on the computer based on the instruction of the program code. ) And the like perform part or all of the actual processing, and the processing realizes the functions of the above-described embodiments.

【0156】さらに、記憶媒体から読み出されたプログ
ラムコードが、コンピュータに挿入された機能拡張ボー
ドやコンピュータに接続された機能拡張ユニットに備わ
るメモリに書き込まれた後、そのプログラムコードの指
示に基づき、その機能拡張ボードや機能拡張ユニットに
備わるCPU等が実際の処理の一部または全部を行い、
その処理によって前述した実施形態の機能が実現される
場合も含まれることは言うまでもない。
Further, after the program code read from the storage medium is written into a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, based on the instruction of the program code, The CPU provided in the function expansion board or function expansion unit performs part or all of the actual processing,
It goes without saying that a case where the function of the above-described embodiment is realized by the processing is also included.

【0157】[0157]

【発明の効果】以上説明したように、本発明に係る第1
〜第15の発明によれば、所定のアプリケーションプロ
グラムからの印刷命令を中間言語データに変換し、変換
された中間言語データをページ単位に保持する際に、変
換される中間言語データを解析して描画すべき描画範囲
情報を複数の領域に分けて登録し、登録された各描画範
囲情報を解析して前記中間言語データを描画すべき可変
域のバンドメモリ領域を決定し、保持された中間言語デ
ータに基づくビットマップイメージを決定したバンドメ
モリ領域単位分描画処理したら、登録した描画範囲情報
と描画されるビットマップデータとから決定されたバン
ド領域数分の印刷命令を生成して印刷装置に送出するの
で、確保可能なバンドメモリ容量内でイメージモードの
描画処理時におけるバンド領域が可変領域として確保可
能となり、かつ、バンド分割数を減らすことが可能とな
り、印刷装置に転送すべき印刷命令数を格段に削減でき
印刷装置における描画処理速度を高速化できる。
As described above, the first embodiment according to the present invention is described.
According to the fifteenth aspect, a print command from a predetermined application program is converted into intermediate language data, and the converted intermediate language data is analyzed when the converted intermediate language data is held in page units. The drawing range information to be drawn is divided into a plurality of areas and registered, and the registered drawing range information is analyzed to determine a variable area band memory area in which the intermediate language data is to be drawn, and the held intermediate language After the bitmap image based on the data is drawn for the determined band memory area unit, print commands for the determined number of band areas are generated from the registered drawing range information and the bitmap data to be drawn and sent to the printing apparatus. Therefore, the band area at the time of the drawing process in the image mode can be secured as a variable area within the available band memory capacity, and It is possible to reduce the command division number, can speed up the drawing processing speed in the reduction can print device significantly the number of print commands to be transferred to the printing apparatus.

【0158】また、1ページ内の描画範囲情報を仮想さ
れるバンド単位で細かく保持しているので、印刷命令作
成時に高速に必要な印刷領域だけを印刷命令として生成
可能となり、印刷装置が処理すべき印刷命令数が削減さ
れ、印刷処理開始までの処理時間を短縮することができ
る等の効果を奏する。
Further, since the drawing range information in one page is finely stored in virtual band units, only a necessary print area can be generated as a print command at a high speed when a print command is created, and the printing apparatus processes the print area. The number of print commands to be reduced is reduced, and the processing time until the start of the printing process can be shortened.

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

【図1】本発明に係るデータ処理装置を提供可能な印刷
システムのカラーレーザービームプリンタの構成を説明
する断面図である。
FIG. 1 is a cross-sectional view illustrating a configuration of a color laser beam printer of a printing system capable of providing a data processing device according to the present invention.

【図2】図1に示したフォーマッタ制御部の詳細構成を
説明するブロック図である。
FIG. 2 is a block diagram illustrating a detailed configuration of a formatter control unit illustrated in FIG.

【図3】本発明に係るデータ処理装置におけるイメージ
の描画処理関数であるDrvCopyBits()の引
数を説明する図である。
FIG. 3 is a diagram illustrating arguments of DrvCopyBits (), which is an image drawing processing function in the data processing device according to the present invention.

【図4】図2に示したPDFのデータ構造を説明する模
式図である。
FIG. 4 is a schematic diagram illustrating a data structure of the PDF illustrated in FIG. 2;

【図5】図2に示したPCFのデータ構造を説明する模
式図である。
FIG. 5 is a schematic diagram illustrating a data structure of the PCF illustrated in FIG. 2;

【図6】本発明に係るデータ処理装置における描画領域
のチェック処理状態を説明する模式図である。
FIG. 6 is a schematic diagram illustrating a state of a drawing area check process in the data processing apparatus according to the present invention.

【図7】本発明に係るデータ処理装置における第1のデ
ータ処理手順の一例を示すフローチャートである。
FIG. 7 is a flowchart illustrating an example of a first data processing procedure in the data processing device according to the present invention.

【図8】本発明に係るデータ処理装置における可変バン
ド領域算出手順を説明する模式図である。
FIG. 8 is a schematic diagram illustrating a variable band area calculation procedure in the data processing device according to the present invention.

【図9】本発明に係るデータ処理装置におけるバンド情
報を説明する模式図である。
FIG. 9 is a schematic diagram illustrating band information in the data processing device according to the present invention.

【図10】本発明に係るデータ処理装置における第2の
データ処理手順の一例を示すフローチャートである。
FIG. 10 is a flowchart showing an example of a second data processing procedure in the data processing device according to the present invention.

【図11】本発明の第2実施形態を示すデータ処理装置
におけるバンド処理状態を説明する模式図である。
FIG. 11 is a schematic diagram illustrating a band processing state in a data processing device according to a second embodiment of the present invention.

【図12】本発明に係るデータ処理装置を適用可能な印
刷システムで読み出し可能な各種データ処理プログラム
を格納する記憶媒体のメモリマップを説明する図であ
る。
FIG. 12 is a diagram illustrating a memory map of a storage medium that stores various data processing programs that can be read by a printing system to which the data processing device according to the present invention can be applied.

【図13】従来のデータ処理装置を適用した印刷システ
ムの一例を示すブロック図である。
FIG. 13 is a block diagram illustrating an example of a printing system to which a conventional data processing device is applied.

【図14】従来のデータ処理装置におけるバンド描画処
理状態を説明する模式図である。
FIG. 14 is a schematic diagram illustrating a band drawing processing state in a conventional data processing device.

【図15】従来のデータ処理装置におけるバンド描画処
理状態を説明する模式図である。
FIG. 15 is a schematic diagram illustrating a band drawing processing state in a conventional data processing device.

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

300 ホストコンピュータ 301 アプリケーションソフト 302 グラフイックサブシステム 303 スプールサブシステム 3021 GDI 3022 プリンタドライバ 3023 プレチェックシステム 3031 PDF(プリントデータファイル) 3032 PCF(プレチェックファイル) 3033 デスプーラ 3034 PDLトランスレータ 3035 モノクロ1BPPイメージモード 3036 YMCK4BPPイメージモード 3037 RGB24BPPイメージモード 3038 イメージモード用バンドメモリ領域 3039 インタフェース 300 Host Computer 301 Application Software 302 Graphic Subsystem 303 Spool Subsystem 3021 GDI 3022 Printer Driver 3023 Precheck System 3031 PDF (Print Data File) 3032 PCF (Precheck File) 3033 Despooler 3034 PDL Translator 3035 Monochrome 1BPP Image Mode 3036 YMCKB Image Mode 3037 RGB24BPP image mode 3038 band memory area for image mode 3039 interface

Claims (15)

【特許請求の範囲】[Claims] 【請求項1】 所定の通信媒体を介して印刷装置と通信
可能なデータ処理装置であって、 所定のアプリケーションプログラムからの印刷命令を中
間言語データに変換する第1の変換手段と、 前記第1の変換手段により変換された中間言語データを
ページ単位に保持する保持手段と、 前記第1の変換手段により変換される中間言語データを
解析して描画すべき描画範囲情報を複数の領域に分けて
登録する登録手段と、 前記登録手段により登録された各描画範囲情報を解析し
て前記中間言語データを描画すべき可変域のバンドメモ
リ領域を決定する決定手段と、 前記保持手段に保持された中間言語データに基づくビッ
トマップイメージを前記決定手段により決定したバンド
メモリ領域単位分描画処理する描画手段と、 前記登録手段により登録した描画範囲情報と前記描画手
段により描画されるビットマップデータとから決定され
たバンド領域数分の印刷命令を生成して前記印刷装置に
送出する第2の変換手段と、を有することを特徴とする
データ処理装置。
1. A data processing device capable of communicating with a printing device via a predetermined communication medium, comprising: first conversion means for converting a print command from a predetermined application program into intermediate language data; Holding means for holding the intermediate language data converted by the converting means in units of pages, and rendering the intermediate language data converted by the first converting means into drawing area information to be drawn into a plurality of areas. Registering means for registering; analyzing means for analyzing each drawing range information registered by the registering means to determine a band memory area of a variable area in which the intermediate language data is to be drawn; and intermediate means held in the holding means. Drawing means for drawing a bitmap image based on language data for a band memory area unit determined by the determination means; And a second conversion unit that generates print commands for the number of band areas determined from the drawing range information and the bitmap data drawn by the drawing unit and sends the print commands to the printing apparatus. Data processing device.
【請求項2】 前記登録手段は、ページが複数の仮想バ
ンド領域に分割された各仮想バンド領域に対する複数の
描画範囲から特定される最外郭矩形を描画範囲として複
数領域分登録することを特徴とする請求項1記載のデー
タ処理装置。
2. The image processing apparatus according to claim 1, wherein the registering unit registers the outermost rectangle specified from a plurality of drawing ranges for each virtual band region obtained by dividing the page into a plurality of virtual band regions as a drawing range for a plurality of regions. The data processing device according to claim 1, wherein
【請求項3】 前記決定手段は、1ページ分の中間言語
データを前記保持手段に保持する時に、描画領域の幅に
応じて描画処理に用いるバンドメモリ領域のバンド高さ
を変更することを特徴とする請求項1記載のデータ処理
装置。
3. The method according to claim 1, wherein the determining unit changes a band height of a band memory area used for a drawing process according to a width of the drawing area when holding the intermediate language data for one page in the holding unit. The data processing device according to claim 1, wherein
【請求項4】 前記第2の変換手段は、前記保持手段に
保持した描画範囲情報と前記バンドメモリ領域とを結び
付け有効描画範囲を印刷するための所定の印刷命令を複
数領域分生成することを特徴とする請求項1記載のデー
タ処理装置。
4. The image forming apparatus according to claim 1, wherein the second converting unit links the drawing range information held in the holding unit with the band memory area and generates a predetermined print command for printing an effective drawing range for a plurality of areas. The data processing device according to claim 1, wherein
【請求項5】 前記登録手段は、前記描画手段による描
画結果が白画素以外となる描画処理命令時は、描画範囲
の最外郭矩形を更新し、前記描画手段による描画結果が
白画素となる描画命令時は、描画範囲の最外郭矩形を削
減することを特徴とする請求項1記載のデータ処理装
置。
5. A drawing unit that updates the outermost rectangle of a drawing range when a drawing processing command that results in a drawing result other than a white pixel from the drawing unit is a white pixel, and sets the drawing result by the drawing unit to a white pixel. 2. The data processing apparatus according to claim 1, wherein at the time of a command, the outermost rectangle of the drawing range is reduced.
【請求項6】 所定の通信媒体を介して印刷装置と通信
可能なデータ処理装置におけるデータ処理方法であっ
て、 所定のアプリケーションプログラムからの印刷命令を中
間言語データに変換する第1の変換工程と、 前記第1の変換工程により変換された中間言語データを
ページ単位に保持する保持工程と、 前記第1の変換工程により変換される中間言語データを
解析して描画すべき描画範囲情報を複数の領域に分けて
登録する登録工程と、 前記登録工程により登録された各描画範囲情報を解析し
て前記中間言語データを描画すべき可変域のバンドメモ
リ領域を決定する決定工程と、 前記保持工程に保持された中間言語データに基づくビッ
トマップイメージを前記決定工程により決定したバンド
メモリ領域単位分描画処理する描画工程と、 前記登録工程により登録した描画範囲情報と前記描画手
段により描画されるビットマップデータとから決定され
たバンド領域数分の印刷命令を生成して前記印刷装置に
送出する第2の変換工程と、を有することを特徴とする
データ処理方法。
6. A data processing method in a data processing device capable of communicating with a printing device via a predetermined communication medium, comprising: a first conversion step of converting a print command from a predetermined application program into intermediate language data; A holding step of holding the intermediate language data converted by the first conversion step in page units; and a plurality of drawing range information to be analyzed and drawn by the intermediate language data converted by the first conversion step. A registration step of separately registering the area, a determination step of analyzing each drawing range information registered in the registration step and determining a band memory area of a variable area in which the intermediate language data is to be drawn, A drawing step of drawing a bitmap image based on the held intermediate language data for a band memory area unit determined in the determination step; A second conversion step of generating print commands for the number of band areas determined from the drawing range information registered in the registration step and the bitmap data drawn by the drawing means and sending the print commands to the printing apparatus. A data processing method comprising:
【請求項7】 前記登録工程は、ページが複数の仮想バ
ンド領域に分割された各仮想バンド領域に対する複数の
描画範囲から特定される最外郭矩形を描画範囲として複
数領域分登録することを特徴とする請求項6記載のデー
タ処理方法。
7. The registration step includes registering, as a drawing range, an outermost rectangle specified from a plurality of drawing ranges for each virtual band area obtained by dividing a page into a plurality of virtual band areas, for a plurality of areas. 7. The data processing method according to claim 6, wherein:
【請求項8】 前記決定工程は、1ページ分の中間言語
データを前記メモリに保持する時に、描画領域の幅に応
じて描画処理に用いるバンドメモリ領域のバンド高さを
変更することを特徴とする請求項6記載のデータ処理方
法。
8. The method according to claim 1, wherein the determining step changes a band height of a band memory area used for drawing processing according to a width of the drawing area when holding one page of intermediate language data in the memory. 7. The data processing method according to claim 6, wherein:
【請求項9】 前記第2の変換工程は、前記メモリに保
持した描画範囲情報と前記バンドメモリ領域とを結び付
け有効描画範囲を印刷するための所定の印刷命令を複数
領域分生成することを特徴とする請求項6記載のデータ
処理方法。
9. The method according to claim 8, wherein the second conversion step generates a predetermined print command for printing an effective drawing range by linking the drawing range information held in the memory with the band memory area for a plurality of areas. The data processing method according to claim 6, wherein
【請求項10】 前記登録工程は、前記描画工程による
描画結果が白画素以外となる描画処理命令時は、描画範
囲の最外郭矩形を更新し、前記描画手段による描画結果
が白画素となる描画命令時は、描画範囲の最外郭矩形を
削減することを特徴とする請求項6記載のデータ処理方
法。
10. The registration step includes, when a rendering processing command in which a rendering result in the rendering step is other than a white pixel, updates an outermost rectangle of a rendering range, and renders a rendering result in the rendering unit as a white pixel. 7. The data processing method according to claim 6, wherein at the time of the instruction, the outermost rectangle of the drawing range is reduced.
【請求項11】 所定の通信媒体を介して印刷装置と通
信可能なデータ処理装置を制御するコンピュータが読み
出し可能なプログラムを格納した記憶媒体であって、 所定のアプリケーションプログラムからの印刷命令を中
間言語データに変換する第1の変換工程と、 前記第1の変換工程により変換された中間言語データを
ページ単位に保持する保持工程と、 前記第1の変換工程により変換される中間言語データを
解析して描画すべき描画範囲情報を複数の領域に分けて
登録する登録工程と、 前記登録工程により登録された各描画範囲情報を解析し
て前記中間言語データを描画すべき可変域のバンドメモ
リ領域を決定する決定工程と、 前記保持工程に保持された中間言語データに基づくビッ
トマップイメージを前記決定工程により決定したバンド
メモリ領域単位分描画処理する描画工程と、 前記登録工程により登録した描画範囲情報と前記描画手
段により描画されるビットマップデータとから決定され
たバンド領域数分の印刷命令を生成して前記印刷装置に
送出する第2の変換工程と、を有することを特徴とする
コンピュータが読み出し可能なプログラムを格納した記
憶媒体。
11. A storage medium storing a computer readable program for controlling a data processing device capable of communicating with a printing device via a predetermined communication medium, wherein a print command from a predetermined application program is stored in an intermediate language. A first conversion step of converting the data into data, a holding step of holding the intermediate language data converted in the first conversion step in page units, and analyzing the intermediate language data converted in the first conversion step. Registering the drawing range information to be drawn by dividing into a plurality of areas, and analyzing each drawing range information registered in the registration step to analyze the variable range band memory area to draw the intermediate language data. A determining step of determining, and a bitmap image determined by the determining step based on the intermediate language data held in the holding step. A drawing step of performing a drawing process for each memory area unit; and a print command for the number of band areas determined from the drawing range information registered in the registration step and the bitmap data drawn by the drawing means. And a second conversion step of sending the program to a computer-readable storage medium storing a computer-readable program.
【請求項12】 前記登録工程は、ページが複数の仮想
バンド領域に分割された各仮想バンド領域に対する複数
の描画範囲から特定される最外郭矩形を描画範囲として
複数領域分登録することを特徴とする請求項11記載の
コンピュータが読み出し可能なプログラムを格納した記
憶媒体。
12. The registration step, wherein the outermost rectangle specified from a plurality of drawing ranges for each virtual band area in which a page is divided into a plurality of virtual band areas is registered as a drawing area for a plurality of areas. A storage medium storing a computer-readable program according to claim 11.
【請求項13】 前記決定工程は、1ページ分の中間言
語データを前記メモリに保持する時に、描画領域の幅に
応じて描画処理に用いるバンドメモリ領域のバンド高さ
を変更することを特徴とする請求項11記載のコンピュ
ータが読み出し可能なプログラムを格納した記憶媒体。
13. The method according to claim 1, wherein when the intermediate language data for one page is held in the memory, a band height of a band memory area used for a drawing process is changed according to a width of the drawing area. A storage medium storing a computer-readable program according to claim 11.
【請求項14】 前記第2の変換工程は、前記メモリに
保持した描画範囲情報と前記バンドメモリ領域とを結び
付け有効描画範囲を印刷するための所定の印刷命令を複
数領域分生成することを特徴とする請求項11記載のコ
ンピュータが読み出し可能なプログラムを格納した記憶
媒体。
14. The method according to claim 1, wherein the second conversion step generates a predetermined print command for printing the effective drawing range by linking the drawing range information held in the memory with the band memory area for a plurality of areas. A storage medium storing a computer-readable program according to claim 11.
【請求項15】 前記登録工程は、前記描画工程による
描画結果が白画素以外となる描画処理命令時は、描画範
囲の最外郭矩形を更新し、前記描画手段による描画結果
が白画素となる描画命令時は、描画範囲の最外郭矩形を
削減することを特徴とする請求項11記載のコンピュー
タが読み出し可能なプログラムを格納した記憶媒体。
15. The image forming apparatus according to claim 1, wherein the registering step updates a drawing rectangle in a drawing range when the drawing result is other than a white pixel in the drawing step, and draws the drawing result by the drawing means as a white pixel. 12. The storage medium according to claim 11, wherein the outermost rectangle of the drawing range is reduced when the command is issued.
JP11225933A 1999-08-10 1999-08-10 Apparatus and method for processing data and memory medium with computer readable program stored thereon Pending JP2001047673A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11225933A JP2001047673A (en) 1999-08-10 1999-08-10 Apparatus and method for processing data and memory medium with computer readable program stored thereon

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11225933A JP2001047673A (en) 1999-08-10 1999-08-10 Apparatus and method for processing data and memory medium with computer readable program stored thereon

Publications (1)

Publication Number Publication Date
JP2001047673A true JP2001047673A (en) 2001-02-20

Family

ID=16837180

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11225933A Pending JP2001047673A (en) 1999-08-10 1999-08-10 Apparatus and method for processing data and memory medium with computer readable program stored thereon

Country Status (1)

Country Link
JP (1) JP2001047673A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008006803A (en) * 2006-06-01 2008-01-17 Ricoh Co Ltd Printing data processor
JP2013132775A (en) * 2011-12-26 2013-07-08 Konica Minolta Business Technologies Inc Image forming device, image forming method, and program
EP2741257A2 (en) 2012-12-04 2014-06-11 Fujitsu Limited Rendering apparatus, rendering method, and rendering program

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008006803A (en) * 2006-06-01 2008-01-17 Ricoh Co Ltd Printing data processor
JP2013132775A (en) * 2011-12-26 2013-07-08 Konica Minolta Business Technologies Inc Image forming device, image forming method, and program
EP2741257A2 (en) 2012-12-04 2014-06-11 Fujitsu Limited Rendering apparatus, rendering method, and rendering program
US9177354B2 (en) 2012-12-04 2015-11-03 Fujitsu Limited Rendering apparatus, rendering method, and computer product

Similar Documents

Publication Publication Date Title
JP3826038B2 (en) Printing system, printing method therefor, and printing apparatus
JP4235347B2 (en) Information processing apparatus, information processing method, and storage medium
KR100757154B1 (en) Information processing apparatus and its control method
US20030011819A1 (en) Information processing device, information processing method, printing system, computer program and memory medium
US7161702B2 (en) Method and apparatus for generating a print command capable of generating improved stable throughput
US7023579B2 (en) Information processing apparatus, information processing method, and memory medium storing print control program therein
US20050275883A1 (en) Information processing apparatus and its control method
JP4418642B2 (en) HOST DEVICE, PRINTING DEVICE, PRINTING SYSTEM HAVING THEM, PRINT CONTROL METHOD, AND PROGRAM THEREOF
JP4018426B2 (en) Image processing system and control method thereof
JP4095166B2 (en) Image processing apparatus and method
US20040223188A1 (en) Printing control method and apparatus
JP2001047673A (en) Apparatus and method for processing data and memory medium with computer readable program stored thereon
JP2007140952A (en) Distributed processing system and its processing method
JP2003122521A (en) Print system, information processor, plotting method therefor, program and storage medium
JP2006235813A (en) Print system
JP2005169671A (en) Data processing apparatus, printing controlling method, storage medium with computer readable program stored, and program
JP2001236193A (en) Information processing system and its processing method
JP2004326266A (en) Print control method, information processing device, and printer
JP2005349772A (en) Printing device and its control method
JP4663140B2 (en) Data processing apparatus and method, storage medium and program
JP2005157857A (en) Data processor, method for controlling print, storage medium for storing computer readable program, and program
JP2001243029A (en) System and method for processing picture
JP2005216031A (en) Print controller, printer, data processing method, computer-readable storage medium storing program, and program
JP2001282498A (en) Information processor, information processing method and storage medium
JP2006181947A (en) Printing system