JP2001312383A - Printer, high speed printing method and storage medium - Google Patents

Printer, high speed printing method and storage medium

Info

Publication number
JP2001312383A
JP2001312383A JP2000130572A JP2000130572A JP2001312383A JP 2001312383 A JP2001312383 A JP 2001312383A JP 2000130572 A JP2000130572 A JP 2000130572A JP 2000130572 A JP2000130572 A JP 2000130572A JP 2001312383 A JP2001312383 A JP 2001312383A
Authority
JP
Japan
Prior art keywords
intermediate data
rendering processing
general
band
rendering
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.)
Withdrawn
Application number
JP2000130572A
Other languages
Japanese (ja)
Inventor
Katsuichi Sugano
勝一 菅野
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 JP2000130572A priority Critical patent/JP2001312383A/en
Publication of JP2001312383A publication Critical patent/JP2001312383A/en
Withdrawn legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide more accelerated printing by simultaneously executing a plurality of rendering processing inside a printer driver. SOLUTION: The print data of GDI form are converted to intermediate data 407 for each of plural bands comprising a page bit map (S406). On the other hand, plural rendering processing parts, which can be parallel executed simultaneously, corresponding to each of plural bands are prepared (S408 and S409), the converted and prepared intermediate data 407 for each of plural bands are respectively sent to these prepared plural rendering processing parts and rendering processing is parallel executed simultaneously for each of plural bands (S413). Thus, a page bit map 410 is prepared.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、印刷装置、高速印
刷方法、及び記憶媒体に関し、特に、所定の形式の印刷
データを中間データに変換し、該中間データをレンダリ
ング処理してページビットマップを作成する印刷装置、
該印刷装置に適用される高速印刷方法、及び該高速印刷
方法を実行するプログラムを記憶した記憶媒体に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a printing apparatus, a high-speed printing method, and a storage medium. More particularly, the present invention converts print data of a predetermined format into intermediate data, renders the intermediate data, and generates a page bitmap. Printing device to create,
The present invention relates to a high-speed printing method applied to the printing apparatus and a storage medium storing a program for executing the high-speed printing method.

【0002】[0002]

【従来の技術】従来、印刷装置ではプリンタドライバと
呼ばれるソフトウェアが使用され、これによって印刷デ
ータ(ページビットマップ)が作成される。すなわち、
アプリケーションの出力に応じてオペレーティングシス
テム(以下OS)がGDI(Graphics Device Interfac
e)と呼ばれる命令をプリンタドライバに対して出力
し、プリンタドライバはそれを中間言語に変換し、その
中間言語を順番にレンダリング処理することで印刷デー
タを作成していた。
2. Description of the Related Art Conventionally, a printing apparatus uses software called a printer driver to generate print data (page bitmap). That is,
The operating system (hereinafter referred to as OS) is GDI (Graphics Device Interface) according to the output of the application.
An instruction called e) was output to the printer driver, and the printer driver converted it into an intermediate language, and rendered the intermediate language in order to create print data.

【0003】[0003]

【発明が解決しようとする課題】プリンタドライバがこ
の様に動作している場合には、プリンタドライバ内で同
時にレンダリング処理できる中間言語は最大で1個であ
る。
When the printer driver operates in such a manner, the maximum number of intermediate languages that can be simultaneously rendered in the printer driver is one.

【0004】しかしながら、一度に1つの中間言語しか
レンダリングできない処理形態では、通常CPUの能力
には余裕があり、その能力を十分に使いきっているとは
言えない状況であった。CPUの能力を十分に有効活用
できれば、より高速な印刷を実現できることが期待でき
るにも拘らず、それができていないという問題点があっ
た。
[0004] However, in a processing mode in which only one intermediate language can be rendered at a time, there is usually enough room for the CPU, and it cannot be said that the CPU is fully used. If the capability of the CPU can be effectively utilized, there is a problem in that although high-speed printing can be expected to be realized, it cannot be realized.

【0005】本発明はこのような問題点に鑑みてなされ
たものであって、プリンタドライバ内で同時に複数のレ
ンダリング処理を実行できるようにして、より高速な印
刷の実現を図った印刷装置、高速印刷方法、及び記憶媒
体を提供することを目的とする。
SUMMARY OF THE INVENTION The present invention has been made in view of such problems, and a printing apparatus which realizes higher-speed printing by enabling a plurality of rendering processes to be executed simultaneously in a printer driver. It is an object to provide a printing method and a storage medium.

【0006】[0006]

【課題を解決するための手段】上記目的を達成するため
に、請求項1記載の発明によれば、所定の形式の印刷デ
ータを中間データに変換し、該中間データをレンダリン
グ処理してページビットマップを作成する印刷装置にお
いて、前記所定形式の印刷データを、ページビットマッ
プを構成する複数の分割区画毎の中間データに変換する
中間データ変換手段を有することを特徴とする。
According to the first aspect of the present invention, print data in a predetermined format is converted into intermediate data, and the intermediate data is rendered by a rendering process. A printing apparatus for creating a map is characterized in that the printing apparatus has an intermediate data conversion means for converting the print data in the predetermined format into intermediate data for each of a plurality of divided sections constituting a page bitmap.

【0007】請求項2記載の発明によれば、請求項1記
載の発明において、前記複数の分割区画にそれぞれ対応
した、並列して同時に実行可能な複数のレンダリング処
理部を作成するレンダリング処理部作成手段と、前記レ
ンダリング処理部作成手段により作成された複数のレン
ダリング処理部に、前記中間データ変換手段により変換
され作成された前記複数の分割区画毎の中間データをそ
れぞれ送り、前記複数の分割区画毎のレンダリング処理
を並列して同時に実行させる実行手段とを更に有するこ
とを特徴とする。
According to a second aspect of the present invention, in the first aspect of the present invention, a rendering processing unit for creating a plurality of rendering processing units respectively corresponding to the plurality of divided sections and capable of being executed in parallel and simultaneously. Means for transmitting the intermediate data for each of the plurality of divided sections generated and converted by the intermediate data converting means to the plurality of rendering processing sections created by the rendering processing section creating means, Executing means for executing the rendering processes in parallel and simultaneously.

【0008】請求項3記載の発明によれば、請求項1記
載の発明において、予め決められた数の並列して同時に
実行可能な汎用レンダリング処理部を作成する汎用レン
ダリング処理部作成手段と、前記汎用レンダリング処理
部作成手段により作成された汎用レンダリング処理部
に、前記中間データ変換手段により変換され作成された
前記複数の分割区画毎の中間データのうちの、前記汎用
レンダリング処理部の数と同じ数の中間データをそれぞ
れ送り、分割区画毎のレンダリング処理を並列して同時
に実行させる実行手段とを更に有することを特徴とす
る。
According to a third aspect of the present invention, in the first aspect of the present invention, a general-purpose rendering processing section creating means for creating a predetermined number of general-purpose rendering processing sections that can be executed in parallel and simultaneously, The same number as the number of the general-purpose rendering processing units in the intermediate data for each of the plurality of divided sections converted and generated by the intermediate data conversion unit is added to the general-purpose rendering processing units generated by the general-purpose rendering processing unit generating unit. And an execution unit for transmitting the intermediate data of each of the above (1) and (2) to execute the rendering processing for each divided section in parallel and simultaneously.

【0009】また、請求項6記載の発明によれば、所定
の形式の印刷データを中間データに変換し、該中間デー
タをレンダリング処理してページビットマップを作成す
る印刷装置に適用される高速印刷方法において、前記所
定形式の印刷データを、ページビットマップを構成する
複数の分割区画毎の中間データに変換する中間データ変
換ステップを有することを特徴とする。
According to the present invention, high-speed printing is applied to a printing apparatus which converts print data of a predetermined format into intermediate data and renders the intermediate data to create a page bitmap. The method further comprises an intermediate data conversion step of converting the print data of the predetermined format into intermediate data for each of a plurality of divided sections constituting a page bitmap.

【0010】さらに、請求項11記載の発明によれば、
所定の形式の印刷データを中間データに変換し、該中間
データをレンダリング処理してページビットマップを作
成する印刷装置に適用される高速印刷方法をプログラム
として記憶した、コンピュータにより読み出し可能な記
憶媒体において、前記高速印刷方法が、前記所定形式の
印刷データを、ページビットマップを構成する複数の分
割区画毎の中間データに変換する中間データ変換ステッ
プを有することを特徴とする。
Further, according to the invention described in claim 11,
A computer-readable storage medium that stores, as a program, a high-speed printing method applied to a printing apparatus that converts print data of a predetermined format into intermediate data, renders the intermediate data, and creates a page bitmap. Wherein the high-speed printing method includes an intermediate data conversion step of converting the print data of the predetermined format into intermediate data for each of a plurality of divided sections constituting a page bitmap.

【0011】[0011]

【発明の実施の形態】以下、本発明の実施の形態を、図
面を参照して説明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0012】(第1の実施の形態)第1の実施の形態の
構成を説明する前に、本発明を適用するに好適なレーザ
ービームプリンタの構成について図1を参照しながら説
明する。
(First Embodiment) Before describing the configuration of the first embodiment, a configuration of a laser beam printer suitable for applying the present invention will be described with reference to FIG.

【0013】なお、本発明を適用可能なプリンタはレー
ザービームプリンタに限られるものではなく、インクジ
ェットプリンタなどの他の方式のプリンタでもよいこと
は言うまでもない。
It should be noted that the printer to which the present invention can be applied is not limited to a laser beam printer, but may be another type of printer such as an ink jet printer.

【0014】また更に、本発明が適用されるソフトウェ
アは、プリンタ制御システムに限ったものではなく、デ
ィスプレイ制御ソフトウェア等に幅広く応用可能である
ことも併せて補足しておく。
Further, it should be further supplemented that the software to which the present invention is applied is not limited to the printer control system but can be widely applied to display control software and the like.

【0015】図1は、本発明を適用可能なレーザービー
ムプリンタ(LBP)の構成を示す断面図である。
FIG. 1 is a sectional view showing the structure of a laser beam printer (LBP) to which the present invention can be applied.

【0016】図1において、1500はLBP本体であ
り、外部のホストコンピュータ(図示せず)から供給さ
れる印刷情報(文字コード等)やフォーム情報を受け取
って記憶すると共に、印刷情報やフォーム情報に対応す
る文字パターンやフォームパターン等を作成し、記録媒
体である記録紙等に像を形成する。
In FIG. 1, reference numeral 1500 denotes an LBP main body, which receives and stores print information (character codes and the like) and form information supplied from an external host computer (not shown), and stores the print information and form information in the print information and form information. A corresponding character pattern, form pattern, or the like is created, and an image is formed on a recording medium such as recording paper.

【0017】1501は操作のためのスイッチおよびL
ED表示器等が配されている操作パネル、1512はL
BP本体1500の制御およびホストコンピュータから
供給される文字情報を解析するプリンタ制御ユニットで
ある。
Reference numeral 1501 denotes a switch for operation and L
An operation panel on which an ED display and the like are disposed, and 1512 is L
A printer control unit that controls the BP body 1500 and analyzes character information supplied from the host computer.

【0018】このプリンタ制御ユニット1512は、文
字情報を対応する文字パターンのビデオ信号に変換して
レーザードライバ1502に出力する。
The printer control unit 1512 converts character information into a video signal of a corresponding character pattern and outputs the video signal to the laser driver 1502.

【0019】レーザードライバ1502は半導体レーザ
ー1503を駆動するための回路であり、入力されたビ
デオ信号に応じて、半導体レーザー1503から発射さ
れるレーザー光1504をオン・オフ切り換えする。
A laser driver 1502 is a circuit for driving the semiconductor laser 1503, and switches on / off a laser beam 1504 emitted from the semiconductor laser 1503 according to an input video signal.

【0020】レーザー光1504は回転多面鏡1505
で左右方向に振られて静電ドラム1506上を走査露光
する。これにより、静電ドラム1506上には文字パタ
ーンの静電潜像が形成されることになる。
The laser light 1504 is rotated by a polygon mirror 1505.
The scanning exposure is performed on the electrostatic drum 1506 by swinging in the horizontal direction. As a result, an electrostatic latent image of a character pattern is formed on the electrostatic drum 1506.

【0021】この潜像は、静電ドラム1506周囲に配
設されたユニット1507により現像された後、記録紙
に転写される。
This latent image is developed by a unit 1507 disposed around the electrostatic drum 1506 and then transferred to a recording sheet.

【0022】この記録紙にはカットシートを用い、カッ
トシート記録紙はLBP1500に装備されている用紙
ガイド1508に収納され、給紙ローラ1509および
搬送ローラ1510と搬送ローラ1511とにより、装
置内に取り込まれて、静電ドラム1506に供給され
る。
A cut sheet is used as the recording paper. The cut sheet recording paper is stored in a paper guide 1508 provided in the LBP 1500, and is taken into the apparatus by a paper feed roller 1509, transport rollers 1510, and a transport roller 1511. And supplied to the electrostatic drum 1506.

【0023】また、LBP本体1500には、図示しな
いカードスロットを少なくとも1個備え、内蔵フォント
に加えて、オプションフォントカード、言語系の異なる
カード(エミュレーションカード)を利用できるように
構成されている。
The LBP body 1500 has at least one card slot (not shown) so that an optional font card and a card (emulation card) having a different language system can be used in addition to the built-in font.

【0024】図2及び図3は、本発明が適用されるプリ
ンタ制御システムの構成を示すブロック図であり、図2
はホストコンピュータを、図3はプリンタを主に示す。
なおここでは、プリンタとしてレーザービームプリンタ
を例にとって説明する。
FIGS. 2 and 3 are block diagrams showing the configuration of a printer control system to which the present invention is applied.
3 mainly shows a host computer, and FIG. 3 mainly shows a printer.
Here, a laser beam printer will be described as an example of the printer.

【0025】図2において、3000はホストコンピュ
ータであり、CPU1が、システムバス4に接続される
各デバイスを総括的に制御する。ROM3は、フォント
用ROM、プログラム用ROM、及びデータ用ROMか
ら構成され、プログラム用ROMには、CPU1の制御
プログラム等が記憶され、フォント用ROMには上記文
章処理の際に使用されるフォントデータ等が記憶され、
データ用ROMには上記文章処理を行う際に使用される
各種データが記憶される。CPU1は、プログラム用R
OMに記憶された文章処理プログラム等に基づいて図
形、イメージ、文字、表(表計算等を含む)等が混在し
た文章処理を実行する。
In FIG. 2, reference numeral 3000 denotes a host computer, and the CPU 1 controls each device connected to the system bus 4 as a whole. The ROM 3 includes a font ROM, a program ROM, and a data ROM. The program ROM stores a control program of the CPU 1 and the like, and the font ROM stores font data used in the above-described text processing. Etc. are stored,
The data ROM stores various data used when performing the above-described text processing. The CPU 1 has a program R
Based on a sentence processing program or the like stored in the OM, a sentence process in which graphics, images, characters, tables (including spreadsheets, etc.) are mixed is executed.

【0026】2はRAMであり、CPU1の主メモリ、
ワークエリア等として機能する。
Reference numeral 2 denotes a RAM, which is a main memory of the CPU 1;
Functions as a work area.

【0027】5はキーボードコントローラ(KBC)で
あり、キーボード(KB)9や不図示のポインティング
デバイスからの信号入力を制御する。
A keyboard controller (KBC) 5 controls signal input from a keyboard (KB) 9 or a pointing device (not shown).

【0028】6はCRTコントローラ(CRTC)であ
り、CRTディスプレイ(CRT)10の表示を制御す
る。
Reference numeral 6 denotes a CRT controller (CRTC), which controls display on a CRT display (CRT) 10.

【0029】7はディスクコントローラ(DKC)であ
り、外部メモリ11とのアクセスを制御する。外部メモ
リ11としては、ブートプログラム、種々のアプリケー
ション、フォントデータ、ユーザーファイル、編集ファ
イル等を記憶するハードディスク(HD)、フロッピー
(登録商標)ディスク(FD)等がある。
Reference numeral 7 denotes a disk controller (DKC), which controls access to the external memory 11. The external memory 11 includes a hard disk (HD) for storing a boot program, various applications, font data, user files, editing files, and the like, a floppy (registered trademark) disk (FD), and the like.

【0030】8はプリンタコントローラ(PRTC)で
あり、所定の双方向インターフェース(インターフェー
ス)21を介してプリンタ1500に接続されて、プリ
ンタ1500との通信制御処理を実行する。
Reference numeral 8 denotes a printer controller (PRTC), which is connected to the printer 1500 via a predetermined bidirectional interface (interface) 21 and executes communication control processing with the printer 1500.

【0031】なお、RAM2には表示情報エリアが設定
され、CPU1は、RAM2上に設定された表示情報エ
リアでアウトラインフォントの展開(ラスタライズ)処
理を実行し、CRT10上でのWYSIWYGを可能と
している。
Note that a display information area is set in the RAM 2, and the CPU 1 executes outline font development (rasterization) processing in the display information area set in the RAM 2 to enable WYSIWYG on the CRT 10.

【0032】また、CPU1は、CRT10上の不図示
のマウスカーソル等で指示されたコマンドに基づいて、
登録された種々のウィンドウを開き、種々のデータ処理
を実行する。
Further, the CPU 1 receives a command indicated by a mouse cursor (not shown) on the CRT 10 based on a command.
Various registered windows are opened to execute various data processing.

【0033】次に図3に示すプリンタ1500におい
て、12はプリンタCPUであり、13はROMであ
る。ROM13は、フォント用ROM、プログラム用R
OM、及びデータ用ROMから構成され、プログラムR
OMにはCPU12の制御プログラムが記憶され、フォ
ント用ROMには、印刷部17に出力される画像情報を
生成する際に使用されるフォントデータ等が記憶され
る。データ用ROMには、CPU12の制御プログラム
が記憶され、またハードディスク等の外部メモリ14が
無いプリンタの場合には、ホストコンピュータ3000
で利用される情報等が記憶される。
Next, in the printer 1500 shown in FIG. 3, reference numeral 12 denotes a printer CPU, and reference numeral 13 denotes a ROM. The ROM 13 includes a font ROM and a program R
OM and data ROM, and the program R
The OM stores a control program for the CPU 12, and the font ROM stores font data and the like used when generating image information to be output to the printing unit 17. The control program of the CPU 12 is stored in the data ROM. In the case of a printer without the external memory 14 such as a hard disk, the host computer 3000 is used.
Is stored.

【0034】CPU12は、ROM13のプログラム用
ROMに記憶された制御プログラム等または外部メモリ
14に記憶された制御プログラムに基づいて、システム
バス15に接続される各種のデバイスとのアクセスを統
括的に制御し、また印刷部インターフェース16を介し
て接続される印刷部(プリンタエンジン)17に、出力
情報としての画像信号を出力する。
The CPU 12 comprehensively controls access to various devices connected to the system bus 15 based on a control program or the like stored in the program ROM of the ROM 13 or a control program stored in the external memory 14. Further, it outputs an image signal as output information to a printing unit (printer engine) 17 connected via a printing unit interface 16.

【0035】CPU12は入力部18を介してホストコ
ンピュータ3000と通信が可能となっており、プリン
タ1500内の情報等をホストコンピュータ3000に
通知可能に構成されている。
The CPU 12 can communicate with the host computer 3000 via the input unit 18 and can notify the host computer 3000 of information and the like in the printer 1500.

【0036】19はCPU12の主メモリ、ワークエリ
アとして機能するRAMである。なお、RAM19は、
図示しない増設ポートに接続されるオプションRAMに
よりメモリ容量を拡張することができるように構成され
ている。
A RAM 19 functions as a main memory and a work area of the CPU 12. Note that the RAM 19
The configuration is such that the memory capacity can be expanded by an optional RAM connected to an additional port (not shown).

【0037】なお、RAM19は、出力情報展開領域、
環境データ格納領域、NVRAM等に用いられる。
The RAM 19 has an output information development area,
Used for environmental data storage area, NVRAM, etc.

【0038】外部メモリ14は、ハードディスク(H
D)、ICカード等で構成され、ディスクコントローラ
(DKC)20によりアクセス制御される。外部メモリ
14は、オプションとして接続され、フォントデータ、
エミュレーションプログラム、フォームデータ等を記憶
する。
The external memory 14 has a hard disk (H
D), an IC card or the like, and access control is performed by a disk controller (DKC) 20. The external memory 14 is connected as an option, and stores font data,
It stores an emulation program, form data, and the like.

【0039】また、1501は操作部であり、操作のた
めのスイッチ、LED表示器等が配されている。
An operation unit 1501 includes switches for operation, an LED display, and the like.

【0040】なお、前述した外部メモリ14は1個以上
備えられ、内蔵フォントを補強するオプションフォント
カード、言語系の異なるプリンタ制御言語を解釈するプ
ログラムを格納したメモリ等が複数接続されるように構
成してもよい。さらに、図示しないNVRAMを有し、
操作部1501からのプリンタモード設定情報を記憶す
るようにしても良い。
It should be noted that the above-mentioned external memory 14 is provided with one or more, and is configured such that a plurality of optional font cards for reinforcing built-in fonts, memories storing programs for interpreting printer control languages of different language systems and the like are connected. May be. Furthermore, it has a not-shown NVRAM,
The printer mode setting information from the operation unit 1501 may be stored.

【0041】このように構成されたプリンタ制御システ
ムにおいて、本発明が適用される処理のプログラムが、
ホストコンピュータ3000の外部メモリ11に常駐す
る。本発明が適用される処理はプリンタドライバの一部
分を構成し、印刷処理と同時に起動され実行される。
In the thus configured printer control system, the processing program to which the present invention is applied is:
It resides in the external memory 11 of the host computer 3000. The processing to which the present invention is applied forms a part of the printer driver, and is started and executed simultaneously with the printing processing.

【0042】次に、本発明との比較のために、従来の一
般的なプリンタドライバの処理を、図4を参照して説明
する。
Next, for comparison with the present invention, processing of a conventional general printer driver will be described with reference to FIG.

【0043】図4は、従来の一般的なプリンタドライバ
の処理の手順を示すフローチャートである。なお、この
フローチャートには、装置、処理プログラム、データ等
も図示される。
FIG. 4 is a flowchart showing a procedure of processing of a conventional general printer driver. The flowchart also shows the devices, processing programs, data, and the like.

【0044】図中301はアプリケーションであり、R
AM上に展開され実行されるアプリケーションプログラ
ムを示しており、このアプリケーション301が何らか
の適当な印刷データを作成し、印刷の指示を行う。
In the figure, reference numeral 301 denotes an application.
An application program is developed and executed on the AM, and the application 301 creates some appropriate print data and issues a print instruction.

【0045】通常の印刷データは、ドキュメントの始ま
り、ページの始まり、線や文字を表すデータ群、ページ
の終わり、ドキュメントの終わり、といったデータで構
成され、順次アプリケーションプログラムからOSに対
して出力される。
Normal print data is composed of data such as the beginning of a document, the beginning of a page, a data group representing lines and characters, the end of a page, and the end of a document, and is sequentially output from the application program to the OS. .

【0046】302はOSであり、アプリケーション3
01からOS302に対して出力された印刷データを基
に、OS302が、GDIと呼ばれる命令形式でRAM
上に展開され実行されているプリンタドライバ310に
対して、印刷指示を行う。
Reference numeral 302 denotes an OS, which is an application 3
01 based on the print data output to the OS 302, the OS 302
A print instruction is issued to the printer driver 310 developed and executed above.

【0047】また、OS302は、後述するステップS
304において実行される中間データ作成処理が終了し
たという通知をプリンタドライバ310から受けたと
き、その完了通知をアプリケーション301に通知し
て、アプリケーション301が次の処理動作に移れるよ
うにする。
Also, the OS 302 executes step S
Upon receiving from the printer driver 310 a notification that the intermediate data creation processing executed in 304 has been completed, the completion notification is notified to the application 301 so that the application 301 can proceed to the next processing operation.

【0048】次にプリンタドライバ310の処理に移っ
て、ステップS303では、アプリケーション301か
らGDI形式で、ページの終わりというデータが送られ
て来たか否かの判断を行う。
Next, the processing shifts to the processing of the printer driver 310. In step S303, it is determined whether or not data indicating the end of the page has been sent from the application 301 in the GDI format.

【0049】ページの終わりというデータが送られた場
合には、ステップS306に進んで、プリンタドライバ
310がレンダリング処理を実行する。レンダリング処
理については後述する。一方、ページの終わりというデ
ータが送られていない場合には、ステップS304に進
んで、プリンタドライバ310が中間データ作成処理を
実行する。中間データ作成処理では、GDI形式の出力
データを、レンダリング処理を行い易い中間データ形式
に変換する。
If data indicating the end of the page has been sent, the process proceeds to step S306, where the printer driver 310 executes a rendering process. The rendering process will be described later. On the other hand, if the data indicating the end of the page has not been sent, the process proceeds to step S304, where the printer driver 310 executes an intermediate data creation process. In the intermediate data creation process, the output data in the GDI format is converted into an intermediate data format that is easy to render.

【0050】中間データ形式に変換された出力データ
は、中間データ305としてRAM上に格納される。格
納が完了すると、その中間データ作成処理が完了したこ
とを示す完了通知を、プリンタドライバ310がOS3
02に送り、ステップS302が実行されて、その完了
通知がアプリケーション301に通知される。
The output data converted into the intermediate data format is stored as intermediate data 305 on the RAM. When the storage is completed, the printer driver 310 sends a completion notification indicating that the intermediate data creation processing has been completed to the OS 3.
02, step S302 is executed, and the completion notification is sent to the application 301.

【0051】ステップS306で実行されるレンダリン
グ処理では、RAMに格納された中間データ305を読
み出して、用紙1ページに印刷されるべき内容から成る
ページビットマップ307を作成する。
In the rendering process executed in step S306, the intermediate data 305 stored in the RAM is read, and a page bitmap 307 including the content to be printed on one page of paper is created.

【0052】このページビットマップ307は、プリン
タドライバ310からプリンタ311内の受信バッファ
308に送られ、受信バッファ308が最終的な印刷結
果309を出力する。
This page bitmap 307 is sent from the printer driver 310 to the reception buffer 308 in the printer 311, and the reception buffer 308 outputs the final print result 309.

【0053】次に、OS302がプリンタドライバ31
0に送るGDI形式の出力データの一例と、その中間デ
ータと、それらから得られるページビットマップとを、
図5を参照して説明する。
Next, the OS 302 executes the printer driver 31
0, an example of the output data in the GDI format, intermediate data thereof, and a page bitmap obtained from them,
This will be described with reference to FIG.

【0054】図5(A)はGDI形式の出力データに基
づくページビットマップを示す図であり、図5(B)は
中間データに基づくページビットマップを示す図であ
る。
FIG. 5A is a diagram showing a page bitmap based on output data in the GDI format, and FIG. 5B is a diagram showing a page bitmap based on intermediate data.

【0055】例えば、OS302がプリンタドライバ3
10に送るGDI形式の出力データは、以下のような5
つの内容が1つのGDI命令で表現されている。
For example, if the OS 302 is the printer driver 3
The output data of the GDI format to be sent to 10 is the following 5
One content is expressed by one GDI instruction.

【0056】(1)座標(0、10)と座標(100、
10)との間に直線を引く。
(1) Coordinates (0, 10) and (100,
10) draw a straight line.

【0057】(2)座標(100、10)と座標(10
0、100)との間に直線を引く。
(2) Coordinates (100, 10) and (10)
0, 100).

【0058】(3)但し、座標(50、0)と座標(2
000、2000)とを対角位置とする4角形で囲まれ
る領域内に収まる部分にだけ線を引く。
(3) However, the coordinates (50, 0) and the coordinates (2
000, 2000) are drawn only at portions that fall within a region surrounded by a rectangle having a diagonal position of (000, 2000).

【0059】(4)その線は50%濃度のグレー色とす
る。
(4) The line has a gray color of 50% density.

【0060】(5)その線の幅は1ドット幅とする。(5) The width of the line is one dot width.

【0061】こうしたGDI形式の出力データを基に作
成された中間データは、以下のような3つの内容に変換
されている。
The intermediate data created based on the output data in the GDI format is converted into the following three contents.

【0062】(1)50%濃度のグレー色ブラシを登録
する。
(1) Register a 50% density gray brush.

【0063】(2)登録されているブラシを使って、座
標(50、10)と座標(100、10)との間に1ド
ット幅の直線を引く。
(2) Using the registered brush, draw a straight line of 1 dot width between the coordinates (50, 10) and the coordinates (100, 10).

【0064】(3)登録されているブラシを使って、座
標(100、10)と座標(100、100)との間に
1ドット幅の直線を引く。
(3) Using the registered brush, draw a straight line of one dot width between the coordinates (100, 10) and the coordinates (100, 100).

【0065】すなわち、OS302がプリンタドライバ
310に送るGDI形式の出力データは、プリンタドラ
イバ310にとって扱いやすい形式になってはいるが、
その情報量は多く、そのままでは、単純にページビット
マップに展開できない。
That is, although the output data in the GDI format that the OS 302 sends to the printer driver 310 is in a format that can be easily handled by the printer driver 310,
The amount of information is large and cannot be simply developed into a page bitmap as it is.

【0066】そこでプリンタドライバ310は、GDI
形式の出力データを解釈し、1つずつ順番に処理して、
ページビットマップに展開できる形式の中間データに変
換する。
Therefore, the printer driver 310 uses the GDI
Interpret the output data in the format, process it one by one,
Convert to intermediate data in a format that can be expanded to a page bitmap.

【0067】図5に示すページビットマップ506、5
07は、A5用紙(14.8cm×21.0cm)を6
00DPI(Dot Per Inch)の解像度のぺージビットマ
ップ(3496dot×4960dot)として表現し
たものである。
The page bitmaps 506, 5 shown in FIG.
07 is for A5 paper (14.8 cm x 21.0 cm)
It is expressed as a page bitmap (3496 dots × 4960 dots) with a resolution of 00 DPI (Dot Per Inch).

【0068】図5(B)に示すページビットマップ50
7においては、座標(50、0)‐座標(2000、2
000)の領域が中間データ作成処理の段階で考慮さ
れ、中間データに反映されているので、中間データをそ
のまま順番に解釈してページビットマップを作成するこ
とで、ページビットマップ507が得られる。
The page bitmap 50 shown in FIG.
7, the coordinate (50, 0) -coordinate (2000, 2
000) is considered at the stage of the intermediate data creation processing and is reflected in the intermediate data. Therefore, the page bitmap 507 can be obtained by interpreting the intermediate data in order and creating a page bitmap.

【0069】図6は、プリンタドライバ内における従来
の処理の流れ(A)と第1の実施の形態の処理の流れ
(B)とを示した図である。プリンタドライバ内におけ
る処理時間の違いを示すためにそれぞれの処理における
時間の流れを示している。
FIG. 6 is a diagram showing a conventional processing flow (A) in the printer driver and a processing flow (B) of the first embodiment. The flow of time in each process is shown to show the difference in the processing time in the printer driver.

【0070】この図では、1ページの印刷データが線2
本(図中L1、L2)のデータから構成されるものとし
て時間の流れを比較している。
In this figure, the print data of one page is line 2
The flow of time is compared assuming that it is composed of the data of the book (L1, L2 in the figure).

【0071】図6(A)の701は1本目の線(L1)
の中間データ作成処理を示している。この図の中では時
間は図の上から下に向かって流れており、中間データ作
成処理701は時刻t0から時刻t1の間で処理され
る。
In FIG. 6A, reference numeral 701 denotes a first line (L1).
3 shows the intermediate data creation process. In this figure, time flows from the top to the bottom of the figure, and the intermediate data creation processing 701 is performed between time t0 and time t1.

【0072】同様に702は2本目の線(L2)の中間
データ作成処理を示しており、中間データ作成処理70
2は時刻t1から時刻t2の間で処理される。
Similarly, reference numeral 702 denotes intermediate data creation processing for the second line (L2).
2 is processed between time t1 and time t2.

【0073】以上、1本目の線(L1)及び2本目の線
(L2)の各中間データ作成処理を実行する時間(時刻
t0から時刻t2まで)が中間データ作成(S721)
に要する時間となる。そして、ここまでの処理が完了す
るとアプリケーション301は印刷に関する処理を全て
終えたことになり、印刷処理以外の他の操作に移れるこ
とになる。こうしたことから、この時刻t2をアプリ開
放(S722)のタイミングと呼ぶ。
As described above, the time (from time t0 to time t2) for executing the intermediate data creation processing of the first line (L1) and the second line (L2) is the intermediate data creation (S721).
It is the time required. When the processes up to this point are completed, the application 301 has completed all the processes related to printing, and can shift to other operations other than the printing process. For this reason, the time t2 is referred to as an application release (S722) timing.

【0074】図6(A)の703は1本目の線(L1)
のレンダリング処理を示している。レンダリング処理7
03は時刻t2から時刻t3の間で処理される。
In FIG. 6A, reference numeral 703 denotes a first line (L1).
3 shows the rendering process. Rendering process 7
03 is processed between time t2 and time t3.

【0075】同様に704は2本目の線(L2)のレン
ダリング処理を示している。レンダリング処理704は
時刻t3から時刻t4の間で処理される。
Similarly, reference numeral 704 denotes a rendering process for the second line (L2). The rendering process 704 is performed between time t3 and time t4.

【0076】以上、1本目の線(L1)及び2本目の線
(L2)の各中間データ作成処理を実行する時間(時刻
t2から時刻t4まで)がレンダリング(S723)に
要する時間となる。そして、ここまでの処理が完了する
とプリンタドライバ310は処理を完了したことにな
り、この後はページビットマップ307をプリンタ31
1に送り印刷するだけとなる。
As described above, the time (from time t2 to time t4) for executing the intermediate data creation processing of the first line (L1) and the second line (L2) is the time required for rendering (S723). When the processing up to this point is completed, the printer driver 310 has completed the processing. Thereafter, the page bitmap 307 is stored in the printer 31.
1 and printing.

【0077】図6(A)の705は、ページビットマッ
プ307をプリンタ311に送り印刷を行わせる印刷処
理(Pr)を示している。印刷処理705は時刻t4か
ら時刻t5の間で処理される。
Reference numeral 705 in FIG. 6A indicates a print process (Pr) for sending the page bitmap 307 to the printer 311 to perform printing. The print processing 705 is performed between time t4 and time t5.

【0078】この印刷(S725)に要する時間の最後
の時点(時刻t5)が、プリンタ311からの印刷済み
の用紙の排出が完了するタイミングである。
The last time (time t5) of the time required for this printing (S725) is the timing when the ejection of the printed paper from the printer 311 is completed.

【0079】印刷開始指示(S720)を行ってから印
刷終了(S726)までの時間、すなわち印刷指示を行
ってから、実際に印刷物を手にするまでの時間は、プリ
ンタ製品を評価する上での指標の一つであり、この時間
がより短い方が良いことになる。
The time from when the print start instruction (S720) is issued to when the print is completed (S726), that is, the time from when the print instruction is issued to when the user actually obtains the printed material is determined in the evaluation of the printer product. It is one of the indicators, and the shorter this time is, the better.

【0080】従来の一般的なプリンタドライバでは、上
述のような処理の流れがあり、それに伴う上述のような
処理時間が必要となる。図6(A)を参照した上記説明
で分かる通り、従来の処理の流れでは、中間データ作成
処理(S721)、レンダリング(S723)、及び印
刷(S725)の全ての処理が順番に行われて行く。
In a conventional general printer driver, there is the above-described processing flow, which requires the above-described processing time. As can be understood from the above description with reference to FIG. 6A, in the conventional processing flow, all the processing of the intermediate data creation processing (S721), the rendering (S723), and the printing (S725) are sequentially performed. .

【0081】ところで実際には、例えば中間データ作成
処理701の期間にCPUの処理能力には余裕があり、
CPUは同時に平行して他の処理を行うことが可能であ
る。しかし、従来の処理では、CPUの能力を十分に活
用して、処理時間を短縮することが考慮されていない。
Actually, for example, during the period of the intermediate data creation processing 701, there is a margin in the processing capacity of the CPU.
The CPU can simultaneously perform other processing in parallel. However, in the conventional processing, it is not considered that the capacity of the CPU is fully utilized to reduce the processing time.

【0082】この点を改善した第1の実施の形態におけ
る処理の流れを、図7を参照して説明する。
The flow of processing in the first embodiment in which this point is improved will be described with reference to FIG.

【0083】図7は、第1の実施の形態におけるプリン
タドライバの処理の手順を示すフローチャートである。
なお、このフローチャートには、装置、処理プログラ
ム、データ等も図示される。
FIG. 7 is a flowchart showing a procedure of processing of the printer driver according to the first embodiment.
The flowchart also shows the devices, processing programs, data, and the like.

【0084】図7に示すアプリケーション401は、図
4のアプリケーション301と同様に、RAM2上に展
開され実行されているアプリケーションプログラムを示
しており、このアプリケーション401で何らかの適当
な印刷データを作成し、印刷の指示を行う。
An application 401 shown in FIG. 7 is an application program developed and executed on the RAM 2 in the same manner as the application 301 shown in FIG. Instructions.

【0085】通常の印刷データは、ドキュメントの始ま
り、ページの始まり、線や文字を表すデータ群、ぺージ
の終わり、ドキュメントの終わり、といったデータで構
成され、順次アプリケーションプログラムからOSに対
して出力される。
Normal print data is composed of data such as the beginning of a document, the beginning of a page, a group of data representing lines and characters, the end of a page, and the end of a document, and is sequentially output from the application program to the OS. You.

【0086】402はOSであり、アプリケーション4
01からOS402に対して出力された印刷データを基
に、OS402が、GDIと呼ばれる命令形式でRAM
2上に展開され実行されているプリンタドライバ414
に対して、印刷指示を行う。
Reference numeral 402 denotes an OS, which is an application 4
01 based on the print data output to the OS 402, the OS 402
Printer driver 414 developed and executed on
Is instructed to print.

【0087】また、OS402は、後述するステップS
406において実行される中間データ作成処理が終了し
たという通知や、ステップS404において実行される
管理テーブル初期化が完了したという通知をプリンタド
ライバ414から受けたとき、その完了通知をアプリケ
ーション401に通知して、アプリケーション401が
次の処理動作に移れるようにする。
The OS 402 executes a step S described later.
Upon receiving a notification from the printer driver 414 that the intermediate data creation process executed in 406 has been completed and that the management table initialization executed in step S404 has been completed, the application 401 notifies the application 401 of the completion notification. , So that the application 401 can move to the next processing operation.

【0088】次にプリンタドライバ414の処理に移っ
て、ステップS403では、アプリケーション401か
らGDI形式で、ページの始まりというデータ、線や文
字を表すデータ群、またはページの終わりというデータ
が送られて来たか否かの判断を行う。
Next, the process proceeds to the printer driver 414. In step S403, the application 401 sends, in GDI format, data indicating the beginning of a page, a data group representing lines or characters, or data indicating the end of a page. Is determined.

【0089】ページの始まりというデータが送られて来
た場合には、管理テーブル初期化(S404)を行う。
また、線や文字を表すデータ群が送られて来た場合に
は、中間データ作成処理(S406)を行う。そして、
ページの終わりというデータが送られて来た場合には、
レンダリング機能413に制御を移し、レンダリング処
理1(S408)やレンダリング処理n(S409)を
行う。
When data indicating the start of a page is sent, the management table is initialized (S404).
When a data group representing a line or a character is sent, an intermediate data creation process (S406) is performed. And
If you receive the end of page data,
The control is transferred to the rendering function 413, and the rendering processing 1 (S408) and the rendering processing n (S409) are performed.

【0090】管理テーブル初期化(S404)では、図
8に示すようなバンド管理テーブル405をRAM2上
に作成し、その内容をクリアにしてバンド管理テーブル
405ヘの書き込みに備える。バンド管理テーブル40
5については後述する。
In the initialization of the management table (S404), a band management table 405 as shown in FIG. 8 is created in the RAM 2 and its contents are cleared to prepare for writing to the band management table 405. Band management table 40
5 will be described later.

【0091】そして、管理テーブル初期化(S404)
が完了すると、完了通知をOS402に通知する。
Then, the management table is initialized (S404).
Is completed, the completion notification is sent to the OS 402.

【0092】中間データ作成処理(S406)は、OS
402が線や文字を表すデータ群をプリンタドライバ4
14へ出力して来た場合に起動され、中間データ作成処
理(S406)では、ページビットマップをバンドと呼
ばれる単位に分割した場合において、各バンドにおける
中間データ407の作成を行う。
The intermediate data creation processing (S 406)
Reference numeral 402 denotes a printer driver 4 which stores data representing lines and characters.
In the intermediate data creation process (S406), when the page bitmap is divided into units called bands, the intermediate data 407 in each band is created.

【0093】作成された各バンド毎の中間データ407
の数はバンド管理テーブル405に加算され記憶され
る。
The created intermediate data 407 for each band
Are added to the band management table 405 and stored.

【0094】中間データ作成処理(S406)で作成さ
れた中間データ407はRAM2上に格納される。
The intermediate data 407 created in the intermediate data creation processing (S406) is stored in the RAM 2.

【0095】ここで、図9を参照してバンドについて説
明する。
Here, the band will be described with reference to FIG.

【0096】図9は、5バンドに分割されたページビッ
トマップを示す図である。
FIG. 9 is a diagram showing a page bitmap divided into five bands.

【0097】ページビットマップとは、印刷されるべき
ページをビットマップで表現したものであり、バンドと
は、ページビットマップを一定の高さ(図9において下
部から距離)で分割した場合の各区画をいう。
The page bitmap is a representation of a page to be printed by a bitmap, and a band is a bitmap when the page bitmap is divided at a fixed height (distance from the bottom in FIG. 9). Refers to a division.

【0098】図9に示すページビットマップ602は、
A5サイズ、解像度600dpiのページビットマップ
(3496ドット×4960ドット)であり、それぞれ
700ドットの高さ毎に5つのバンドに分割されてい
る。なお、バンドの高さは700ドットに限定されるも
のではなく、自由に設定できる。
The page bitmap 602 shown in FIG.
This is a page bitmap (3496 dots × 4960 dots) of A5 size and a resolution of 600 dpi, and is divided into five bands at a height of 700 dots each. The height of the band is not limited to 700 dots, but can be set freely.

【0099】図9に示す第1バンド目の区画603が、
0ドットから699ドットの合計700ドット(699
−0+1)の高さを持つ。
The section 603 of the first band shown in FIG.
A total of 700 dots (699 from 0 to 699 dots)
−0 + 1).

【0100】第2バンド目の区画604が、700ドッ
トから1399ドットの合計700ドット(1399−
700+1)の高さを持つ。
The section 604 of the second band has a total of 700 dots from 1700 dots to 700 dots (1399-dots).
It has a height of 700 + 1).

【0101】第3バンド目の区画605が、1400ド
ットから2099ドットの合計700ドット(2099
−1400+1)の高さを持つ。
A section 605 of the third band has a total of 700 dots (2099 dots) from 1400 dots to 2099 dots.
-1400 + 1).

【0102】第4バンド目の区画606が、2100ド
ットから2799ドットの合計700ドット(2799
−2100+1)の高さを持つ。
The section 606 of the fourth band has a total of 700 dots (2799 dots from 2100 dots to 2799 dots).
-2100 + 1).

【0103】第5バンド目の区画607が、28000
ドットから3496ドットの合計697ドット(349
6−2800+1)の高さを持つ。なお、この第5バン
ド目の区画607は第1〜4バンド目の区画をとった余
りなので、700ドットに満たない高さとなっている。
The section 607 of the fifth band is 28000
A total of 697 dots (349
6-2800 + 1). Since the section 607 of the fifth band is a surplus of the sections of the first to fourth bands, the height is less than 700 dots.

【0104】図10は、図9に示すページビットマップ
において2本の線(L1、L2)を表示したページビッ
トマップを示す図である。
FIG. 10 is a diagram showing a page bitmap in which two lines (L1, L2) are displayed in the page bitmap shown in FIG.

【0105】1本目の線613(L1)は、A5用紙の
左上を座標原点(0、0)、右下を座標(3496.4
960)とした座標系上で、座標(1398、350)
と座標(2098、1050)との間に引かれた50%
グレーの線である。この線613は、第1バンド目の区
画603と第2バンド目の区画604とにまたがる線と
なっている。
The first line 613 (L1) has a coordinate origin (0, 0) at the upper left of the A5 sheet and a coordinate (3496.4) at the lower right.
960), the coordinates (1398, 350)
And 50% drawn between the coordinates (2098, 1050)
It is a gray line. The line 613 is a line extending over the section 603 of the first band and the section 604 of the second band.

【0106】この線613のバンドの境界での座標は、
第1バンド目の区画603の下部では(1747、69
9)、第2バンド目の区画604の上部では(174
8、700)となる。
The coordinates of this line 613 at the band boundary are
Below the section 603 of the first band, (1747, 69)
9), above the section 604 of the second band (174
8, 700).

【0107】2本目の線614(L2)は、座標(18
48、350)と座標(1448、1750)との間に
引かれた黒の線である。この線614は、第1バンド目
の区画603と第2バンド目の区画604と第3バンド
目の区画605とにまたがる線となっている。
The second line 614 (L2) has the coordinates (18
48, 350) and coordinates (1448, 1750). The line 614 is a line that extends over the section 603 of the first band, the section 604 of the second band, and the section 605 of the third band.

【0108】この線614のバンドの境界での座標は、
第1バンド目の区画603の下部では(1748、69
9)、第2バンド目の区画604の上部では(174
8、700)、第2バンド目の区画604の下部では
(1548、1399)、第3バンド目の区画605の
上部では(1548、1400)となる。
The coordinates of the line 614 at the band boundary are:
Below the section 603 of the first band, (1748, 69
9), above the section 604 of the second band (174
8, 700), (1548, 1399) below the second band section 604, and (1548, 1400) above the third band section 605.

【0109】図11は、上記の2本の線(L1、L2)
に関するバンド毎の中間データを示す図であり、(A)
〜(C)は第1〜第3バンドにおける中間データをそれ
ぞれ示す。
FIG. 11 shows the above-mentioned two lines (L1, L2).
FIG. 6 is a diagram showing intermediate data for each band regarding (A).
(C) show intermediate data in the first to third bands, respectively.

【0110】それぞれのバンドに対する中間データは、
その中間データに基づいてページビットマップの作成を
行うと、該当するバンド区画でのみ作画処理が行われる
ということを示している。
The intermediate data for each band is
This indicates that when the page bitmap is created based on the intermediate data, the drawing processing is performed only in the corresponding band section.

【0111】レンダリング処理は、アプリケーション4
01が出力するGDI形式の出力データの順番に従って
行われないと、アプリケーション401が意図する結果
を得ることはできない。つまり、アプリケーション40
1が一度何らかのGDI形式の出力データを出力したプ
リンタドライバに重ねて別のGDI形式の出力データの
出力する場合を考えた時、出力する順番を入れ替えてし
まったら、最初に意図したものとは違った結果になって
しまうであろうことは明らかである。すなわち、図11
に示す第1〜第3バンドにおける中間データがそれぞれ
アプリケーション401が出力するGDI形式の出力デ
ータの順番と一致していれば、これらの各バンドにおけ
る中間データが互いに干渉しあうこともなく、全く独立
した中間データとして並列に処理される。
The rendering process is performed by the application 4
If the output is not performed in the order of the output data of the GDI format output by the application 401, the result intended by the application 401 cannot be obtained. That is, the application 40
If one considers the case where output data of another GDI format is output overlaid on a printer driver that has once output the output data of some GDI format, if the output order is changed, it differs from the originally intended one. It is clear that the results will be different. That is, FIG.
If the intermediate data in the first to third bands shown in FIG. 7 match the order of the output data in the GDI format output by the application 401, the intermediate data in each of these bands does not interfere with each other and is completely independent. Are processed in parallel as intermediate data.

【0112】第1の実施の形態は、こうした点に着目し
て複数のレンダリング処理を並列に処理させるようにし
ている。
In the first embodiment, a plurality of rendering processes are performed in parallel by focusing on such points.

【0113】図7に戻って、プリンタドライバ414の
レンダリング機能413は、複数のレンダリング処理を
並列で処理させるための機能であり、ステップS403
で、ページの終わりというデータを検出したと判定され
た場合に、レンダリング処理1(S408)、レンダリ
ング処理n(S409)を並列に起動し、これによっ
て、バンド毎にレンダリング処理を行い、最終的に1ペ
ージ分のページビットマップ410の作成を行う。
Returning to FIG. 7, the rendering function 413 of the printer driver 414 is a function for causing a plurality of rendering processes to be performed in parallel.
Then, when it is determined that the data indicating the end of the page is detected, the rendering process 1 (S408) and the rendering process n (S409) are started in parallel, whereby the rendering process is performed for each band. A page bitmap 410 for one page is created.

【0114】ページビットマップ410に対するプリン
タ415での処理は、図4に示すプリンタ311での処
理と同一である。
The processing performed by the printer 415 on the page bitmap 410 is the same as the processing performed by the printer 311 shown in FIG.

【0115】次に、図6(B)に戻って、プリンタドラ
イバ414における処理時間の違いを、図6(A)に示
す従来の処理と比較して説明する。
Next, returning to FIG. 6B, the difference in processing time in the printer driver 414 will be described in comparison with the conventional processing shown in FIG. 6A.

【0116】図6(B)において706は、1本目の線
(L1)の中間データ作成処理を示している。この図6
(B)では時間が図の上から下に向かって流れており、
中間データ作成処理706は時刻t10から時刻t11
の間で実行される。同様に707は2本目の線(L2)
の中間データ作成処理を示しており、中間データ作成処
理707は時刻t11から時刻t12の間で実行され
る。
In FIG. 6B, reference numeral 706 denotes an intermediate data creation process for the first line (L1). This figure 6
In (B), time flows from top to bottom of the figure,
The intermediate data creation processing 706 is performed from time t10 to time t11.
Run between Similarly, 707 is the second line (L2)
The intermediate data creation process 707 is executed between time t11 and time t12.

【0117】2本の線L1、L2の中間データ作成(S
731)に要する時間は、時刻t10から時刻t12ま
での時間である。そして、ここまでの処理が完了する
と、アプリケーション401は印刷に関する処理を全て
終えたことになり、印刷処理以外の他の操作に移れるこ
とになる。したがって、第1の実施の形態におけるアプ
リ開放(S732)は時刻t12のタイミングで発生す
る。
Creation of intermediate data of two lines L1 and L2 (S
The time required for 731) is a time from time t10 to time t12. Then, when the processing up to this point is completed, the application 401 has completed all processing related to printing, and can shift to other operations other than the printing processing. Therefore, the application release (S732) in the first embodiment occurs at the timing of time t12.

【0118】時間経過だけを見る限りでは従来の処理の
流れ〔図6(A)〕も第1の実施の形態における処理の
流れ〔図6(B)〕も同じであり、従来の処理における
アプリ開放(S722)と第1の実施の形態におけるア
プリ開放(S732)は同じタイミングで発生してい
る。
The flow of the conventional processing (FIG. 6A) is the same as the flow of the processing in the first embodiment (FIG. 6B) as far as only the passage of time is concerned. The release (S722) and the application release (S732) in the first embodiment occur at the same timing.

【0119】しかし、作成された中間データは全く別の
ものであり、従来の処理による中間データ305は、図
5(B)に示す1ページ分のページビットマップ507
を作成するための中間データである。一方、第1の実施
の形態における中間データ407は、図11に示すよう
な各バンド毎の中間データである。
However, the generated intermediate data is completely different, and the intermediate data 305 obtained by the conventional processing is a page bit map 507 for one page shown in FIG.
Is the intermediate data for creating. On the other hand, the intermediate data 407 in the first embodiment is intermediate data for each band as shown in FIG.

【0120】図6(B)の708は第1バンド目のレン
ダリング処理(B1)を示しており、時刻t12から時
刻t14までの間で処理される。709は、第1バンド
目のレンダリング処理708をレンダリング機能413
内に個別に作成するのに要する時間を示しており、この
時間709の経過後に第1バンド目に対するレンダリン
グ処理が行われる。
Reference numeral 708 in FIG. 6B denotes rendering processing (B1) for the first band, which is performed from time t12 to time t14. Reference numeral 709 denotes a rendering function 413 for the rendering processing 708 of the first band.
, The time required to individually create the image, and after the elapse of this time 709, rendering processing for the first band is performed.

【0121】710は第2バンド目のレンダリング処理
(B2)を示しており、時刻t12から時刻t14まで
の間で処理される。711は、第2バンド目のレンダリ
ング処理710をレンダリング機能413内に個別に作
成するのに要する時間を示しており、この時間711の
経過後に第2バンド目に対するレンダリング処理が行わ
れる。
Reference numeral 710 denotes a rendering process (B2) for the second band, which is performed from time t12 to time t14. Reference numeral 711 denotes a time required to individually create the rendering process 710 of the second band in the rendering function 413. After the time 711, the rendering process for the second band is performed.

【0122】712は第3バンド目のレンダリング処理
(B3)を示しており、時刻t12から時刻t13まで
の間で処理される。713は、第3バンド目のレンダリ
ング処理712をレンダリング機能413内に個別に作
成するのに要する時間を示しており、この時間713の
経過後に第3バンド目に対するレンダリング処理が行わ
れる。
Reference numeral 712 denotes a rendering process (B3) for the third band, which is performed from time t12 to time t13. Reference numeral 713 denotes a time required for individually creating the rendering processing 712 of the third band in the rendering function 413. After the elapse of the time 713, the rendering processing for the third band is performed.

【0123】なお、図9及び図10では、1ページのペ
ージビットマップが5つのバンドに分割されている例を
示したが、図6(B)では、第4バンド及び第5バンド
でのレンダリング処理は存在しない。それは、この第1
の実施の形態では、第4バンド及び第5バンドに対する
アプリケーション401からのGDI形式の出力データ
が無いので、第4バンド及び第5バンドにおける中間デ
ータが存在せず、作画処理を行う必要が無いためであ
る。
Although FIGS. 9 and 10 show an example in which the page bitmap of one page is divided into five bands, FIG. 6B shows rendering in the fourth and fifth bands. No processing exists. It is this first
In the embodiment, since there is no output data of the GDI format from the application 401 for the fourth band and the fifth band, there is no intermediate data in the fourth band and the fifth band, and there is no need to perform a drawing process. It is.

【0124】このように、該当するバンドにおける中間
データ407が存在しない場合には、レンダリング機能
413はそのバンドに対するレンダリング処理を個別に
作成しない。こうすることで、無駄なバンド毎のレンダ
リング処理を作成しないで済み、その分だけ、CPU1
やRAM2を他の処理に使うことが可能となる。
As described above, when the intermediate data 407 in the corresponding band does not exist, the rendering function 413 does not individually create a rendering process for the band. By doing so, it is not necessary to create unnecessary rendering processing for each band, and the CPU 1
And the RAM 2 can be used for other processing.

【0125】図8(A)は、時刻t12、つまり2本目
の線(L2)の中間データ作成処理707の終了時点
で、かつ、第1バンドのレンダリング処理(B1)70
8、第2バンドのレンダリング処理(B2)710、及
び第3バンドのレンダリング処理(B3)712の開始
時点でのバンド管理テーブル405を示している。
FIG. 8A shows time t12, that is, at the end of the intermediate data creation processing 707 of the second line (L2), and the rendering processing (B1) 70 of the first band.
8, the band management table 405 at the start of the second band rendering process (B2) 710 and the third band rendering process (B3) 712.

【0126】図11(A)に示す第1バンドには4つの
中間データが存在し、図11(B)に示す第2バンドに
も4つの中間データが存在し、図11(C)に示す第3
バンドには2つの中間データが存在する。したがって、
各バンドにおける中間データの数を示す図8のバンド管
理テーブルのデータ数は、バンド1が4、バンド2が
4、バンド3が2、バンド4が0、バンド5も0となっ
ている。
The first band shown in FIG. 11 (A) has four intermediate data, and the second band shown in FIG. 11 (B) has four intermediate data, as shown in FIG. 11 (C). Third
There are two intermediate data in the band. Therefore,
The number of data in the band management table of FIG. 8 showing the number of intermediate data in each band is 4 for band 1, 4 for band 2, 2 for band 3, 0 for band 4, and 0 for band 5.

【0127】ところで、時刻t12におけるバンド管理
テーブルを示す図8(A)では、各バンドについてレン
ダリング処理中か否かを示す処理中フラグが、第1〜第
3バンドのレンダリング処理が開始されているので、バ
ンド1〜3は各々1となる。なお、処理中フラグは1が
処理中、0が終了を表す。
By the way, in FIG. 8A showing the band management table at the time t12, the processing flag indicating whether or not the rendering processing is being performed for each band indicates that the rendering processing of the first to third bands has been started. Therefore, each of bands 1 to 3 is 1. In the processing flag, 1 indicates that the processing is being performed, and 0 indicates that the processing is completed.

【0128】一方、第4及び第5バンドについては、中
間データが存在せず、レンダリング機能413が第4及
び第5バンドに対するレンダリング処理を作成しないの
で、バンド4、5の処理中フラグは共に0となる。
On the other hand, for the fourth and fifth bands, no intermediate data exists, and the rendering function 413 does not create a rendering process for the fourth and fifth bands. Becomes

【0129】また更に、それぞれのバンドについてレン
ダリング処理が完了したかどうかを示すバンド管理テー
ブルの完了フラグは、第1、2、3バンドについては未
完了を示す0となり、第4、5バンドについては完了を
示す1となる。
Further, the completion flag of the band management table indicating whether or not the rendering processing has been completed for each band is 0 indicating incomplete for the first, second, and third bands, and is completed for the fourth and fifth bands. It becomes 1 indicating completion.

【0130】図8(B)は、時刻t13の時点、つまり
第3バンドのレンダリング処理(B3)712の終了時
点でのバンド管理テーブル405を示している。
FIG. 8B shows the band management table 405 at time t13, ie, at the end of the rendering processing (B3) 712 for the third band.

【0131】各バンドにおける中間データの数を示すバ
ンド管理テーブルのデータ数は、時刻t12の時点で中
間データ作成処理406が完了しているため変化が無
く、図8(A)に示すバンド管理テーブルのデータ数と
同じ値となっている。
The number of data in the band management table indicating the number of intermediate data in each band remains unchanged since the intermediate data creation processing 406 has been completed at time t12, and the band management table shown in FIG. Has the same value as the number of data.

【0132】それぞれのバンドについてレンダリング処
理中か否かを示すバンド管理テーブルの処理中フラグ
は、第1バンドのレンダリング処理(B1)708及び
第2バンドのレンダリング処理(B2)710がまだ実
行途中なので、それぞれ1となり、第3バンドのレンダ
リング処理(B3)712は完了しているので、0とな
る。第4、5バンドについては時刻t12の時点で完了
を示す0となっており、そのまま変化無く0となる。
The in-process flag of the band management table indicating whether or not the rendering process is being performed for each band indicates that the rendering process (B1) 708 of the first band and the rendering process (B2) 710 of the second band are still being executed. , Respectively, and since the rendering process (B3) 712 of the third band has been completed, the value becomes 0. The fourth and fifth bands are 0 indicating completion at time t12, and remain 0 without any change.

【0133】また、それぞれのバンドについてレンダリ
ング処理が完了したか否かを示すバンド管理テーブルの
完了フラグは、第1、2バンドについては未完了を示す
0となり、第3バンドについては完了を示す1となる。
また更に、第4、5バンドについては時刻t12の時点
で完了を示す1となっており、そのまま変化無く1とな
る。
The completion flag of the band management table indicating whether the rendering process has been completed for each band is 0 indicating that the first and second bands are not completed, and 1 indicating that the third band is completed. Becomes
Further, the fourth and fifth bands have a value of 1 indicating completion at time t12, and remain at 1 without any change.

【0134】図8(C)は、時刻t14の時点、つまり
第1バンドのレンダリング処理(B1)708及び第2
バンドのレンダリング処理(B2)710の終了時点で
のバンド管理テーブル405を示している。
FIG. 8C shows the time point t14, that is, the rendering processing (B1) 708 of the first band and the second band.
The band management table 405 at the end of the band rendering process (B2) 710 is shown.

【0135】各バンドにおける中間データの数を示すバ
ンド管理テーブルのデータ数は、時刻t12の時点で中
間データ作成処理406が完了しているため変化が無
く、図8(A)に示すバンド管理テーブルのデータ数と
同じ値となっている。
The number of data in the band management table indicating the number of intermediate data in each band remains unchanged since the intermediate data creation processing 406 has been completed at time t12, and the band management table shown in FIG. Has the same value as the number of data.

【0136】それぞれのバンドについてレンダリング処
理中か否かを示すバンド管理テーブルの処理中フラグ
は、第1及び第2バンドのレンダリング処理が完了して
いるので、それぞれ完了を示す0となる。また、第3バ
ンドのレンダリング処理は時刻t13で完了しており、
そのまま変化無く0となる。また、第4、5バンドにつ
いては時刻t12の時点で完了を示す0となっており、
これもそのまま変化無く0となる。
The in-process flag of the band management table indicating whether the rendering process is being performed for each band is 0 indicating that the rendering process for the first and second bands has been completed. The rendering processing of the third band is completed at time t13,
It becomes 0 without any change. The fourth and fifth bands are 0 indicating completion at time t12,
This also becomes 0 without any change.

【0137】また、それぞれのバンドについてレンダリ
ング処理が完了したか否かを示すバンド管理テーブルの
完了フラグは、第1及び第2バンドについて完了を示す
1となり、第3バンドについては時刻t13の時点で完
了を示す1となっており、そのまま変化無く1となる。
また第4及び第5バンドについては時刻t12の時点で
完了を示す1となっており、そのまま変化無く1とな
る。
The completion flag of the band management table indicating whether the rendering processing has been completed for each band is 1 indicating completion for the first and second bands, and the completion flag for the third band at time t13. It is 1, which indicates completion, and is 1 without any change.
The fourth and fifth bands have a value of 1 indicating completion at time t12, and remain at 1 without any change.

【0138】図6(B)に戻って、レンダリング処理7
08、710、712を並列に実行する時間(時刻t1
2から時刻t14まで)がレンダリング733に要する
時間となる。そして、ここまでの処理が完了するとプリ
ンタドライバ414は処理を完了したことになり、この
後はページビットマップ410をプリンタ415に送り
印刷するだけとなる。
Returning to FIG. 6B, rendering processing 7
08, 710, and 712 in parallel (time t1
2 to time t14) is the time required for rendering 733. When the processing up to this point is completed, the printer driver 414 has completed the processing. Thereafter, the page driver 410 simply sends the page bitmap 410 to the printer 415 and prints it.

【0139】図6(B)に示す714は、ページビット
マップ410をプリンタ415に送り印刷を行う印刷処
理(Pr)を示している。印刷処理714は時刻t14
から時刻t15までの間で処理される。時刻t15は、
プリンタ415から印刷済みの用紙が出力される最後の
タイミングを示している。
Reference numeral 714 shown in FIG. 6B indicates a printing process (Pr) for sending the page bitmap 410 to the printer 415 and performing printing. Print processing 714 is performed at time t14.
From time t15. At time t15,
This shows the last timing at which a printed sheet is output from the printer 415.

【0140】なお、図6(A)に示す従来の処理での印
刷終了(S726)と、図6(B)に示す第1の実施の
形態における印刷終了(S736)との差が改善時間7
40となり、この改善時間740が、トータルの印刷所
要時間のうち、第1の実施の形態により短縮することが
できる時間である。
The difference between the end of printing (S726) in the conventional processing shown in FIG. 6A (S726) and the end of printing (S736) in the first embodiment shown in FIG.
40, and this improvement time 740 is a time of the total printing required time that can be reduced by the first embodiment.

【0141】以上のようにして、第1の実施の形態で
は、CPUの能力を有効に活用して、より高速な印刷が
可能となる。
As described above, in the first embodiment, higher-speed printing can be performed by effectively utilizing the capacity of the CPU.

【0142】(第2の実施の形態)次に第2の実施の形
態を説明する。
(Second Embodiment) Next, a second embodiment will be described.

【0143】第2の実施形態の構成は、基本的に第1の
実施形態の構成と同じであるので、第2の実施形態の説
明においては、第1の実施形態の構成を流用する。
Since the configuration of the second embodiment is basically the same as the configuration of the first embodiment, the configuration of the first embodiment will be used in the description of the second embodiment.

【0144】図12は、第2の実施形態におけるプリン
タドライバ内の処理の流れ(B)を、従来の処理の流れ
(A)と比較して示した図である。
FIG. 12 is a diagram showing the processing flow (B) in the printer driver in the second embodiment in comparison with the conventional processing flow (A).

【0145】この図では、1ページの印刷データが線2
本(図中L1、L2)のデータから構成されるものとし
て時間の流れを比較している。
In this figure, the print data of one page is line 2
The flow of time is compared assuming that it is composed of the data of the book (L1, L2 in the figure).

【0146】図12(A)に示す従来の処理の流れは、
図6(A)に示す従来の処理の流れと同じものであるの
で、図中における参照符号を同一の符号で示し、その説
明も省略する。
[0146] The flow of the conventional processing shown in FIG.
Since this is the same as the flow of the conventional processing shown in FIG. 6A, the reference numerals in the figure are denoted by the same reference numerals, and the description thereof is omitted.

【0147】第2の実施形態の第1の実施形態との大き
な違いは、第1の実施形態では、中間データ作成処理
(S406)が終り、レンダリング機能413に処理が
移った段階で、中間データ407を参照して、ページビ
ットマップを構成するバンドの数だけレンダリング処理
(図7のS408、S409)を作成しているが、第2
の実施形態では、管理テーブル初期化(S404)のタ
イミングで一定数のレンダリング処理を作成しておき、
その情報をスレッド管理テーブルで管理する。そして、
中間データ作成処理(S406)が終了し、レンダリン
グ機能413に制御が移った段階で、その既に作成され
ているレンダリング処理を起動するようにする。
The major difference between the second embodiment and the first embodiment is that, in the first embodiment, the intermediate data creation processing (S406) ends, and the processing is shifted to the rendering function 413. Referring to 407, rendering processes (S408 and S409 in FIG. 7) are created for the number of bands constituting the page bitmap.
In the embodiment, a certain number of rendering processes are created at the timing of the management table initialization (S404),
The information is managed in a thread management table. And
When the intermediate data creation process (S406) is completed and the control is transferred to the rendering function 413, the already created rendering process is started.

【0148】図12(B)に示す第2の実施形態の処理
では、例えば2つのレンダリング処理が用意されてい
る。
In the processing of the second embodiment shown in FIG. 12B, for example, two rendering processings are prepared.

【0149】なお、本発明では、あらかじめ作成してお
くレンダリング処理の数を2つに限定するものではな
い。この数はプログラムの規模やその他の要件で、2以
外の数に設定してもよく、また外部メモリ11上にレン
ダリング処理の数を設定しておき、それを参照してレン
ダリング処理を作成するようにしてもよい。また、RA
M2の空き状況やCPU1の負荷状況に応じて動的にレ
ンダリング処理の数を設定して、管理テーブル初期化
(S404)と同時にその数だけレンダリング処理を作
成するようにしてもよい。
In the present invention, the number of rendering processes created in advance is not limited to two. This number may be set to a number other than 2 depending on the size of the program or other requirements, or the number of rendering processes may be set on the external memory 11 and the rendering process may be created with reference to the number. It may be. Also, RA
The number of rendering processes may be dynamically set in accordance with the free status of M2 and the load status of the CPU 1, and the number of rendering processes may be created simultaneously with the initialization of the management table (S404).

【0150】図12(B)において、901は1本目の
線(L1)の中間データ作成処理を示している。この図
の中では時間は図の上から下に向かって流れており、中
間データ作成処理901は時刻t90から時刻t91ま
での間で処理される。902は2本目の線(L2)の中
間データ作成処理を示しており、中間データ作成処理9
02は時刻t91から時刻t92までの間で処理され
る。
In FIG. 12B, reference numeral 901 denotes an intermediate data creation process for the first line (L1). In this figure, time flows from the top to the bottom of the figure, and the intermediate data creation processing 901 is processed from time t90 to time t91. Reference numeral 902 denotes an intermediate data creation process for the second line (L2), and the intermediate data creation process 9
02 is processed from time t91 to time t92.

【0151】図13(A)は、時刻t90、つまり1本
目の線(L1)の中間データ作成処理901の開始時点
でのバンド管理テーブルを示している。
FIG. 13A shows the band management table at time t90, ie, at the start of the intermediate data creation processing 901 for the first line (L1).

【0152】この時刻t90では、レンダリング処理1
(S408)やレンダリング処理n(S409)が管理
テーブル初期化(S404)により作成されて存在だけ
はするものの、まだ起動が行われていない。従って、図
13(A)に示す時刻t90でのバンド管理テーブルは
初期化された時と同じ状態を示している。
At time t90, rendering processing 1
(S408) and the rendering process n (S409) are created by the management table initialization (S404) and exist only, but have not been started yet. Therefore, the band management table at time t90 shown in FIG. 13A shows the same state as when the band management table was initialized.

【0153】図14(A)は、時刻t90でのスレッド
管理テーブルを示している。スレッド管理テーブルのス
レッド欄には、管理テーブル初期化(S404)により
レンダリング処理1(S408)やレンダリング処理n
(S409)が作成された時に、OS402が、それら
のレンダリング処理にスレッドIDという識別値を付与
するが、そのスレッドIDが記載される。この第2の実
施の形態では、それぞれ100、101という値が付与
され、スレッド管理テーブルに保持される。スレッド管
理テーブルの処理中バンド欄には、レンダリング処理が
行われているバンドの番号が記載される。この値が0の
場合は、そのスレッドIDで示されるレンダリング処理
ではレンダリング処理を行っていないことを示してい
る。時刻t90ではまだレンダリング処理を行っていな
いので、処理中バンド欄は管理テーブル初期化(S40
4)によりスレッド管理テーブルの初期化が行われた時
と同じ状態を示している。なお、スレッド管理テーブル
は、図7に示すバンド管理テーブルと同様にRAM2上
に作成される。
FIG. 14A shows the thread management table at time t90. In the thread column of the thread management table, the rendering process 1 (S408) and the rendering process n
When (S409) is created, the OS 402 assigns an identification value called a thread ID to those rendering processes, and the thread ID is described. In the second embodiment, values 100 and 101 are assigned, respectively, and held in the thread management table. In the processing band column of the thread management table, the number of the band for which the rendering process is being performed is described. When this value is 0, it indicates that the rendering process is not performed in the rendering process indicated by the thread ID. At time t90, the rendering process has not been performed yet, so the processing band column is initialized in the management table (S40).
4) shows the same state as when the thread management table was initialized. The thread management table is created on the RAM 2 in the same manner as the band management table shown in FIG.

【0154】図12(B)に戻って、時刻t90から時
刻t92までの時間が、中間データ作成(S921)に
要する時間となる。そして、ここまでの処理が完了する
とアプリケーション401は印刷に関する処理を全て終
えたことになり、印刷処理以外の他の操作に移れること
になる。従って、第2の実施の形態におけるアプリ開放
(S922)は時刻t92のタイミングで発生する。
Returning to FIG. 12B, the time from time t90 to time t92 is the time required for creating the intermediate data (S921). Then, when the processing up to this point is completed, the application 401 has completed all processing related to printing, and can shift to other operations other than the printing processing. Therefore, the application release (S922) in the second embodiment occurs at the timing of time t92.

【0155】時間経過だけを見る限りでは従来処理の流
れも第2の実施の形態における処理の流れも同じであ
り、従来処理におけるアプリ開放(S722)と第2の
実施の形態におけるアプリ開放(S922)とは同じタ
イミングで発生している。
The flow of the conventional processing is the same as the flow of the processing in the second embodiment as far as only the passage of time is concerned, and the application release in the conventional processing (S722) and the application release in the second embodiment (S922). ) Occurs at the same timing.

【0156】しかし、作成される中間データは全く別の
ものであり、従来の処理による中間データは、図5
(B)に示す1ページ分のページビットマップ507を
作成するための中間データである。一方、第2の実施の
形態における中間データは、図11で示すような各バン
ド毎の中間データである。
However, the generated intermediate data is completely different, and the intermediate data obtained by the conventional processing is the same as that shown in FIG.
This is intermediate data for creating a page bitmap 507 for one page shown in FIG. On the other hand, the intermediate data in the second embodiment is intermediate data for each band as shown in FIG.

【0157】図12(B)に示す903は第1バンド目
のレンダリング処理(B1)を示しており、時刻t92
から時刻t93までの間で処理される。904は第2バ
ンド目のレンダリング処理(B2)を示しており、時刻
t92から時刻t93までの間で処理される。905は
第3バンドのレンダリング処理(B3)を示しており、
時刻t93から時刻t94までの間で処理される。
Reference numeral 903 shown in FIG. 12B denotes rendering processing (B1) for the first band, which is performed at time t92.
From time t93. Reference numeral 904 denotes a rendering process (B2) for the second band, which is performed from time t92 to time t93. Reference numeral 905 denotes rendering processing (B3) for the third band.
The processing is performed between time t93 and time t94.

【0158】図13(B)は、時刻t92、つまり2本
目の線(L2)の中間データ作成処理902の終了時点
で、かつ、第1バンドのレンダリング処理(B1)90
3及び第2バンドのレンダリング処理(B2)904の
開始時点でのバンド管理テーブルを示している。
FIG. 13B shows the time t92, ie, the end of the intermediate data creation processing 902 for the second line (L2), and the rendering processing (B1) 90 for the first band.
The band management table at the start of the rendering processing (B2) 904 for the third and second bands is shown.

【0159】バンド管理テーブルのデータ数欄には、バ
ンド1では、図11(A)で示した中間データに従い4
が記載され、同様に、バンド2では、図11(B)で示
した中間データに従い4が記載され、バンド3では、図
11(C)で示した中間データに従い2が記載される。
なお、バンド4では0、バンド5でも0となる。
[0159] In the data number column of the band management table, in band 1, 4 data is set in accordance with the intermediate data shown in FIG.
Similarly, band 2 describes 4 in accordance with the intermediate data shown in FIG. 11B, and band 3 describes 2 in accordance with the intermediate data shown in FIG. 11C.
Note that the value is 0 for band 4 and 0 for band 5.

【0160】また、図13(B)において、それぞれの
バンドについてレンダリング処理中か否かを示す処理中
フラグは、第1バンドのレンダリング処理(B1)90
3及び、第2バンドのレンダリング処理(B2)904
が開始されているので、バンド1及びバンド2で1とな
る。第3バンドのレンダリング処理(B3)905は時
刻t93のタイミングから開始されるので、バンド3に
ついては0となる。また、第4、5バンドについては中
間データが存在しないので、バンド4、5共に0とな
る。なお、処理中フラグは、1が処理中、0が終了を表
す。
In FIG. 13B, the processing flag indicating whether or not the rendering process is being performed for each band is set to the rendering process (B1) 90 for the first band.
3 and second band rendering processing (B2) 904
Has been started, the value is 1 in band 1 and band 2. Since the rendering processing (B3) 905 of the third band is started at the timing of time t93, the value of band 3 is 0. Since no intermediate data exists for the fourth and fifth bands, both bands 4 and 5 become 0. In the processing flag, 1 indicates that the processing is being performed, and 0 indicates that the processing is completed.

【0161】また更に、それぞれのバンドについてレン
ダリング処理が完了したかどうかを示す完了フラグは、
バンド1、2、3では未完了を示す0となり、バンド
4、5では完了を示す1となる。
Furthermore, a completion flag indicating whether or not the rendering processing has been completed for each band is as follows:
Bands 1, 2, and 3 have a value of 0 indicating incompleteness, and bands 4 and 5 have a value of 1 indicating completion.

【0162】図14(B)は、時刻t92でのスレッド
管理テーブルを示している。
FIG. 14B shows the thread management table at time t92.

【0163】レンダリング処理は、図9や図10に示す
ページビットマップにおいて、上のバンドから下のバン
ドに向かって実行されるので、最初にスレッドID10
0が付与されたレンダリング処理が第1バンドのレンダ
リング処理(B1)903を実行し、次にスレッドID
101が付与されたレンダリング処理が第2バンドのレ
ンダリング処理(B2)904を実行する。こうした実
行状態をスレッド管理テーブルが示している。そして、
時刻t92の時点で、2つ用意されていたレンダリング
処理の全てが処理中となってしまう。その為、第3バン
ドのレンダリング処理(B3)905は、第1バンドの
レンダリング処理(B1)903か第2バンドのレンダ
リング処理(B2)904が終了して、スレッドID1
00が付与されたレンダリング処理か、スレッドID1
01が付与されたレンダリング処理が空くまで待たなく
てはいけない。そのため、この時刻t92のタイミング
では第3バンドのレンダリング処理が行われていない。
Since the rendering process is executed from the upper band to the lower band in the page bitmaps shown in FIGS. 9 and 10, first, the thread ID 10
The rendering process to which 0 is assigned executes the rendering process (B1) 903 of the first band, and then the thread ID
The rendering process to which 101 is applied executes the rendering process (B2) 904 of the second band. The thread management table indicates such an execution state. And
At time t92, all of the two prepared rendering processes are being processed. Therefore, the rendering process (B3) 905 of the third band is completed after the rendering process (B1) 903 of the first band or the rendering process (B2) 904 of the second band is completed.
00 or the thread ID 1
It is necessary to wait until the rendering process assigned with 01 becomes empty. Therefore, the rendering processing of the third band is not performed at the timing of the time t92.

【0164】図13(C)は、時刻t93、つまり第1
バンドのレンダリング処理(B1)903及び第2バン
ドのレンダリング処理(B2)904の終了時点でのバ
ンド管理テーブルを示している。
FIG. 13C shows the time t93, that is, the first time.
The band management table at the end of the band rendering process (B1) 903 and the second band rendering process (B2) 904 is shown.

【0165】各バンドにおける中間データの数を示すバ
ンド管理テーブルのデータ数欄は、時刻t92で中間デ
ータ作成処理(S406)が完了しているため変化がな
く、図13(B)に示すバンド管理テーブルと同じ値と
なっている。
The data number column of the band management table indicating the number of intermediate data in each band does not change since the intermediate data creation processing (S406) has been completed at time t92, and the band management table shown in FIG. It has the same value as the table.

【0166】それぞれのバンドについてレンダリング処
理中か否かを示すバンド管理テーブルの処理中フラグ欄
は、第1バンドのレンダリング処理(B1)903及び
第2バンドのレンダリング処理(B2)904が終了し
たので、バンド1、2では0となる。一方、第3バンド
のレンダリング処理(B3)905はこのタイミングで
開始されるので、バンド3では1となる。また、バンド
4、5については時刻t92の時点で完了を示す0とな
っており、そのまま変化無く0となる。
The in-process flag column of the band management table indicating whether or not the rendering process is being performed for each band indicates that the rendering process (B1) 903 for the first band and the rendering process (B2) 904 for the second band have been completed. , 0 for bands 1 and 2. On the other hand, since the rendering process (B3) 905 for the third band is started at this timing, it becomes 1 in band 3. Also, the bands 4 and 5 have a value of 0 indicating completion at time t92, and remain 0 without any change.

【0167】また更に、それぞれのバンドについてレン
ダリング処理が完了したか否かを示すバンド管理テーブ
ルの完了フラグ欄は、バンド1、2については完了を示
す1となり、バンド3では0となる。そして、何もする
ことの無いバンド4、5では完了を示す1となる。
Further, the completion flag column of the band management table indicating whether or not the rendering processing has been completed for each band is 1 indicating completion for bands 1 and 2, and 0 for band 3. In bands 4 and 5 where nothing is done, the value is 1 indicating completion.

【0168】図14(C)は、時刻t93でのスレッド
管理テーブルを示している。
FIG. 14C shows the thread management table at time t93.

【0169】レングリンング処理はページビットマップ
上の上のバンドから下のバンドに向かって実行されるの
で、第1バンドのレンダリング処理(B1)903及び
第2バンドのレンダリング処理(B2)904が終了し
た時刻t93では、スレッドID100が付与されたレ
ンダリング処理によって第3バンドのレンダリング処理
(B3)905を行う。後続バンドにもレンダリング処
理すべきデータが存在すれば、それに対して、スレッド
ID101が付与されたレンダリング処理が実行される
が、この第2の実施の形態では存在しないので、スレッ
ドID101が付与されたレンダリング処理では何もし
ない。この状態を、図14(C)のスレッド管理テーブ
ルが示している。
Since the lengling processing is executed from the upper band to the lower band on the page bitmap, the rendering processing (B1) 903 of the first band and the rendering processing (B2) 904 of the second band are completed. At time t93, the rendering process (B3) 905 for the third band is performed by the rendering process to which the thread ID 100 is assigned. If there is data to be rendered in the succeeding band, the rendering process with the thread ID 101 is performed on the data. However, in the second embodiment, the rendering process does not exist. Does nothing in the rendering process. This state is shown in the thread management table of FIG.

【0170】図12(B)に戻って、時刻t92から時
刻t94までの時間がレンダリング(S923)に要す
る時間となる。そして、ここまでの処理を完了すると、
プリンタドライバ414は処理を完了したことになり、
その後はページビットマップ410をプリンタ415に
送り印刷するだけとなる。
Returning to FIG. 12B, the time from time t92 to time t94 is the time required for rendering (S923). And when the process up to this point is completed,
The printer driver 414 has completed the processing,
Thereafter, the page bitmap 410 is simply sent to the printer 415 and printed.

【0171】図12(B)の906は、ページビットマ
ップ410をプリンタ415に送り印刷を行う印刷処理
(Pr)を示している。印刷処理906は時刻t94か
ら時刻t95までの間で処理される。時刻t95は、プ
リンタ415からプリント済みの用紙が最後に出力され
るタイミングを示している。
Reference numeral 906 in FIG. 12B denotes a print process (Pr) for sending the page bitmap 410 to the printer 415 and performing printing. The print processing 906 is performed from time t94 to time t95. Time t95 indicates the timing at which the printed paper is finally output from the printer 415.

【0172】なお、図12(A)に示す従来の処理での
印刷終了(S726)と、図12(B)に示す第2の実
施の形態における印刷終了(S926)との差が改善時
間930となり、この改善時間930が、トータルの印
刷所要時間のうち、第2の実施の形態により短縮するこ
とができる時間である。
The difference between the end of printing (S726) in the conventional processing shown in FIG. 12A (S726) and the end of printing (S926) in the second embodiment shown in FIG. The improvement time 930 is a time of the total printing time that can be reduced by the second embodiment.

【0173】以上のようにして、第2の実施の形態で
は、CPUの能力を有効に活用して、より高速な印刷が
可能となる。
As described above, in the second embodiment, higher-speed printing can be performed by effectively utilizing the capacity of the CPU.

【0174】なお、レンダリング処理の数に上限を設け
ることにより、CPU1やRAM2を印刷処理以外の他
の処理に適度に振り向けることが可能となり、他の処理
とバランスを取った上での高速な印刷処理が可能とな
る。
By setting an upper limit on the number of rendering processes, the CPU 1 and the RAM 2 can be appropriately allocated to processes other than the printing process, and high-speed processing can be performed after balancing other processes. Printing processing becomes possible.

【0175】なおまた、本発明は、単体の機器、複数の
機器からなるシステム、またLAN等のネットワークを
介して処理が行われるシステムに適用可能である。
The present invention is applicable to a single device, a system including a plurality of devices, and a system in which processing is performed via a network such as a LAN.

【0176】さらに、前述した各実施の形態の機能を実
現するソフトウェアのプログラムコードを記憶した記憶
媒体を、システムあるいは装置に供給し、そのシステム
あるいは装置のコンピュータ(またはCPUやMPU)
が記憶媒体に格納されたプログラムコードを読み出して
実行することによっても、本発明が達成されることは言
うまでもない。
Further, a storage medium storing a program code of software for realizing the functions of the above-described embodiments is supplied to a system or an apparatus, and a computer (or CPU or MPU) of the system or the apparatus is provided.
It is needless to say that the present invention can also be achieved by reading and executing the program code stored in the storage medium.

【0177】この場合、記憶媒体から読み出されたプロ
グラムコード自体が、前述の各実施の形態の機能を実現
することになり、そのプログラムコードを記憶した記憶
媒体が本発明を構成することになる。
In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the storage medium storing the program code constitutes the present invention. .

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

【0179】また、コンピュータが読み出したプログラ
ムコードを実行することにより、前述した各実施の形態
の機能が実現されるだけでなく、そのプログラムコード
の指示に基づき、コンピュータ上で稼働しているOSな
どが実際の処理の一部または全部を行い、その処理によ
って前述した各実施の形態の機能が実現される場合も、
本発明に含まれることは言うまでもない。
When the computer executes the readout program code, not only the functions of the above-described embodiments are realized, but also an OS running on the computer based on the instructions of the program code. Performs some or all of the actual processing, and the functions of the above-described embodiments are realized by the processing.
Needless to say, this is included in the present invention.

【0180】さらに、記憶媒体から読み出されたプログ
ラムコードが、コンピュータに挿入された機能拡張ボー
ドやコンピュータに接続された機能拡張ユニットに備わ
るメモリに書き込まれた後、そのプログラムコードの指
示に基づき、その機能拡張ボードや機能拡張ユニットに
備わる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, It is needless to say that the present invention includes a case where the CPU or the like provided in the function expansion board or the function expansion unit performs part or all of the actual processing, and the processing realizes the functions of the above-described embodiments. No.

【0181】[0181]

【発明の効果】以上詳述したように請求項1、請求項6
または請求項11記載の発明によれば、所定の形式の印
刷データを中間データに変換し、該中間データをレンダ
リング処理してページビットマップを作成する印刷装置
が、前記所定形式の印刷データを、ページビットマップ
を構成する複数の分割区画毎の中間データに変換する中
間データ変換手段を有する。
As described in detail above, claims 1 and 6 have been described.
According to the eleventh aspect of the present invention, a printing apparatus that converts print data in a predetermined format into intermediate data, renders the intermediate data to create a page bitmap, converts the print data in the predetermined format into An intermediate data conversion unit is provided for converting the data into intermediate data for each of the plurality of divided sections constituting the page bitmap.

【0182】また、前記印刷装置が、前記複数の分割区
画にそれぞれ対応した、並列して同時に実行可能な複数
のレンダリング処理部を作成するレンダリング処理部作
成手段と、前記レンダリング処理部作成手段により作成
された複数のレンダリング処理部に、前記中間データ変
換手段により変換され作成された前記複数の分割区画毎
の中間データをそれぞれ送り、前記複数の分割区画毎の
レンダリング処理を並列して同時に実行させる実行手段
とを更に有する。
Further, the printing device creates a plurality of rendering processing units respectively corresponding to the plurality of divided sections and which can be executed simultaneously in parallel, and the rendering processing unit creates the rendering processing unit. Sending the intermediate data for each of the plurality of divided sections generated and converted by the intermediate data converting means to the plurality of rendered processing units, and executing the rendering processing for each of the plurality of divided sections in parallel and simultaneously Means.

【0183】或いは、前記印刷装置が、予め決められた
数の並列して同時に実行可能な汎用レンダリング処理部
を作成する汎用レンダリング処理部作成手段と、前記汎
用レンダリング処理部作成手段により作成された汎用レ
ンダリング処理部に、前記中間データ変換手段により変
換され作成された前記複数の分割区画毎の中間データの
うちの、前記汎用レンダリング処理部の数と同じ数の中
間データをそれぞれ送り、分割区画毎のレンダリング処
理を並列して同時に実行させる実行手段とを更に有す
る。
Alternatively, the printing apparatus may include a general-purpose rendering processing unit generating means for generating a predetermined number of general-purpose rendering processing units which can be executed in parallel and a general-purpose rendering processing unit generated by the general-purpose rendering processing unit. To the rendering processing unit, of the intermediate data for each of the plurality of divided sections converted and created by the intermediate data conversion unit, the same number of intermediate data as the number of the general-purpose rendering processing units is sent, and Executing means for executing the rendering processing in parallel and simultaneously.

【0184】これにより、プリンタドライバ内で、並列
して同時に複数のレンダリング処理を実行することが可
能となり、CPUの能力を有効に活用して、より高速な
印刷や、他のアプリケーションに適度にCPUの能力を
割り振りながらそれらとCPUの能力をバランス良く利
用した上でのより高速な印刷が可能となる。
As a result, it is possible to execute a plurality of rendering processes in parallel in the printer driver at the same time, and to make effective use of the capacity of the CPU to perform printing at a higher speed and appropriately use the CPU for other applications. It is possible to perform higher-speed printing while allocating these capabilities and using them and the capabilities of the CPU in a well-balanced manner.

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

【図1】本発明を適用可能なレーザービームプリンタ
(LBP)の構成を示す断面図である。
FIG. 1 is a cross-sectional view illustrating a configuration of a laser beam printer (LBP) to which the present invention can be applied.

【図2】本発明が適用されるプリンタ制御システムの構
成、特にホストコンピュータを示すブロック図である。
FIG. 2 is a block diagram illustrating a configuration of a printer control system to which the present invention is applied, particularly a host computer.

【図3】本発明が適用されるプリンタ制御システムの構
成、特にプリンタを示すブロック図である。
FIG. 3 is a block diagram showing a configuration of a printer control system to which the present invention is applied, in particular, a printer.

【図4】従来の一般的なプリンタドライバの処理の手順
を示すフローチャートである。
FIG. 4 is a flowchart showing a procedure of processing of a conventional general printer driver.

【図5】(A)はGDI形式の出力データに基づくペー
ジビットマップを示す図であり、(B)は中間データに
基づくページビットマップを示す図である。
FIG. 5A is a diagram showing a page bitmap based on GDI format output data, and FIG. 5B is a diagram showing a page bitmap based on intermediate data.

【図6】プリンタドライバ内における従来の処理の流れ
(A)と第1の実施の形態の処理の流れ(B)とを示し
た図である。
FIG. 6 is a diagram showing a conventional processing flow (A) in the printer driver and a processing flow (B) of the first embodiment.

【図7】第1の実施の形態におけるプリンタドライバの
処理の手順を示すフローチャートである。
FIG. 7 is a flowchart illustrating a procedure of a process of the printer driver according to the first embodiment.

【図8】バンド管理テーブルを示す図であり、(A)は
時刻t12での、(B)は時刻t13での、(C)は時
刻t14でのバンド管理テーブルを示す。
8A and 8B are diagrams illustrating a band management table at time t12, FIG. 8B illustrates a band management table at time t13, and FIG. 8C illustrates a band management table at time t14.

【図9】5バンドに分割されたページビットマップを示
す図である。
FIG. 9 is a diagram showing a page bitmap divided into five bands.

【図10】図9に示すページビットマップにおいて2本
の線(L1、L2)を表示したページビットマップを示
す図である。
FIG. 10 is a diagram showing a page bitmap in which two lines (L1, L2) are displayed in the page bitmap shown in FIG. 9;

【図11】2本の線(L1、L2)に関するバンド毎の
中間データを示す図であり、(A)〜(C)は第1〜第
3バンドにおける中間データをそれぞれ示す。
FIG. 11 is a diagram showing intermediate data for each band regarding two lines (L1, L2), and (A) to (C) show intermediate data in first to third bands, respectively.

【図12】第2の実施形態におけるプリンタドライバ内
の処理の流れ(B)を、従来の処理の流れ(A)と比較
して示した図である。
FIG. 12 is a diagram showing a processing flow (B) in a printer driver according to the second embodiment in comparison with a conventional processing flow (A).

【図13】バンド管理テーブルを示す図であり、(A)
は時刻t90での、(B)は時刻t92での、(C)は
時刻t93での、(D)は時刻t94でのバンド管理テ
ーブルを示す。
FIG. 13 is a diagram showing a band management table, and FIG.
Shows a band management table at time t90, (B) shows a band management table at time t92, (C) shows a band management table at time t93, and (D) shows a band management table at time t94.

【図14】スレッド管理テーブルを示す図であり、
(A)は時刻t90での、(B)は時刻t92での、
(C)は時刻t93での、(D)は時刻t94でのスレ
ッド管理テーブルを示す。
FIG. 14 is a diagram showing a thread management table;
(A) at time t90, (B) at time t92,
(C) shows the thread management table at time t93, and (D) shows the thread management table at time t94.

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

1 CPU 2 RAM 3 ROM 4 システムバス 5 キーボードコントローラ(KBC) 6 CRTコントローラ(CRTC) 7 ディスクコントローラ(DKC) 8 プリンタコントローラ(PRTC) 9 キーボード(KB) 10 CRTディスプレイ(CRT) 11 外部メモリ 12 CPU 13 ROM 14 外部メモリ 15 システムバス 16 印刷部インターフェース 17 印刷部 18 入力部 19 RAM 20 ディスクコントローラ(DKC) 401 アプリケーション 402 オペレーションシステム(OS) 407 中間データ 410 ページビットマップ 413 レンダリング機能(レンダリング処理部作成手
段、複数のレンダリング処理部、汎用レンダリング処理
部、汎用レンダリング処理部作成手段) 414 プリンタドライバ(中間データ変換手段、実行
手段) 415 プリンタ 3000 ホストコンピュータ 1500 プリンタ
1 CPU 2 RAM 3 ROM 4 System bus 5 Keyboard controller (KBC) 6 CRT controller (CRTC) 7 Disk controller (DKC) 8 Printer controller (PRTC) 9 Keyboard (KB) 10 CRT display (CRT) 11 External memory 12 CPU 13 ROM 14 external memory 15 system bus 16 printing unit interface 17 printing unit 18 input unit 19 RAM 20 disk controller (DKC) 401 application 402 operation system (OS) 407 intermediate data 410 page bitmap 413 rendering function (rendering processing unit creating means, A plurality of rendering processing units, a general-purpose rendering processing unit, and a general-purpose rendering processing unit creating unit) 414 printer driver ( During the data conversion means, execution means) 415 printer 3000 host computer 1500 Printer

Claims (15)

【特許請求の範囲】[Claims] 【請求項1】 所定の形式の印刷データを中間データに
変換し、該中間データをレンダリング処理してページビ
ットマップを作成する印刷装置において、 前記所定形式の印刷データを、ページビットマップを構
成する複数の分割区画毎の中間データに変換する中間デ
ータ変換手段を有することを特徴とする印刷装置。
1. A printing apparatus for converting print data of a predetermined format into intermediate data and rendering the intermediate data to create a page bitmap, wherein the print data of the predetermined format constitutes a page bitmap. A printing apparatus, comprising: intermediate data conversion means for converting into intermediate data for each of a plurality of divided sections.
【請求項2】 前記複数の分割区画にそれぞれ対応し
た、並列して同時に実行可能な複数のレンダリング処理
部を作成するレンダリング処理部作成手段と、 前記レンダリング処理部作成手段により作成された複数
のレンダリング処理部に、前記中間データ変換手段によ
り変換され作成された前記複数の分割区画毎の中間デー
タをそれぞれ送り、前記複数の分割区画毎のレンダリン
グ処理を並列して同時に実行させる実行手段とを更に有
することを特徴とする請求項1記載の印刷装置。
2. A rendering processing section creating means for creating a plurality of rendering processing sections respectively corresponding to the plurality of divided sections and capable of being executed simultaneously in parallel, and a plurality of renderings created by the rendering processing section creating means. Executing means for sending, to the processing unit, the intermediate data for each of the plurality of divided sections generated and converted by the intermediate data converting means, and executing the rendering processing for each of the plurality of divided sections in parallel and simultaneously; The printing apparatus according to claim 1, wherein:
【請求項3】 予め決められた数の並列して同時に実行
可能な汎用レンダリング処理部を作成する汎用レンダリ
ング処理部作成手段と、 前記汎用レンダリング処理部作成手段により作成された
汎用レンダリング処理部に、前記中間データ変換手段に
より変換され作成された前記複数の分割区画毎の中間デ
ータのうちの、前記汎用レンダリング処理部の数と同じ
数の中間データをそれぞれ送り、分割区画毎のレンダリ
ング処理を並列して同時に実行させる実行手段とを更に
有することを特徴とする請求項1記載の印刷装置。
3. A general-purpose rendering processing unit creating means for creating a predetermined number of general-purpose rendering processing units that can be executed simultaneously in parallel, and a general-purpose rendering processing unit created by the general-purpose rendering processing unit creating means. Of the intermediate data for each of the plurality of divided sections converted and created by the intermediate data conversion means, the same number of intermediate data as the number of the general-purpose rendering processing units are sent, and the rendering processing for each divided section is performed in parallel. 2. The printing apparatus according to claim 1, further comprising: an execution unit that executes the print job simultaneously.
【請求項4】 前記汎用レンダリング処理部の数は、前
記汎用レンダリング処理部の実行に係わるCPU及び/
またはメモリの空き状況に応じて決めることを特徴とす
る請求項3記載の印刷装置。
4. The number of the general-purpose rendering processing units is determined by a CPU and / or a CPU involved in the execution of the general-purpose rendering processing units.
4. The printing apparatus according to claim 3, wherein the printing apparatus is determined according to a memory availability.
【請求項5】 前記所定の形式の印刷データは、GDI
(Graphics DeviceInterface)形式の印刷データである
ことを特徴とする請求項1乃至請求項4のいずれかに記
載の記載の印刷装置。
5. The print data of the predetermined format is a GDI
The printing device according to claim 1, wherein the printing device is print data in a (Graphics DeviceInterface) format.
【請求項6】 所定の形式の印刷データを中間データに
変換し、該中間データをレンダリング処理してページビ
ットマップを作成する印刷装置に適用される高速印刷方
法において、 前記所定形式の印刷データを、ページビットマップを構
成する複数の分割区画毎の中間データに変換する中間デ
ータ変換ステップを有することを特徴とする高速印刷方
法。
6. A high-speed printing method applied to a printing apparatus for converting print data of a predetermined format into intermediate data and rendering the intermediate data to create a page bitmap, wherein the print data of the predetermined format is A high-speed printing method comprising an intermediate data conversion step of converting into intermediate data for each of a plurality of divided sections constituting a page bitmap.
【請求項7】 前記複数の分割区画にそれぞれ対応し
た、並列して同時に実行可能な複数のレンダリング処理
部を作成するレンダリング処理部作成ステップと、 前記レンダリング処理部作成ステップにより作成された
複数のレンダリング処理部に、前記中間データ変換ステ
ップにより変換され作成された前記複数の分割区画毎の
中間データをそれぞれ送り、前記複数の分割区画毎のレ
ンダリング処理を並列して同時に実行させる実行ステッ
プとを更に有することを特徴とする請求項6記載の高速
印刷方法。
7. A rendering processing unit creating step for creating a plurality of rendering processing units respectively corresponding to the plurality of divided sections and capable of being executed in parallel and simultaneously, and a plurality of renderings created by the rendering processing unit creating step An execution step of sending the intermediate data for each of the plurality of divided sections generated and converted by the intermediate data conversion step to the processing unit, and simultaneously executing the rendering processing for each of the plurality of divided sections in parallel. 7. The high-speed printing method according to claim 6, wherein:
【請求項8】 予め決められた数の並列して同時に実行
可能な汎用レンダリング処理部を作成する汎用レンダリ
ング処理部作成ステップと、 前記汎用レンダリング処理部作成ステップにより作成さ
れた汎用レンダリング処理部に、前記中間データ変換ス
テップにより変換され作成された前記複数の分割区画毎
の中間データのうちの、前記汎用レンダリング処理部の
数と同じ数の中間データをそれぞれ送り、分割区画毎の
レンダリング処理を並列して同時に実行させる実行ステ
ップとを更に有することを特徴とする請求項6記載の高
速印刷方法。
8. A general-purpose rendering processing unit creating step of creating a predetermined number of general-purpose rendering processing units that can be executed simultaneously in parallel, and a general-purpose rendering processing unit created by the general-purpose rendering processing unit creating step. Of the intermediate data for each of the plurality of divided sections converted and created by the intermediate data conversion step, the same number of intermediate data as the number of the general-purpose rendering processing units are sent, and the rendering process for each divided section is performed in parallel. 7. The high-speed printing method according to claim 6, further comprising an execution step of executing the printing at the same time.
【請求項9】 前記汎用レンダリング処理部の数は、前
記汎用レンダリング処理部の実行に係わるCPU及び/
またはメモリの空き状況に応じて決めることを特徴とす
る請求項8記載の高速印刷方法。
9. The number of the general-purpose rendering processing units is determined by a CPU and / or a number of executions of the general-purpose rendering processing units.
9. The high-speed printing method according to claim 8, wherein the determination is made in accordance with a memory availability.
【請求項10】 前記所定の形式の印刷データは、GD
I(Graphics Device Interface)形式の印刷データで
あることを特徴とする請求項6乃至請求項9のいずれか
に記載の記載の高速印刷方法。
10. The print data of the predetermined format is GD
10. The high-speed printing method according to claim 6, wherein the printing data is print data in an I (Graphics Device Interface) format.
【請求項11】 所定の形式の印刷データを中間データ
に変換し、該中間データをレンダリング処理してページ
ビットマップを作成する印刷装置に適用される高速印刷
方法をプログラムとして記憶した、コンピュータにより
読み出し可能な記憶媒体において、 前記高速印刷方法が、 前記所定形式の印刷データを、ページビットマップを構
成する複数の分割区画毎の中間データに変換する中間デ
ータ変換ステップを有することを特徴とする記憶媒体。
11. A high-speed printing method applied to a printing apparatus that converts print data of a predetermined format into intermediate data and renders the intermediate data to create a page bitmap is read by a computer. A possible storage medium, wherein the high-speed printing method has an intermediate data conversion step of converting the print data of the predetermined format into intermediate data for each of a plurality of divided sections constituting a page bitmap. .
【請求項12】 前記高速印刷方法が、 前記複数の分割区画にそれぞれ対応した、並列して同時
に実行可能な複数のレンダリング処理部を作成するレン
ダリング処理部作成ステップと、 前記レンダリング処理部作成ステップにより作成された
複数のレンダリング処理部に、前記中間データ変換ステ
ップにより変換され作成された前記複数の分割区画毎の
中間データをそれぞれ送り、前記複数の分割区画毎のレ
ンダリング処理を並列して同時に実行させる実行ステッ
プとを更に有することを特徴とする請求項11記載の記
憶媒体。
12. The rendering processing unit creating step of creating a plurality of rendering processing units respectively corresponding to the plurality of divided sections and executable in parallel and simultaneously, and the rendering processing unit creating step. The intermediate data for each of the plurality of divided sections generated by the intermediate data conversion step is sent to the plurality of created rendering processing units, and the rendering processing for each of the plurality of divided sections is performed simultaneously in parallel. The storage medium according to claim 11, further comprising an execution step.
【請求項13】 予め決められた数の並列して同時に実
行可能な汎用レンダリング処理部を作成する汎用レンダ
リング処理部作成ステップと、 前記汎用レンダリング処理部作成ステップにより作成さ
れた汎用レンダリング処理部に、前記中間データ変換ス
テップにより変換され作成された前記複数の分割区画毎
の中間データのうちの、前記汎用レンダリング処理部の
数と同じ数の中間データをそれぞれ送り、分割区画毎の
レンダリング処理を並列して同時に実行させる実行ステ
ップとを更に有することを特徴とする請求項11記載の
記憶媒体。
13. A general-purpose rendering processing unit creating step of creating a predetermined number of general-purpose rendering processing units that can be executed simultaneously in parallel, and a general-purpose rendering processing unit created by the general-purpose rendering processing unit creating step. Of the intermediate data for each of the plurality of divided sections converted and created by the intermediate data conversion step, the same number of intermediate data as the number of the general-purpose rendering processing units are sent, and the rendering process for each divided section is performed in parallel. 12. The storage medium according to claim 11, further comprising an execution step of executing the program simultaneously.
【請求項14】 前記汎用レンダリング処理部の数は、
前記汎用レンダリング処理部の実行に係わるCPU及び
/またはメモリの空き状況に応じて決めることを特徴と
する請求項13記載の記憶媒体。
14. The number of the general-purpose rendering processing units is as follows:
14. The storage medium according to claim 13, wherein the storage medium is determined according to a free state of a CPU and / or a memory related to execution of the general-purpose rendering processing unit.
【請求項15】 前記所定の形式の印刷データは、GD
I(Graphics Device Interface)形式の印刷データで
あることを特徴とする請求項11乃至請求項14のいず
れかに記載の記載の記憶媒体。
15. The print data of the predetermined format is GD
15. The storage medium according to claim 11, wherein the storage medium is print data in an I (Graphics Device Interface) format.
JP2000130572A 2000-04-28 2000-04-28 Printer, high speed printing method and storage medium Withdrawn JP2001312383A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000130572A JP2001312383A (en) 2000-04-28 2000-04-28 Printer, high speed printing method and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000130572A JP2001312383A (en) 2000-04-28 2000-04-28 Printer, high speed printing method and storage medium

Publications (1)

Publication Number Publication Date
JP2001312383A true JP2001312383A (en) 2001-11-09

Family

ID=18639645

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000130572A Withdrawn JP2001312383A (en) 2000-04-28 2000-04-28 Printer, high speed printing method and storage medium

Country Status (1)

Country Link
JP (1) JP2001312383A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7433071B2 (en) 2003-06-30 2008-10-07 Samsung Electronics Co., Ltd. Printing method and apparatus of multi function product and computer-readable recording medium for storing computer program for controlling the product
CN100444102C (en) * 2005-12-29 2008-12-17 三星电子株式会社 High speed printing method and apparatus
JP2010125713A (en) * 2008-11-27 2010-06-10 Kyocera Mita Corp Image forming apparatus
US8823997B2 (en) 2011-03-24 2014-09-02 Fuji Xerox Co., Ltd. Processing of logical page data for a printer
JP2017170884A (en) * 2016-03-16 2017-09-28 キヤノン株式会社 Image processing device, control method thereof, and program

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7433071B2 (en) 2003-06-30 2008-10-07 Samsung Electronics Co., Ltd. Printing method and apparatus of multi function product and computer-readable recording medium for storing computer program for controlling the product
CN100444102C (en) * 2005-12-29 2008-12-17 三星电子株式会社 High speed printing method and apparatus
JP2010125713A (en) * 2008-11-27 2010-06-10 Kyocera Mita Corp Image forming apparatus
US8823997B2 (en) 2011-03-24 2014-09-02 Fuji Xerox Co., Ltd. Processing of logical page data for a printer
JP2017170884A (en) * 2016-03-16 2017-09-28 キヤノン株式会社 Image processing device, control method thereof, and program

Similar Documents

Publication Publication Date Title
JP3673643B2 (en) Print layout apparatus, print layout method, and storage medium
JP3747130B2 (en) Information processing apparatus, message display method, interface apparatus, and storage medium storing computer-readable program
US20070070403A1 (en) Information processing apparatus, information processing method, and program
JPH08286860A (en) Output control method, its device and its computer program product
US6310693B1 (en) Printing control apparatus and method, and printing system for reducing processing overhead
JP2001312383A (en) Printer, high speed printing method and storage medium
JP2004192390A (en) Data processor
JP2006244248A (en) Image processing device, image processing method, and program for executing image processing method
JPH04325267A (en) Output method and its device
JPH07168681A (en) Pdl data processor and its control method, and pattern expanding device
JP2004038527A (en) Printer driver, printing control method, computer-readable storage medium, and program
US7310166B2 (en) Information processing apparatus and method, and print control program
JP2006159738A (en) Print controller, its data processing method, and storage medium
JP4580697B2 (en) Print processing system, program, and recording medium
JP2006079475A (en) Print processing system, program and recording medium
JP2001096854A (en) Apparatus and method for printing processing
JPH10151815A (en) Printing-processing apparatus
JP2000155663A (en) Printing controller, data processing method for the printing controller and storage medium stored with computer readable program
JP4325339B2 (en) Printing system, host computer and printer driver
JP3864520B2 (en) Print processing apparatus and print processing method
US20190332906A1 (en) Information processing apparatus, storage medium, printing apparatus, and method for processing drawing data
JP2002059596A (en) Data processing device, data processing system, data processing method, printing device, printing system, printing method and medium providing processing program
JPH086542A (en) Character font and method and device for pattern expansion of same
JPH1063250A (en) Character processing device
JP2004284265A (en) Printing control method and device

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060316

A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20070703