JPH10260805A - Printer controller, method therefor, and storage medium recorded with program code to execute the same - Google Patents

Printer controller, method therefor, and storage medium recorded with program code to execute the same

Info

Publication number
JPH10260805A
JPH10260805A JP10008686A JP868698A JPH10260805A JP H10260805 A JPH10260805 A JP H10260805A JP 10008686 A JP10008686 A JP 10008686A JP 868698 A JP868698 A JP 868698A JP H10260805 A JPH10260805 A JP H10260805A
Authority
JP
Japan
Prior art keywords
data
image processing
drawing data
image
command
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP10008686A
Other languages
Japanese (ja)
Other versions
JP3996990B2 (en
Inventor
Masaki Aritomi
雅規 有富
Yasuhiro Hino
康弘 日野
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 JP00868698A priority Critical patent/JP3996990B2/en
Publication of JPH10260805A publication Critical patent/JPH10260805A/en
Application granted granted Critical
Publication of JP3996990B2 publication Critical patent/JP3996990B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)

Abstract

PROBLEM TO BE SOLVED: To make the plotting processing efficient, to enable fast printing, by optimizing redundant print data in accordance with the characteristic of the print data, to prevent plotting impossibility due to memory shortage, and to suppress the manufacturing cost by saving memory that is needed by a printer. SOLUTION: In this method, plural plotting data which are generated for an image output by an application on a host computer are buffered (S802). Next, it is decided whether plural plotting data that are buffered are described with smaller number of plotting data or not (S803 and S804), and when it is judged that they can be described by smaller number of plotting data, plural buffered data are converted into smaller number of plotting data (S805).

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、ホストコンピュー
タのアプリケーション等によりプリント出力のために生
成されるプリントデータを処理するプリンタ制御装置、
方法及びそれを実行するためのプログラムコードを記録
した記録媒体に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a printer control device for processing print data generated for print output by an application of a host computer, and the like.
The present invention relates to a method and a recording medium on which a program code for executing the method is recorded.

【0002】[0002]

【従来の技術】通常、アプリケ―ションを使用して作成
した書類を印刷する場合、アプリケ―ションの印刷手順
通りにプリンタドライバが駆動され、プリンタドライパ
は駆動された手順で印刷データを印刷コマンドに変換
し、印刷装置に転送し、印刷装置では、印刷コマンドを
受信すると受信したコマンドを逐次解析・実行してい
た。
2. Description of the Related Art Normally, when printing a document created using an application, a printer driver is driven according to the printing procedure of the application, and the printer driver prints the print data in the driven procedure. , And transferred to the printing device. When the printing device receives the print command, the received command is sequentially analyzed and executed.

【0003】[0003]

【発明が解決しようとする課題】しかしながら、アプリ
ケーションの印刷手順にはアプリケーションそれぞれ癖
があり、昨今の高機能化したアプリケーションでは同一
の描画を何度も繰り返したり、大きなブロックの図形を
細かく分割したり、結果的には小きな図形として描画さ
れる領域を印刷するのに膨大な数の図形を組み合わせた
りするものがある。
However, the printing procedure of the application has a peculiarity to each application, and in the application with advanced functions in recent years, the same drawing is repeated many times, or a figure of a large block is finely divided. In some cases, an enormous number of figures are combined to print an area drawn as a small figure.

【0004】このような印刷データは、転送データ量が
増えるだけでなく、かかるデータを処理する装置にも大
きな負荷がかかるために、印刷結果だけから見ると不自
然なほど時聞がかかってしまうという問題がある。
[0004] Such print data not only increases the amount of transfer data, but also imposes a heavy load on a device for processing such data. Therefore, when viewed only from the print result, the time becomes unnatural. There is a problem.

【0005】また、一般的に印刷装置にはコスト的な制
約から必要最小限のメモリしか搭載されていないため、
上記のような大量の描画データを処理しようとした場合
には描画データの処理に必要なメモリが不足し、描画不
可能になることがある。
[0005] Further, since a printing apparatus is generally equipped with only a minimum necessary memory due to cost constraints,
When an attempt is made to process a large amount of drawing data as described above, the memory required for processing the drawing data may be insufficient, and rendering may not be possible.

【0006】本発明の目的は、上記問題点を解決し、使
用するアプリケ―ションが冗長度の大きい描画デ―タを
生成する場合であっても、そのために出力までに長時間
を要したり、描画不能になったりすることを防止するこ
とができるプリンタ制御装置、方法及びそれを実行する
ためのプログラムコードを記録した記録媒体を提供する
ことである。
SUMMARY OF THE INVENTION An object of the present invention is to solve the above-mentioned problems, and even when an application to be used generates drawing data with a high degree of redundancy, it takes a long time to output the data. It is an object of the present invention to provide a printer control device and method capable of preventing rendering from being disabled, and a recording medium recording a program code for executing the same.

【0007】[0007]

【課題を解決するための手段】上記目的を達成するため
に本発明に係る画像処理装置はホストコンピュータ上の
アプリケーションがプリント出力のために生成したプリ
ントデータを処理するプリンタ制御装置において、前記
アプリケーションが生成した複数の描画データをバッフ
ァリングするバッファリング手段と、前記バッファリン
グ手段にバッファリングされた複数の描画データを一つ
にまとめる最適化手段と、を具備する。
In order to achieve the above object, an image processing apparatus according to the present invention is a printer control apparatus for processing print data generated for print output by an application on a host computer. A buffering means for buffering the plurality of generated drawing data, and an optimizing means for integrating the plurality of drawing data buffered in the buffering means into one.

【0008】また、本発明によれば係る画像処理方法は
ホストコンピュータ上のアプリケーションが生成した複
数の描画データをバッファリングし、バッファリングさ
れた複数の描画データを1つの描画データにより記述で
きるか否かを判断し、1つの描画データにより記述でき
ると判断された場合、バッファリングされた複数の描画
データを1つの描画データに変換する。
Further, according to the image processing method of the present invention, a plurality of drawing data generated by an application on a host computer is buffered, and a plurality of buffered drawing data can be described by one drawing data. If it is determined that one drawing data can be used for the description, a plurality of buffered drawing data is converted into one drawing data.

【0009】さらに本発明に係る記録媒体は以下の構成
を有するコンピュータが読めるプログラムコードを記憶
する。プログラムコードはアプリケーションがプリント
出力のために生成した複数の描画データをバッファリン
グさせる手段、バッファリングされた複数の描画データ
を1つの描画データに変換する最適化手段を含むといえ
る。
Further, a recording medium according to the present invention stores a computer-readable program code having the following configuration. It can be said that the program code includes means for buffering a plurality of pieces of drawing data generated by the application for print output, and optimizing means for converting the plurality of buffered pieces of drawing data into one piece of drawing data.

【0010】本発明の他の目的、効果は添付の図面、請
求項、後述の詳細な説明から、より明らかになるだろ
う。
[0010] Other objects and advantages of the present invention will become more apparent from the accompanying drawings, claims and the following detailed description.

【0011】[0011]

【発明の実施の形態】以下、添付の図面を参照して本発
明の好適な実施形態を詳細に説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Preferred embodiments of the present invention will be described below in detail with reference to the accompanying drawings.

【0012】本実施形態の構成を説明する前に、本実施
形態を適用するに好適なレ―ザビームプリンタ(以下
「LBP」と記述)の構成について図lを参照しながら
説明する。なお、本実施形態を適用するプリンタは、レ
―ザビームプリンタに限られるものではなく、他のプリ
ント方式のプリンタでも良いことは言うまでもない。
Before describing the configuration of the present embodiment, the configuration of a laser beam printer (hereinafter referred to as "LBP") suitable for applying the present embodiment will be described with reference to FIG. The printer to which this embodiment is applied is not limited to a laser beam printer, and it goes without saying that a printer of another printing method may be used.

【0013】図lは、本実施形態に適用されるレーザビ
―ムプリンタの内部構造を示す断面図である。同図にお
いて、1000はLBP本体であり、外部に接続されて
いるホストコンピュ―タから供給される文字情報(文字
コ―ド)やフォーム憎報あるいはマクロ命令などを入力
して記憶するとともに、それらの情報に従って対応する
文字バタ―ンやフォ―ムバターンなどを作成し、記録紙
上に像を形成する。1012は操作のためのスイッチお
よぴLED表示器などが配されている操作バネル、10
01はLBP1000全体の制御およびホストコンピュ
―タから供給される文字情報などを解析するプリンタ制
御ユニットである。この制御ュニット1001は、主に
文字情報を対応する文字パタ―ンのビデオ信号に変換し
てレ―ザドライバ1002に出力する。レーザドライバ
1002は半導体レ―ザ1003を駆動するための回路
であり、入力されたビデオ信号に応じて半導体レーザ1
003から発射されるレーザ光1004をオンオフ切り
替えする。レ―ザ1004は回転多面鏡1005で左右
方向に振られ静電ドラム1006上を走査する。これに
より、静電ドラム1006上には文字バターンの静電潜
像が形成される。この潜像は、静電ドラム1006周囲
の現像ユニット1007により現像された後、記録紙に
転写される。この記録紙にはカットシ―トを用い、カッ
トシート記録紙はLBP1000に装着した用紙カセッ
ト1008に収納され、給紙ロ―ラ1009およぴ搬送
ロ―ラ1010と1011とにより装置内に取り込まれ
て、静電ドラム1006に供給される。
FIG. 1 is a sectional view showing the internal structure of a laser beam printer applied to this embodiment. In FIG. 1, reference numeral 1000 denotes an LBP main body, which inputs and stores character information (character code), form information, macro instructions, and the like supplied from an externally connected host computer; A corresponding character pattern, form pattern, or the like is created according to the information, and an image is formed on recording paper. Reference numeral 1012 denotes an operation panel on which switches for operation and an LED display are arranged.
Reference numeral 01 denotes a printer control unit that controls the entire LBP 1000 and analyzes character information and the like supplied from the host computer. The control unit 1001 mainly converts character information into a video signal of a corresponding character pattern and outputs the video signal to a laser driver 1002. The laser driver 1002 is a circuit for driving the semiconductor laser 1003. The laser driver 1002 operates in accordance with the input video signal.
The laser beam 1004 emitted from 003 is switched on and off. The laser 1004 is swung left and right by a rotary polygon mirror 1005 to scan on an electrostatic drum 1006. Thus, an electrostatic latent image of a character pattern is formed on the electrostatic drum 1006. This latent image is developed by a developing unit 1007 around the electrostatic drum 1006 and then transferred to a recording sheet. A cut sheet is used for the recording paper, and the cut sheet recording paper is stored in a paper cassette 1008 mounted on the LBP 1000, and taken into the apparatus by a paper feed roller 1009 and transport rollers 1010 and 1011. And supplied to the electrostatic drum 1006.

【0014】図2は、本実施形態の係るLBP1000
(特に制御ユニット1001)のソフトウエア構成を示
すブロック図である。図2において2000は印刷装置
1000に接続されたホストコンピュ一タであり、プリ
ントデータ及び制御コードから成る印刷情報を印刷装置
1000に出カするものである。印刷装置1000は、
大きく分けてフォーマッタ制御部1100(上記制御ユ
ニット1001内に設けられる)、インターフェース1
200、出力制御1300、プリンタエンジン部140
0より構成されている。フォ―マッタ制御部1100
は、受信バッファ1101、コマンド判別部1102、
コマンド解析部1103、コマンド実行部1104、ぺ
―ジメモリ1105、デ―タ形式判定部1106より構
成されている。さらに、コマンド解析部1103はアプ
リケーションリスト1l03aおよび最適化ルーチン1
103bを有している。受信パッファ1101は、ホス
トコンビュータ2000から受信した印刷憶報を一時的
に保持する記憶手段である。コマンド判別部1102
は、各印刷制御コマンドの判別を行なうものであり、印
刷デ―タは各コマンドに応じてコマンド解析部1103
において解析される。コマンド解析部1103は各印刷
制御コマンドの解析を行なうものである。コマンド判別
部1102においてアプリケーション識別データである
アプリケーション名を受信した場合には、該アプリケ―
ション名はアプリケ―ションリスト1103aと順次比
較される。アプリケ―ションリスト1103aは、アプ
リケ―ション名と最適化対象コマンドおよび最適化ルー
チンの対比を記述したテ―ブルである。受信したアプリ
ケーション名がアプリケ―ションリスト1103a中に
存在する場合には、最適化対象のコマンドを解析するル
ーチンは最適化ル―チンll03b中の該当するコマン
ド解析ルーチンに切り替えられて解析される。コマンド
解析部1103は、印刷情報の解析を行なうことによ
り、各印刷制御コマンドを実行部1104においてより
処理しやすい形式の中間コ―ドの形に変換する。コマン
ド実行部1104は、この中間コ―ドに基づいて各コマ
ンドに応じた処理を実行し、描画及び印字に関するコマ
ンドについては、対応するパターンをページメモリ11
05に逐次展開する。一方、データ形式判定部1106
において単純ビットマップであると判定された場合は、
イメ―ジデ―タはそのままぺ―ジメモリ1105に展開
される。なお一般的には、フォーマッタ制御部1100
は、CPU、ROM、RAMなどを用いたコンビュ―タ
システムによって構成されている。出力制御部1300
は、ぺ―ジメモリ1105の内容をビデオ信号に変換処
理し、プリンタエンジン部1400に転送する。プリン
タエンジン部1400は受け取ったビデオ信号を記録紙
に永久可視画像形成するための印刷機構部である。
FIG. 2 shows an LBP 1000 according to this embodiment.
FIG. 3 is a block diagram illustrating a software configuration of a control unit (particularly, a control unit 1001). In FIG. 2, reference numeral 2000 denotes a host computer connected to the printing apparatus 1000, which outputs print information including print data and control codes to the printing apparatus 1000. The printing device 1000
The formatter controller 1100 (provided in the control unit 1001), the interface 1
200, output control 1300, printer engine 140
0. Formatter control unit 1100
Represents a reception buffer 1101, a command discrimination unit 1102,
It comprises a command analysis unit 1103, a command execution unit 1104, a page memory 1105, and a data format determination unit 1106. Further, the command analysis unit 1103 stores the application list 1103a and the optimization routine 1
103b. The reception buffer 1101 is a storage unit that temporarily stores print information received from the host computer 2000. Command discriminator 1102
Is used to determine each print control command, and print data is sent to the command analysis unit 1103 according to each command.
Is analyzed in The command analysis unit 1103 analyzes each print control command. When the command determining unit 1102 receives the application name as the application identification data,
The application name is sequentially compared with the application list 1103a. The application list 1103a is a table in which application names are compared with optimization target commands and optimization routines. If the received application name exists in the application list 1103a, the routine for analyzing the command to be optimized is switched to the corresponding command analysis routine in the optimization routine 1103b and analyzed. The command analysis unit 1103 converts each print control command into an intermediate code in a format that can be more easily processed by the execution unit 1104 by analyzing the print information. The command execution unit 1104 executes processing corresponding to each command based on the intermediate code, and for a command related to drawing and printing, stores a corresponding pattern in the page memory 11.
Expand sequentially to 05. On the other hand, data format determination unit 1106
If is determined to be a simple bitmap in,
The image data is directly expanded in the page memory 1105. Generally, the formatter control unit 1100
Is constituted by a computer system using a CPU, a ROM, a RAM and the like. Output control unit 1300
Converts the content of the page memory 1105 into a video signal and transfers the video signal to the printer engine unit 1400. The printer engine unit 1400 is a printing mechanism unit for forming a permanent visible image of the received video signal on recording paper.

【0015】次に、このように構成された印刷装置にお
いて、本実施形態における全体の印刷制御処理手順を図
3、図4に示すフローチャ―トを参照しながら説明す
る。図3におけるS30l〜S308、図4におけるS
401〜S408は各処理ステップを示す。
Next, the overall printing control procedure in this embodiment of the printing apparatus constructed as described above will be described with reference to the flowcharts shown in FIGS. S301 to S308 in FIG. 3, S in FIG.
Reference numerals 401 to S408 denote processing steps.

【0016】図3は印刷装置1000の動作の開始から
終了までのメイン処理を示している。まずステップS3
01でホストコンピュ―タ2000から送られてくる印
刷データの受けとりを行ない、受信バッファ1101に
ストックする。次にステップS302で受信パッファに
ストックされた印刷データを読み出し、ステップS30
3でコマンド判別部1102において印刷制御コマンド
がアプリケーション名の通知コマンドであるか否かを判
別する。もしアプリケ―ション名通知コマンドであれ
ば、ステップS304に進み、受信したアプリケーショ
ン名をアプリケ―ションリスト1103aと順次比較す
る。そしてステップS305においてアプリケーション
リスト中に一致するアプリケ―ション名が存在するか否
かを判別し、存在するならばステップS306において
対比するコマンド解析ル―チンを最適化ルーチンに切り
替え,ステップS307の描画処理へと進む。―方、ス
テップS303で受信したコマンドがアプリケーション
名通知コマンドでなかった場合、またはステップS30
5で受信したアプリケーション名がアプリケ―ションリ
ストに存在しない場合には、直接ステップS307に進
み、描画処理を行った後、ステップS308で印刷終了
命令(ジョブ終了命令)を受け取ったか否か、または印
刷データが終了したか否かを判断し、印刷終了であれば
印別動作を終了する。印刷終了でなければステップS3
0lからの処理を繰り返す。
FIG. 3 shows a main process from the start to the end of the operation of the printing apparatus 1000. First, step S3
In step 01, the print data sent from the host computer 2000 is received and stored in the reception buffer 1101. Next, in step S302, the print data stored in the reception buffer is read out, and in step S30
In step 3, the command determination unit 1102 determines whether the print control command is an application name notification command. If the command is an application name notification command, the process proceeds to step S304, and the received application name is sequentially compared with the application list 1103a. In step S305, it is determined whether or not a matching application name exists in the application list. If there is, in step S306, the corresponding command analysis routine is switched to the optimization routine, and the drawing process in step S307 is performed. Proceed to. If the command received in step S303 is not an application name notification command, or step S30
If the application name received in step 5 does not exist in the application list, the flow directly advances to step S307 to perform drawing processing. Then, in step S308, it is determined whether or not a print end command (job end command) has been received. It is determined whether or not the data is completed, and if printing is completed, the marking operation is completed. If printing is not completed, step S3
The processing from 0l is repeated.

【0017】図4は図3で用いた描画処理(S307)
を示している。まずステップS401において、コマン
ド解析部1103でデータが排紙命令かどうかをチェッ
クし、排紙命令の場合はステップS406に進み処理を
行う。また、ステップS40lにおいて排紙命令でない
場合は、次に解析したコマンドが文字印字または図形描
画などペ―ジメモリへの展開処理のコマンドかどうかを
判別し(ステップS402)、そうでない場合はステッ
プS405に進み、そのコマンドに応じた処理を実行す
る。また、ステップS402からステップS403に進
んだ場合は、コマンド実行処理がしやすい形の中問コ―
ドを生成する。この中間コードを受けて、コマンド実行
部1104では、ぺ―ジメモリ1105ヘの展開処理を
行い(ステップS404)、1つの印字又は描画コマン
ドについての展開処理終了後、図3のステップS302
に戻り、デ―タの解析処理を繰り返す。ステップS40
1において排紙命令と判断された場合は、出カ制御部1
300においてページメモリ1105の内容をプリンタ
エンジン部1400に対するビデオ信号に変換して画像
転送出力する(ステップS406)。プリンタエンジン
部1400では、受け取ったビデオ信号を記録紙に永久
司視画像形成し印刷を行う(ステップS407)。そし
てステップS408で印刷された結果を排紙すると1ぺ
ージ当たりの印刷制御処理は終了する。
FIG. 4 is a drawing process used in FIG. 3 (S307).
Is shown. First, in step S401, the command analysis unit 1103 checks whether or not the data is a discharge command. If the data is a discharge command, the process advances to step S406 to perform processing. If it is determined in step S401 that the command is not a paper ejection command, it is determined whether the next analyzed command is a command for expanding the page memory such as character printing or graphic drawing (step S402). If not, the process proceeds to step S405. Then, the processing corresponding to the command is executed. Also, when the process proceeds from step S402 to step S403, the intermediate command code in a form that facilitates the command execution process is set.
Generate a code. In response to the intermediate code, the command execution unit 1104 performs development processing on the page memory 1105 (step S404). After completion of development processing for one print or drawing command, step S302 in FIG.
And repeat the data analysis process. Step S40
1, if it is determined that the command is a paper ejection command, the output control unit 1
In step 300, the contents of the page memory 1105 are converted into a video signal for the printer engine unit 1400 and the image is transferred and output (step S406). The printer engine unit 1400 forms a permanent visual image of the received video signal on recording paper and performs printing (step S407). When the result printed in step S408 is discharged, the print control process per page ends.

【0018】以上、印刷装置全体の動きを説明したが、
これらの処理は主にフォーマッタ制御部1100のコン
ピュ―タシステムによって実現される。
The operation of the entire printing apparatus has been described above.
These processes are mainly realized by the computer system of the formatter control unit 1100.

【0019】(実施形態2)図5は印刷装置1000の
動作の本実施形態における開始から終了までのメイン処
理を示している。図5におけるS501〜S509は各
処理ステップを示す。なお、図5中の描画処理について
は実施形態1と同様であるので説明は省略する。
(Embodiment 2) FIG. 5 shows the main processing from the start to the end of the operation of the printing apparatus 1000 in this embodiment. S501 to S509 in FIG. 5 indicate each processing step. Note that the drawing processing in FIG. 5 is the same as in the first embodiment, and a description thereof will not be repeated.

【0020】まずステップS50lでホストコンピュ―
タ2000から送られてくる印刷データの受けとりを行
ない、受信バッファ1101にストックする。次にステ
ップS502で受信バッファにストックされたコマンド
列を読み出し、ステップS503でコマンドの最適化判
定がされているか否かを判定する。最適化判定が未ださ
れていない場合はステップS504においてコマンド列
の転送方法から特徴を抽出する。具体的には座標パラメ
ータや領域の大きさの各コマンド間での相関関係などで
ある。そしてステップS505で抽出した特徴を、実施
形態1のアプリケーションリストにあたるテーブルのリ
ストと順次比較し、S506においてリスト中に一致す
る特徴があるか否かを判定する。ステップS506で―
致する特徴がある場合にはステップS507に進む。ス
デップS507では、リストに対応するコマンド処理ル
一チンを最適化ル―チンに切り替えた後、ステップS5
08の描画処理に進む。一方、ステップS503で既に
最適化判定されている場合、またはステップS506で
特徴の一致するリストが見つからない場合には、直接ス
テップS508に進み、描画処理を行なった後、ステッ
プS509で印刷終了命令を受けとったか否か、または
印刷データが終了したか否かを判断し、印刷終了であれ
ば印刷動作を終了する。印刷終了でなけれぱステップS
50lからの処理を繰り返す。
First, in step S501, the host computer
The print data sent from the printer 2000 is received and stored in the reception buffer 1101. Next, in step S502, the command sequence stored in the reception buffer is read, and in step S503, it is determined whether or not the command has been optimized. If the optimization has not been determined, features are extracted from the command string transfer method in step S504. More specifically, there is a correlation between each command of a coordinate parameter and a size of an area. Then, the features extracted in step S505 are sequentially compared with a list of a table corresponding to the application list in the first embodiment, and in step S506, it is determined whether there is a matching feature in the list. In step S506-
If there is a matching feature, the process proceeds to step S507. In step S507, after the command processing routine corresponding to the list is switched to the optimization routine, the process proceeds to step S5.
The process proceeds to drawing processing 08. On the other hand, if the optimization has already been determined in step S503, or if a list with matching features cannot be found in step S506, the process directly proceeds to step S508 to perform a drawing process, and then issues a print end command in step S509. It is determined whether or not the print data has been received, or whether or not the print data has been completed. If the print has been completed, the print operation ends. If printing is not completed, step S
The processing from 50 l is repeated.

【0021】図6、図7は最適化ルーチン(S306、
S506)による描画処理の最適化の一例を示す。最適
化ルーチンについては図12を参照して後で更に説明す
る。
FIGS. 6 and 7 show the optimization routine (S306,
An example of the optimization of the drawing processing by S506) will be described. The optimization routine will be further described later with reference to FIG.

【0022】例えぱ、図6に示されるようにアプリケー
ションにより多角形(矩形)を少しずつ座標をずらしな
がら描画するようなコマンド列が生成きれ転送されてき
た場合(a)、従来印刷装置側では、コマンドを順次解
析・実行するため、各多角形が個別に描画される
(b)。結局(d)に示される画像が得られる。本実施
形態ではアプリケーションの転送の特徴を予め認識し、
上記最適化ルーチンを通して最終的に得られる画像
(d)に影響を与えることなく一つの矩形を描画するコ
マンドに置き換える(c)。
For example, as shown in FIG. 6, when a command sequence that draws a polygon (rectangle) while shifting the coordinates little by little by an application is generated and transferred (a), the conventional printing apparatus side In order to sequentially analyze and execute the command, each polygon is individually drawn (b). Eventually, the image shown in (d) is obtained. In this embodiment, the characteristics of the application transfer are recognized in advance,
The image is replaced with a command for drawing one rectangle without affecting the image (d) finally obtained through the above optimization routine (c).

【0023】また、図7で示されるように、クリップ去
れる領域を変化させながら同じイメージデータを何度も
同じ場所に描画するようなコマンド列が転送されてきた
場合(a)、従来印刷装置側では、各コマンド列に忠実
に従った描画がなきれる(b)。本実施形態では、最終
的に得られる画像(d)に影響を与えることなく最適化
ル―チンを通してクリップされる領域のイメージを描画
するコマンドに変換される(c)。同図において、描画
命令によって画像デ―タが送られてくる領域(図の破線
の矩形部分)のうち、クリッビング命令によって特定さ
れる領域(図の実線の矩形部分)にのみ実際の描画が行
われる。
As shown in FIG. 7, when a command string that draws the same image data in the same place many times while changing the area to be clipped is transferred (a), the conventional printing apparatus is used. On the side, drawing in accordance with each command sequence cannot be performed (b). In the present embodiment, the image is converted into a command for drawing an image of an area to be clipped through the optimization routine without affecting the finally obtained image (d) (c). In the figure, the actual drawing is performed only in the area specified by the clipping command (solid rectangular part in the figure), out of the area where the image data is sent by the drawing command (dashed rectangular part in the figure). Will be

【0024】上述した実施形態1、2では、受信された
コマンドを最適化ルーチンにおいて変換した後に中間コ
ードに変換したが、受信されたコマンドから最適化され
た中間コードを生成するようにしてもよいし、或いは、
受信されたコマンドを中間コードに変換した後、中間コ
ードを最適化するようにしてもよい。
In the first and second embodiments, the received command is converted into an intermediate code after being converted in the optimization routine. However, an optimized intermediate code may be generated from the received command. Or
After converting the received command into an intermediate code, the intermediate code may be optimized.

【0025】(実施形態3)図8は本発明の実施形態3
を示すプリンタ制御システムの構成を説明するブロック
図である。ここでは、レ一ザビ―ムプリンタ(図1)を
例にして説明する。なお、本発明の機能が実行きれるの
であれば、単体の機器であっても、複数の機器からなる
システムであっても、LAN等ネットワ―クを介して処
理が行われるシステムであっても本発明を適用できるこ
とは言うまでもない。
(Embodiment 3) FIG. 8 shows Embodiment 3 of the present invention.
FIG. 1 is a block diagram illustrating a configuration of a printer control system. Here, a laser beam printer (FIG. 1) will be described as an example. As long as the functions of the present invention can be performed, 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. It goes without saying that the invention can be applied.

【0026】図7において、3000はホストコンピュ
―タで、ROM3のプログラム用ROMに記憶された文
書処理プログラム等に基づいて図形、イメ―ジ、文字、
表(表計算等を含む)等が混在した文書処理を実行する
CPU1を備え、システムデバイス4に接続きれる各デ
バイスをCPU1が総括的に制御する。また、このRO
M3のプログラム用ROMには、CPU1の制御プログ
ラム等を記憶し、ROM3のフォント用ROMには上記
文書処理の際に使用するフォントデータ等を記憶し、R
OM3のデ―タ用ROMは上記文書処理等を行う際に使
用する各種データを記憶する。2はRAMで、CPU1
の主メモリ。ワ―クエリア等として機能する。5はキー
ポードコントロ―ラ(KBC)で、キーポ―ド9や不図
示のポインティングデバイスからのキー入力を制御す
る。6はCRTコントロ―ラ(CRTC)で、CRTデ
ィスプレイ(CRT)10の表示を制御する。7はメモ
リコントロ―ラ(MC)で、ブ―トプログラム,種々の
アプリケ―ション。フォントデータ,ユ―ザファイル。
編集ファイル等を記憶するハードディスク(HD)、フ
ロッビーディスク(FD)等の外部メモリ11とのアク
セスを制御する。8はプリンタコントロ―ラ(PRT
C)で、所定の双方向性インタフェース(インタフェー
ス)21を介してプリンタ1000に接続されて、プリ
ンタ1000との通信制御処理を実行する。なお、CP
U1は、例えばRAM2上に設定きれた表示情報RAM
へのアウトラインフォントの展開(ラスタライズ)処理
を実行し、CRT10上でのWYSIWYGを可能とし
ている。また、CPU1は、CRT10上の不図示のマ
ウスカーソル等で指示きれたコマンドに基づいて登録さ
れた種々のウインドウを開き、種々のデ―タ処理を実行
する。プリンタ1000において、12はプリンタCP
Uで、ROM13のプログラム用ROMに記憶きれた制
御プログラム等或いは外部メモリ14に記憶された制御
プログラム等に基づいてシステムバス15に接続される
各穣のデバイスとのアクセスを総括的に制御し印刷部イ
ンタフェース16を介して接続きれる印刷部(プリンラ
エンジン)17に出力情報としての画像信号を出力す
る。
In FIG. 7, reference numeral 3000 denotes a host computer, which is based on a document processing program or the like stored in the program ROM of the ROM 3, and is used to store figures, images, characters, and the like.
The system is provided with a CPU 1 that executes document processing in which tables (including spreadsheets and the like) are mixed, and the CPU 1 comprehensively controls each device that can be connected to the system device 4. Also, this RO
The control program of the CPU 1 is stored in the program ROM of M3, the font data and the like used in the document processing are stored in the font ROM of the ROM 3,
The data ROM of the OM3 stores various data used when performing the above-described document processing and the like. 2 is a RAM, a CPU 1
Main memory. Functions as a work area. Reference numeral 5 denotes a keyboard controller (KBC) which controls a key input from a keyboard 9 or a pointing device (not shown). Reference numeral 6 denotes a CRT controller (CRTC) which controls the display on a CRT display (CRT) 10. Reference numeral 7 denotes a memory controller (MC) for a boot program and various applications. Font data, user files.
It controls access to an external memory 11 such as a hard disk (HD) or a floppy disk (FD) for storing edited files and the like. 8 is a printer controller (PRT)
In C), the printer 1000 is connected to the printer 1000 via a predetermined bidirectional interface (interface) 21 and executes communication control processing with the printer 1000. Note that CP
U1 is a display information RAM set on RAM2, for example.
The rasterization process of the outline font on the CRT 10 is performed to enable WYSIWYG on the CRT 10. Further, the CPU 1 opens various registered windows based on commands specified by a mouse cursor or the like (not shown) on the CRT 10 and executes various data processing. In the printer 1000, reference numeral 12 denotes a printer CP.
In U, printing is performed by comprehensively controlling access to 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 or the like stored in the external memory 14. It outputs an image signal as output information to a printing unit (pudding engine) 17 that can be connected via the unit interface 16.

【0027】また、このROM13のプログラムROM
には、実施形態1又は実施形態2のフローチャートで示
きれるようなCPU12の制御プログラム等を記憶して
も良い。
The program ROM of the ROM 13
May store a control program of the CPU 12 as shown in the flowchart of the first embodiment or the second embodiment.

【0028】ROM13のフォント用ROMには上記由
力情報を生成する際に使用するフォントデータ等を記憶
し、ROM13のデ―タ用ROMにはハ―ドディスク等
の外部メモリ14が無いプリンタの場合には、ホストコ
ンピュータ上で利用きれる情報等を記憶している。CP
U12は入力部18を介してホストコンピュータとの通
信処理が司能となっており、プリンタ内の情報等をホス
トコンピュ―タ3000に通知可能に構成されている。
19はCPU12の主メモリ、ワ―クエリア等として機
能するRAMで、図示しない増設ポートに接続されるオ
プションRAMによりメモリ容量を拡張することができ
るように構成されている。なお、RAM19は、出力情
報展開領域、環境デ―タ格納領域、NVRAM等に用い
られる。前述したハ―ドディスク(HD)、ICカ―ド
等の外部メモリ14は、メモリコントロ―ラ(MC)2
0によりアクセスを制御される。外部メモリ14は、オ
プションとして接続され、フォントデータ、エミュレー
ションプログラム、フォームデ―タ等を記憶する。ま
た、18は前述した操作バネルで操作のためのスイッチ
およぴLED表示器等が配されている。また、前述した
外部メモリは1個に限らず、少なくとも1個以上備え、
内蔵フォントに加えてオプションフォントカ―ド、言語
系の異なるプリンタ制御言語を解釈するプログラムを格
納した外部メモリを複致接続できるように構成きれてい
ても良い。さらに、図示しないNVRAMを有し、操作
パネル1012からのプリンタモ―ド設定憶報を記憶す
るようにしても良い。
The font ROM of the ROM 13 stores font data and the like used for generating the force information, and the data ROM of the ROM 13 has a printer ROM which does not have the external memory 14 such as a hard disk. In this case, information and the like that can be used on the host computer are stored. CP
U12 is responsible for communication processing with the host computer via the input unit 18, and is configured to be able to notify the host computer 3000 of information and the like in the printer.
Reference numeral 19 denotes a RAM that functions as a main memory, a work area, and the like of the CPU 12, and is configured so that the memory capacity can be expanded by an optional RAM connected to an expansion port (not shown). The RAM 19 is used for an output information development area, an environment data storage area, an NVRAM, and the like. The external memory 14 such as the above-mentioned hard disk (HD), IC card or the like is provided with a memory controller (MC) 2
0 controls access. The external memory 14 is connected as an option and stores font data, emulation programs, form data, and the like. Reference numeral 18 denotes the above-mentioned operation panel in which switches for operation and an LED display are arranged. Further, the above-mentioned external memory is not limited to one, and at least one or more is provided,
In addition to the built-in fonts, an optional font card and an external memory storing a program for interpreting a printer control language of a different language may be configured so as to be connectable multiple times. Furthermore, an NVRAM (not shown) may be provided to store printer mode setting information from the operation panel 1012.

【0029】次にこのように構成された印刷システムに
おいて、通常のイメージ印刷処理の概要図を図9に示
す。
Next, FIG. 9 shows a schematic diagram of a normal image printing process in the printing system configured as described above.

【0030】プリンタ1000はイメージの描画もクリ
ッピングも可能である。このようなプリンタ1000に
対し、ホストコンピュータ上のアプリケーションからイ
メージの印刷を行う場合を例としている。まず、アプリ
ケーションからイメージ描画コマンド813やクリップ
コマンド814等であらわされた出力オブジェクトが渡
される。ホスト/印刷制御プログラム(プリンタドライ
バ)810はそのオブジェクトをプリンタの制御表現に
変換する。前述の通りプリンタ1000はイメージ描画
およびクリッピング可能であるので、アプリケーション
812が印刷要求したイメージ描画コマンド813やク
リップコマンド814はプリンタの制御表現のイメージ
描画コマンド815やクリップコマンド816に変換さ
れプリンタに転送される。そしてプリンタ1000で印
刷が行われるのが一般的である。
The printer 1000 is capable of both drawing and clipping images. The case where an image is printed from an application on a host computer to such a printer 1000 is described as an example. First, an output object represented by an image drawing command 813, a clip command 814, or the like is passed from the application. The host / print control program (printer driver) 810 converts the object into a control representation of the printer. As described above, since the printer 1000 can perform image drawing and clipping, the image drawing command 813 and the clip command 814 requested by the application 812 to be printed are converted into the image drawing command 815 and the clip command 816 of the control expression of the printer and transferred to the printer. You. In general, printing is performed by the printer 1000.

【0031】本実施形態では実施形態1および実施形態
2における描画処理の最適化をホストコンビュータ側で
行なう。以下本実施形態における全体の印刷制御処理手
段を図10に示すフローチャートを参照しながら説明す
る。図10におけるS801〜S808は各処理ステッ
プを示す。
In this embodiment, the host computer optimizes the drawing processing in the first and second embodiments. Hereinafter, the entire print control processing means in the present embodiment will be described with reference to the flowchart shown in FIG. S801 to S808 in FIG. 10 indicate each processing step.

【0032】図10はホストコンピュータ3000の印
刷開始から終了までのメイン処理を示す。まずステップ
S801でアプリケ―ションから描画デ―タを受けと
り、ステップS802で描画デ―タをまずバッファリン
グする。次にステップS803でデータが最適化を適用
すべき種類のデータであるか否かを判断し、最適化すべ
き種類のデ―タである場合にはさらにステップS804
において同じコマンド列の繰り返しが終了したか、また
は闘値までバッファリングが繰り返されたかを判定し、
どちらも否である場合にはステップS80lからの処理
を繰り返す。ステッップS804において同じコマンド
列の繰り返Lが終了したか、または闘値までバッファリ
ングが繰り返きれたならばステップS805において最
適化処理を行なう。ここでの最適化処理については後述
する。その後、最適化されたデータをステップS806
でプリンタコマンドに変換する。―方、ステップS80
3で最適化を適用すべきデータではないと判断された場
合には、直接ステップS806に進み、デ―タをプリン
タコマンドに変換した後、ステップS807で印刷装置
に転送する。その後、ステップS808に進み、アプリ
ケーションからの描画デ―タが終了したか否かを判断
し、描画デ―タが終了していれば処理を終了し、描画デ
―タが終了していなければステップS801に戻って処
理を繰り返す。
FIG. 10 shows the main processing of the host computer 3000 from the start to the end of printing. First, in step S801, drawing data is received from the application, and in step S802, the drawing data is first buffered. Next, in step S803, it is determined whether or not the data is of a type to which optimization is to be applied. If the data is of a type to be optimized, step S804 is performed.
To determine whether the same command sequence has been repeated or buffering has been repeated up to the threshold value,
If neither is the case, the processing from step S801 is repeated. If the repetition L of the same command sequence has been completed in step S804, or if buffering has been repeated up to the threshold value, optimization processing is performed in step S805. The optimization processing here will be described later. Thereafter, the optimized data is stored in step S806.
To convert to printer command. -Way, step S80
If it is determined in step 3 that the data is not data to which optimization is to be applied, the process directly proceeds to step S806, where the data is converted into a printer command, and then transferred to the printing apparatus in step S807. After that, the process advances to step S808 to determine whether or not the drawing data from the application has been completed. If the drawing data has been completed, the process ends. If the drawing data has not been completed, the process proceeds to step S808. Returning to S801, the process is repeated.

【0033】イメージ印刷処理における最適化の概要例
を図11に、フローチャートを図12に示す。
FIG. 11 shows a schematic example of optimization in the image printing process, and FIG. 12 shows a flowchart.

【0034】図9と同様、プリンタ1000はイメージ
の描画もクリッピングも可能である。このようなプリン
タ1000に対し、ホストコンピュータ上のアプリケー
ション822からイメージの印刷を行う場合を例として
いる。まず、アプリケーションからイメージの印刷要求
があると、イメージ描画コマンド823やクリップコマ
ンド824等であらわされた出力オブジェクトが渡され
る。ホスト/印刷制御プログラム(プリンタドライバ)
810はそのオブジェクトをプリンタの制御表現に変換
するわけであるが、この図11の場合クリップコマンド
824がイメージ描画コマンド823のイメージ描画領
域のごく一部にあたるとする。ホスト/印刷制御プログ
ラム810は描画イメージとクリップオブジェクトの属
性を比較し、図の通りクリップの方がかなり小さいと判
断できる。この場合、プリンタにクリップをかけその後
描画イメージを描画する方法をとると描画イメージデー
タの多くは描画結果に影響を与えないがプリンタ100
0に転送されることになる。そこで、プリンタ制御表現
への変換の際、クリップに相当する領域のみをイメージ
より取り出し、かつ幅高はクリップのものに差し替える
ようなプリンタへの制御表現の変換をおこなう。また、
この時点ではプリンタ制御表現への変換をすぐに行わ
ず、イメージの取り出しを行い入力データの形式のまま
保持しておき、次にこの出力ルーチンが呼ばれた時点で
連続性の比較を行う(パレット、色の深さ、描画位置
等...)。連続性がなければこの時点でプリンタ制御表
現に変換し出力するが、連続性がある場合は積み込を繰
り返す。結果プリンタの制御表現になった描画イメージ
825をえる。クリッピングオブジェクトはプリンタの
制御表現に直接変換されない。
As in FIG. 9, the printer 1000 is capable of both drawing and clipping images. The case where an image is printed from the application 822 on the host computer to such a printer 1000 is taken as an example. First, when an application requests printing of an image, an output object represented by an image drawing command 823, a clip command 824, or the like is passed. Host / print control program (printer driver)
Reference numeral 810 converts the object into a control expression of the printer. In FIG. 11, it is assumed that the clip command 824 corresponds to a very small part of the image drawing area of the image drawing command 823. The host / print control program 810 compares the attributes of the drawing image and the clip object, and can determine that the clip is considerably smaller as shown in the figure. In this case, if a method of drawing a drawing image by applying a clip to the printer is adopted, most of the drawing image data does not affect the drawing result.
0 will be transferred. Therefore, at the time of conversion to the printer control expression, only the area corresponding to the clip is extracted from the image, and the control expression is converted to the printer such that the width and height are replaced with those of the clip. Also,
At this time, the conversion to the printer control expression is not performed immediately, the image is taken out and kept in the input data form, and then the continuity is compared when this output routine is called (palette). , Color depth, drawing position etc ...). If there is no continuity, it is converted to a printer control expression at this point and output. If there is continuity, loading is repeated. As a result, a drawing image 825 that is a control expression of the printer is obtained. Clipping objects are not converted directly to the printer's control representation.

【0035】実施形態1では、印刷装置にアプリケ―シ
ョン名を転送していたが、処理を切り替えられる―種の
トリガ一であれば他の信号でも良い。
In the first embodiment, the application name is transmitted to the printing apparatus. However, other signals may be used as long as the processing can be switched.

【0036】また、実施形態1は複数のアブリケ―ショ
ンのデ―タ転送の特徴を予め情報として保持しておくた
めにテ―プルを内蔵しているが、ターゲットとするアプ
リケ―ションが少数の場合にはテ―ブルを持たずに最適
化すべきか否かを判断することも可能である。
Although the first embodiment has a built-in tape for preliminarily holding the characteristics of data transfer of a plurality of publications as information, a small number of applications are targeted. In this case, it is possible to determine whether or not to optimize without having a table.

【0037】同様に実施形態2では、コマンド列の特徴
をテ―ブルに持っているが、テ―プルを用いずに最適化
の可否を判断してもよい。
Similarly, in the second embodiment, the characteristics of the command sequence are included in the table, but it is also possible to determine whether optimization is possible without using the tape.

【0038】実施形態3では、コマンド列が繰り返きれ
ている間は最適化をひとまとめにしているが、予めアブ
リケーション名が判っている場合にはアプリケーション
の特徴によって、複数のコマンド列をバッファリング
し、複数の最適化処理を行なってもよい。
In the third embodiment, the optimization is collectively performed while the command sequence is repeated. However, when the publication name is known in advance, a plurality of command sequences are buffered depending on the characteristics of the application. However, a plurality of optimization processes may be performed.

【0039】図13は、本実施の形態のホストコンピュ
ータ3000に外部メモリであるフロッピーディスク
(FD:記憶媒体)を装填し、そのディスクに記憶され
ているプログラムをホストコンピュータ3000にロー
ドする様子を示す概念図である。
FIG. 13 shows a state in which a floppy disk (FD: storage medium) as an external memory is loaded into the host computer 3000 of the present embodiment, and a program stored in the disk is loaded into the host computer 3000. It is a conceptual diagram.

【0040】図14は、図13の記憶媒体の1例である
FDのメモリマップを示す図である。
FIG. 14 is a diagram showing a memory map of an FD which is an example of the storage medium of FIG.

【0041】999はディレクトリー情報を記憶してあ
る領域で、以降のプリンタドライバテーブル998の記
憶場所を示している。更には、各プリンタ及び各プリン
タドライバに対応して、例えばプリンタの制御するため
のプログラム等の記憶場所997や、更にそのプリンタ
の構成の情報1等の記憶場所996を示している。ホス
トコンピュータ3000の操作者が前記FDの記憶内容
から所望のインストールしたいプリンタ名をKB9によ
り指示することにより、前述のテーブル998を参照し
てロードする。例えばプリンタ名XXXを指示したとす
ると、領域997及び996に記憶されたプログラム及
び構成情報をホストコンピュータ3000内にロードさ
せることができる。
Reference numeral 999 denotes an area storing directory information, which indicates a storage location of the printer driver table 998 thereafter. Further, corresponding to each printer and each printer driver, a storage location 997 such as a program for controlling the printer and a storage location 996 such as information 1 of the configuration of the printer are shown. The operator of the host computer 3000 designates a desired printer name to be installed from the storage contents of the FD by using the KB 9, and loads with reference to the table 998 described above. For example, if the user designates the printer name XXX, the program and configuration information stored in the areas 997 and 996 can be loaded into the host computer 3000.

【0042】尚、本発明は複数の機器から構成されるシ
ステムに適用しても、1つの機器からなる装置に適用し
てもよい。また、本発明はシステム或は装置にプログラ
ムを供給することによって実施される場合にも適用でき
ることは言うまでもない。この場合、本発明にかかるプ
ログラムを格納した記憶媒体が、本発明を構成すること
になる。そして、該記憶媒体からそのプログラムをシス
テム或は装置に読み出すことによって、そのシステム或
は装置が、予め定められたし方で動作する。
The present invention may be applied to a system composed of a plurality of devices or an apparatus composed of one device. Needless to say, the present invention can be applied to a case where the present invention is implemented by supplying a program to a system or an apparatus. In this case, the storage medium storing the program according to the present invention constitutes the present invention. Then, by reading the program from the storage medium to a system or an apparatus, the system or the apparatus operates in a predetermined manner.

【0043】前述した実施形態の機能を実現するソフト
ウェアのプログラムコードを記録した記憶媒体を、シス
テムあるいは装置に供給し、そのシステムあるいは装置
のコンピュータ(またはCPUやMPU)が記憶媒体に
格納されたプログラムコードを読出し実行することによ
っても、本発明の目的が達成される。この場合、記憶媒
体から読出されたプログラムコード自体が本発明の新規
な機能を実現することになり、そのプログラムコードを
記憶した記憶媒体は本発明を構成することになる。
A storage medium storing a program code of software for realizing the functions of the above-described embodiments is supplied to a system or apparatus, and a computer (or CPU or MPU) of the system or apparatus stores the program stored in the storage medium. The object of the present invention is also achieved by reading and executing the code. In this case, the program code itself read from the storage medium implements the novel function of the present invention, and the storage medium storing the program code constitutes the present invention.

【0044】プログラムコードを供給するための記憶媒
体としては、例えば、フロッピーディスク、ハードディ
スク、光ディスク、光磁気ディスク、CDーROM,C
D−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, C
DR, magnetic tape nonvolatile memory card, ROM, and the like can be used.

【0045】また、コンピュータが読出したプログラム
コードを実行することにより、前述した実施形態の機能
が実現されるだけでなく、そのプログラムコードの指示
に基づき、コンピュータ上で稼働しているOSなどが実
際の処理の一部または全部を行い、その処理によって前
述した実施形態の機能が実現される場合も含まれる。
When the computer executes the readout program code, not only the functions of the above-described embodiment are realized, but also the OS or the like running on the computer is actually executed based on the instructions of the program code. Or a part of the entire process is performed, and the function of the above-described embodiment is realized by the process.

【0046】さらに、記憶媒体から読出されたプログラ
ムコードが、コンピュータに挿入された機能拡張ボード
やコンピュータに接続された機能拡張ユニットに備わる
メモリに書込まれた後、そのプログラムコードの指示に
基づき、その機能拡張ボードや機能拡張ユニットに備わ
る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 instructions of the program code, The case where the CPU of the function expansion board or the function expansion unit performs part or all of the actual processing, and the function of the above-described embodiment is realized by the processing.

【0047】[0047]

【発明の効果】以上説明したように、本発明によれば、
印刷デ―タの特徴に応じて冗長な印刷デ―タを最適化す
ることにより、描画処理を効率化し、高速な印刷が可能
となる。また、印刷装置が必要とするメモリを節約でき
るため、メモリ不足による描画不能を防止し、製品コス
トを押えることができる。
As described above, according to the present invention,
By optimizing the redundant print data according to the characteristics of the print data, the drawing process is made more efficient, and high-speed printing becomes possible. Further, since the memory required by the printing apparatus can be saved, it is possible to prevent drawing failure due to lack of memory, and to reduce product cost.

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

【図1】実施形態lのレ―ザビ―ムプリンタの構遺を示
す側断面図である。
FIG. 1 is a side sectional view showing a structure of a laser beam printer according to a first embodiment.

【図2】実施形態lによる印刷装置の基本構成を示すプ
ロック図である。
FIG. 2 is a block diagram illustrating a basic configuration of a printing apparatus according to a first embodiment.

【図3】実施形態lの印刷制御手順を示すフロ―チャー
トである。
FIG. 3 is a flowchart illustrating a print control procedure according to the first embodiment.

【図4】図3に示した描画処理の手順を示すフロ―チャ
ートである。
FIG. 4 is a flowchart showing a procedure of a drawing process shown in FIG. 3;

【図5】実施形態2による印刷装置の基本構成を示すブ
ロック図である。
FIG. 5 is a block diagram illustrating a basic configuration of a printing apparatus according to a second embodiment.

【図6】実施形態による描画デ―タ最適化の一例を示す
図である。
FIG. 6 is a diagram showing an example of drawing data optimization according to the embodiment.

【図7】描画データの最適化の一例を示す図である。FIG. 7 is a diagram illustrating an example of optimization of drawing data.

【図8】実施形態3によるプリンタ制御システムの構成
を示すブロック図である。
FIG. 8 is a block diagram illustrating a configuration of a printer control system according to a third embodiment.

【図9】イメージ印刷処理の概要図である。FIG. 9 is a schematic diagram of an image printing process.

【図10】実施形態3による印刷制御手順を示すフロ―
チャートである。
FIG. 10 is a flowchart showing a print control procedure according to a third embodiment.
It is a chart.

【図11】本発明に特徴的なイメージ印刷処理の概要図
である。
FIG. 11 is a schematic diagram of an image printing process characteristic of the present invention.

【図12】最適化処理の一例のフローチャートである。FIG. 12 is a flowchart illustrating an example of an optimization process.

【図13】本実施の形態の制御プログラムをコンピュー
タ3000にダウンロードする様子を示す図である。
FIG. 13 is a diagram illustrating a manner in which a control program according to the present embodiment is downloaded to a computer 3000.

【図14】本実施の形態のプリンタ制御システムにおけ
る記憶媒体のメモリマップを示す図である。
FIG. 14 is a diagram showing a memory map of a storage medium in the printer control system according to the embodiment.

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

1000 LBP本体 1011 受信バッファ 1103 コマンド解析部 1103a アプリケーションリスト 1103b 最適化ルーチン 1104 コマンド実行部 1105 ページメモリ 1300 出力制御部 1400 プリンタエンジン部 1000 LBP main unit 1011 reception buffer 1103 command analysis unit 1103a application list 1103b optimization routine 1104 command execution unit 1105 page memory 1300 output control unit 1400 printer engine unit

Claims (24)

【特許請求の範囲】[Claims] 【請求項1】 ホストコンピュータ上のアプリケーショ
ンが画像出力のために生成した出力データを処理する画
像処理装置において、前記アプリケーションが生成した
複数の描画データをバッファリングするバッファリング
手段と、前記バッファリング手段にバッファリングされ
た複数の描画データを一つにまとめる最適化手段と、を
具備することを特徴とする画像処理装置。
1. An image processing apparatus for processing output data generated for image output by an application on a host computer, wherein the buffering means buffers a plurality of drawing data generated by the application. And an optimizing means for combining a plurality of pieces of drawing data buffered in the image data into one.
【請求項2】 請求項1記載の画像処理装置を具備する
印刷装置。
2. A printing apparatus comprising the image processing apparatus according to claim 1.
【請求項3】 請求項1記載の画像処理装置を具備する
ホストコンビュ―タ。
3. A host computer comprising the image processing device according to claim 1.
【請求項4】 印刷データを生成するアプリケーション
の種類によって前記最適化手段を使用するか否かを決定
する手段を有することを特徴とする請求項1記載の画像
処理装置。
4. The image processing apparatus according to claim 1, further comprising a unit that determines whether to use the optimizing unit according to a type of an application that generates print data.
【請求項5】 請求項1記載の画像処理装置において、
さらに複数の描画データの特徴を抽出する手段と、抽出
した特徴によって前記最適化手段を使用するか否かを決
定する手段を有することを特徴とする請求項1記載の画
像処理装置。
5. The image processing apparatus according to claim 1, wherein
2. The image processing apparatus according to claim 1, further comprising: means for extracting characteristics of a plurality of drawing data; and means for determining whether to use the optimizing means based on the extracted characteristics.
【請求項6】 請求項4記載の画像処理装置において、
前記決定手段は、さらにアプリケーション識別データと
描画コマンドおよび最適化ルーチンのテーブルを具備す
ることを特徴とする画像処理装置。
6. The image processing apparatus according to claim 4, wherein
The image processing apparatus according to claim 1, wherein the determining unit further includes a table of application identification data, a drawing command, and an optimization routine.
【請求項7】 請求項1記載の印刷システムにおいて、
さらに描画コマンドと最適化ルーチンのテーブルを具備
することを特徴とする画像処理装置。
7. The printing system according to claim 1, wherein
An image processing apparatus further comprising a table of a drawing command and an optimization routine.
【請求項8】 前記最適化手段は、画像データ、そのデ
ータの描画指示、及び描画すべき位置データを含む第1
の描画データと、クリップ指示及びクリッピングされる
べき領域データを含む第2の描画データとを、第3の描
画データに変換することを特徴を有する請求項1記載の
画像処理装置。
8. The image processing apparatus according to claim 1, wherein the optimizing unit includes a first data including image data, a drawing instruction of the data, and position data to be drawn.
2. The image processing apparatus according to claim 1, wherein said drawing data and said second drawing data including a clip instruction and area data to be clipped are converted into third drawing data.
【請求項9】 前記最適化手段はクリッピングされるべ
き領域が画像データの描画領域内にあるとき、クリピン
グ領域内の描画データ、その画像データの描画指示、及
びクリッピング領域を示す位置データとを含む第3の描
画データに変換することを特徴とする請求項1記載の画
像処理装置。
9. When the region to be clipped is within the drawing region of the image data, the optimizing means includes drawing data in the clipping region, a drawing instruction of the image data, and position data indicating the clipping region. 2. The image processing apparatus according to claim 1, wherein the image data is converted into third drawing data.
【請求項10】 前記最適化手段は、塗りつぶしの指示
及び塗りつぶすべき領域データを含む複数の描画データ
を塗りつぶしの指示及び前記各描画データの領域データ
を合成した領域データを含む描画データに変換すること
を特徴とする請求項1記載の画像処理装置。
10. The optimizing means converts a plurality of pieces of drawing data including a filling instruction and area data to be filled into drawing data including area data obtained by combining a filling instruction and area data of each drawing data. The image processing apparatus according to claim 1, wherein:
【請求項11】 ホストコンピュータ上のアプリケーシ
ョンが画像出カのために生成した複数の描画デ―タをバ
ッファリングし、バッファリングされた複数の描画デー
タを一つの描画デ―タにより記述できるか否かを判断
し、一つの描画データにより記述できると判断された場
合、バッファリングきれた複数の描画デ―タを1つの描
画デ―タに変換することを特徴とする画像処理方法。
11. An application on a host computer buffers a plurality of drawing data generated for outputting an image, and determines whether a plurality of buffered drawing data can be described by one drawing data. An image processing method for converting a plurality of buffered drawing data into one drawing data when it is determined that the drawing data can be described by one drawing data.
【請求項12】 更に変換された描画データに基づいて
プリントするステップを有する請求項11に記載の画像
処理方法。
12. The image processing method according to claim 11, further comprising the step of printing based on the converted drawing data.
【請求項13】 更に変換された描画データをプリンタ
に出力するステップを有する請求項11記載の画像処理
方法。
13. The image processing method according to claim 11, further comprising the step of outputting the converted drawing data to a printer.
【請求項14】 印刷データを生成するアプリケーショ
ンの種類によって前記変換ステップを実行するか否かを
決定するステップを有することを特徴とする請求項11
記載の画像処理方法。
14. The method according to claim 11, further comprising the step of determining whether or not to execute the conversion step according to the type of an application that generates print data.
The image processing method described in the above.
【請求項15】 請求項14の画像処理方法において、
さらに複数の描画データの特徴を抽出するステップと、
抽出した特徴によって最適化するか否かを決定するステ
ップを有することを特徴とする画像処理方法。
15. The image processing method according to claim 14,
Extracting a plurality of features of the drawing data;
An image processing method comprising the step of deciding whether or not to optimize based on extracted features.
【請求項16】 請求項14記載の画像処理方法におい
て、前記決定ステップでアプケーション識別データと描
画コマンドおよぴ最適化ルーチンのテーブルを用いて決
定することを特徴とする画像処理装置。
16. The image processing method according to claim 14, wherein in the determining step, the determination is made using a table of application identification data, a drawing command, and an optimization routine.
【請求項17】 請求項14記載の画像処理方法におい
て、さらに描画コマンドと最適化ルーチンのテーブルを
用いることを具備することを特徴とする画像処理装置。
17. The image processing method according to claim 14, further comprising using a table of a drawing command and an optimization routine.
【請求項18】 前記変換ステップでは、画像データ、
そのデータの描画指示、及び描画すべき位置データを含
む第1の描画データと、クリップ指示及びクリッピング
されるべき領域データを含む第2の描画データとが、第
3の描画データに変換される特徴を有する請求項11記
載の画像処理方法。
18. The method according to claim 18, wherein the converting step includes the steps of:
A feature that first drawing data including a drawing instruction of the data and position data to be drawn and second drawing data including a clip instruction and area data to be clipped are converted into third drawing data. The image processing method according to claim 11, further comprising:
【請求項19】 前記変換ステップでは画像データ、そ
の画像データの描画指示、及び描画すべき位置データを
含む第1の描画データとクリッピング指示及びクリピン
グされるべき領域データを含む第2の描画データとが、
第3の描画データに変換される特徴を有する請求項11
記載の画像処理方法。
19. In the conversion step, first drawing data including image data, a drawing instruction of the image data, and position data to be drawn, second drawing data including a clipping instruction and area data to be clipped, and But,
12. The image forming apparatus according to claim 11, wherein the image data is converted into third drawing data.
The image processing method described in the above.
【請求項20】 前記変換ステップでは、塗りつぶしの
指示及び塗りつぶすべき領域データを含む複数の描画デ
ータが塗りつぶしの指示及び前記各描画データの領域デ
ータを合成した領域データを含む描画データに変換され
る特徴を有する請求項11記載の画像処理方法。
20. A method according to claim 1, wherein in the converting step, a plurality of pieces of drawing data including a filling instruction and area data to be filled are converted into drawing data including area data obtained by combining a filling instruction and area data of each drawing data. The image processing method according to claim 11, further comprising:
【請求項21】 請求項11に記載されたの処理ステッ
プを制御する工程を含む、コンピュータが読むことがで
きるプログラムを格納した記憶媒体。
21. A storage medium storing a computer-readable program, comprising a step of controlling the processing steps of claim 11.
【請求項22】 請求項14に記載されたの処理ステッ
プを制御する工程を含む、コンピュータが読むことがで
きるプログラムを格納した記憶媒体。
22. A storage medium storing a computer-readable program, comprising a step of controlling the processing steps of claim 14.
【請求項23】 前記記憶媒体は、前記出力機器に着脱
可能であることを特徴とする請求項22記載の記憶媒
体。
23. The storage medium according to claim 22, wherein the storage medium is detachable from the output device.
【請求項24】 前記記憶媒体は、CD−ROMあるい
は、フロッピーディスクであることを特徴とする請求項
22記載の記憶媒体。
24. The storage medium according to claim 22, wherein said storage medium is a CD-ROM or a floppy disk.
JP00868698A 1997-01-20 1998-01-20 Print control apparatus, print control method, and storage medium storing print control program Expired - Fee Related JP3996990B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP00868698A JP3996990B2 (en) 1997-01-20 1998-01-20 Print control apparatus, print control method, and storage medium storing print control program

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP756197 1997-01-20
JP9-7561 1997-01-20
JP00868698A JP3996990B2 (en) 1997-01-20 1998-01-20 Print control apparatus, print control method, and storage medium storing print control program

Publications (2)

Publication Number Publication Date
JPH10260805A true JPH10260805A (en) 1998-09-29
JP3996990B2 JP3996990B2 (en) 2007-10-24

Family

ID=26341883

Family Applications (1)

Application Number Title Priority Date Filing Date
JP00868698A Expired - Fee Related JP3996990B2 (en) 1997-01-20 1998-01-20 Print control apparatus, print control method, and storage medium storing print control program

Country Status (1)

Country Link
JP (1) JP3996990B2 (en)

Also Published As

Publication number Publication date
JP3996990B2 (en) 2007-10-24

Similar Documents

Publication Publication Date Title
JP3634447B2 (en) Image processing apparatus and method
EP0684546A1 (en) Printing apparatus, printing system, and a method for acquiring character resources of the printing system
JP2004192390A (en) Data processor
JPH10278362A (en) Apparatus and method for controlling printing and printing system
JP2000099291A (en) Print controller, data processing method for the same and storage medium storing computer readable program
JP3996990B2 (en) Print control apparatus, print control method, and storage medium storing print control program
JPH08267867A (en) Printing apparatus
JP2004038527A (en) Printer driver, printing control method, computer-readable storage medium, and program
JPH08234949A (en) Image processor and drawing method therefor
JP2004030386A (en) Image processing method and image processor
JP3576622B2 (en) Image output apparatus and method and printing system
JP3173716B2 (en) Output device, information processing system and data output method
JP2001347708A (en) Apparatus and method for outputting image and storage medium
JPH1124863A (en) Print control device and method, and storage medium storing computer readable program
JP3387796B2 (en) Print control device and data processing method of print control device
JP2003050683A (en) Image processor and image processing method its program and storage medium
JP2006159458A (en) Image output device
JP2000033730A (en) Printer, control thereof and printing system
JPH10240477A (en) Information processor, information processing method and storage medium storing computer readable program
JPH10333843A (en) Output control device, method therefor, and output system
JPH0872362A (en) Printing device and control method thereof
JPH1074131A (en) Printing control device, information processor, printing system, method for processing data for printing system, and storage medium for storing program to be read out by computer
JPH11216934A (en) Printing control device, method for data processing therein, and recording medium containing computer readable program
JPH11129555A (en) Control device for printing, method for data processing thereof and recording medium containing computer readable program
JP2000155661A (en) Printing controller, data processing method for the printing controller, data processor, data processing method for the data processor and storage medium stored with computer readable program

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050106

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050106

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070724

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070806

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

Free format text: PAYMENT UNTIL: 20100810

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100810

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110810

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120810

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120810

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130810

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees