JP2008009593A - Printing control device, printing system, method for controlling printing device, driver program, and recording medium with program recorded - Google Patents
Printing control device, printing system, method for controlling printing device, driver program, and recording medium with program recorded Download PDFInfo
- Publication number
- JP2008009593A JP2008009593A JP2006177851A JP2006177851A JP2008009593A JP 2008009593 A JP2008009593 A JP 2008009593A JP 2006177851 A JP2006177851 A JP 2006177851A JP 2006177851 A JP2006177851 A JP 2006177851A JP 2008009593 A JP2008009593 A JP 2008009593A
- Authority
- JP
- Japan
- Prior art keywords
- band
- printing
- data
- rendering
- priority
- 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
Links
Images
Abstract
Description
本発明は、XMLなどのマークアップ言語により記述したデータから、印刷装置が処理
可能な画像データを生成し、画像データに従って行われる印刷処理を制御する印刷制御装
置、印刷システム、印刷装置の制御方法、ドライバプログラム、及びそのプログラムを記
録した記録媒体に関する。
The present invention generates image data that can be processed by a printing apparatus from data described in a markup language such as XML, and controls a printing process performed in accordance with the image data. The present invention relates to a driver program and a recording medium on which the program is recorded.
従来、マークアップ言語の1つであるXML(Extensible Markup Language)により記述
されたデータ(以下、「XMLドキュメント」ともいう)を処理可能としたXMLプリン
タが知られている。
2. Description of the Related Art Conventionally, an XML printer that can process data (hereinafter, also referred to as “XML document”) described in XML (Extensible Markup Language), which is one of markup languages, is known.
例えば、特許文献1に記載の技術では、プリンタドライバが、XMLドキュメントの内
容を展開してプリンタが解釈可能な言語又はビットマップ形式で表された画像データを生
成している。
For example, in the technology described in
特許文献2に記載の技術では、XMLドキュメントにネットワーク上のアドレス情報が
含まれる場合に、ネットワーク上にあるアドレス情報の指定先のサーバと通信して、オブ
ジェクトなどのデータを取得し、通信して取得したデータを組み込んだXMLドキュメン
トを解釈してレンダリングすることにより、画像データを生成している。
In the technique described in
ここで、プリンタが処理に要するメモリ領域を節約するために、画像を所定の高さで区
分したバンドごとに処理することがある。このようなプリンタでXMLドキュメントを扱
うためには、XMLドキュメントから生成した画像をバンドごとに区切って、バンドごと
の画像データ(以下、「バンドデータ」という)をプリンタに順次供給する必要がある。
Here, in order to save a memory area required for processing by the printer, an image may be processed for each band divided by a predetermined height. In order to handle an XML document with such a printer, it is necessary to divide an image generated from the XML document into bands and sequentially supply image data for each band (hereinafter referred to as “band data”) to the printer.
例えば、図11に示すように、XMLドキュメントを解釈して得られる複数の描画命令
に対応して、複数の図形が描画された画像を印刷対象として扱う場合、印刷時の用紙搬送
方向(Y方向)の上端から所定の高さ(画素数)ごとに画像を区切るようにして複数のバ
ンドに区分し、各バンドごとに処理が行われる。具体的には、区分したバンドを端から順
にバンド0、バンド1、…と昇順の番号により各バンドを称すると、プリンタドライバは
、バンド0より順番にバンドデータを送信して、プリンタは、色変換処理・スクリーン処
理などの印刷処理を各バンドデータごとに行う。これにより、各バンドの印刷内容が次々
に印刷されるようにして印刷対象となる画像全体が印刷される。
For example, as shown in FIG. 11, in the case where an image on which a plurality of figures are drawn is handled as a print target in response to a plurality of drawing commands obtained by interpreting an XML document, the paper transport direction (Y direction at the time of printing) ) Are divided into a plurality of bands so as to divide the image at predetermined heights (number of pixels) from the upper end of), and processing is performed for each band. Specifically, when the divided bands are referred to by
このように、プリンタがバンドごとに印刷処理を行うとした場合、各バンドの印刷処理
は各バンドのバンドデータに従って行うので、XMLドキュメントに対する印刷が開始さ
れるタイミングは、プリンタドライバより先頭バンドのバンドデータを受け取るタイミン
グに依存する。すなわち、プリンタが先頭バンドのバンドデータを受け取ると、印刷対象
のXMLドキュメントに対応する印刷処理が開始可能となる。
As described above, when the printer performs the printing process for each band, the printing process for each band is performed according to the band data for each band. Depends on the timing of receiving data. That is, when the printer receives the band data of the first band, the printing process corresponding to the XML document to be printed can be started.
しかしながら、XMLドキュメントに記述された描画命令は描画位置に従って順番に記
述されているとは限らないので、プリンタドライバが、先頭のバンドデータを生成するた
めには、XMLドキュメントの全描画命令についての解釈・展開を待ってから生成する必
要がある。
However, since the rendering commands described in the XML document are not always described in order according to the rendering position, the printer driver interprets all the rendering commands in the XML document in order to generate the first band data.・ It must be generated after waiting for expansion.
例えば、XMLドキュメントを記述の順番に解釈・展開して、図11に示すように3つ
のオブジェクトOB1,OB2,OB3を順番に描画する場合、2つのオブジェクトOB
1,OB3が先頭バンド(バンド0)のバンド領域に掛かっているため、オブジェクトO
B1を描画した時点で、先頭バンドのバンドデータを得ることはできない。先頭バンドの
バンドデータを得るためには、少なくとも、3つ目のオブジェクトOB3が描画されるま
で待つ必要がある。
For example, when an XML document is interpreted and expanded in the order of description and three objects OB1, OB2, and OB3 are drawn in order as shown in FIG. 11, two objects OB are drawn.
1, OB3 is in the band area of the first band (band 0), so the object O
When B1 is drawn, the band data of the first band cannot be obtained. In order to obtain the band data of the first band, it is necessary to wait at least until the third object OB3 is drawn.
このように、XMLドキュメントを記述順に解釈して得られる描画命令の順番は、描画
位置との関わりがないために、XMLドキュメントに記述された全描画命令を展開し終え
るまで、先頭バンドのバンドデータを確定することができない。このため、プリンタが、
先頭バンドのバンドデータに従って印刷処理を開始するタイミングが遅くなってしまうと
いう課題があった。
As described above, the order of drawing commands obtained by interpreting the XML document in the order of description has no relation to the drawing position, and therefore, the band data of the first band until all drawing commands described in the XML document are expanded. Cannot be determined. Because of this, the printer
There is a problem that the timing for starting the printing process is delayed according to the band data of the first band.
そこで、本発明は、XMLなどのマークアップ言語により記述したデータについての印
刷を行う際に、より早いタイミングで印刷を開始することができる印刷制御装置、印刷シ
ステム、印刷装置の制御方法、ドライバプログラム、及びそのプログラムを記録した記録
媒体を提供することを目的とする。
Accordingly, the present invention provides a print control apparatus, a printing system, a printing apparatus control method, and a driver program that can start printing at an earlier timing when printing data described in a markup language such as XML. And a recording medium on which the program is recorded.
上記課題を解決するために、本発明は、印刷対象の画像を所定の高さに区分したバンド
ごとに行う印刷処理を、印刷装置に次々に実行させる印刷制御装置であって、印刷対象の
画像をマークアップ言語で記述した入力データを受け付ける入力手段と、入力データを解
釈して、印刷対象の画像を描画するための描画命令を取得する第1の解釈手段と、入力デ
ータを解釈して、印刷処理の実行順が先頭より所定数までのバンドである先頭バンドに掛
かる描画範囲を有した優先描画命令を探索する第2の解釈手段と優先描画命令を展開して
先頭バンドのバンドデータを生成してから、描画命令を展開して先頭バンド以降のバンド
についてのバンドデータを生成する展開手段と、バンドデータが生成されると、当該バン
ドデータに従う印刷処理を印刷装置に行わせる印刷制御手段とを備えることを特徴とする
。
In order to solve the above-described problem, the present invention provides a print control apparatus that causes a printing apparatus to sequentially execute a printing process for each band in which an image to be printed is divided into predetermined heights. Input means for receiving input data described in a markup language, first interpretation means for interpreting the input data and obtaining a drawing command for drawing an image to be printed, interpreting the input data, The second interpreting means for searching for a priority drawing command having a drawing range applied to the first band, which is a band in which the print processing execution order is a predetermined number of bands from the first, and the priority drawing command are expanded to generate band data of the first band. Then, a developing means for expanding the drawing command to generate band data for the band after the first band, and when the band data is generated, print processing according to the band data is printed. Characterized in that it comprises a print control means for causing the location.
この構成によれば、先頭バンドに掛かる優先描画命令を展開して、印刷装置に先頭バン
ドについての印刷処理を行わせてから、入力データより取得される描画命令を展開して印
刷装置に先頭バンド以降のバンドについての印刷処理を行わせる。印刷装置は、先頭バン
ド以降のバンドについての描画命令の展開を待つことなく、先頭バンドのバンドデータが
供給されたタイミングで当該先頭バンドの印刷処理を開始するので、入力データに対応し
た印刷を開始するタイミングを早めることができる。また、印刷終了のタイミングも早ま
ることになるので、例えば、ユーザが印刷指示を出してから印刷終了までの待ち時間を短
縮することができ、ユーザにとっての利便性をより高めることができる。
According to this configuration, the priority drawing command applied to the first band is expanded and the printing device performs printing processing for the first band, and then the drawing command acquired from the input data is expanded and the first band is displayed on the printing device. Print processing for subsequent bands is performed. The printing device starts printing for the first band at the timing when the band data of the first band is supplied without waiting for the development of the drawing command for the bands after the first band, so printing corresponding to the input data is started. The timing to do can be advanced. In addition, since the timing of the end of printing is also advanced, for example, the waiting time from when the user issues a print instruction until the end of printing can be shortened, and the convenience for the user can be further improved.
また、本発明の印刷制御装置において、第2の解釈手段は、入力データの記述のうち、
優先描画命令に対応する記述を特定し、第1の解釈手段は、特定された記述を優先して解
釈することにより、優先描画命令を取得することが好ましい。
In the print control apparatus of the present invention, the second interpreting means includes:
It is preferable that the description corresponding to the priority rendering command is specified, and the first interpreter obtains the priority rendering command by interpreting the specified description with priority.
この構成によれば、第2の解釈手段が優先描画命令に対応する記述を特定し、第1の解
釈手段が入力データのうちの優先描画命令に対応する記述を優先して解釈して優先描画命
令を取得することにより、印刷開始のタイミングを早めた処理を行うことができる。
According to this configuration, the second interpreter specifies a description corresponding to the priority rendering command, and the first interpreter preferentially interprets the description corresponding to the priority rendering command in the input data and performs priority rendering. By acquiring the command, it is possible to perform processing with earlier timing of printing.
また、本発明の印刷制御装置において、第2の解釈手段が優先描画命令に対応する記述
を特定すると、第1の解釈手段が当該特定された記述を解釈して優先描画命令を取得する
処理と、第2の解釈手段が次の優先描画命令に対応する記述を探索する処理とを並列して
実行させることが好ましい。
In the printing control apparatus of the present invention, when the second interpreting unit specifies a description corresponding to the priority rendering command, the first interpreting unit interprets the specified description and acquires the priority rendering command. It is preferable that the second interpretation means execute in parallel the process of searching for a description corresponding to the next priority rendering command.
この構成によれば、第1の解釈手段が、優先描画命令に対応する記述を解釈していると
きに、第2の解釈手段は、次の優先描画命令の記述を特定するようにして、2つの処理を
並列処理するため、処理効率が高まり、印刷開始のタイミングをより早めることが可能に
なる。
According to this configuration, when the first interpretation unit interprets the description corresponding to the priority rendering command, the second interpretation unit specifies the description of the next priority rendering command so that 2 Since the two processes are processed in parallel, the processing efficiency is increased, and the print start timing can be further advanced.
また、本発明の印刷制御装置において、マークアップ言語は、XML、HTML又はX
HTMLのいずれかであることが好ましい。
In the printing control apparatus of the present invention, the markup language is XML, HTML, or X
It is preferably any one of HTML.
この構成によれば、XML、HTML又はXHTMLの形式の入力データに対応する印
刷をより早いタイミングで開始することができるようになる。
According to this configuration, printing corresponding to input data in the XML, HTML, or XHTML format can be started at an earlier timing.
また、本発明のもうひとつの態様は、印刷装置と、印刷対象の画像を所定の高さに区分
したバンドごとに行う印刷処理を、印刷装置に次々に実行させる印刷制御装置とを備える
印刷システムであって、印刷制御装置は、印刷対象の画像をマークアップ言語で記述した
入力データを受け付ける入力手段と、入力データを解釈して、印刷対象の画像を描画する
ための描画命令を取得する第1の解釈手段と、入力データを解釈して、印刷処理の実行順
が先頭より所定数までのバンドである先頭バンドに掛かる描画範囲を有した優先描画命令
を探索する第2の解釈手段とを備え、印刷装置は、優先描画命令を展開して先頭バンドの
バンドデータを生成してから、描画命令を展開して先頭バンド以降のバンドについてのバ
ンドデータを生成する展開手段と、バンドデータが生成されると、当該バンドデータに従
う印刷処理を実行する印刷処理部とを備えることを特徴とする。
According to another aspect of the present invention, there is provided a printing system comprising: a printing apparatus; and a printing control apparatus that causes the printing apparatus to sequentially execute printing processing for each band obtained by dividing an image to be printed into a predetermined height. The print control apparatus receives input data describing an image to be printed in a markup language, interprets the input data, and obtains a drawing command for drawing the image to be printed. 1 interpreting means, and second interpreting means for interpreting input data and searching for a priority rendering command having a rendering range applied to a leading band in which the order of execution of printing processing is a band from the top to a predetermined number of bands. And a printing device that expands a priority drawing command to generate band data of the first band, and then expands the drawing command to generate band data for bands after the first band. When the band data is generated, characterized in that it comprises a print processing unit for executing printing processing according to the band data.
この構成によれば、印刷を開始するタイミングを早めた、利便性の高い印刷システムを
得ることができる。
According to this configuration, it is possible to obtain a highly convenient printing system in which the timing for starting printing is advanced.
また、本発明は方法の発明とすることができる。すなわち、本発明は、印刷対象の画像
を所定の高さに区分したバンドごとに行う印刷処理を、印刷装置に次々に実行させる印刷
装置の制御方法であって、印刷対象の画像をマークアップ言語で記述した入力データを受
け付ける入力工程と、入力データを解釈して、印刷対象の画像を描画するための描画命令
を取得する第1の解釈工程と、入力データを解釈して、印刷処理の実行順が先頭より所定
数までのバンドである先頭バンドに掛かる描画範囲を有した優先描画命令を探索する第2
の解釈工程と、優先描画命令を展開して先頭バンドのバンドデータを生成する第1の展開
工程と、描画命令を展開して先頭バンド以降のバンドについてのバンドデータを生成する
第2の展開工程と、バンドデータが生成されると、当該バンドデータに従う印刷処理を印
刷装置に行わせる印刷制御工程とを備えることを特徴とする。
The present invention can also be a method invention. That is, the present invention is a method for controlling a printing apparatus that causes a printing apparatus to sequentially perform printing processing for each band obtained by dividing an image to be printed into a predetermined height. An input process for receiving the input data described in 1), a first interpretation process for interpreting the input data to obtain a drawing command for rendering an image to be printed, and executing the printing process by interpreting the input data A second search for a priority drawing command having a drawing range that is applied to the first band, which is a band from the beginning to a predetermined number of bands.
A first expansion step of expanding the priority drawing command to generate band data of the first band, and a second expansion step of expanding the drawing command to generate band data for the bands after the first band And a print control step for causing the printing apparatus to perform a printing process in accordance with the band data when the band data is generated.
さらに、本発明はプログラム及びそのプログラムを記録した記録媒体とすることができ
る。本発明は、印刷対象の画像を所定の高さに区分したバンドごとに行う印刷処理を、印
刷装置に次々に実行させるためのドライバプログラムであって、コンピュータを、印刷対
象の画像をマークアップ言語で記述した入力データを受け付ける入力手段、入力データを
解釈して、印刷対象の画像を描画するための描画命令を取得する第1の解釈手段、入力デ
ータを解釈して、印刷処理の実行順が先頭より所定数までのバンドである先頭バンドに掛
かる描画範囲を有した優先描画命令を探索する第2の解釈手段、優先描画命令を展開して
先頭バンドのバンドデータを生成してから、描画命令を展開して先頭バンド以降のバンド
についてのバンドデータを生成する展開手段、バンドデータが生成されると、印刷装置と
の通信を行う通信手段を介して当該バンドデータを印刷装置に順次供給して、当該バンド
データに従う印刷処理を印刷装置に行わせる印刷制御手段、として機能させることを特徴
とする。
Furthermore, the present invention can be a program and a recording medium on which the program is recorded. The present invention relates to a driver program for causing a printing apparatus to sequentially execute a printing process for each band in which an image to be printed is divided into predetermined heights. An input means for receiving the input data described in 1), a first interpretation means for interpreting the input data and obtaining a drawing command for drawing an image to be printed; Second interpretation means for searching for a priority drawing command having a drawing range applied to the first band, which is a band up to a predetermined number from the first, and generating the band data of the first band by expanding the priority drawing command, and then drawing command Is expanded to generate band data for the first and subsequent bands, and when the band data is generated, the communication is performed via communication means for communicating with the printing apparatus. Sequentially supplying a band data to the printing apparatus, characterized in that to function printing process according the band data printing control means for causing the printing apparatus as a.
このドライバプログラムを記録した記録媒体としては、フレキシブルディスク、CD−
ROM、DVD−ROM、ICカード、又はメモリカードなどコンピュータが読み取り可
能な種々の媒体を利用することができる。
As a recording medium on which the driver program is recorded, a flexible disk, a CD-
Various media that can be read by a computer such as a ROM, a DVD-ROM, an IC card, or a memory card can be used.
以下、本発明を具体化した実施形態について図面を参照して説明する。 DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, embodiments of the invention will be described with reference to the drawings.
図1は、本実施形態に係る印刷システムの構成を示したブロック図である。図1に示す
ように、印刷システム1は、ホストコンピュータ(印刷制御装置)2及びプリンタ(印刷
装置)3を備えている。
FIG. 1 is a block diagram illustrating a configuration of a printing system according to the present embodiment. As shown in FIG. 1, the
ホストコンピュータ2は、例えば汎用のパーソナルコンピュータであり、図1に示すよ
うに、CPU20、ROM21、RAM22、ハードディスク(HD)23、CD−RO
Mドライブ24、ネットワークインターフェイス(ネットワークI/F)25、及び通信
インターフェイス(通信I/F)26を備えている。通信I/F26は、ケーブルを介し
てプリンタ3が接続されており、ホストコンピュータ2とプリンタ3とは相互にデータ通
信可能となっている。また、ネットワークI/F25はLANケーブルなどを介してネッ
トワークサーバ4と接続されており、ネットワークサーバ4と所定のプロトコルに従う通
信を行うことにより、ホストコンピュータ2はインターネットに接続可能である。
The
An M drive 24, a network interface (network I / F) 25, and a communication interface (communication I / F) 26 are provided. The communication I /
CPU20は、ホストコンピュータ2の各構成を制御する部分であり、ハイパー・スレ
ッディング・テクノロジなどのマルチスレッドに対応させる技術や、処理単位となるプロ
セッサコアを複数個有することにより、複数の処理を並列に実行可能な構成になっている
。これにより、CPU20は、後述する第1XML解釈部として行う処理と第2XML解
釈部として行う処理とを並列に実行する。もっとも、2つ以上のCPUを備えた構成とす
ることにより、第1XML解釈部、第2XML解釈部として行う処理を並列処理してもよ
い。
The
ROM21はホストコンピュータ2を制御するための所定のプログラムなどが記録され
た不揮発性のメモリ、RAM22はワーキングメモリなどに用いる汎用のメモリである。
The
HD23は、アプリケーションプログラムや本発明に係るドライバプログラムなどを記
録している。なお、ドライバプログラムはHD23に予め記録されていてもよいし、CD
−ROM5などの記録媒体に記録された形態で供給され、CPU20がCD−ROMドラ
イブ24によりCD−ROM5からプログラムを読み出し、読み出したプログラムをHD
23に記録するものとしてもよい。
The
-The program is supplied in a form recorded on a recording medium such as the
23 may be recorded.
そして、CPU20が、所定のオペレーションシステムの下で、HD23に記録された
アプリケーションプログラムを実行することによりアプリケーション100が機能し、ド
ライバプログラムを読み出して実行することによりプリンタドライバ200が機能する(
図2参照)。
The
(See FIG. 2).
アプリケーション100は、文書作成ソフトウェアやウェブブラウザなどのプリンタ3
に対する印刷要求元である。アプリケーション100は、文書作成ソフトウェアにより作
成されたXMLドキュメントや、ウェブブラウザがネットワークサーバ4と通信するよう
にしてインターネットから取得したXMLドキュメントなどを印刷の対象として、印刷要
求及びXMLドキュメントを含む所定のフォーマットの印刷データをプリンタドライバ2
00に受け渡す処理を行う。
The
Print request source. The
Processing to transfer to 00 is performed.
プリンタドライバ200は、アプリケーション100から印刷データを受け取ると、X
MLドキュメント(入力データ)を解釈して描画処理を行うことにより、プリンタ3が処
理可能なフォーマットの画像データを生成し、この印刷用の画像データを通信I/F26
を介してプリンタ3に送信する部分である。これらの処理を行うため、図2に示すように
、プリンタドライバ200は、制御部210、XMLパース部220及びレンダリング部
230を備えている。
When the
By interpreting the ML document (input data) and performing drawing processing, image data in a format that can be processed by the
This is the part that transmits to the
制御部210は、XMLパース部220及びレンダリング部230を制御して、XML
ドキュメントに対する各種の処理を行わせる部分である。そのため、制御部210は、ア
プリケーション100から受け渡されたXMLドキュメントに入力処理を行うXMLドキ
ュメント入力部(入力手段)211と、XMLパース部220及びレンダリング部230
とのデータ授受を制御するデータ制御部212と、バンドデータをプリンタ3に出力して
バンドごとの印刷処理を行わせる印刷制御部213とを有している。
The
This is the part that performs various processing on the document. Therefore, the
A
XMLパース部220は、XMLドキュメントを解釈してXMLドキュメントの描画内
容を表す描画命令を取得し、解釈して取得した描画命令を制御部210に受け渡す部分で
ある。このXMLパース部220は、第1XML解釈部221と第2XML解釈部222
とを有している。
The
And have.
第2XML解釈部222は、XMLドキュメントを解釈して得られる複数の描画命令の
うち、先頭バンド(バンド0)を描画するために必要な描画命令に対応する記述を特定す
る処理を行う。具体的には、XMLドキュメントの記述を先頭から順番に解釈して、先頭
バンドに掛かる描画範囲の描画命令を探索することにより、先頭バンドを描画するために
必要な描画命令が記述された行番号を特定する処理を行う。なお、ここで探索された、先
頭バンドを描画するために必要な描画命令を、以下では「優先描画命令」と呼ぶことにす
る。
The second
第1XML解釈部221は、XMLドキュメントの記述を解釈して描画命令を取得する
部分である。そのため、まず、XMLドキュメントの記述のうち、第2XML解釈部22
2が特定した行番号の記述を解釈して、優先描画命令を取得する処理を行う。そして、第
1XML解釈部221は、この先頭バンド用の描画命令を取得して制御部210に受け渡
すと、先頭バンド以降のバンドを処理するため、XMLドキュメントの先頭の記述から順
番に解釈し、記述順に描画命令を取得して、制御部210に順次受け渡す処理を行う。な
お、このとき取得される描画命令を、以下では「優先描画命令」に対して「通常の描画命
令」と呼ぶことにする。
The first
The processing of acquiring the preferential rendering command is performed by interpreting the description of the line number specified by 2. Then, when the first
レンダリング部230は、制御部210を介してXMLパース部220から受け渡され
た描画命令をビットマップ形式のオブジェクト画像に展開し、展開したオブジェクト画像
を配置するようにして、ビットマップ形式の画像データを生成するレンダリング処理を実
行する。そして、生成した画像データは、プリンタ3に出力するためいったん制御部21
0に受け渡す処理を行う。
The
Processing to pass to 0 is performed.
また、XMLパース部220は、上述したように、先頭バンド用の優先描画命令に続け
て先頭バンド以降のバンドの通常の描画命令を受け渡すようにしており、レンダリング部
230は、これらの描画命令を制御部210を介して受け取った順番に処理する。すなわ
ち、レンダリング部230は、先頭バンド用の優先描画命令から先頭バンドのバンドデー
タを生成し制御部210に受け渡してから、続けて受け取った通常の描画命令から先頭バ
ンド以降のバンドデータを生成し、制御部210に受け渡している。
In addition, as described above, the
制御部210がレンダリング部230からバンドデータを受け取ると、印刷制御部21
3は、そのバンドデータをプリンタ3に出力するようにして、プリンタ3にバンドデータ
に従う色変換・スクリーン処理などの印刷処理を次々に行わせる。これにより、プリンタ
3に、先頭バンドを印刷させてから、先頭バンド以降のバンドを次々に印刷させるように
して、XMLドキュメントに記述された印刷対象となる画像全体を印刷させる。
When the
3 outputs the band data to the
なお、印刷処理のうちの一部、例えば色変換処理についてはホストコンピュータ側で行
って、色変換後のバンドデータをプリンタ3に出力するようにしてもよい。
Note that part of the printing process, for example, the color conversion process may be performed on the host computer side, and the band data after the color conversion may be output to the
このように、本実施形態に係るプリンタドライバ200は、先頭バンド以降のバンドに
ついての通常の描画命令を展開する前に、先頭バンドについての優先描画命令を優先的に
展開して先頭バンドのバンドデータを生成し、先頭バンドについての印刷処理をプリンタ
3に行わせている。すなわち、先頭バンドについての処理は、先頭バンド以外のバンドよ
り優先して行うようにしている。
As described above, the
次に、XMLドキュメントが入力された際にプリンタドライバ200が行う詳細な処理
について、図3を参照しながら、図4〜図7のフローチャートに従って順番に説明する。
なお、図3は、制御部210、XMLパース部220及びレンダリング部230間でのデ
ータの動きを示した図であり、図4は制御部210、図5は第2XML解釈部222、図
6は第1XML解釈部221、図7はレンダリング部230が行う処理手順を示している
。
Next, detailed processing performed by the
3 is a diagram showing data movement among the
制御部210は、アプリケーション100からXMLドキュメントを受け取ると図4に
示す処理を開始する。処理を開始すると、まず、ステップS100において、XMLドキ
ュメント入力部211は入力されたデータがXMLドキュメントであることを認識して入
力処理を行う(図3(1)参照)。
When the
次に、ステップS110では、データ制御部212は、入力されたXMLドキュメント
をXMLパース部220に受け渡す(図3(2)参照)。
Next, in step S110, the
ここで、実際には、XMLドキュメントを受け渡した後、制御部210は後述するステ
ップS120の処理を行うが、説明の便宜のため、以下では、制御部210から受け渡さ
れたXMLドキュメントに対してXMLパース部220の第2XML解釈部222が行う
処理から説明する。
Here, in actuality, after delivering the XML document, the
第2XML解釈部222は、データ制御部212からXMLパース部220にXMLド
キュメントが受け渡されると図5に示す処理を開始する。処理を開始すると、ステップS
200において、受け渡されたXMLドキュメントを構成する記述のうち、未処理の記述
があるか否かを判断して、未処理の記述があれば(ステップS200:Yes)、ステッ
プS210に進む。未処理の記述がなければ(ステップS200:No)、ステップS2
50に進む。
When the XML document is delivered from the
In 200, it is determined whether there is an unprocessed description among the descriptions constituting the delivered XML document. If there is an unprocessed description (step S200: Yes), the process proceeds to step S210. If there is no unprocessed description (step S200: No), step S2
Proceed to 50.
ステップS210に処理が進むと、第2XML解釈部222は、XMLドキュメントの
データを解釈(パース)して、描画命令の描画範囲を取得する。なお、ここで行うパース
は描画命令単位で行う処理であり、XMLドキュメントの記述を順番に処理して、1つの
描画命令についての描画範囲を取得するとステップS220に進む。
When the processing proceeds to step S210, the second
ステップS220では、第2XML解釈部222は、取得した描画命令を判断の対象と
して、判断対象の描画命令の描画範囲が先頭バンドのバンド領域に掛かっているか否かを
判断する。
In step S220, the second
このときの処理について図8に示すXMLドキュメント及び図9に示す描画例を用いて
説明する。図8に示すように、XMLドキュメントは、各行ごとに記述されたタグ及びタ
グに囲まれる部分に描画内容が記述されることにより構成されている。図8の例では、左
端に示した行番号に従うと、「3」,「4」行目及び「m」,「m+1」行目に描画内容
の記述を含んでいる。
The processing at this time will be described using the XML document shown in FIG. 8 and the drawing example shown in FIG. As shown in FIG. 8, the XML document is configured by describing rendering contents in a tag described for each line and a portion surrounded by the tag. In the example of FIG. 8, according to the line number shown at the left end, the description of the drawing contents is included in the “3” and “4” lines and the “m” and “m + 1” lines.
具体的には、図8に示すXMLドキュメントによれば、行番号「3」の記述により描画
開始位置A(x=x1,y=y1)が指定され、行番号「4」の記述により描画開始位置
Aから、位置B(x2,y1),C(x2,y2),D(x1,y2)を順番に通って描
画開始位置Aに戻る線からなる1つのオブジェクトOB(4)を描画する描画内容が取得
される。同様に、行番号「m」の記述により描画開始位置E(x3,y3)が指定され、
行番号「m+1」の記述により描画開始位置Eから、位置F(x4,y3),G(x4,
y4),H(x3、y4)を順番に通って描画開始位置Eに戻る線からなる1つのオブジ
ェクトOB(m+1)を描画する描画内容が指定される。したがって、Y方向について、
オブジェクトOB(4)の描画範囲は「y1〜y2」、オブジェクトOB(m+1)の描
画範囲は「y3〜y4」となる。
Specifically, according to the XML document shown in FIG. 8, the drawing start position A (x = x1, y = y1) is specified by the description of the line number “3”, and the drawing start is described by the description of the line number “4”. Drawing that draws one object OB (4) consisting of a line that returns from the position A to the drawing start position A through the positions B (x2, y1), C (x2, y2), and D (x1, y2) in order. The content is acquired. Similarly, the drawing start position E (x3, y3) is designated by the description of the line number “m”,
From the drawing start position E according to the description of the line number “m + 1”, positions F (x4, y3), G (x4,
The drawing content for drawing one object OB (m + 1) consisting of a line passing through y4) and H (x3, y4) in order and returning to the drawing start position E is designated. Therefore, for the Y direction,
The drawing range of the object OB (4) is “y1 to y2”, and the drawing range of the object OB (m + 1) is “y3 to y4”.
ここで、用紙搬送方向は用紙の短辺方向(X方向)又は長辺方向(Y方向)であるが、
用紙搬送方向はY方向であるものとすると、バンド領域はY方向に一定のバンド幅BHご
とに区分され、先頭バンド(バンド0)の範囲はY方向について「0〜BH」となる。
Here, the paper conveyance direction is the short side direction (X direction) or the long side direction (Y direction) of the paper.
Assuming that the paper transport direction is the Y direction, the band area is divided into a certain band width BH in the Y direction, and the range of the leading band (band 0) is “0 to BH” in the Y direction.
ステップS220の判断では、第2XML解釈部222は、先頭バンドの範囲が判断対
象の描画命令の描画範囲に掛かっているか、すなわち範囲の重複が一部にでも存在してい
るか否かを判断することにより行う。例えば、図9の例に示すように、「y1,y2,y
4>BH>y3」である場合、Y方向の描画範囲「y3〜y4」であるオブジェクトOB
(m+1)は、「y3〜BH」の範囲で先頭バンドの範囲と一部重複する。このとき、オ
ブジェクトOB(m+1)の描画命令の描画範囲は、先頭バンドのバンド領域に掛かって
いると判断される。一方、オブジェクトOB(4)の描画範囲「y1〜y2」は先頭バン
ドの範囲と重複していないので、オブジェクトOB(4)の描画命令の描画範囲は、先頭
バンドのバンド領域に掛かっていないと判断される。こうして、描画範囲が先頭バンドに
掛かっていれば(ステップS220:Yes)、ステップS230に進み、先頭バンドに
掛かっていなければ(ステップS220:No)、ステップS200に戻ってXMLドキ
ュメントに含まれる次の描画命令の記述について処理を行う。
In the determination in step S220, the second
4>BH> y3 ”, the object OB in the Y-direction drawing range“ y3 to y4 ”
(M + 1) partially overlaps the range of the first band in the range of “y3 to BH”. At this time, it is determined that the drawing range of the drawing command for the object OB (m + 1) is over the band area of the leading band. On the other hand, since the drawing range “y1 to y2” of the object OB (4) does not overlap with the range of the leading band, the drawing range of the drawing command of the object OB (4) does not cover the band region of the leading band. To be judged. Thus, if the drawing range is applied to the first band (step S220: Yes), the process proceeds to step S230. If the drawing range is not applied to the first band (step S220: No), the process returns to step S200 to return to the next included in the XML document. Processes the description of the drawing command.
なお、図8,9の例では図形のオブジェクトを描画するときの一例について説明したが
、XMLドキュメントの描画内容としてはこれに限られることなく、テキストやビットマ
ップ形式などのイメージであってもよい。
8 and 9, an example of drawing a graphic object has been described. However, the drawing content of an XML document is not limited to this, and may be an image such as text or bitmap format. .
ステップS230に処理が進むと、第2XML解釈部222は、判断対象の描画命令を
優先描画命令に設定する。図8,9の例であれば、描画範囲が重複するオブジェクトOB
(m+1)の記述部分である、「m」、「m+1」行目の記述が優先描画命令に対応する
。
When the process proceeds to step S230, the second
The description of the “m” and “m + 1” lines, which is the description part of (m + 1), corresponds to the priority rendering command.
優先描画命令を設定すると、ステップS240に処理が進んで、優先描画命令に対応す
る記述の行番号を第1XML解釈部221に通知する(図3(3)参照)。そして、ステ
ップS200に戻って、XMLドキュメントに含まれる次の記述について処理を行う。
When the priority rendering command is set, the process proceeds to step S240, and the line number of the description corresponding to the priority rendering command is notified to the first XML interpretation unit 221 (see FIG. 3 (3)). Then, the process returns to step S200 to process the next description included in the XML document.
また、ステップS200において、受け取ったXMLドキュメントの全ての記述につい
て処理を終えると(ステップS200:No)、ステップS250に進んで、第2XML
解釈部222は、第1XML解釈部221に探索終了を通知して、図5に示した処理を終
了する。
In step S200, when all the descriptions of the received XML document have been processed (step S200: No), the process proceeds to step S250, where the second XML document is processed.
The
次に、第1XML解釈部221が行う処理について説明する。データ制御部212から
XMLパース部220にXMLドキュメントが受け渡されると、第1XML解釈部221
は、図6に示す処理を開始する。処理を開始すると、まず、ステップS300において、
第1XML解釈部221は、第2XML解釈部222からのデータを受け取ったか否かを
判断する。第2XML解釈部222からデータを受け取っていなければ(ステップS30
0:No)、所定の時間経過後、再びステップS300の判断を行うようにして、データ
受信を監視し続ける。
Next, processing performed by the first
Starts the process shown in FIG. When the process is started, first, in step S300,
The first
0: No), after a predetermined time elapses, the determination in step S300 is performed again, and the data reception is continuously monitored.
データを監視し続けて、第2XML解釈部222からデータを受け取ると(ステップS
300:Yes)、ステップS310に処理が進んで、第1XML解釈部221は、受け
取ったデータが行番号通知であるか否かを判断する。
If data is continuously monitored and received from the second XML interpreter 222 (step S).
300: Yes), the process proceeds to step S310, and the first
受け取ったデータが行番号通知であれば(ステップS310:Yes)、XMLドキュ
メントについて該当する行番号の記述を解釈することにより優先描画命令を取得して、優
先描画命令をRAM22に格納する(ステップS320、図3(4)参照)。
If the received data is a line number notification (step S310: Yes), the priority drawing command is acquired by interpreting the description of the corresponding line number for the XML document, and the priority drawing command is stored in the RAM 22 (step S320). FIG. 3 (4)).
次に、ステップS330では、優先描画命令を制御部210に受け渡す(図3(5)参
照)。ここで受け渡すデータは、優先描画命令である描画命令の格納先を示すアドレス情
報に、優先描画命令である旨のフラグが付与されたデータ形式になっている。
Next, in step S330, the priority drawing command is transferred to the control unit 210 (see FIG. 3 (5)). The data transferred here is in a data format in which a flag indicating a priority drawing command is added to address information indicating a storage destination of a drawing command that is a priority drawing command.
なお、第1XML解釈部221は、後述する先頭バンド以降のバンドについての処理に
おいて、未処理となる記述部分を判断するため、優先描画命令が取得された記述の行番号
は、処理済みの行として、RAM22の所定の記憶領域上のテーブルに記録して、管理し
ている。また、描画範囲が先頭バンド及び先頭バンド以外の他のバンドに掛かっている描
画命令については、他のバンドの処理において当該描画命令を処理する必要があるため、
先頭バンドの処理時に処理されていてもテーブル上では未処理として管理する。
Since the first
Even if the first band is processed, it is managed as unprocessed on the table.
また、ステップS310において、第1XML解釈部221が受け取ったデータが行番
号通知でなければ(ステップS310:No)、ステップS340に処理が進んで、第1
XML解釈部221は受け取ったデータが探索終了通知であるか否かを判断する。探索終
了通知でなければ(ステップS340:No)、第2XML解釈部222から行番号通知
をさらに受け取る可能性があるので、ステップS300に戻って、受け取るデータを監視
し続ける。
In step S310, if the data received by the first
The
受け取ったデータが探索終了通知であれば(ステップS340:Yes)、ステップS
350に進んで、以後、第1XML解釈部221は、XMLドキュメントの全ての記述を
解釈するための処理を行う。
If the received data is a search end notification (step S340: Yes), step S340
Proceeding to 350, thereafter, the first
具体的には、ステップS350において、第1XML解釈部221は、上述した処理済
みの行番号を管理するテーブルを参照して、XMLドキュメントについて未処理の記述が
あるか否かを判断する。未処理のデータがあれば(ステップS350:Yes)、ステッ
プS360に進んでパースして通常の描画命令を取得し、RAM22に格納する(図3(
6)参照)。そして、ステップS370において、取得した通常の描画命令を制御部21
0に受け渡してから(図3(7)参照)、ステップS350の処理に戻る。
Specifically, in step S350, the first
6)). In step S370, the acquired normal drawing command is sent to the
After transferring to 0 (see FIG. 3 (7)), the process returns to step S350.
パースして取得した描画命令を順次受け渡すようにして、XMLドキュメントの全デー
タが処理されると、ステップS350の判断において未処理のデータがなくなり、ステッ
プS380に進む(ステップS350:No)。
When all the data of the XML document is processed so that the drawing commands obtained by parsing are sequentially transferred, there is no unprocessed data in the determination of step S350, and the process proceeds to step S380 (No in step S350).
ステップS380に処理が進むと、第1XML解釈部221は、XMLパース部220
が制御部210からのデータ終了通知を受け取ったか否かを判断して、受け取っていなけ
れば(ステップS380:No)、さらにXMLドキュメントのデータを受け取る可能性
があるので、所定の時間経過後にステップS350に戻る。データ終了通知を受け取って
いれば、XMLドキュメントの全データに対する描画命令が取得されたと判断して、ステ
ップS390に進んで、制御部210にデータ終了通知を受け渡してから、図6に示した
処理を終了する。
When the process proceeds to step S380, the first
It is determined whether or not the data end notification has been received from the
このように、XMLパース部220においては、まず、第2XML解釈部222が、X
MLドキュメントより先頭バンドにかかる描画範囲を有する描画命令の記述部分を特定し
ている。そして、第1XML解釈部221は、特定された記述から先頭バンドの描画に必
要な優先描画命令を取得して、アドレス指定の形式で制御部210に受け渡している。そ
れから、XMLドキュメントの未処理の記述を解釈して通常の描画命令を取得して、通常
の描画命令の受け渡しを終えると、データ終了通知を制御部210に受け渡している。
In this way, in the
A description part of a drawing command having a drawing range related to the first band from the ML document is specified. Then, the first
次に、図4のフローチャートに戻って、制御部210がXMLパース部220からデー
タを受け取った際に行う処理手順について説明する。
Next, returning to the flowchart of FIG. 4, a processing procedure performed when the
制御部210は、上記したXMLドキュメントの入力処理(ステップS100及びステ
ップS110)を終了したタイミングでステップS120の処理を開始している。ステッ
プS120では、データ制御部212は、XMLパース部220から受け渡されるデータ
を監視するようにして、XMLパース部220からデータを受信したか否かを判断し続け
ている。データを受信していなければ(ステップS120:No)、再びステップS12
0の処理を行うようにして監視を続行する。そして、XMLパース部220からデータを
受信すると(ステップS120:Yes)、ステップS130に進む。
The
Monitoring is continued by performing the process of 0. When data is received from the XML parsing unit 220 (step S120: Yes), the process proceeds to step S130.
ステップS130に処理が進むと、データ制御部212は、受信したデータが描画命令
であるか否かを判断する。受信したデータが描画命令(すなわち、優先描画命令又は通常
の描画命令)であれば(ステップS130:Yes)、ステップS140に進む。描画命
令でなければ(ステップS130:No)、ステップS150に進む。
When the process proceeds to step S130, the
ステップS140に処理が進むと、データ制御部212は、描画命令に示されるアドレ
ス指定先のRAM22にアクセスして、描画命令の実データを読み出し(図3(8)参照
)、描画命令の実データをレンダリング部230に受け渡す(図3(9)参照)。
When the process proceeds to step S140, the
ステップS140において描画命令がレンダリング部230に受け渡されると、ステッ
プS120に処理が戻るようにして、データ制御部212は次にXMLパース部220か
ら送信されるデータの監視を続行する。
When the drawing command is transferred to the
また、ステップS130の処理において受信したデータが描画命令でなければ(ステッ
プS130:No)、ステップS150に処理が進んで、受信したデータがデータ終了通
知であるか否かを判断する。受信したデータがデータ終了通知でなければ(ステップS1
50:No)、ステップS120に戻ってデータの監視を続行する。データ終了通知であ
れば(ステップS150:Yes)、ステップS160に進んで、XMLドキュメントに
ついての描画命令の送信が終了した旨のデータ終了通知を、レンダリング部230に通知
してから、図4に示した処理を終了する。
If the data received in the process of step S130 is not a drawing command (step S130: No), the process proceeds to step S150 to determine whether the received data is a data end notification. If the received data is not a data end notification (step S1)
50: No), the process returns to step S120 to continue monitoring the data. If it is a data end notification (step S150: Yes), the process proceeds to step S160 to notify the
このように、制御部210は、XMLパース部220から次々に受け取る、アドレス指
定の描画命令を、実データに置き換えてレンダリング部230に順次受け渡す処理を行っ
ている。また、XMLパース部220から受け取る描画命令の順番は、優先描画命令の次
に通常の描画命令となるので、レンダリング部230には、優先描画命令の受け渡しを終
えてから、次に通常の描画命令をレンダリング部230に受け渡している。そして、全描
画命令の受け渡しを終えると、レンダリング部230にデータ終了通知を受け渡している
。
As described above, the
次に、レンダリング部230が行う処理手順について、図7のフローチャートに従って
説明する。
Next, the processing procedure performed by the
図7に示す処理を開始すると、ステップS400において、レンダリング部230は制
御部210からデータを受けとったか否かを判断して、新たにデータを受け取っていなけ
れば(ステップS400:No)、所定の時間経過後に再びステップS400の判断を行
うようにして、新たにデータを受け取っていればステップS410に進む(ステップS4
00:Yes)。
When the processing shown in FIG. 7 is started, in step S400, the
00: Yes).
ステップS410に処理が進むと、レンダリング部230は受け取ったデータが優先描
画命令であるか否かを判断する。具体的には、優先描画命令に付与されたフラグに従う判
断を行って、優先描画命令であれば(ステップS410:Yes)、ステップS420に
進む。優先描画命令でなければ(ステップS410:No)、ステップS430に進む。
When the process proceeds to step S410, the
ステップS420に処理が進むと、レンダリング部230は、受け取った描画命令を展
開する。そして、展開したオブジェクト画像を、受け取った描画命令の描画開始位置に配
置して、ビットマップ形式の画像データにオブジェクト画像を埋め込む処理を行う。この
レンダリング処理により、処理対象の優先描画命令を反映させた画像データが得られる。
レンダリング処理を行うと、ステップS410に戻って、次に受け取るデータについて処
理を行うようにして、次々に受け渡される優先描画命令について、次々にレンダリング処
理を行う。
When the process proceeds to step S420, the
When the rendering process is performed, the process returns to step S410 to perform the process for the next received data, and sequentially perform the rendering process for the priority rendering commands that are successively transferred.
ステップS410において、受け取ったデータが優先描画命令でなければ(ステップS
410:No)、ステップS430に進んで、先頭バンドのバンドデータを生成する。す
なわち、先頭バンドを展開するために必要となる全ての優先描画命令についてレンダリン
グ処理が行われたので、レンダリング部230は、生成された画像データから先頭バンド
の領域を抜き出すようにして先頭バンドのバンドデータを生成する。
In step S410, the received data is not a priority drawing command (step S410).
410: No), the process proceeds to step S430 to generate band data of the first band. That is, since rendering processing has been performed for all the priority rendering commands necessary for developing the leading band, the
次に、ステップS440において、レンダリング部230は、先頭バンドのバンドデー
タを出力する。具体的には、制御部210に先頭バンドのバンドデータを受け渡して、制
御部210の印刷制御部213が、通信I/F26を介して先頭バンドのバンドデータを
プリンタ3に送信する。これにより、ホストコンピュータ2はプリンタ3に先頭バンドの
印刷処理を開始させる。
Next, in step S440, the
次に、以降に受け取る通常の描画命令についての処理を行う。そのため、レンダリング
部230は、ステップS450に処理が進んで、レンダリング部230は、次に受け取る
データが通常の描画命令であるか否かを判断する。通常の描画命令であれば(ステップS
450:Yes)、ステップS460に進んで、通常の描画命令に従うレンダリング処理
を行って、受け取った通常の描画命令を画像データに反映させる。処理対象の描画命令に
ついてレンダリング処理を行うと、ステップS450に戻って、次に受け取るデータにつ
いて処理を行うようにして、次々に受け渡される通常の描画命令について、次々にレンダ
リング処理を行う。
Next, a process for a normal drawing command received thereafter is performed. For this reason, the
450: Yes), the process proceeds to step S460, where the rendering process according to the normal drawing command is performed, and the received normal drawing command is reflected in the image data. When the rendering process is performed for the rendering command to be processed, the process returns to step S450, and the processing for the next received data is performed, and the rendering process is sequentially performed for the normal rendering commands that are successively transferred.
また、ステップS450において受け取ったデータが通常の描画命令でなければ(ステ
ップS450:No)、ステップS470に処理が進んで、レンダリング部230は、デ
ータ終了通知であるか否かを判断する。データ終了通知でなければ(ステップS470:
No)、ステップS450に戻って、次に受け取るデータについて処理を行う。
If the data received in step S450 is not a normal drawing command (step S450: No), the process proceeds to step S470, and the
No), returning to step S450, the next received data is processed.
受け取ったデータがデータ終了通知であれば(ステップS470:Yes)、制御部2
10から次々に受け取る描画命令に対してステップS460のレンダリング処理を次々に
行うようにして、XMLドキュメント全体に対応する画像データが生成済みであるので、
ステップS480に進んで、生成した画像データの画像をバンドごとに区分して、先頭バ
ンド以降の各バンドごとに行うバンドデータを生成する。そして、ステップS490にお
いて生成したバンドデータを次々に制御部210に受け渡し、受け渡しを終えると図7に
示した処理を終了する。制御部210の印刷制御部213は、受け渡されたバンドデータ
を通信I/F26を介してプリンタ3に次々に送信することにより、ホストコンピュータ
2はプリンタ3に、先頭バンド以降のバンドごとに印刷処理を次々に行わせる。これによ
り、全バンドについての印刷処理が行われて、XMLドキュメントに対応した印刷がなさ
れる。
If the received data is a data end notification (step S470: Yes), the
Since the rendering processing in step S460 is sequentially performed on the drawing commands received one after another from 10, the image data corresponding to the entire XML document has already been generated.
Proceeding to step S480, the image of the generated image data is divided for each band, and band data to be performed for each band after the first band is generated. Then, the band data generated in step S490 is successively transferred to the
なお、ステップS100及びステップS110の処理が入力工程、ステップS300〜
ステップS390の処理が第1の解釈工程、ステップS200〜ステップS250の処理
が第2の解釈工程、ステップS420及びステップS430の処理が第1の展開工程、ス
テップS460及びステップS480の処理が第2の展開工程、ステップS440及びス
テップS490の処理が印刷制御工程に相当する。
In addition, the process of step S100 and step S110 is an input process, step S300 ~
The process in step S390 is the first interpretation process, the process in steps S200 to S250 is the second interpretation process, the processes in steps S420 and S430 are the first development process, and the processes in steps S460 and S480 are the second. The unfolding process and the processes in steps S440 and S490 correspond to a print control process.
以上に説明したように、本実施形態では、通常の描画命令の展開前に、先頭バンドの描
画に必要となる優先描画命令を展開し、優先描画命令から得られる画像データから先頭バ
ンドのバンドデータを生成して、プリンタ3に先頭バンドの印刷処理を開始させている(
ステップS440)。そして、先頭バンドのバンドデータの生成後に、通常の描画命令を
展開して、先頭バンド以降のバンドデータを順次プリンタ3に送り出すようにしている(
ステップS490)。
As described above, in this embodiment, prior to normal drawing command expansion, the priority drawing command necessary for drawing the first band is expanded, and the band data of the first band is obtained from the image data obtained from the priority drawing command. And the
Step S440). Then, after generating the band data of the first band, a normal drawing command is expanded so that the band data after the first band are sequentially sent to the printer 3 (
Step S490).
以下、本実施形態の効果を記載する。 Hereinafter, effects of the present embodiment will be described.
(1)プリンタ3は、通常の描画命令の展開前に先頭バンドのバンドデータを受け取る
ステップS440のタイミングで、印刷処理を開始することができるので、XMLオブジ
ェクトの記述から得られる全ての描画命令を展開してからバンドデータを生成する必要が
ある従来の処理方法に比べて、先頭バンドの印刷処理を開始するタイミングを早めること
ができる。また、プリンタ3が先頭バンドについての印刷処理の実行中に、プリンタドラ
イバ200は、通常の描画命令を展開して先頭バンド以降のバンドデータを生成するため
の処理を開始しているので、XMLドキュメントに対応する印刷処理をより早いタイミン
グで終えることができる。これにより、ユーザにとって印刷完了までの待ち時間が短縮す
ることになるので、ユーザにとっての利便性が向上する。
(1) Since the
(2)第2XML解釈部222が、先頭バンドに掛かる描画範囲を有する優先描画命令
の行番号を検出すると、第1XML解釈部221が、この行番号を受け取り該当する記述
を解釈する。このとき、第1XML解釈部221が行う処理と第2XML解釈部222が
行う処理とを並列に実行しているので、第1XML解釈部221の処理中にも、第2XM
L解釈部222は、先頭バンドに掛かる次の描画命令を探索している。これにより、処理
効率が高まり、より早いタイミングで印刷を開始できるようになる。
(2) When the second
The
以上、本発明の一実施形態を説明したが、本発明はこうした実施の形態に何ら限定され
るものではなく、本発明の趣旨を逸脱しない範囲内において様々な形態で実施することも
できる。以下、変形例を挙げて説明する。
Although one embodiment of the present invention has been described above, the present invention is not limited to such an embodiment, and can be implemented in various forms without departing from the spirit of the present invention. Hereinafter, a modification will be described.
(変形例1)上記実施形態では、印刷制御装置としてのホストコンピュータ側のプリン
タドライバ200が、パース及びレンダリングの処理を行ったが、本発明はこの態様に限
られない。例えば、ホストコンピュータ側でパースの処理を行い、プリンタ側でレンダリ
ングの処理を行うようにしてもよい。すなわち、図10(a)に示すように、印刷システ
ム1は、制御部210及びXMLパース部220を有するプリンタドライバ200を備え
たホストコンピュータ2と、レンダリング部230、印刷処理部300、及び印刷エンジ
ン310を備えたプリンタ3とを具備している。
(Modification 1) In the above embodiment, the
この印刷システム1において、制御部210は、XMLパース部220が取得した優先
描画命令を通信I/F26によりプリンタ3に受け渡して、プリンタ3側のレンダリング
部230は、受け取った優先描画命令に従ってレンダリング処理を行うことにより、先頭
バンドのバンドデータを生成する。先頭バンドのバンドデータを印刷処理部300に受け
渡して、印刷処理を開始させると、ホストコンピュータ2より次に受け取る通常の描画命
令に従うレンダリング処理を次々に行うようにして、各バンドのバンドデータを生成して
、印刷処理部300はこのバンドデータに従う印刷処理を行う。印刷処理部300は、バ
ンドデータを印刷エンジン310に対応する画像信号に変換して、印刷エンジン310は
この画像信号に従って印刷を行う。これにより、印刷処理部300が印刷処理を開始する
タイミングが早まり、印刷完了までの待ち時間を短縮することができる。
In the
また、プリンタ側に印刷制御装置の構成を有したシステムであってもよい。すなわち、
図10(b)に示すように、プリンタ3は、XMLパース部220、レンダリング部23
0、印刷処理部300、及び印刷エンジン310を備えている。ホストコンピュータ2は
XMLドキュメントを含む印刷データをプリンタ3に送信して、XMLパース部220及
びレンダリング部230を有するプリンタ3が、パース及びレンダリングを、優先描画命
令、通常の描画命令の順に行うようにしてもよい。
Further, a system having a configuration of a print control apparatus on the printer side may be used. That is,
As shown in FIG. 10B, the
0, a
(変形例2)上記実施形態では、先頭の1つのバンドを先頭バンドとして処理したが、
印刷処理の処理順が先頭から所定数のバンドを先頭バンドとして処理してもよい。このと
き、先頭から複数のバンドに掛かる描画命令を優先描画命令として扱って、上記実施形態
と同様の処理を行うとよい。
(Modification 2) In the above embodiment, one top band is processed as the top band.
A predetermined number of bands from the top of the processing order of the printing process may be processed as the top band. At this time, a drawing command applied to a plurality of bands from the top may be handled as a priority drawing command, and the same processing as in the above embodiment may be performed.
(変形例3)上記実施形態では、図9の例において、バンド0にオブジェクトの一部が
描画されるためにバンド0を先頭バンドとしたが、オブジェクトなどが描画されないバン
ドについては印刷処理を行うことがないため、オブジェクトを含む最初のバンドを先頭バ
ンドとするとよい。例えば、バンド0〜n−1にはオブジェクトが描画されることなく、
バンドnに初めてオブジェクトが描画される場合は、バンドnを先頭バンドとして処理す
るとよい。また、このときは、先頭バンド以前のバンドについてはレンダリング処理を行
う必要がないため、ステップS440の処理において、先頭バンドのバンドデータに加え
て、オブジェクトが描画されていない先頭バンドより前のバンドのバンドデータを制御部
210に受け渡して、プリンタ3に出力するとよい。
(Modification 3) In the embodiment described above, in the example of FIG. 9,
When an object is drawn in band n for the first time, it is preferable to process band n as the leading band. At this time, since it is not necessary to perform the rendering process for the band before the first band, in the process of step S440, in addition to the band data of the first band, the band before the first band where no object is drawn is displayed. The band data may be transferred to the
(変形例4)展開後のデータ形式はビットマップ形式に限られない。例えば、バンドご
とに描画内容の描画命令を示す中間コードのデータを受け渡す印刷システムであれば、レ
ンダリング部230は描画命令を、中間コードデータ(画像データ)に展開する。このと
き、プリンタ3は、受け取る中間コードデータに、レンダリング処理・色変換処理・スク
リーン処理などの印刷処理を次々に行うようにして、処理するとよい。
(Modification 4) The data format after expansion is not limited to the bitmap format. For example, in the case of a printing system that delivers intermediate code data indicating a drawing command for drawing content for each band, the
(変形例5)上記実施形態では、XML形式のデータを処理する例について説明したが
、HTML(Hypertext Markup Language)やXHTML(Extensible Hypertext Markup La
nguage)などのマークアップ言語で記述されたデータを処理するようにしてもよい。
(Modification 5) In the above embodiment, an example of processing data in XML format has been described. However, HTML (Hypertext Markup Language) or XHTML (Extensible Hypertext Markup La
nguage) and other data described in a markup language may be processed.
(変形例6)本発明は、プリンタに限られることなく、複写機やファックスに適用する
こともできる。
(Modification 6) The present invention is not limited to a printer, but can be applied to a copying machine or a fax machine.
1…印刷システム、2…印刷制御装置としてのホストコンピュータ、3…印刷装置とし
てのプリンタ、4…ネットワークサーバ、5…記録媒体としてのCD−ROM、20…C
PU、21…ROM、22…RAM、23…ハードディスク、24…CD−ROMドライ
ブ、25…ネットワークインターフェイス、26…通信インターフェイス、100…アプ
リケーション、200…プリンタドライバ、210…制御部、211…入力手段としての
XMLドキュメント入力部、212…データ制御部、213…印刷制御手段としての印刷
制御部、220…XMLパース部、221…第1の解釈手段としての第1XML解釈部、
222…第2の解釈手段としての第2XML解釈部、230…展開手段としてのレンダリ
ング、300…印刷処理部、310…印刷エンジン。
DESCRIPTION OF
PU, 21 ... ROM, 22 ... RAM, 23 ... hard disk, 24 ... CD-ROM drive, 25 ... network interface, 26 ... communication interface, 100 ... application, 200 ... printer driver, 210 ... control unit, 211 ... as input means XML document input unit, 212... Data control unit, 213... Print control unit as print control unit, 220... XML parsing unit, 221... First XML interpretation unit as first interpretation unit,
222... 2nd XML interpreter as second interpreter, 230... Render as expander, 300... Print processor, 310.
Claims (8)
に実行させる印刷制御装置であって、
前記印刷対象の画像をマークアップ言語で記述した入力データを受け付ける入力手段と
、
前記入力データを解釈して、前記印刷対象の画像を描画するための描画命令を取得する
第1の解釈手段と、
前記入力データを解釈して、前記印刷処理の実行順が先頭より所定数までのバンドであ
る先頭バンドに掛かる描画範囲を有した優先描画命令を探索する第2の解釈手段と、
前記優先描画命令を展開して前記先頭バンドのバンドデータを生成してから、前記描画
命令を展開して前記先頭バンド以降のバンドについてのバンドデータを生成する展開手段
と、
前記バンドデータが生成されると、当該バンドデータに従う印刷処理を前記印刷装置に
行わせる印刷制御手段とを備えることを特徴とする印刷制御装置。 A printing control apparatus that causes a printing apparatus to sequentially execute a printing process for each band obtained by dividing an image to be printed into a predetermined height,
Input means for receiving input data describing the image to be printed in a markup language;
First interpretation means for interpreting the input data and obtaining a drawing command for drawing the image to be printed;
A second interpreter that interprets the input data and searches for a priority rendering command having a rendering range applied to a leading band in which the execution order of the printing processing is a band from the leading to a predetermined number;
Expanding means for expanding the priority drawing command to generate band data of the first band, and then expanding the drawing command to generate band data for bands after the first band;
When the band data is generated, the printing control apparatus includes a printing control unit that causes the printing apparatus to perform a printing process according to the band data.
前記第2の解釈手段は、前記入力データの記述のうち、前記優先描画命令に対応する記
述を特定し、
前記第1の解釈手段は、前記特定された記述を優先して解釈することにより、前記優先
描画命令を取得することを特徴とする印刷制御装置。 The print control apparatus according to claim 1,
The second interpreting means identifies a description corresponding to the priority rendering command among the descriptions of the input data,
The print control apparatus, wherein the first interpretation unit obtains the priority drawing command by preferentially interpreting the specified description.
前記第2の解釈手段が前記優先描画命令に対応する記述を特定すると、前記第1の解釈
手段が当該特定された記述を解釈して優先描画命令を取得する処理と、前記第2の解釈手
段が次の優先描画命令に対応する記述を探索する処理とを並列して実行させることを特徴
とする印刷制御装置。 The print control apparatus according to claim 2,
When the second interpreting means specifies a description corresponding to the priority rendering command, the first interpreting means interprets the specified description and obtains a priority rendering instruction; and the second interpreting means A print control apparatus that executes a process for searching for a description corresponding to the next priority rendering command in parallel.
前記マークアップ言語は、XML、HTML又はXHTMLのいずれかであることを特
徴とする印刷制御装置。 In the printing control apparatus according to any one of claims 1 to 3,
The print control apparatus according to claim 1, wherein the markup language is one of XML, HTML, and XHTML.
記印刷装置に次々に実行させる印刷制御装置とを備える印刷システムであって、
前記印刷制御装置は、
前記印刷対象の画像をマークアップ言語で記述した入力データを受け付ける入力手段と
、
前記入力データを解釈して、前記印刷対象の画像を描画するための描画命令を取得する
第1の解釈手段と、
前記入力データを解釈して、前記印刷処理の実行順が先頭より所定数までのバンドであ
る先頭バンドに掛かる描画範囲を有した優先描画命令を探索する第2の解釈手段とを備え
、
前記印刷装置は、
前記優先描画命令を展開して前記先頭バンドのバンドデータを生成してから、前記描画
命令を展開して前記先頭バンド以降のバンドについてのバンドデータを生成する展開手段
と、
前記バンドデータが生成されると、当該バンドデータに従う印刷処理を実行する印刷処
理部とを備えることを特徴とする印刷システム。 A printing system comprising: a printing apparatus; and a printing control apparatus that causes the printing apparatus to sequentially execute a printing process performed for each band obtained by dividing an image to be printed into a predetermined height.
The print control device includes:
Input means for receiving input data describing the image to be printed in a markup language;
First interpretation means for interpreting the input data and obtaining a drawing command for drawing the image to be printed;
Second interpretation means for interpreting the input data and searching for a priority rendering command having a rendering range for a leading band in which the execution order of the printing processing is a band from the leading to a predetermined number of bands,
The printing apparatus includes:
Expanding means for expanding the priority drawing command to generate band data of the first band, and then expanding the drawing command to generate band data for bands after the first band;
A printing system comprising: a print processing unit that executes a print process according to the band data when the band data is generated.
に実行させる印刷装置の制御方法であって、
前記印刷対象の画像をマークアップ言語で記述した入力データを受け付ける入力工程と
、
前記入力データを解釈して、前記印刷対象の画像を描画するための描画命令を取得する
第1の解釈工程と、
前記入力データを解釈して、前記印刷処理の実行順が先頭より所定数までのバンドであ
る先頭バンドに掛かる描画範囲を有した優先描画命令を探索する第2の解釈工程と、
前記優先描画命令を展開して前記先頭バンドのバンドデータを生成する第1の展開工程
と、
前記描画命令を展開して前記先頭バンド以降のバンドについてのバンドデータを生成す
る第2の展開工程と、
前記バンドデータが生成されると、当該バンドデータに従う印刷処理を前記印刷装置に
行わせる印刷制御工程とを備えることを特徴とする印刷装置の制御方法。 A printing apparatus control method for causing a printing apparatus to sequentially perform printing processing for each band obtained by dividing an image to be printed into a predetermined height,
An input step of receiving input data describing the image to be printed in a markup language;
A first interpretation step of interpreting the input data and obtaining a drawing command for drawing the image to be printed;
A second interpreting step of interpreting the input data and searching for a priority rendering command having a rendering range applied to a leading band in which the order of execution of the printing process is a band from the leading to a predetermined number;
A first expansion step of expanding the priority drawing command to generate band data of the leading band;
A second expansion step of expanding the drawing command to generate band data for the bands after the first band;
A printing apparatus control method comprising: a printing control step for causing the printing apparatus to perform a printing process according to the band data when the band data is generated.
に実行させるためのドライバプログラムであって、
コンピュータを、
前記印刷対象の画像をマークアップ言語で記述した入力データを受け付ける入力手段、
前記入力データを解釈して、前記印刷対象の画像を描画するための描画命令を取得する
第1の解釈手段、
前記入力データを解釈して、前記印刷処理の実行順が先頭より所定数までのバンドであ
る先頭バンドに掛かる描画範囲を有した優先描画命令を探索する第2の解釈手段、
前記優先描画命令を展開して前記先頭バンドのバンドデータを生成してから、前記描画
命令を展開して前記先頭バンド以降のバンドについてのバンドデータを生成する展開手段
、
前記バンドデータが生成されると、前記印刷装置との通信を行う通信手段を介して当該
バンドデータを前記印刷装置に順次供給して、当該バンドデータに従う印刷処理を前記印
刷装置に行わせる印刷制御手段、として機能させることを特徴とするドライバプログラム
。 A driver program for causing a printing apparatus to sequentially execute a printing process for each band obtained by dividing an image to be printed into a predetermined height,
Computer
Input means for receiving input data describing the image to be printed in a markup language;
First interpretation means for interpreting the input data and obtaining a rendering command for rendering the image to be printed;
A second interpreter that interprets the input data and searches for a priority rendering command having a rendering range that is applied to a leading band in which the execution order of the printing processes is a band from the leading to a predetermined number;
Expanding means for expanding the priority drawing command to generate band data of the first band, and then expanding the drawing command to generate band data for bands after the first band;
When the band data is generated, print control is performed such that the band data is sequentially supplied to the printing apparatus via a communication unit that performs communication with the printing apparatus, and the printing apparatus performs a printing process according to the band data. A driver program that functions as means.
A computer-readable recording medium on which the driver program according to claim 7 is recorded.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006177851A JP2008009593A (en) | 2006-06-28 | 2006-06-28 | Printing control device, printing system, method for controlling printing device, driver program, and recording medium with program recorded |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006177851A JP2008009593A (en) | 2006-06-28 | 2006-06-28 | Printing control device, printing system, method for controlling printing device, driver program, and recording medium with program recorded |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008009593A true JP2008009593A (en) | 2008-01-17 |
Family
ID=39067771
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006177851A Withdrawn JP2008009593A (en) | 2006-06-28 | 2006-06-28 | Printing control device, printing system, method for controlling printing device, driver program, and recording medium with program recorded |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008009593A (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10171611A (en) * | 1996-12-13 | 1998-06-26 | Matsushita Electric Ind Co Ltd | Method and device for managing plotting command |
JPH10207662A (en) * | 1997-01-21 | 1998-08-07 | Fuji Xerox Co Ltd | Image processor, image processing method, and image processing program storage medium |
JP2005141361A (en) * | 2003-11-05 | 2005-06-02 | Matsushita Electric Ind Co Ltd | Print processing system |
-
2006
- 2006-06-28 JP JP2006177851A patent/JP2008009593A/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10171611A (en) * | 1996-12-13 | 1998-06-26 | Matsushita Electric Ind Co Ltd | Method and device for managing plotting command |
JPH10207662A (en) * | 1997-01-21 | 1998-08-07 | Fuji Xerox Co Ltd | Image processor, image processing method, and image processing program storage medium |
JP2005141361A (en) * | 2003-11-05 | 2005-06-02 | Matsushita Electric Ind Co Ltd | Print processing system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5340616B2 (en) | Instruction SAX parser for XML documents | |
JP5839845B2 (en) | Printing apparatus, printing method, and program | |
JP3835322B2 (en) | Printing system, printing device, web server, progress display data providing server, program | |
US20120140269A1 (en) | Information processing device, information processing method, and recording medium | |
KR101221940B1 (en) | Image processing apparatus, image processing method, and medium storing program therefor | |
US20110255126A1 (en) | Printing apparatus, print processing method, and program | |
JP3757847B2 (en) | Spool file processing apparatus, program, and recording medium | |
JP5482238B2 (en) | Image processing apparatus, image forming apparatus, image processing method, image forming method, and program | |
JP2010026895A (en) | Information processor, image forming apparatus, and program | |
JP2007329919A (en) | Image forming apparatus and control method therefor | |
JP4918871B2 (en) | Printer and control method thereof | |
JP2010211251A (en) | Image forming system, information processing apparatus, print server, image forming apparatus, image formation assisting program, and print control method | |
JP4770609B2 (en) | PRINT CONTROL DEVICE, DRIVER PROGRAM, AND RECORDING MEDIUM CONTAINING THE PROGRAM | |
JP2008176386A (en) | Print program, and image formation system | |
JP2008009593A (en) | Printing control device, printing system, method for controlling printing device, driver program, and recording medium with program recorded | |
JP2010134772A (en) | Information processing apparatus and information processing method | |
JP2007334720A (en) | Data processor, printing controller, printing system, data processing method, data processing program and recording medium having the program recorded thereon | |
US20070279676A1 (en) | System and method for pipelined dataflow document processing | |
JP2009269179A (en) | Printer, program and recording medium | |
JP2008176385A (en) | Print program, and image formation system | |
JP2007328493A (en) | Data processor, print control device, print system, data processing method, data processing program and recording medium with the program recorded thereon | |
JP4706495B2 (en) | Image processing apparatus, image processing method, and program | |
JP2010181999A (en) | Printing system, printer, and print control program | |
EP2293180B1 (en) | PDL data processing device and PDL data creating device | |
JP2010218325A (en) | Printing controller and printing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090413 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110210 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110215 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20110325 |