JP2000298565A - Method and device for controlling printing and storage medium storing program for executing the printing controlling method - Google Patents

Method and device for controlling printing and storage medium storing program for executing the printing controlling method

Info

Publication number
JP2000298565A
JP2000298565A JP11106416A JP10641699A JP2000298565A JP 2000298565 A JP2000298565 A JP 2000298565A JP 11106416 A JP11106416 A JP 11106416A JP 10641699 A JP10641699 A JP 10641699A JP 2000298565 A JP2000298565 A JP 2000298565A
Authority
JP
Japan
Prior art keywords
printer
application
print
control
printer driver
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
JP11106416A
Other languages
Japanese (ja)
Inventor
Yoshinobu Kuroi
慶信 黒井
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 JP11106416A priority Critical patent/JP2000298565A/en
Publication of JP2000298565A publication Critical patent/JP2000298565A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)

Abstract

PROBLEM TO BE SOLVED: To prepare and print out a printer control command optimum to an application by changing a printer control command generating method correspondingly to the application. SOLUTION: In the printing controlling method and device for generating a printer control command based on a printing request outputted from an application, control information corresponding to respective applications is previously registered in a table and control information corresponding to an application issuing a printing request is acquired from the table (S31), the capacity of a printer driver is determined based on the control information (S33) and the capacity is declared to a graphic engine. Therefore the graphic engine executes the rasterization of an image in accordance with the capacity.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、ホストコンピュー
タと同ホストコンピュータへ接続されたプリンタからな
るシステムに適用可能な情報処理方法および装置および
ホストコンピュータで読み出し可能なプログラムを格納
した記録媒体に関するものである。
The present invention relates to an information processing method and apparatus applicable to a system including a host computer and a printer connected to the host computer, and a recording medium storing a program readable by the host computer. is there.

【0002】[0002]

【従来の技術】パソコンなどのホストコンピュータで
は、オペレーティングシステム(OS)のグラフィック
スエンジンが出力するプリンタデバイスに依存しないグ
ラフィックス描画命令を入力し、プリンタデバイスに依
存するプリンタ制御コマンドへ翻訳して出力するソフト
ウェアプログラム(以下、プリンタドライバ)が実装さ
れて印刷処理に利用されている。
2. Description of the Related Art In a host computer such as a personal computer, a graphics drawing command independent of a printer device output by a graphics engine of an operating system (OS) is input, translated into a printer control command depending on the printer device, and output. Software program (hereinafter referred to as a printer driver) is mounted and used for print processing.

【0003】このようなプリンタドライバは、それぞれ
に特有なプリンタアーキテクチャをサポートし、このア
ーキテクチャにはドットマトリクスプリンタなどに代表
されるラスタデバイス、プロッタなどのようなベクタデ
バイス、もしくは高度なページ記述言語をサポートする
デバイスといったものが含まれる。この内、ラスタデバ
イスをサポートするプリンタドライバは、ホストコンピ
ュータでグラフィックス描画要求から印刷イメージを構
築(以下、ラスタライズ)してプリンタ制御コマンドを
生成する。従って、このようなプリンタドライバは、適
時ラスタライズした印刷イメージをメモリ等の記憶領域
へ一時的に保持しておかなければならない。
[0003] Such a printer driver supports a printer architecture peculiar to each printer, and this architecture includes a raster device represented by a dot matrix printer, a vector device such as a plotter, or an advanced page description language. Includes supported devices. Among them, a printer driver that supports a raster device generates a printer control command by constructing (hereinafter, rasterizing) a print image from a graphics drawing request in a host computer. Therefore, such a printer driver must temporarily store a print image that has been rasterized as appropriate in a storage area such as a memory.

【0004】しかしながら、近年に発売されるプリンタ
では高解像度であるため、印刷ページ全体に対応するイ
メージデータのサイズは非常に大きくなる傾向にある。
このため、ラスターデバイスをサポートするプリンタド
ライバでは、ページ全体の矩形領域をより小さいバンド
と呼ばれる矩形領域に分割しながら印刷イメージを順次
ラスタライズしてプリンタ制御コマンドを生成する技法
(以下、バンディング技法)を採用している。
However, since printers released in recent years have high resolution, the size of image data corresponding to an entire print page tends to be very large.
For this reason, a printer driver that supports a raster device employs a technique of generating a printer control command by sequentially rasterizing a print image while dividing a rectangular area of the entire page into rectangular areas called smaller bands (hereinafter, banding technique). Has adopted.

【0005】このようなバンディング技法を採用したプ
リンタドライバは、自分自身の初期化処理を行う際、グ
ラフィックスエンジンに対してバンディング制御を必要
とする旨を宣言する。そして、アプリケーションプログ
ラムがこのような宣言を行ったプリンタドライバに対し
て描画命令を発行した場合、グラフィックスエンジン
は、その描画命令を、決められたフォーマットを適用し
ながらディスクファイルへ記憶する。こうしてアプリケ
ーションプログラムがページ全体に対する描画命令を発
行し終えると、グラフィックスエンジンはプリンタドラ
イバに対してバンド位置情報を要求し、その位置情報を
クリップ情報として設定しながら、記憶しておいた描画
命令を再生する。この一連のバンド制御処理は、プリン
タドライバが新たなバンド位置情報が無いとグラフィッ
クスエンジンへ通知するまで続けられる。
[0005] A printer driver adopting such a banding technique declares that the graphics engine requires banding control when performing its own initialization processing. When the application program issues a drawing command to the printer driver that has made such a declaration, the graphics engine stores the drawing command in a disk file while applying a predetermined format. When the application program has finished issuing the drawing command for the entire page, the graphics engine requests the printer driver for band position information, and sets the position information as clip information while using the stored drawing command. Reproduce. This series of band control processing is continued until the printer driver notifies the graphics engine that there is no new band position information.

【0006】一方、バンディング技法を採用しないプリ
ンタドライバの場合には、前述の初期化処理を行う際、
バンディング制御を必要としない旨をグラフィックスエ
ンジンに対して宣言する。このような場合、グラフィッ
クスエンジンは前述したような描画命令の記録/再生処
理を行わず、直ちに描画命令をプリンタドライバに対し
て出力する。
On the other hand, in the case of a printer driver that does not employ the banding technique, when performing the above-described initialization processing,
Declares to the graphics engine that banding control is not required. In such a case, the graphics engine immediately outputs the drawing command to the printer driver without performing the recording / reproducing process of the drawing command as described above.

【0007】このようにラスタデバイスをサポートする
従来のプリンタドライバでは、バンディング技法を採用
するかどうかを予め固定的に決めておき、これに基づき
プリンタ制御コマンドを生成する。
As described above, in the conventional printer driver supporting the raster device, whether or not to adopt the banding technique is fixedly determined in advance, and the printer control command is generated based on the fixed decision.

【0008】[0008]

【発明が解決しようとする課題】ホストコンピュータに
インストールされて動作するアプリケーションプログラ
ムはほとんど印刷機能をサポートしているが、各アプリ
ケーションプログラムの描画制御手法は、扱うデータ種
類やプログラム設計に依存して千差万別である。従っ
て、アプリケーションプログラムの描画制御手法によっ
ては、プリンタドライバがバンディング技法を採用する
かしないかで、印刷処理のパフォーマンスが大きく変化
してしまう場合がある。しかしながら、ラスタデバイス
をサポートする従来のプリンタドライバでは、バンディ
ング技法を採用するかどうかは予め固定的に定められて
いるため、常に決まった技法に基づいてプリンタ制御コ
マンドを生成するのみであった。
Most application programs installed and running on the host computer support the printing function. However, the drawing control method of each application program depends on the type of data to be handled and the program design. Different. Therefore, depending on the drawing control method of the application program, the performance of the printing process may greatly change depending on whether or not the printer driver adopts the banding technique. However, in a conventional printer driver that supports a raster device, whether or not to adopt the banding technique is fixedly determined in advance, and therefore, only a printer control command is always generated based on a predetermined technique.

【0009】本発明は上記従来例に鑑みてなされたもの
で、アプリケーションに対応してプリンタ制御コマンド
の生成方法を変更する印刷制御方法及び装置を提供する
ことを目的とする。
SUMMARY OF THE INVENTION The present invention has been made in view of the above conventional example, and has as its object to provide a print control method and apparatus for changing a method of generating a printer control command corresponding to an application.

【0010】又本発明の目的は、アプリケーションに対
応して記憶されている、プリンタ制御コマンドを生成す
るための制御情報を変更可能とすることにより、アプリ
ケーションに対応してプリンタ制御コマンドの生成方法
を動的に変更することができる印刷制御方法及び装置を
提供することにある。
It is another object of the present invention to provide a method of generating a printer control command corresponding to an application by enabling control information for generating a printer control command stored in correspondence with the application to be changed. An object of the present invention is to provide a print control method and apparatus that can be dynamically changed.

【0011】[0011]

【課題を解決するための手段】上記目的を達成するため
に本発明の印刷制御装置は以下のような構成を備える。
即ち、アプリケーションからの印刷要求によりプリンタ
制御用コマンドを生成する印刷制御装置であって、アプ
リケーションに対応した制御情報を記憶する記憶手段
と、前記印刷要求を発行したアプリケーションに応じた
制御情報を前記記憶手段から取得する取得手段と、画像
情報を基にプリンタ制御用コマンドを生成するプリンタ
コマンド生成手段と、前記アプリケーションからのデー
タに基づいて前記プリンタコマンド生成手段に応じた描
画処理を実行して画像情報を出力する描画手段と、前記
取得手段により取得された前記制御情報を基に、前記プ
リンタコマンド生成手段の能力を決定して前記描画手段
に通知する制御手段と、を有することを特徴とする。
To achieve the above object, a print control apparatus according to the present invention has the following arrangement.
That is, a print control device that generates a printer control command in response to a print request from an application, the storage unit storing control information corresponding to the application, and the control information corresponding to the application that issued the print request. Acquiring means for acquiring from the means, a printer command generating means for generating a printer control command based on the image information, and executing drawing processing according to the printer command generating means based on data from the application to obtain image information. And a control unit that determines the capability of the printer command generation unit based on the control information acquired by the acquisition unit and notifies the drawing unit of the capability.

【0012】上記目的を達成するために本発明の印刷制
御方法は以下のような工程を備える。即ち、アプリケー
ションからの印刷要求に基づいてプリンタドライバによ
りプリンタ制御用コマンドを生成してプリンタ装置に出
力する印刷制御方法であって、印刷要求を発行したアプ
リケーションに応じた制御情報を、アプリケーションに
対応した制御情報を記憶するメモリから取得する取得工
程と、前記取得工程で取得された前記制御情報を基に前
記プリンタドライバの能力を決定してOSに通知する工
程と、前記アプリケーションからのデータに基づいて前
記プリンタドライバに応じた描画処理を実行して画像情
報を前記プリンタドライバに出力する描画工程と、を有
することを特徴とする。
In order to achieve the above object, a printing control method according to the present invention includes the following steps. That is, a print control method for generating a printer control command by a printer driver based on a print request from an application and outputting the command to a printer device, wherein control information corresponding to the application that issued the print request corresponds to the application. An acquisition step of acquiring from a memory storing control information; a step of determining the capability of the printer driver based on the control information acquired in the acquisition step and informing the OS of the capability; and A drawing step of executing drawing processing according to the printer driver and outputting image information to the printer driver.

【0013】[0013]

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

【0014】図1は、本発明の実施の形態に係る印刷シ
ステムの構成を示すブロック図である。尚、本実施の形
態に係る機能が実行されるのであれば、単体の機器であ
っても、複数の機器からなるシステムであっても、或は
LAN、WAN等のネットワークを介して接続され、印
刷処理が行われるシステムであっても適用できることは
言うまでもない。
FIG. 1 is a block diagram showing a configuration of a printing system according to an embodiment of the present invention. If the function according to the present embodiment is executed, it may be a single device, a system including a plurality of devices, or connected via a network such as a LAN or a WAN, It goes without saying that the present invention can be applied to a system in which a printing process is performed.

【0015】図1において、3000はホストコンピュ
ータで、ROM3のプログラム用ROM3bに記憶され
た文書処理プログラム等に基づいて、図形、イメージ、
文字、表(表計算等を含む)等が混在した文書処理を実
行するCPU1を備え、システムバス4に接続される各
デバイスをCPU1が総括的に制御する。また、このR
OM3のプログラム用ROM3b或は外部メモリ11に
は、CPU1の制御プログラムであるオペレーティング
システムプログラム(以下OS)等が記憶されており、
ROM3のフォント用ROM3a或は外部メモリ11に
は上記文書処理の際に使用するフォントデータ等が記憶
されており、ROM3のデータ用ROM3c或は外部メ
モリ11には、上記文書処理等を行う際に使用する各種
データ(例えば、ディレクトリ情報、プリンタドライバ
・テーブル等)が記憶されている。この場合、制御の主
体は、ハードウェア上はCPUである。一方、ソフトウ
ェア上は制御の主体は、プリンタ制御コマンド生成プロ
グラム(以下プリンタドライバ)というアプリケーショ
ンソフトウェアである。本実施の形態では、OSは例え
ば、ウィンドウズ95(マイクロソフト社製)を想定し
ているが、これに限るものではない。
In FIG. 1, reference numeral 3000 denotes a host computer, which is used to store figures, images, and the like based on a document processing program and the like stored in a program ROM 3b of a ROM 3.
The system includes a CPU 1 for executing document processing in which characters, tables (including spreadsheets and the like) are mixed, and the CPU 1 controls the devices connected to the system bus 4 as a whole. Also, this R
An operating system program (hereinafter referred to as OS), which is a control program of the CPU 1, is stored in the program ROM 3b of the OM 3 or the external memory 11.
The font ROM 3a of the ROM 3 or the external memory 11 stores font data and the like used at the time of the document processing, and the data ROM 3c of the ROM 3 or the external memory 11 stores the font data and the like at the time of performing the document processing and the like. Various data to be used (for example, directory information, a printer driver table, etc.) are stored. In this case, the subject of control is a CPU on hardware. On the other hand, the software is mainly controlled by application software called a printer control command generation program (hereinafter, printer driver). In this embodiment, the OS is assumed to be, for example, Windows 95 (manufactured by Microsoft), but is not limited to this.

【0016】2はRAMで、CPU1の主メモリ、ワー
クエリア等として機能する。5はキーボードコントロー
ラ(KBC)で、キーボード9や示図示のポインティン
グデバイス(マウス等)からの入力を制御する。6はC
RTコントローラ(CRTC)で、CRTディスプレイ
(CRT)10への表示を制御する。7はディスクコン
トローラ(DKC)で、ブートプログラム、各種アプリ
ケーショシ、フォントデータ、ユーザファイル、編集フ
ァイル、プリンタドライバ等を記憶するハードディスク
(HD)、フロッピー(登録商標)ディスク(FD)等
を含む外部メモリ11とのアクセスを制御する。8はプ
リンタコントローラ(PRTC)で、所定の双方向イン
ターフェース(LAN、通信回線等を含む)21を介し
てプリンタ1500に接続されており、プリンタ150
0との通信制御処理を実行する。なお、CPU1は、例
えばRAM2上に設定された表示情報に基づきアウトラ
インフォントの展開(ラスタライズ)処理などを実行
し、CRT10上でのWYSIWYGを可能としてい
る。また、CPU1は、CRT10上の不図示のマウス
カーソル等で指示されたコマンドに基づいて登録された
種々のウィンドウを開き、種々のデータ処理を実行する
ことができる。
Reference numeral 2 denotes a RAM, which functions as a main memory of the CPU 1, a work area, and the like. Reference numeral 5 denotes a keyboard controller (KBC) which controls input from a keyboard 9 and a pointing device (mouse or the like) shown in the drawing. 6 is C
An RT controller (CRTC) controls display on a CRT display (CRT) 10. Reference numeral 7 denotes a disk controller (DKC), an external memory including a hard disk (HD) for storing a boot program, various applications, font data, user files, edit files, a printer driver, and the like, a floppy (registered trademark) disk (FD), and the like. 11 is controlled. Reference numeral 8 denotes a printer controller (PRTC), which is connected to the printer 1500 via a predetermined bidirectional interface (including a LAN, a communication line, and the like) 21.
A communication control process with 0 is executed. The CPU 1 executes, for example, an outline font development (rasterization) process based on display information set on the RAM 2 to enable WYSIWYG on the CRT 10. Further, the CPU 1 can open various registered windows based on commands specified by a mouse cursor or the like (not shown) on the CRT 10 and execute various data processing.

【0017】次に、プリンタ1500について説明す
る。
Next, the printer 1500 will be described.

【0018】12はプリンタCPUで、ROM13のプ
ログラム用ROM13bに記憶された制御プログラム或
は外部メモリ14に記憶された制御プログラム等に基づ
いてシステムバス15に接続される印刷部(プリンタエ
ンジン)17に出力情報としての画像信号を出力する。
また、このROM13のプログラムROM13bには、
CPU12の制御プログラム等が記憶されている。RO
M13のフォント用ROM13aには上記出力情報を生
成する際に使用するフォントデータ等が記憶されてお
り、ROM13のデータ用ROM13cにはハードディ
スク等の外部メモリ14が接続されていないプリンタの
場合には、ホストコンピュータ3000で利用される情
報等も記憶している。CPU12は入力部18を介して
ホストコンピュータ3000との通信処理が可能となっ
ており、プリンタ1500の情報等をホストコンピュー
タ3000に通知可能に構成されている。19はCPU
12の主メモリ、ワークエリア等として機能するRAM
で、図示しない増設ポートに接続されるオプションRA
Mにより、そのメモリ容量を拡張することができるよう
に構成されている。なお、RAM19は、出力情報展開
領域、環境データ格納領域、NVRAM等に用いられ
る。前述したハードディスク(HD)、ICカード等の
外部メモリ14は、ディスクコントローラ(DKC)2
0によりアクセスを制御される。この外部メモリ14は
オプションとして接続され、フォントデータ、エミュレ
ーションプログラム、フォームデータ等を記憶する。ま
た、1501は操作パネルで、ユーザが操作するための
キースイッチおよびLED表示器等が配されている。前
述した外部メモリ14は1個に限らず、少なくとも1個
以上備え、内蔵フォントに加えてオプションフォントカ
ード、言語系の異なるプリンタ制御言語を解釈するプロ
グラムを格納した外部メモリ14を複数接続できるよう
に構成されていてもよい。さらに、図示しないNVRA
Mを有し、操作パネル1501からのプリンタモード設
定情報を記憶するようにしてもよい。
Reference numeral 12 denotes a printer CPU which sends a print unit (printer engine) 17 connected to a system bus 15 based on a control program stored in a program ROM 13b of a ROM 13 or a control program stored in an external memory 14. An image signal is output as output information.
The program ROM 13b of the ROM 13 includes
A control program of the CPU 12 and the like are stored. RO
Font data and the like used when generating the output information are stored in the font ROM 13a of the M13, and in the case of a printer in which the external memory 14 such as a hard disk is not connected to the data ROM 13c of the ROM 13, Information used by the host computer 3000 is also stored. The CPU 12 is capable of communicating with the host computer 3000 via the input unit 18 and is configured to be able to notify the host computer 3000 of information on the printer 1500 and the like. 19 is CPU
RAM functioning as 12 main memories, work areas, etc.
The option RA connected to the expansion port (not shown)
The memory capacity can be expanded by M. 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 a hard disk (HD) and an IC card described above includes a disk controller (DKC) 2
0 controls access. The external memory 14 is connected as an option, and stores font data, an emulation program, form data, and the like. An operation panel 1501 includes a key switch, an LED display, and the like for a user to operate. The above-mentioned external memory 14 is not limited to one, and at least one or more external memories 14 are provided. In addition to the built-in fonts, an optional font card and a plurality of external memories 14 storing programs for interpreting printer control languages of different language systems can be connected. It may be configured. Furthermore, NVRA (not shown)
M, and the printer mode setting information from the operation panel 1501 may be stored.

【0019】図2は、本実施の形態に係るホストコンピ
ュータ3000とプリンタ1500の機能構成を示す機
能ブロック図である。
FIG. 2 is a functional block diagram showing the functional configuration of the host computer 3000 and the printer 1500 according to the present embodiment.

【0020】ホストコンピュータ3000において、ア
プリケーション201、グラフィックエンジン202、
プリンタドライバ203、及びシステムスプーラ204
は、外部メモリ11に保存されたファイルとして存在
し、CPU1により実行される場合、OSやそのモジュ
ールを利用するモジュールによってRAM2にロードさ
れ実行されるプログラムモジュールである。また、アプ
リケーション201及びプリンタドライバ203は、外
部メモリ11のFDや不図示のCD−ROM、或は不図
示のネットワーク等を経由して外部ディスク11のHD
に追加することが可能となっている。
In the host computer 3000, an application 201, a graphic engine 202,
Printer driver 203 and system spooler 204
Is a program module that exists as a file stored in the external memory 11 and is loaded into the RAM 2 and executed by the OS or a module using the module when executed by the CPU 1. The application 201 and the printer driver 203 are connected to the FD of the external memory 11, a CD-ROM (not shown), or the HD of the external disk 11 via a network (not shown).
It is possible to add to.

【0021】また外部メモリ11に保存されているアプ
リケーション201は、RAM2にロードされて実行さ
れるが、このアプリケーション201からプリンタ15
00に対して印刷を行う際には、同様にRAM2にロー
ドされ実行可能となっているグラフィックエンジン20
2を利用して出力(描画)を行う。グラフィックエンジ
ン202は、各プリンタ装置ごとに用意されたプリンタ
ドライバ203を外部メモリ11からRAM2にロード
し、このプリンタドライバ203を用いて、アプリケー
ション201の出力をプリンタの制御コマンドに変換す
る。こうして変換されたプリンタ制御コマンドは、RA
M2にロードされたシステムスプーラ204を経て、O
Sによってインターフェース21経由でプリンタ150
0へ出力される仕組みとなっている。
The application 201 stored in the external memory 11 is loaded into the RAM 2 and executed.
When printing is performed on the graphic engine 20, the graphic engine 20 which is also loaded into the RAM 2 and becomes executable
2 (output) is performed using The graphic engine 202 loads a printer driver 203 prepared for each printer device from the external memory 11 into the RAM 2, and converts the output of the application 201 into a printer control command using the printer driver 203. The printer control command converted in this way is RA
Through the system spooler 204 loaded in M2, O
S through the interface 21 to the printer 150
It is a mechanism to output to 0.

【0022】本実施の形態の印刷システムは、図2で示
すプリンタ1500とホストコンピュータ3000を有
する印刷システムに加えて、更に図3に示すように、ア
プリケーション201からの印刷データを一旦中間コー
ドデータでスプールする構成を有する。
The printing system according to the present embodiment includes, in addition to the printing system having the printer 1500 and the host computer 3000 shown in FIG. 2, print data from the application 201 as intermediate code data as shown in FIG. It has a configuration to spool.

【0023】図3は、図2に示すシステムを拡張した機
能構成を示す図で、グラフィックエンジン202からプ
リンタドライバ203へ印刷命令を送る際に、一旦中間
コードからなるスプールファイル303を生成する構成
をとる。
FIG. 3 is a diagram showing a functional configuration in which the system shown in FIG. 2 is extended. When a print command is sent from the graphic engine 202 to the printer driver 203, a spool file 303 consisting of intermediate codes is once generated. Take.

【0024】図2に示すシステムでは、アプリケーショ
ン201が印刷処理から開放されるのは、プリンタドラ
イバ203がグラフィックエンジン202からの全ての
印刷命令をプリンタの制御コマンドへ変換し終った時点
である。これに対して図3に示すシステムでは、スプー
ラ302が全ての印刷命令を中間コードデータに変換
し、スプールファイル303に出力した時点である。通
常、後者の方が短時間で済む。また、図3で示すシステ
ムにおいては、スプールファイル303の内容に対して
加工することができる。これによりアブリケーション2
01からの印刷データに対して、複数ページを1ページ
に縮小して印刷する等、アプリケーションの持たない機
能を実現することができる。
In the system shown in FIG. 2, the application 201 is released from the printing process when the printer driver 203 has converted all print commands from the graphic engine 202 into printer control commands. On the other hand, in the system shown in FIG. 3, the spooler 302 converts all print commands into intermediate code data and outputs them to the spool file 303. Usually, the latter requires less time. Further, in the system shown in FIG. 3, the contents of the spool file 303 can be processed. This makes publication 2
With respect to the print data from 01, a function not provided by the application, such as printing a plurality of pages reduced to one page, can be realized.

【0025】これらの目的のために、図2のシステムに
対し、図3の様に中間コードデータでスプールする様、
システムの拡張がなされてきている。なお、印刷データ
の加工を行うためには、通常、プリンタドライバ203
が提供するウィンドウから設定を行い、プリンタドライ
バ203がその設定内容をRAM2、或は外部メモリ1
1上に保管する。
For these purposes, the system shown in FIG. 2 is spooled with intermediate code data as shown in FIG.
The system has been extended. Note that, in order to process print data, usually, the printer driver 203
From the window provided by the printer driver 203, and the printer driver 203 stores the setting contents in the RAM 2 or the external memory 1.
Store on top.

【0026】以下、図3の詳細を説明する。The details of FIG. 3 will be described below.

【0027】この拡張された処理方式では、グラフィッ
クエンジン202からの印刷命令をディスパッチャ30
1が受け取る。この受け取った印刷命令が、アプリケー
ション201からグラフィックエンジン202へ発行さ
れた印刷命令の場合には、ディスパッチャ301は外部
メモリ11に格納されているスプーラ302をRAM2
にロードし、プリンタドライバ203ではなくスプーラ
302へ印刷命令を送付する。
In this extended processing method, a print command from the graphic engine 202 is transmitted to the dispatcher 30.
1 receives. If the received print command is a print command issued from the application 201 to the graphic engine 202, the dispatcher 301 replaces the spooler 302 stored in the external memory 11 with the RAM 2
, And sends a print command to the spooler 302 instead of the printer driver 203.

【0028】スプーラ302は、受け取った印刷命令を
中間コードに変換してスプールファイル303に出力す
る。またスプーラ302は、プリンタドライバ203に
対して設定されている印刷データに関する加工設定をプ
リンタドライバ203から取得してスプールファイル3
03に保存する。なお、スプールファイル303は外部
メモリ11にファイルとして生成するか、RAM2上に
生成されても構わない。更にスプーラ302は、外部メ
モリ11に格納されているスプールファイルマネージャ
304をRAM2にロードし、スプールファイルマネー
ジャ304に対してスプールファイル303の生成状況
を通知する。その後、スプールファイルマネージャ30
4は、スプールファイル303に保存された印刷データ
に関する加工設定の内容に従って印刷を行えるか否かを
判断する。
The spooler 302 converts the received print command into an intermediate code and outputs it to the spool file 303. Also, the spooler 302 acquires processing settings related to print data set for the printer driver 203 from the printer driver 203,
03. Note that the spool file 303 may be generated as a file in the external memory 11 or may be generated on the RAM 2. Further, the spooler 302 loads the spool file manager 304 stored in the external memory 11 into the RAM 2, and notifies the spool file manager 304 of the status of generation of the spool file 303. Then, the spool file manager 30
No. 4 determines whether or not printing can be performed in accordance with the contents of the processing settings relating to the print data stored in the spool file 303.

【0029】スプールファイルマネージャ304がグラ
フィックエンジン202を利用して印刷を行えると判断
した際には、外部メモリ11に格納されているデスプー
ラ305をRAM2にロードし、デスプーラ305に対
して、スプールファイル303に記述された中間コード
の印刷処理を行うように指示する。
When the spool file manager 304 determines that printing can be performed using the graphic engine 202, the despooler 305 stored in the external memory 11 is loaded into the RAM 2, and the spool file 303 is stored in the despooler 305. To print the intermediate code described in.

【0030】デスプーラ305はスプールファイル30
3に含まれる中間コードを、スプールファイル303に
含まれる加工設定の内容に従って加工し、もう一度グラ
フィックエンジン202経由で出力する。
The despooler 305 stores the spool file 30
3 is processed according to the contents of the processing settings included in the spool file 303, and is output again via the graphic engine 202.

【0031】ディスパッチャ301がグラフィックエン
ジン202から受け取った印刷命令が、デスプーラ30
5からグラフィックエンジン202へ発行された印刷命
令の場合には、ディスパッチャ301はスプーラ302
ではなく、プリンタドライバ203に印刷命令を送る。
プリンタドライバ203はプリンタ制御コマンドを生成
し、システムスプーラ204経由でプリンタ1500に
出力する。
The print command received from the graphic engine 202 by the dispatcher 301 is transmitted to the despooler 30.
In the case of a print command issued to the graphic engine 202 from the printer 5, the dispatcher 301
Instead, a print command is sent to the printer driver 203.
The printer driver 203 generates a printer control command and outputs it to the printer 1500 via the system spooler 204.

【0032】図4は、本実施の形態に係るプリンタドラ
イバ203がホストコンピュータ3000のRAM2へ
ロードされ、実行可能となった状態でのCPU1からみ
たメモリマップを示す図である。
FIG. 4 is a diagram showing a memory map as viewed from the CPU 1 in a state where the printer driver 203 according to the present embodiment is loaded into the RAM 2 of the host computer 3000 and becomes executable.

【0033】図4において、BIOS27は、プログラ
ムROM3に書き込まれており、OS26は外部メモリ
11であるハードディスク(以下、HD)に書き込まれ
ている。そして、ホストコンピュータ3000の電源が
オンされた時に、BIOS27のIPL(Initial Progr
am Loading)機能により、OS26がHDからRAM2
へ読み込まれ、OS26による動作が開始する。そして
実際に、プリンタドライバ203が動作可能となるの
は、ユーザ等の指示により、ホストコンピュータ300
0でOS26の管理の下に動作するアプリケーション2
01が印刷処理を開始した場合である。このとき、プリ
ンタドライバ203を記録している外部メモリ11等の
記憶媒体から、OS26及びBIOS27の制御の下に
プリンタドライバ203が読み出されてRAM2へロー
ドされる。尚、このとき、プリンタドライバ203に関
連したデータ24もRAM2にロードされる。
In FIG. 4, the BIOS 27 is written in the program ROM 3, and the OS 26 is written in the hard disk (hereinafter, HD) which is the external memory 11. When the power of the host computer 3000 is turned on, the IPL (Initial Progr.
am Loading) function allows OS26 to change from HD to RAM2
And the operation by the OS 26 is started. The printer driver 203 is actually operable only when the host computer 300 issues an instruction from a user or the like.
Application 2 operating under the management of OS 26
01 is a case where the printing process is started. At this time, the printer driver 203 is read from a storage medium such as the external memory 11 in which the printer driver 203 is recorded under the control of the OS 26 and the BIOS 27, and is loaded into the RAM 2. At this time, the data 24 related to the printer driver 203 is also loaded into the RAM 2.

【0034】図5は、本発明の実施の形態に係るプリン
タドライバ203がOS26のグラフィックスエンジン
(以下、GDI)を介してアプリケーション201の印
刷要求を受け付けてプリンタ制御コマンドを生成する処
理を示すフローチャートである。
FIG. 5 is a flowchart showing a process in which the printer driver 203 according to the embodiment of the present invention receives a print request from the application 201 via the graphics engine (hereinafter, GDI) of the OS 26 and generates a printer control command. It is.

【0035】まずステップS1で、GDIからの印刷要
求を順次受け付けるとステップS2に進み、その印刷要
求が何であるかを判定し、以下の処理ステップで、各要
求に応じたそれぞれの処理を行う。この一連の動作は、
ステップS2で印刷終了要求を受け付けたと判断される
まで続けられる。
First, in step S1, when print requests from the GDI are sequentially received, the flow advances to step S2 to determine what the print request is, and in the following processing steps, each process corresponding to each request is performed. This series of actions
The process is continued until it is determined in step S2 that the print end request has been received.

【0036】ステップS2の判定で、初期化処理の要求
であると判断されるとステップS3に進む。この初期化
処理は通常の印刷処理において、最初にプリンタドライ
バ203がGDIより受け付けるものである。この初期
化要求を受け付けるとステップS4に進み、プリンタド
ライバ203はグラフィックス描画能力等を含むプリン
タデバイスドライバ情報を、予め決められた規則に則っ
てGDIへ宣言する。こうしてプリンタドライバ203
から得た情報を基にGDIは、アプリケーション201
から発行された複雑なグラフィックス描画要求を簡易な
描画要求の組み合わせに展開しながらプリンタドライバ
203へ出力したり、バンディング処理を必要に応じて
サポートしたりすることができる。そしてステップS5
に進み、プリンタドライバ203は、プリンタデバイス
情報の初期化処理を行い、この初期化要求に対する処理
を終了する。
If it is determined in step S2 that the request is for an initialization process, the process proceeds to step S3. This initialization processing is the one that the printer driver 203 first receives from the GDI in the normal printing processing. Upon receiving this initialization request, the process proceeds to step S4, where the printer driver 203 declares printer device driver information including the graphics drawing capability and the like to the GDI in accordance with a predetermined rule. Thus, the printer driver 203
GDI is based on the information obtained from
Can be output to the printer driver 203 while developing a complex graphics drawing request issued by the printer driver into a combination of simple drawing requests, and can support banding processing as needed. And step S5
The printer driver 203 performs an initialization process of the printer device information, and ends the process for the initialization request.

【0037】いま、例えばステップS4で、プリンタド
ライバ203がバンディングを必要とする旨をGDIに
対して宣言すると、そのGDIはアプリケーション20
1から発行される印刷要求を、予め決められたフォーマ
ット形式でディスクファイルへ記憶する。アプリケーシ
ョン201がページ全体に対する印刷要求を発行し終え
ると、GDIはプリンタドライバ203から各描画領域
(以下、バンド領域)の情報を順次取得しながら、一時
記憶しておいた印刷要求をプリンタドライバ203に対
して繰り返して出力する。このような一連の処理は、プ
リンタドライバ203から終了通知がくるまで続けられ
ることになる。一方ステップS4で、プリンタドライバ
203がバンディングを必要としない旨を宣言すると、
GDIは前述のような処理を行わず、アプリケーション
201から発行された印刷要求を直ちにプリンタドライ
バ203へ出力するように動作する。
Now, for example, in step S4, when the printer driver 203 declares to the GDI that banding is required, the GDI
1 is stored in a disk file in a predetermined format. When the application 201 finishes issuing the print request for the entire page, the GDI sequentially acquires the information of each drawing area (hereinafter, band area) from the printer driver 203 and sends the temporarily stored print request to the printer driver 203. Output repeatedly. Such a series of processing is continued until the end notification is received from the printer driver 203. On the other hand, in step S4, when the printer driver 203 declares that banding is not required,
The GDI operates so as to immediately output the print request issued from the application 201 to the printer driver 203 without performing the above-described processing.

【0038】この初期化要求に続いて印刷開始要求を受
け付けた場合はステップS2からステップS6に進み、
ラスタライズしたイメージデータをプリンタ制御コマン
ドに変換するまで一時的に記憶できるように、プリンタ
ドライバ203はホストコンピュータ3000のRAM
2にメモリ領域(以下、バンドメモリ)を確保する(ス
テップS7)。ここで、前述の初期化処理(ステップS
3〜S5)で、プリンタドライバ203がバンディング
が必要であると宣言した場合には、印刷する画像の1ペ
ージ分よりも小さな領域に対応するメモリ容量を確保す
るだけで良いが、バンディングが不要である宣言されて
いる場合には、ページ全体のイメージデータを完全に記
憶できるだけのメモリ容量を確保する必要がある。そし
て次にステップS8に進み、プリンタドライバ203
は、GDIが管理するシステムスプーラ204に対して
印刷ジョブの生成を要求し、その印刷開始要求に対する
処理を終了する。
If a print start request is received following the initialization request, the process proceeds from step S2 to step S6,
The printer driver 203 is connected to the RAM of the host computer 3000 so that the rasterized image data can be temporarily stored until it is converted into a printer control command.
2, a memory area (hereinafter, band memory) is secured (step S7). Here, the above-described initialization processing (step S
If the printer driver 203 declares that banding is necessary in 3 to S5), it is only necessary to secure a memory capacity corresponding to an area smaller than one page of the image to be printed, but no banding is necessary. When a certain declaration is made, it is necessary to secure a memory capacity that can completely store the image data of the entire page. Then, the process proceeds to step S8, where the printer driver 203
Requests the system spooler 204 managed by the GDI to generate a print job, and ends the processing for the print start request.

【0039】こうして印刷開始要求を受け付けてから印
刷終了要求を受け付けるまでの間、プリンタドライバ2
03はグラフィックス描画要求とページ制御要求を、順
次、適当な順番で受け取ることになる。
In the period from when the print start request is received to when the print end request is received, the printer driver 2
03 receives a graphics drawing request and a page control request sequentially and in an appropriate order.

【0040】プリンタドライバ203がグラフィックス
描画要求を受け付けるとステップS2からステップS9
に進み、その描画要求に応じたイメージの構築(以下、
ラスタライズ)を直ちに行い(ステップS10)、前述
のステップS7で確保したバンドメモリへ、そのイメー
ジデータを記憶する(ステップS11)。
When the printer driver 203 receives the graphics drawing request, the process proceeds from step S2 to step S9.
To build an image according to the drawing request (hereinafter,
Rasterization is performed immediately (step S10), and the image data is stored in the band memory secured in step S7 (step S11).

【0041】一方、プリンタドライバ203がページ制
御要求を受け付けるとステップS2からステップS12
に進み、ページ制御要求の種類を判定する(ステップS
13)。次にステップS14で、このページ制御要求の
種類を判別し、その制御要求がGDIによるバンド領域
情報の要求であった場合にはステップS15に進み、プ
リンタドライバ203は新しいバンド領域情報を取得
し、ステップS16で、その結果をGDIに通知する。
そしてステップS17に進み、既にラスタライズしたイ
メージデータがあれば、そのイメージデータに対応する
プリンタ制御コマンドを生成してシステムスプーラ20
4へ出力する。
On the other hand, when the printer driver 203 receives the page control request, the process proceeds from step S2 to step S12.
To determine the type of page control request (step S
13). Next, in step S14, the type of the page control request is determined. If the control request is a request for band area information by GDI, the process proceeds to step S15, where the printer driver 203 acquires new band area information. In step S16, the result is notified to the GDI.
Then, in step S17, if there is already rasterized image data, a printer control command corresponding to the image data is generated and the system spooler 20 is executed.
Output to 4.

【0042】一方、ページ制御要求が改ページ要求であ
った場合はステップS14からステップS18に進み、
その改ページ要求を入力し、直ちにステップS17に進
み、既にラスタライズ済みのイメージデータからプリン
タ制御コマンドを生成して出力する。
On the other hand, if the page control request is a page break request, the process proceeds from step S14 to step S18,
Upon inputting the page break request, the process immediately proceeds to step S17 to generate and output a printer control command from the already rasterized image data.

【0043】ここで例えば、前述のステップS3〜S5
の初期化処理でバンディングが必要とプリンタドライバ
203が宣言している場合には、通常、ページ制御要求
に対応する処理は「ステップS14→S15→S16→
S17」の流れで行われることになる。逆に前述の初期
化処理において、プリンタドライバ203がバンディン
グ不要と宣言した場合には「ステップS14→S18→
S17」の流れで処理が行われることになる。
Here, for example, the aforementioned steps S3 to S5
When the printer driver 203 declares that the banding is necessary in the initialization process, the process corresponding to the page control request is usually “step S14 → S15 → S16 →
This is performed according to the flow of “S17”. Conversely, if the printer driver 203 declares that banding is unnecessary in the above-described initialization processing, the process proceeds to step S14 → S18 →
The processing is performed in the flow of “S17”.

【0044】最後にプリンタドライバ203は、印刷終
了要求を受け付けるとステップS19,S20に進み、
ステップS7で確保したメモリ領域を解放する次にステ
ップS21に進み、システムスプーラ204に対して印
刷ジョブのクローズを要求し、印刷終了要求に対する処
理を終了する。
Finally, upon receiving the print end request, the printer driver 203 proceeds to steps S19 and S20,
After releasing the memory area secured in step S7, the process advances to step S21 to request the system spooler 204 to close the print job, and end the processing for the print end request.

【0045】次に、本実施の形態に係るプリンタドライ
バ203の処理について詳しく説明する。このプリンタ
ドライバ203は、図5のステップS3とS4の処理の
間で図6のフローチャートに示す処理を行うことを特徴
とする。また、本実施の形態のプリンタドライバ203
が使用するアプリケーションの名称とアプリケーション
の特徴の対応情報を図7に示す。
Next, the processing of the printer driver 203 according to this embodiment will be described in detail. The printer driver 203 performs the processing shown in the flowchart in FIG. 6 between the processing in steps S3 and S4 in FIG. Further, the printer driver 203 of the present embodiment
FIG. 7 shows correspondence information between application names used by the application and application characteristics.

【0046】本実施の形態では、GDI及びプリンタド
ライバ203の印刷に関する処理パフォーマンスが、ア
プリケーション201の発行するグラフィックス描画要
求の特徴と、プリンタドライバ203の初期化時に宣言
するプリンタデバイスドライバ情報、特にバンディング
制御情報によって大きく変化するものと想定する。例え
ば、アプリケーション201が多層に重なったビットマ
ップや大きなサイズのビットマップを描画するグラフィ
ックス描画要求を送ってきた場合を考慮すると、バンデ
ィング制御の有無によって大きく処理パフォーマシスが
変化することになる。ここでプリンタドライバ203が
バンディング制御を必要と宣言している場合には、前述
したように、GDIがビットマップ描画要求を含む印刷
要求の全てをディスクファイルへ記憶し、後でプリンタ
ドライバ203へ繰り返して出力することになる。この
ようなビットマップ描画要求は、GDIがディスクファ
イルへ一時記憶する印刷要求情報のデータサイズを肥大
化させるので、その書き込み処理と、その後の読み出し
処理に要する時間は相対的に大きくなる。
In this embodiment, the processing performance of the GDI and the printing of the printer driver 203 depends on the characteristics of the graphics drawing request issued by the application 201 and the printer device driver information declared when the printer driver 203 is initialized, especially banding. It is assumed that the value greatly changes depending on the control information. For example, considering the case where the application 201 sends a graphics drawing request for drawing a multi-layered bitmap or a large-sized bitmap, the processing performance greatly changes depending on whether or not banding control is performed. If the printer driver 203 declares that the banding control is necessary, the GDI stores all the print requests including the bitmap drawing request in the disk file as described above, and repeats the same to the printer driver 203 later. Output. Since such a bitmap drawing request enlarges the data size of the print request information temporarily stored in the disk file by the GDI, the time required for the writing process and the subsequent reading process becomes relatively long.

【0047】一方、前述したようにプリンタドライバ2
03がバンディング制御を不要と宣言している場合に
は、このようなパフォーマンスの劣化要因は解消でき
る。但し、このような宣言をプリンタドライバ203が
行った場合には、ページ全体のイメージデータを完全に
記憶できるメモリ容量を確保する必要があるので、状況
によってはメモリ資源が枯渇してしまうことになり、相
対的にパフォーマンスが劣化する場合もある。通常、メ
モリ資源が枯渇してくると、RAM2へ記憶されている
データを外部メモリ11へ一時的に待避するスワップ処
理がOS26の管理の下に行われるため、システム全体
の処理パフォーマンスは低下する。
On the other hand, as described above, the printer driver 2
03 declares that banding control is unnecessary, such a performance degradation factor can be eliminated. However, when such a declaration is made by the printer driver 203, it is necessary to secure a memory capacity capable of completely storing image data of the entire page, and depending on the situation, memory resources may be depleted. However, the performance may be relatively deteriorated. Normally, when the memory resources are depleted, a swap process for temporarily saving the data stored in the RAM 2 to the external memory 11 is performed under the management of the OS 26, so that the processing performance of the entire system decreases.

【0048】本実施の形態では、一般的な印刷処理にお
いて、プリンタドライバ203がバンディング制御を必
要と宣言した方が経験的に処理パフォーマンスが良くな
るものとする。また、これと同時に、特定のアプリケー
ションを用いた印刷処理では、前述の原因により大きく
パフォーマンスが劣化するものの、このような場合でも
バンディング制御が不要であると宣言すれば、相対的に
大きくパフォーマンスを改善できるものと想定する。
In the present embodiment, it is assumed that the processing performance is empirically improved when the printer driver 203 declares that the banding control is necessary in general printing processing. At the same time, in print processing using a specific application, the performance is greatly deteriorated due to the above-mentioned causes. However, even in such a case, if the banding control is declared unnecessary, the performance will be significantly improved. Suppose you can.

【0049】本実施の形態では、プリンタドライバ20
3の導入時に、前述したような特定のアプリケーション
に関する情報をホストコンピュータ3000の外部メモ
リ11へ予め記憶しておくものとし、その情報へはOS
26が提供するシステムコールを使用してアクセス可能
とする。更に、このアプリケーション情報は、図7に示
したように、アプリケーションの名称を検索キーとして
構成されており、プリンタドライバ203が、バンディ
ング制御が不要であると宣言した方が総じて高速に印刷
処理を行えるといった情報を含め、幾つかの情報を複合
的に指定可能な形態にしている。具体的には、各アプリ
ケーション情報はそれぞれ4バイトで構成され、各ビッ
トフィールドはそれぞれ個別の情報を示しているものと
し、特に最下位ビットが立っていればバンディング制御
が不要である旨を宣言するものとする。
In this embodiment, the printer driver 20
At the time of introduction of the host computer 3, the information on the specific application as described above is stored in the external memory 11 of the host computer 3000 in advance, and the information is stored in the OS
It is accessible using a system call provided by 26. Furthermore, as shown in FIG. 7, the application information is configured using the name of the application as a search key, and the printer driver 203 declares that the banding control is unnecessary, so that the printing process can be performed at a higher speed as a whole. Some information, including such information, can be specified in a complex manner. Specifically, each application information is composed of 4 bytes, and each bit field indicates individual information. If the least significant bit is set, it is declared that banding control is unnecessary. Shall be.

【0050】なお本実施の形態では、アプリケーション
情報をプリンタ導入時に予めホストコンピュータ300
0の外部メモリ11へ静的に記憶しておくとしたが、こ
れに限るものではない。同様の情報をホストコンピュー
タ3000に着脱可能な記憶手段へ記憶しても良い。
In this embodiment, the application information is stored in the host computer 300 before the printer is installed.
0 is statically stored in the external memory 11, but is not limited to this. Similar information may be stored in a storage unit detachable from the host computer 3000.

【0051】以上の前提に基づいて、図6に示すフロー
チャートを参照して処理を説明する。
Based on the above assumptions, the processing will be described with reference to the flowchart shown in FIG.

【0052】プリンタドライバ203は、初期化要求を
受け付けるとステップS31に進み、初期化要求の追加
情報から印刷要求を発行してきたアプリケーションの名
称を取得し、図7に示したアプリケーションの関連情報
をOS26のシステムコールを用いてRAM2へ読み込
む(ステップS32)。続いてステップS33に進み、
プリンタドライバ203は、ステップS31で取得した
アプリケーションの名称をキーにしてアプリケーション
情報を検索し、バンディング制御を必要と宣言した方が
良いか、そうでない方が良いかを判定し(ステップS3
3)、そして図5のステップS4に進んで、プリンタド
ライバ203の能力を宣言する。
Upon receiving the initialization request, the printer driver 203 proceeds to step S31, acquires the name of the application that has issued the print request from the additional information of the initialization request, and stores the application-related information shown in FIG. Is read into the RAM 2 using the system call (step S32). Then, the process proceeds to step S33,
The printer driver 203 searches the application information using the name of the application acquired in step S31 as a key, and determines whether it is better to declare that banding control is necessary or not (step S3).
3) Then, the process proceeds to step S4 in FIG. 5 to declare the capability of the printer driver 203.

【0053】例えば本実施の形態では、最下位ビットが
立っているアプリケーションの名称「SINJUK
U」、「OHSAKI」、「SINAGAWA」を持つ
アプリケーションからの印刷処理でのみバンディング制
御が不要であると宣言し、それ以外のアプリケーション
の場合には、バンディング制御が必要であると宣言する
ことになる。このようにして判定した情報を基に、プリ
ンタドライバ203はプリンタドライバのグラフィック
ス描画能力を含むプリンタデバイスドライバ情報をGD
Iに対して宣言する(ステップS4)。
For example, in this embodiment, the name of the application in which the least significant bit is set is “SINJUK”.
U, "OHSAKI", and "SINAGAWA" declare that banding control is unnecessary only in print processing from an application having the same, and other applications declare that banding control is necessary. . Based on the information determined in this way, the printer driver 203 converts the printer device driver information including the graphics rendering capability of the printer driver into GD.
Declares for I (step S4).

【0054】尚、本実施の形態に示した機能が外部から
インストールされるプログラムによって、ホストコンピ
ュータ3000により遂行されても良い。その場合、そ
の機能がCD−ROMやフラッシュメモリやFD等の記
憶媒体により、或いは、電子メールやパソコン通信等の
ネットワークを介して外部の記憶媒体から、プログラム
を含む情報群を出力装置やホストコンピュータを含むシ
ステム内にロードすることにより、ホストコンピュータ
或いは出力装置に供給される場合でも本発明は適用され
るものである。
The functions described in the present embodiment may be performed by host computer 3000 by a program installed from the outside. In such a case, the function is performed by a storage medium such as a CD-ROM, a flash memory, or an FD, or from an external storage medium via a network such as e-mail or personal computer communication. The present invention can be applied to a case where the data is loaded into a system including a computer and supplied to a host computer or an output device.

【0055】ここまでの実施の形態に示した通り、本実
施の形態に係るプリンタドライバ203は、初期化要求
時に特定のアプリケーション関連情報を取得し、その取
得した情報を基にオペレーティングシステムのグラフィ
ックスエンジンへ宣言するプリンタドライバ能力を選択
し、その選択したプリンタドライバ能力に基づいてプリ
ンタ制御コマンドを生成するので、状況に応じて比較的
に高速な印刷手法を選択して実行できるという効果があ
る。
As described in the above embodiments, the printer driver 203 according to the present embodiment acquires specific application-related information at the time of an initialization request, and performs graphics of the operating system based on the acquired information. Since the printer driver capability to be declared to the engine is selected and the printer control command is generated based on the selected printer driver capability, a relatively high-speed printing method can be selected and executed according to the situation.

【0056】[他の実施の形態]上記で示した第1実施
の形態では、特定のアプリケーションに関する情報を、
プリンタドライバ導入時に予めホストコンピュータ30
00の外部メモリ11へ記憶しておくものとしたが、同
様の情報をプリンタドライバが提供するグラフィックス
ユーザインターフェイスを介してホストコンピュータ3
000上の任意の記憶手段へ動的に記憶するといった構
成をとっても良い。また、ホストコンピュータ3000
上で動作するプリンタドライバ以外のプログラムモジュ
ールを介して、同様の情報を記憶しても良い。
[Other Embodiments] In the first embodiment described above, information on a specific application is
When the printer driver is installed, the host computer 30
The same information is stored in the external memory 11 of the host computer 3 via the graphics user interface provided by the printer driver.
000 may be dynamically stored in any storage means. In addition, the host computer 3000
Similar information may be stored via a program module other than the printer driver that operates on the above.

【0057】以上説明したように本実施の形態によれ
ば、プリンタ制御コマンド生成処理を開始する以前に特
定の情報を取得し、その取得した特定の情報からオペレ
ーティングシステムへ宣言するプリンタドライバ能力を
決定し、その決定したプリンタドライバ能力に基づい
て、プリンタ制御コマンド生成するので、状況に応じて
高速な印刷手法を選択して実行できるという効果があ
る。
As described above, according to the present embodiment, specific information is obtained before starting the printer control command generation process, and the printer driver capability to declare to the operating system is determined from the obtained specific information. Since the printer control command is generated based on the determined printer driver capability, there is an effect that a high-speed printing method can be selected and executed according to the situation.

【0058】尚、本発明は複数の機器(例えばホストコ
ンピュータ、インターフェース機器、リーダ、プリンタ
など)から構成されるシステムに適用しても、又或は一
つの機器からなる装置(複写機、プリンタ、ファクシミ
リ装置など)に適用してもよい。
The present invention can be applied to a system composed of a plurality of devices (for example, a host computer, an interface device, a reader, a printer, etc.) or a device composed of one device (copier, printer, Facsimile machine, etc.).

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

【0060】この場合、記憶媒体から読み出されたプロ
グラムコード自体が前述した実施形態の機能を実現する
ことになり、そのプログラムコードを記憶した記憶媒体
は本発明を構成することになる。このプログラムコード
を供給するための記憶媒体としては、例えば、フロッピ
ーディスク、ハードディスク、光ディスク、光磁気ディ
スク、CD−ROM、CD−R、磁気テープ、不揮発性
のメモリカード、ROMなどを用いることができる。
In this case, the program code itself read from the storage medium implements the functions of the above-described embodiment, and the storage medium storing the program code constitutes the present invention. As a storage medium for supplying the program code, for example, a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, a ROM, and the like can be used. .

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

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

【0063】以上説明したように本実施の形態2によれ
ば、特定のAPIを発行するアプリケーション、特殊な
パラメータによるAPIの使用をするアプリケーショ
ン、ある特定モードにおいて、パフォーマンスの劣化を
引き起こすようなプリンタドライバのコールを行なうよ
うなアプリケーションの名称を登録して保存しておくこ
とを可能にし、その登録、保存されたアプリケーション
の名称に基づいて、より最適な印刷モードを選択でき
る。
As described above, according to the second embodiment, an application that issues a specific API, an application that uses an API with special parameters, and a printer driver that causes performance degradation in a specific mode Can be registered and saved, and a more optimal print mode can be selected based on the registered and saved application name.

【0064】これにより、先に登録されたアプリケーシ
ョンだけでなく、特定のアプリケーションにおいても印
刷スループットの向上、または適正な印刷結果を得るこ
とができるという効果がある。
As a result, there is an effect that the print throughput can be improved or an appropriate print result can be obtained not only for the previously registered application but also for a specific application.

【0065】また、上記登録条件を各デバイスに依存す
るドライバより取得することにより、さらに汎用性の高
い効果を得ることができる。
Further, by obtaining the above-mentioned registration condition from a driver depending on each device, an effect with higher versatility can be obtained.

【0066】[0066]

【発明の効果】以上説明したように本発明によれば、ア
プリケーションに対応してプリンタ制御コマンドの生成
方法を変更することができる。
As described above, according to the present invention, the method of generating a printer control command can be changed in accordance with an application.

【0067】又本発明によれば、アプリケーションに対
応して記憶されている、プリンタ制御コマンドを生成す
るための制御情報を変更可能とすることにより、アプリ
ケーションに対応してプリンタ制御コマンドの生成方法
を動的に変更することができるという効果がある。
Further, according to the present invention, the control information for generating the printer control command, which is stored corresponding to the application, can be changed, so that the method of generating the printer control command corresponding to the application is provided. There is an effect that it can be changed dynamically.

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

【図1】本発明の実施の形態に係る印刷システムにおけ
る、ホストコンピュータ及びプリンタの構成を説明する
ブロック図である。
FIG. 1 is a block diagram illustrating a configuration of a host computer and a printer in a printing system according to an embodiment of the present invention.

【図2】本発明の実施の形態に係る印刷システムのホス
トコンピュータにおける機能構成を示す図である。
FIG. 2 is a diagram showing a functional configuration in a host computer of the printing system according to the embodiment of the present invention.

【図3】本実施の形態に係るホストコンピュータの機能
を説明する機能ブロック図である。
FIG. 3 is a functional block diagram illustrating functions of a host computer according to the present embodiment.

【図4】本実施の形態のホストコンピュータにプリンタ
ドライバがロードされた状態のRAMのメモリマップを
示している図である。
FIG. 4 is a diagram showing a memory map of a RAM in a state where a printer driver is loaded on a host computer of the embodiment.

【図5】本実施の形態のプリンタドライバの処理概略を
示したフローチャートである。
FIG. 5 is a flowchart showing an outline of processing of a printer driver according to the embodiment.

【図6】本実施の形態に係るプリンタドライバの特徴的
処理を説明するフローチャートである。
FIG. 6 is a flowchart illustrating characteristic processing of the printer driver according to the present embodiment.

【図7】本実施の形態に係るプリンタドライバが使用す
るアプリケーション情報を説明する図である。
FIG. 7 is a diagram illustrating application information used by the printer driver according to the present embodiment.

Claims (10)

【特許請求の範囲】[Claims] 【請求項1】 アプリケーションからの印刷要求により
プリンタ制御用コマンドを生成する印刷制御装置であっ
て、 アプリケーションに対応した制御情報を記憶する記憶手
段と、 前記印刷要求を発行したアプリケーションに応じた制御
情報を前記記憶手段から取得する取得手段と、 画像情報を基にプリンタ制御用コマンドを生成するプリ
ンタコマンド生成手段と、 前記アプリケーションからのデータに基づいて前記プリ
ンタコマンド生成手段に応じた描画処理を実行して画像
情報を出力する描画手段と、 前記取得手段により取得された前記制御情報を基に、前
記プリンタコマンド生成手段の能力を決定して前記描画
手段に通知する制御手段と、を有することを特徴とする
印刷制御装置。
1. A print control apparatus for generating a printer control command in response to a print request from an application, comprising: storage means for storing control information corresponding to the application; and control information corresponding to the application issuing the print request. Acquiring from the storage means, a printer command generating means for generating a printer control command based on image information, and executing a drawing process according to the printer command generating means based on data from the application. And a control unit that determines the capability of the printer command generation unit based on the control information acquired by the acquisition unit and notifies the drawing unit of the capability. Printing control device.
【請求項2】 前記プリンタコマンド生成手段は、プリ
ンタドライバ・ソフトウェアであることを特徴とする請
求項1に記載の印刷制御装置。
2. The apparatus according to claim 1, wherein said printer command generation means is printer driver software.
【請求項3】 前記描画手段は、前記アプリケーション
からの描画要求に基づいてラスタライズを行う、OS上
で動作するグラフィックスエンジン・ソフトウェアであ
ることを特徴とする請求項1に記載の印刷制御装置。
3. The print control apparatus according to claim 1, wherein the drawing means is graphics engine software that runs on an OS and performs rasterization based on a drawing request from the application.
【請求項4】 前記制御情報は、前記プリンタコマンド
生成手段が印刷用イメージを印刷用イメージを順次ラス
タライズしたプリンタ制御用コマンドを生成するか否か
の情報を含むことを特徴とする請求項1乃至3のいずれ
か1項に記載の印刷制御装置。
4. The control information according to claim 1, wherein the control information includes information on whether or not the printer command generation means generates a printer control command in which a print image is rasterized sequentially. 4. The print control device according to any one of 3.
【請求項5】 前記アプリケーションは前記OS上で動
作するアプリケーションプログラムであることを特徴と
する請求項3に記載の印刷制御装置。
5. The print control apparatus according to claim 3, wherein the application is an application program that runs on the OS.
【請求項6】 アプリケーションからの印刷要求に基づ
いてプリンタドライバによりプリンタ制御用コマンドを
生成してプリンタ装置に出力する印刷制御方法であっ
て、 印刷要求を発行したアプリケーションに応じた制御情報
を、アプリケーションに対応した制御情報を記憶するメ
モリから取得する取得工程と、 前記取得工程で取得された前記制御情報を基に前記プリ
ンタドライバの能力を決定してOSに通知する工程と、 前記アプリケーションからのデータに基づいて前記プリ
ンタドライバに応じた描画処理を実行して画像情報を前
記プリンタドライバに出力する描画工程と、を有するこ
とを特徴とする印刷制御方法。
6. A print control method for generating a printer control command by a printer driver based on a print request from an application and outputting the command to a printer device, wherein control information corresponding to the application issuing the print request is transmitted to the application. An acquisition step of acquiring from a memory storing control information corresponding to: a step of determining the capability of the printer driver based on the control information acquired in the acquisition step and notifying an OS, and data from the application. A drawing process of executing a drawing process according to the printer driver based on the printer driver and outputting image information to the printer driver.
【請求項7】 前記描画工程は、前記アプリケーション
からの描画要求に基づいてラスタライズを行う、OS上
で動作するグラフィックスエンジン・ソフトウェアによ
り実行されることを特徴とする請求項6に記載の印刷制
御方法。
7. The print control according to claim 6, wherein the drawing step is executed by graphics engine software operating on an OS that performs rasterization based on a drawing request from the application. Method.
【請求項8】 前記制御情報は、前記プリンタドライバ
が印刷用イメージを印刷用イメージを順次ラスタライズ
したプリンタ制御用コマンドを生成するか否かの情報を
含むことを特徴とする請求項6又は7に記載の印刷制御
方法。
8. The apparatus according to claim 6, wherein the control information includes information on whether or not the printer driver generates a printer control command in which the print image is rasterized sequentially. The print control method described in the above.
【請求項9】 前記アプリケーションは前記OS上で動
作するアプリケーションプログラムであることを特徴と
する請求項7に記載の印刷制御方法。
9. The print control method according to claim 7, wherein the application is an application program that runs on the OS.
【請求項10】 請求項6乃至9のいずれか1項に記載
の印刷制御方法を実行するプログラムを記憶したコンピ
ュータにより読み取り可能な記憶媒体。
10. A computer-readable storage medium storing a program for executing the print control method according to claim 6. Description:
JP11106416A 1999-04-14 1999-04-14 Method and device for controlling printing and storage medium storing program for executing the printing controlling method Withdrawn JP2000298565A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11106416A JP2000298565A (en) 1999-04-14 1999-04-14 Method and device for controlling printing and storage medium storing program for executing the printing controlling method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11106416A JP2000298565A (en) 1999-04-14 1999-04-14 Method and device for controlling printing and storage medium storing program for executing the printing controlling method

Publications (1)

Publication Number Publication Date
JP2000298565A true JP2000298565A (en) 2000-10-24

Family

ID=14433078

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11106416A Withdrawn JP2000298565A (en) 1999-04-14 1999-04-14 Method and device for controlling printing and storage medium storing program for executing the printing controlling method

Country Status (1)

Country Link
JP (1) JP2000298565A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004029744A (en) * 2002-04-15 2004-01-29 Microsoft Corp Method and apparatus for facilitating processing of interlaced video image for progressive video display
US7929754B2 (en) 2003-08-01 2011-04-19 Microsoft Corporation Strategies for processing image information using a color information data structure
JP2019066911A (en) * 2017-09-28 2019-04-25 ブラザー工業株式会社 Printer driver, and information processing device

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004029744A (en) * 2002-04-15 2004-01-29 Microsoft Corp Method and apparatus for facilitating processing of interlaced video image for progressive video display
JP2010068544A (en) * 2002-04-15 2010-03-25 Microsoft Corp Method and apparatus for facilitating processing of interlaced video image for progressive video display
US7876379B2 (en) 2002-04-15 2011-01-25 Microsoft Corporation Methods and apparatuses for facilitating processing of interlaced video images for progressive video displays
JP4625241B2 (en) * 2002-04-15 2011-02-02 マイクロソフト コーポレーション Method and apparatus for facilitating processing of interlaced video images for progressive video display
US8176500B2 (en) 2002-04-15 2012-05-08 Microsoft Corporation Closing a video stream object
US7929754B2 (en) 2003-08-01 2011-04-19 Microsoft Corporation Strategies for processing image information using a color information data structure
US8428346B2 (en) 2003-08-01 2013-04-23 Microsoft Corporation Strategies for processing image information using a color information data structure
JP2019066911A (en) * 2017-09-28 2019-04-25 ブラザー工業株式会社 Printer driver, and information processing device

Similar Documents

Publication Publication Date Title
US7884952B2 (en) Print control apparatus, print control method, and program for implementing the method
US6493099B2 (en) Print control apparatus and method
JP4785579B2 (en) Information processing apparatus, print setting reflection method and program in information processing apparatus
JP3747130B2 (en) Information processing apparatus, message display method, interface apparatus, and storage medium storing computer-readable program
JP2002041261A (en) Information processing device, information processing method, and storage medium which stores computer- readable program
JP3907362B2 (en) Printing control method and apparatus, and printing system
US7289235B2 (en) Information processing device, information processing system, method for controlling information processing device, storage medium and control program
US20030038959A1 (en) Data processing apparatus capable of communicating with output apparatus and its data processing method
JP2002091728A (en) Information processor, printing system and command generating method
JP3667043B2 (en) Information processing system, information processing apparatus, and print control method
JP4467855B2 (en) Information processing apparatus, information processing method, and program
JP2006171861A (en) Information processor, printing method, recording medium and program
JPH10278362A (en) Apparatus and method for controlling printing and printing system
JP2000298565A (en) Method and device for controlling printing and storage medium storing program for executing the printing controlling method
US20040263892A1 (en) Information processisng apparatus, information processing method, and control program
JP2000099291A (en) Print controller, data processing method for the same and storage medium storing computer readable program
JP4100912B2 (en) Information processing apparatus, control method therefor, program, and storage medium
JP2004038527A (en) Printer driver, printing control method, computer-readable storage medium, and program
JP3870042B2 (en) Print control apparatus and print control method
JP2000185445A (en) Method and apparatus for printing control
JP3962559B2 (en) Print control apparatus and print control method
JP2000218901A (en) Apparatus and method for processing information and memory medium for storing computer readable program
JP2005159764A (en) Recording method, apparatus, program, and storage medium
JP2002328786A (en) Information processor and information processing method and printing control program and storage medium and printing control system
JP2003167701A (en) Printing system, printing preview method, program, printer driver, and preview method by printer driver

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060704