JP2008015649A - Print controller, printing system, method of controlling printer, driver program, and recording medium for recording this program - Google Patents

Print controller, printing system, method of controlling printer, driver program, and recording medium for recording this program Download PDF

Info

Publication number
JP2008015649A
JP2008015649A JP2006184129A JP2006184129A JP2008015649A JP 2008015649 A JP2008015649 A JP 2008015649A JP 2006184129 A JP2006184129 A JP 2006184129A JP 2006184129 A JP2006184129 A JP 2006184129A JP 2008015649 A JP2008015649 A JP 2008015649A
Authority
JP
Japan
Prior art keywords
band
description
data
printing
processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2006184129A
Other languages
Japanese (ja)
Other versions
JP4770609B2 (en
Inventor
Hiroaki Nakanishi
弘晃 中西
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2006184129A priority Critical patent/JP4770609B2/en
Publication of JP2008015649A publication Critical patent/JP2008015649A/en
Application granted granted Critical
Publication of JP4770609B2 publication Critical patent/JP4770609B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a print controller starting printing earlier when printing data described in a markup language such as XML, a printing system, a method of controlling a printer, a driver program, and a recording medium for recording the program. <P>SOLUTION: The second XML interpreting part 222 of an XML parsing part 220 specifies the rear-end position of a description corresponding to a drawing command and having a drawing area associated with the head band of an XML document, and sends a notification of the line number of the rear-end position to a first XML interpreting part 221. The first XML interpreting part 221 interprets a description prior to a line corresponding to the notification of the line number and obtains and passes the drawing command to a control part 210. A rendering part 230 creates the band data of the head band through a rendering process that follows the drawing command received. The control part 210 sends the band data to the printer so that the printer starts the process of printing the head band. <P>COPYRIGHT: (C)2008,JPO&INPIT

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 Patent Document 1, a printer driver generates image data expressed in a language or bitmap format that can be interpreted by a printer by expanding the contents of an XML document.

特許文献2に記載の技術では、XMLドキュメントにネットワーク上のアドレス情報が含まれる場合に、ネットワーク上にあるアドレス情報の指定先のサーバと通信して、オブジェクトなどのデータを取得し、通信して取得したデータを組み込んだXMLドキュメントを解釈してレンダリングすることにより、画像データを生成している。   In the technique described in Patent Document 2, when the address information on the network is included in the XML document, the data such as the object is acquired and communicated with the server to which the address information is specified on the network. Image data is generated by interpreting and rendering an XML document incorporating the acquired data.

ここで、プリンタが処理に要するメモリ領域を節約するために、画像を所定の高さで区分したバンドごとに処理することがある。このようなプリンタで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.

例えば、図12に示すように、XMLドキュメントを解釈して得られる複数の描画命令に対応して、複数の図形が描画された画像を印刷対象として扱う場合、印刷時の用紙搬送方向(Y方向)の上端から所定の高さ(画素数)ごとに画像を区切るようにして複数のバンドに区分して、各バンドごとに処理が行われる。具体的には、区分したバンドを端から順にバンド0、バンド1、…と昇順の番号により各バンドを称すると、プリンタドライバは、バンド0より順番にバンドデータを送信して、プリンタは、色変換処理・スクリーン処理などの印刷処理を各バンドデータごとに行う。これにより、各バンドの印刷内容が次々に印刷されて印刷対象となる画像全体が印刷される。   For example, as shown in FIG. 12, 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) during printing is used. ) Is divided into a plurality of bands so that the image is divided 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 band 0, band 1,... In ascending order from the end, the printer driver transmits band data in order from band 0, and the printer Printing processing such as conversion processing and screen processing is performed for each band data. As a result, the print contents of each band are printed one after another, and the entire image to be printed is printed.

このように、プリンタがバンドごとに印刷処理を行うとした場合、各バンドの印刷処理は各バンドのバンドデータに従って行うので、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 of each band. Therefore, the timing for starting the printing for the XML document is the band of the first band from the printer driver. 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.

特開2000−330908号公報JP 2000-330908 A 特開2002−91726号公報JP 2002-91726 A

しかしながら、XMLドキュメントに記述された描画命令は描画位置に従って順番に記述されているとは限らないので、プリンタドライバが先頭のバンドデータを生成するためには、XMLドキュメントの全描画命令についての解釈・展開を待ってから生成する必要がある。   However, since the rendering commands described in the XML document are not always described in order according to the rendering position, in order for the printer driver to generate the first band data, the interpretation / comprehension of all rendering commands in the XML document is not necessary. It needs to be generated after waiting for expansion.

例えば、XMLドキュメントを記述の順番に解釈・展開して、図12に示すように3つのオブジェクトOB1,OB2,OB3を順番に描画する場合、2つのオブジェクトOB1,OB3が先頭バンド(バンド0)のバンド領域に掛かっているため、オブジェクトOB1を描画した時点で、先頭バンドのバンドデータを得ることはできない。先頭バンドのバンドデータを得るためには、少なくとも、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. 12, the two objects OB1 and OB3 are the first band (band 0). Since it is in the band area, the band data of the first band cannot be obtained when the object OB1 is drawn. 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. For this reason, there is a problem that the timing at which the printer starts the printing process in accordance with the band data of the leading band is delayed.

そこで、本発明は、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 sequentially interpreting the description of the input data and successively obtaining drawing commands for drawing an image to be printed, and input data The second interpretation means for specifying the description range of the input data necessary for the print processing of the first band, which is a band whose print processing execution order is a band from the start to a predetermined number, and the specified description The drawing command acquired from the description of the range is expanded to generate band data for the first band, and then the drawing command acquired from the description outside the specified description range is further expanded to generate the band after the first band. And deployment means for generating data, if the band data is generated, characterized in that it comprises a print control means for causing the printing apparatus to print processing according the band data.

この構成によれば、先頭バンドの印刷処理に必要な、入力データの記述範囲を特定し、特定した記述範囲の記述を解釈して先頭バンドのバンドデータを生成して、先頭バンドのバンドデータに従う印刷処理を印刷装置に行わせる。そして、先頭バンドのバンドデータの生成後に、特定された記述範囲以外の記述をさらに解釈して先頭バンド以降のバンドデータを生成して、先頭バンド以降についての印刷処理を印刷装置に行わせる。印刷装置は、先頭バンド以降のバンドに対応する記述についての解釈・展開を待つことなく、先頭バンドのバンドデータが生成されたタイミングで当該先頭バンドの印刷処理を開始するので、入力データに対応する印刷を開始するタイミングを早めることができる。また、印刷終了のタイミングも早まることになるので、例えば、ユーザが印刷指示を出してから印刷終了までの待ち時間を短縮することができ、ユーザにとっての利便性をより高めることができる。   According to this configuration, the description range of the input data necessary for the printing process of the first band is specified, the band data of the first band is generated by interpreting the description of the specified description range, and the band data of the first band is followed. Cause the printing apparatus to perform the printing process. Then, after the generation of the band data of the first band, the description outside the specified description range is further interpreted to generate band data after the first band, and the printing apparatus performs printing processing for the first band and the subsequent bands. Since the printing apparatus starts printing processing of the first band at the timing when the band data of the first band is generated without waiting for interpretation / development of the description corresponding to the band after the first band, it corresponds to the input data. The timing for starting printing 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の解釈手段は、入力データの記述を解釈して、先頭バンドに掛かる描画範囲を有する描画命令に対応する記述の後端位置を探索し、展開手段は、入力データにおいて後端位置より解釈順が前方の記述から取得された描画命令を順次展開して先頭バンドのバンドデータを生成してから、後端位置より解釈順が後方の記述から取得された描画命令を順次展開するようにして先頭バンド以降のバンドデータを生成することが好ましい。   In the printing control apparatus of the present invention, the second interpreting means interprets the description of the input data, searches for the rear end position of the description corresponding to the drawing command having the drawing range applied to the head band, and expands the means. In the input data, the rendering order obtained from the description in front of the rear end position is sequentially expanded to generate the first band data, and then the interpretation order is obtained from the rear description from the rear end position. It is preferable to generate band data after the first band by sequentially expanding the drawing commands.

この構成によれば、先頭バンドに掛かる描画範囲を有する描画命令に対応する記述の後端位置を探索して、後端位置より解釈順が前方にある入力データの記述を解釈して先頭バンドのバンドデータを生成して、先頭バンドのバンドデータに従う印刷処理を印刷装置に行わせる。そして、先頭バンドのバンドデータの生成後に、後端位置より解釈順が後方の記述を解釈して先頭バンド以降のバンドデータを生成して、先頭バンド以降についての印刷処理を印刷装置に行わせる。これにより、印刷開始のタイミングを早めた処理が可能になる。   According to this configuration, the rear end position of the description corresponding to the drawing command having the drawing range for the first band is searched, the description of the input data whose interpretation order is ahead of the rear end position is interpreted, and the first band Band data is generated, and the printing apparatus is caused to perform printing processing according to the band data of the first band. Then, after the generation of the band data of the first band, the description with the interpretation order behind the rear end position is interpreted to generate band data after the first band, and the printing apparatus performs printing processing for the first band and the subsequent bands. As a result, it is possible to perform processing with earlier printing start timing.

また、本発明の印刷制御装置において、第1の解釈手段が行う処理と、第2の解釈手段が行う処理とを並列して実行させ、展開手段は、第2の解釈手段が後端位置を見つけるまでは、第1の解釈手段が取得した描画命令を順次展開し、第2の解釈手段が後端位置を見つけてから、先頭バンドのバンドデータを生成することが好ましい。   In the printing control apparatus of the present invention, the processing performed by the first interpretation unit and the processing performed by the second interpretation unit are executed in parallel, and the expansion unit is configured such that the second interpretation unit sets the rear end position. Until it is found, it is preferable that the drawing commands acquired by the first interpreter are sequentially developed, and the second interpreter finds the rear end position before generating the band data of the first band.

この構成によれば、第2の解釈手段による後端位置の探索を待つことなく、第1の解釈手段及び展開手段は処理を進めるため、処理効率が高まり、印刷開始のタイミングをより早めることができる。   According to this configuration, since the first interpreting unit and the developing unit advance the processing without waiting for the search for the rear end position by the second interpreting unit, the processing efficiency is increased and the timing of starting printing can be further advanced. it can.

また、本発明の印刷制御装置において、第2の解釈手段は、第1の解釈手段が行う解釈の順番とは逆順に入力データの記述を解釈することが好ましい。   In the printing control apparatus of the present invention, it is preferable that the second interpretation unit interprets the description of the input data in the reverse order of the interpretation order performed by the first interpretation unit.

この構成によれば、第2の解釈手段が、第1の解釈手段が解釈する順番の逆順に後端位置を探索することにより、第1の解釈手段と第2の解釈手段とが行う並列処理を効率的に行うことができる。   According to this configuration, the second interpreting unit searches for the rear end position in the reverse order of the order of interpretation by the first interpreting unit, so that the parallel processing performed by the first interpreting unit and the second interpreting unit is performed. Can be performed efficiently.

また、本発明の印刷制御装置において、展開手段は、第2の解釈手段が後端位置を検出したときに、後端位置の記述に対応する描画命令が未展開の場合、第1の解釈手段が取得する描画命令を次々に展開して、後端位置の記述に対応する描画命令が展開されたタイミングで、先頭バンドのバンドデータを生成することが好ましい。   Further, in the printing control apparatus of the present invention, when the second interpreting unit detects the rear end position, the developing unit includes the first interpreting unit if the drawing command corresponding to the description of the rear end position is not developed. It is preferable to successively develop drawing commands acquired by, and generate band data of the leading band at the timing when the drawing commands corresponding to the description of the rear end position are developed.

この構成によれば、後端位置の記述に対応する描画命令が未展開の場合、後端位置の記述に対応する描画命令が展開されることを待ってから、先頭バンドのバンドデータを生成するので、第1の解釈手段と第2の解釈手段とを並列処理させながら、印刷処理の開始タイミングを早めた処理を行うことができる。   According to this configuration, when the drawing command corresponding to the description of the rear end position is not expanded, the band data of the head band is generated after waiting for the drawing command corresponding to the description of the rear end position to be expanded. Therefore, it is possible to perform a process with an earlier start timing of the printing process while the first interpreter and the second interpreter are processed in parallel.

また、本発明の印刷制御装置において、展開手段は、第2の解釈手段が後端位置を検出したときに、後端位置の記述に対応する描画命令が既に展開済みの場合、既に展開済みの描画命令から先頭バンドのバンドデータを生成することが好ましい。   In the printing control apparatus of the present invention, when the second interpreting unit detects the rear end position, if the drawing command corresponding to the description of the rear end position has already been developed, It is preferable to generate the band data of the first band from the drawing command.

この構成によれば、後端位置の記述に対応する描画命令が既に展開済みの場合、既に展開済みの描画命令から直ちに先頭バンドのバンドデータを生成するので、第1の解釈手段と第2の解釈手段とを並列処理させながら、印刷処理の開始タイミングを早めた処理を行うことができる。   According to this configuration, when the drawing command corresponding to the description of the rear end position has already been developed, the band data of the first band is immediately generated from the already developed drawing command. It is possible to perform processing with earlier start timing of the printing process while performing parallel processing with the interpreter.

また、本発明の印刷制御装置において、マークアップ言語は、XML、HTML又はXHTMLのいずれかであることが好ましい。   In the printing control apparatus of the present invention, it is preferable that the markup language is any one of XML, HTML, or XHTML.

この構成によれば、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 a printing process for each band obtained by dividing an image to be printed into a predetermined height. The print control apparatus receives input data in which an image to be printed is described in a markup language, and a drawing command for sequentially interpreting the description of the input data and drawing the image to be printed. First interpretation means to be obtained one after another, interpreting the description of the input data, and describing the description range of the input data necessary for the print processing of the first band in which the print processing execution order is a band up to a predetermined number from the top And a second interpreting means for specifying, wherein the printing apparatus expands a drawing command acquired from the description of the specified description range to generate band data of the first band, and then, other than the specified description range A development unit that further develops a drawing command acquired from the description to generate band data after the first band; and a print processing unit that executes a printing process according to the band data when the band data is generated. Features.

この構成によれば、印刷を開始するタイミングを早めた、利便性の高い印刷システムを得ることができる。   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 Step 1, a first interpretation process for sequentially interpreting the description of the input data, and sequentially obtaining drawing commands for drawing an image to be printed, and interpreting the description of the input data Then, from the second interpretation step for specifying the description range of the input data, which is necessary for the print processing of the leading band that is the band in which the execution order of the printing processing is a predetermined number of bands from the beginning, A first expansion step of expanding the acquired drawing command to generate band data of the first band, and further expanding a drawing command acquired from a description outside the specified description range, A second expanding step of generating Dodeta, the band data is generated, characterized in that it comprises a print control step of causing the printing device to print processing according the band data.

さらに、本発明はプログラム及びそのプログラムを記録した記録媒体とすることができる。本発明は、印刷対象の画像を所定の高さに区分したバンドごとに行う印刷処理を、印刷装置に次々に実行させるためのドライバプログラムであって、コンピュータを、印刷対象の画像をマークアップ言語で記述した入力データを受け付ける入力手段、入力データの記述を順次解釈して、印刷対象の画像を描画するための描画命令を次々に取得する第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 interpreting means for sequentially interpreting the description of the input data and sequentially obtaining drawing commands for drawing the image to be printed; and interpreting the description of the input data The second interpreting means for specifying the description range of the input data, which is necessary for the print processing of the leading band in which the execution order of the printing processing is a band from the beginning to a predetermined number, is obtained from the description of the specified description range. The drawing command is expanded to generate band data for the first band, and then the drawing commands acquired from descriptions outside the specified description range are further expanded to the bands after the first band. When the band data is generated, the band data is sequentially supplied to the printing apparatus via the communication means for communicating with the printing apparatus, and the printing process according to the band data is performed on the printing apparatus. It is characterized by functioning as print control means to be performed.

このドライバプログラムを記録した記録媒体としては、フレキシブルディスク、CD−ROMやDVD−ROMなどの光ディスク、光磁気ディスク、ICカード、又はメモリカードなどコンピュータが読み取り可能な種々の媒体を利用することができる。   As a recording medium on which the driver program is recorded, various computer-readable media such as a flexible disk, an optical disk such as a CD-ROM or a DVD-ROM, a magneto-optical disk, 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 printing system 1 includes a host computer (printing control device) 2 and a printer (printing device) 3.

ホストコンピュータ2は、例えば汎用のパーソナルコンピュータであり、図1に示すように、CPU20、ROM21、RAM22、ハードディスク(HD)23、CD−ROMドライブ24、ネットワークインターフェイス(ネットワークI/F)25、及び通信インターフェイス(通信I/F)26を備えている。通信I/F26は、ケーブルを介してプリンタ3が接続されており、ホストコンピュータ2とプリンタ3とは相互にデータ通信可能となっている。また、ネットワークI/F25はLANケーブルなどを介してネットワークサーバ4と接続されており、ネットワークサーバ4と所定のプロトコルに従う通信を行うことにより、ホストコンピュータ2はインターネットに接続可能である。   The host computer 2 is, for example, a general-purpose personal computer. As shown in FIG. 1, the CPU 20, ROM 21, RAM 22, hard disk (HD) 23, CD-ROM drive 24, network interface (network I / F) 25, and communication An interface (communication I / F) 26 is provided. The communication I / F 26 is connected to the printer 3 via a cable, and the host computer 2 and the printer 3 can perform data communication with each other. The network I / F 25 is connected to the network server 4 via a LAN cable or the like, and the host computer 2 can be connected to the Internet by communicating with the network server 4 according to a predetermined protocol.

CPU20は、ホストコンピュータ2の各構成を制御する部分であり、ハイパー・スレッディング・テクノロジなどのマルチスレッドに対応させる技術や、処理単位となるプロセッサコアを複数個有することにより、複数の処理を並列に実行可能な構成になっている。これにより、CPU20は、後述する第1XML解釈部として行う処理と第2XML解釈部として行う処理とを並列に実行する。もっとも、2つ以上のCPUを備えた構成とすることにより、第1XML解釈部、第2XML解釈部として行う処理を並列処理してもよい。   The CPU 20 is a part that controls each configuration of the host computer 2, and has a plurality of processing cores in parallel by having a technology corresponding to multithreading such as hyper-threading technology and a plurality of processor cores as processing units. The configuration is executable. As a result, the CPU 20 executes in parallel a process performed as a first XML interpretation unit, which will be described later, and a process performed as a second XML interpretation unit. However, the processing performed as the first XML interpretation unit and the second XML interpretation unit may be performed in parallel by adopting a configuration including two or more CPUs.

ROM21はホストコンピュータ2を制御するための所定のプログラムなどが記録された不揮発性のメモリ、RAM22はワーキングメモリなどに用いる汎用のメモリである。   The ROM 21 is a non-volatile memory in which a predetermined program for controlling the host computer 2 is recorded, and the RAM 22 is a general-purpose memory used as a working memory.

HD23は、アプリケーションプログラムや本発明に係るドライバプログラムなどを記録している。なお、ドライバプログラムはHD23に予め記録されていてもよいし、CD−ROM5などの記録媒体に記録された形態で供給され、CPU20がCD−ROMドライブ24によりCD−ROM5からプログラムを読み出し、読み出したプログラムをHD23に記録するものとしてもよい。   The HD 23 records application programs and driver programs according to the present invention. The driver program may be recorded in advance on the HD 23 or supplied in a form recorded on a recording medium such as the CD-ROM 5, and the CPU 20 reads the program from the CD-ROM 5 by the CD-ROM drive 24. The program may be recorded on the HD 23.

そして、CPU20が、所定のオペレーションシステムの下で、HD23に記録されたアプリケーションプログラムを実行することによりアプリケーション100が機能し、ドライバプログラムを読み出して実行することによりプリンタドライバ200が機能する(図2参照)。   Then, the CPU 20 executes the application program recorded in the HD 23 under a predetermined operation system, so that the application 100 functions, and the printer driver 200 functions by reading and executing the driver program (see FIG. 2). ).

アプリケーション100は、文書作成ソフトウェアやウェブブラウザなどのプリンタ3に対する印刷要求元である。アプリケーション100は、文書作成ソフトウェアにより作成されたXMLドキュメントや、ウェブブラウザがネットワークサーバ4と通信するようにしてインターネットから取得したXMLドキュメントなどを印刷の対象として、印刷要求及びXMLドキュメントを含む所定のフォーマットの印刷データをプリンタドライバ200に受け渡す処理を行う。   The application 100 is a print request source for the printer 3 such as document creation software or a web browser. The application 100 prints an XML document created by the document creation software, an XML document acquired from the Internet so that the web browser communicates with the network server 4, and a predetermined format including the print request and the XML document. The print data is transferred to the printer driver 200.

プリンタドライバ200は、アプリケーション100から印刷データを受け取ると、XMLドキュメント(入力データ)を解釈して描画処理を行うことにより、プリンタ3が処理可能なフォーマットの画像データを生成し、この印刷用の画像データを通信I/F26を介してプリンタ3に送信する部分である。これらの処理を行うため、図2に示すように、プリンタドライバ200は、制御部210、XMLパース部220及びレンダリング部230を備えている。   When the printer driver 200 receives the print data from the application 100, the printer driver 200 interprets the XML document (input data) and performs a drawing process to generate image data in a format that can be processed by the printer 3, and this print image. This is a part that transmits data to the printer 3 via the communication I / F 26. In order to perform these processes, the printer driver 200 includes a control unit 210, an XML parsing unit 220, and a rendering unit 230, as shown in FIG.

制御部210は、XMLパース部220及びレンダリング部230を制御して、XMLドキュメントに対する各種の処理を行わせる部分である。そのため、制御部210は、アプリケーション100から受け渡されたXMLドキュメントに入力処理を行うXMLドキュメント入力部(入力手段)211と、XMLパース部220及びレンダリング部230とのデータ授受を制御するデータ制御部212と、バンドデータをプリンタ3に出力してバンドごとの印刷処理を行わせる印刷制御部213とを有している。   The control unit 210 is a part that controls the XML parsing unit 220 and the rendering unit 230 to perform various processes on the XML document. Therefore, the control unit 210 includes an XML document input unit (input unit) 211 that performs input processing on the XML document transferred from the application 100, and a data control unit that controls data exchange between the XML parsing unit 220 and the rendering unit 230. 212 and a print control unit 213 that outputs band data to the printer 3 to perform print processing for each band.

XMLパース部220は、XMLドキュメントを解釈してXMLドキュメントの描画内容を表す描画命令を取得し、解釈して取得した描画命令を制御部210に受け渡す部分である。このXMLパース部220は、第1XML解釈部221と第2XML解釈部222とを有している。   The XML parsing unit 220 is a part that interprets the XML document, acquires a drawing command representing the drawing content of the XML document, and passes the drawing command obtained by the interpretation to the control unit 210. The XML parsing unit 220 includes a first XML interpretation unit 221 and a second XML interpretation unit 222.

第2XML解釈部222は、XMLドキュメントを解釈して得られる複数の描画命令のうち、先頭バンド(バンド0)を描画するために必要な描画命令に対応する記述の後端位置を探索する処理を行う。   The second XML interpretation unit 222 performs a process of searching for the rear end position of the description corresponding to the drawing command necessary for drawing the first band (band 0) among the plurality of drawing commands obtained by interpreting the XML document. Do.

第1XML解釈部221は、XMLドキュメントを解釈して描画命令を取得する部分である。そのため、まず、XMLドキュメントの記述を先頭から順番に解釈して、取得した描画命令を、制御部210に順次受け渡す処理を行う。なお、以下では、XMLドキュメントの記述を先頭から順番に解釈するときの解釈順を「正順」といい、後端から順番に解釈するときの解釈順を「逆順」という。   The first XML interpretation unit 221 is a part that interprets an XML document and acquires a drawing command. Therefore, first, the description of the XML document is interpreted in order from the top, and the acquired drawing command is sequentially transferred to the control unit 210. In the following, the interpretation order when interpreting the description of the XML document in order from the top is referred to as “normal order”, and the interpretation order when interpreting in order from the rear end is referred to as “reverse order”.

また、第1XML解釈部221は、第2XML解釈部222が先頭バンドの記述の後端位置を見つけると、この後端位置より前の記述より取得した描画命令により、先頭バンドのバンドデータを生成可能であると判断して、先頭バンドのバンドデータの生成処理を開始してもよい旨の先頭バンドの処理開始通知を、制御部210を介してレンダリング部230に送る処理を行う。   In addition, when the second XML interpretation unit 222 finds the rear end position of the description of the first band, the first XML interpretation unit 221 can generate band data of the first band by a drawing command acquired from the description before the rear end position. And processing for sending the start band processing start notification to the effect that the band data generation processing for the first band may be started to the rendering unit 230 via the control unit 210 is performed.

レンダリング部230は、制御部210を介してXMLパース部220から受け渡された描画命令を順次ビットマップ形式のオブジェクト画像に展開し、展開したオブジェクト画像を配置するようにして、ビットマップ形式の画像データを生成するレンダリング処理を実行する。そして、生成した画像データは、プリンタ3に出力するためいったん制御部210に受け渡す処理を行う。   The rendering unit 230 sequentially develops drawing commands passed from the XML parsing unit 220 via the control unit 210 into bitmap object images, and arranges the developed object images so that the bitmap format image is arranged. A rendering process that generates data is executed. The generated image data is once transferred to the control unit 210 for output to the printer 3.

また、レンダリング部230は、制御部210を介して第1XML解釈部221より先頭バンドの処理開始通知を受けると、その時点で展開済みの画像データの画像から、先頭バンドに対応する領域の画像を抜き出すようにして、先頭バンドのバンドデータを生成する。そして、先頭バンドのバンドデータを制御部210に受け渡してから、さらに受け取る描画命令についてレンダリング処理を行って先頭バンド以降のバンドデータを生成し、制御部210に受け渡す処理を行う。   In addition, when the rendering unit 230 receives the first band processing start notification from the first XML interpretation unit 221 via the control unit 210, the rendering unit 230 extracts an image of an area corresponding to the first band from the image data image developed at that time. As it is extracted, band data of the first band is generated. Then, after the band data of the first band is transferred to the control unit 210, a rendering process is further performed on the received drawing command to generate band data after the first band, and a process of transferring to the control unit 210 is performed.

制御部210がレンダリング部230からバンドデータを受け取ると、印刷制御部213は、そのバンドデータをプリンタ3に出力するようにして、プリンタ3にバンドデータに従う色変換・スクリーン処理などの印刷処理を次々に行わせる。これにより、プリンタ3に、先頭バンドを印刷させてから、先頭バンド以降のバンドを次々に印刷させるようにして、XMLドキュメントに記述された印刷対象となる画像全体を印刷させる。   When the control unit 210 receives the band data from the rendering unit 230, the print control unit 213 outputs the band data to the printer 3, and causes the printer 3 to perform print processing such as color conversion and screen processing according to the band data one after another. To do. As a result, the printer 3 prints the entire image to be printed described in the XML document by printing the first band and then printing the bands after the first band one after another.

なお、印刷処理のうちの一部、例えば色変換処理についてはホストコンピュータ側で行って、色変換後のバンドデータをプリンタ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 printer 3.

このように、本実施形態に係るプリンタドライバ200は、XMLドキュメントの記述を順次処理する中で、後端位置の記述まで処理されて先頭バンドのバンドデータが生成可能になると、XMLドキュメントの全記述、全描画命令についての処理完了を待つことなく、先頭バンドのバンドデータを生成して、先頭バンドについての印刷処理をプリンタ3に行わせている。すなわち、先頭バンドについての処理は、先頭バンド以外のバンドより優先して行うようにしている。   As described above, when the printer driver 200 according to the present embodiment sequentially processes the description of the XML document, the description of the rear end position is processed and the band data of the first band can be generated. The first band data is generated without waiting for the completion of processing for all the drawing commands, and the printer 3 is caused to perform print processing for the first band. In other words, the processing for the leading band is performed with priority over the bands other than the leading band.

次に、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 printer driver 200 when an XML document is input will be described in order according to the flowcharts of FIGS. 4 to 7 with reference to FIG. 3 is a diagram showing data movement among the control unit 210, the XML parsing unit 220, and the rendering unit 230. FIG. 4 shows the control unit 210, FIG. 5 shows the second XML interpretation unit 222, and FIG. The first XML interpretation unit 221 and FIG. 7 show the processing procedure performed by the rendering unit 230.

制御部210は、アプリケーション100からXMLドキュメントを受け取ると図4に示す処理を開始する。処理を開始すると、まず、ステップS100において、XMLドキュメント入力部211は入力されたデータがXMLドキュメントであることを認識して入力処理を行う(図3(1)参照)。   When the control unit 210 receives the XML document from the application 100, the control unit 210 starts the processing illustrated in FIG. When the processing starts, first, in step S100, the XML document input unit 211 recognizes that the input data is an XML document and performs input processing (see FIG. 3A).

次に、ステップS110では、データ制御部212は、入力されたXMLドキュメントをXMLパース部220に受け渡す(図3(2)参照)。   Next, in step S110, the data control unit 212 delivers the input XML document to the XML parsing unit 220 (see FIG. 3B).

ここで、実際には、XMLドキュメントを受け渡した後、制御部210は後述するステップS120の処理を行うが、説明の便宜のため、以下では、制御部210から受け渡されたXMLドキュメントに対してXMLパース部220の第2XML解釈部222が行う処理から説明する。   Here, in actuality, after delivering the XML document, the control unit 210 performs the process of step S120 described later. For convenience of explanation, hereinafter, for the XML document delivered from the control unit 210, The processing performed by the second XML interpretation unit 222 of the XML parsing unit 220 will be described.

第2XML解釈部222は、データ制御部212からXMLパース部220にXMLドキュメントが受け渡されると図5に示す処理を開始する。処理を開始すると、ステップS200において、受け渡されたXMLドキュメントを構成する記述のうち、未処理の記述があるか否かを判断して、未処理の記述があれば(ステップS200:Yes)、ステップS210に進む。未処理の記述がなければ(ステップS200:No)、図5に示した処理を終了する。   When the XML document is delivered from the data control unit 212 to the XML parsing unit 220, the second XML interpretation unit 222 starts the processing shown in FIG. When the process is started, in step S200, 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), Proceed to step S210. If there is no unprocessed description (step S200: No), the process shown in FIG. 5 is terminated.

ステップS210に処理が進むと、第2XML解釈部222は、XMLドキュメントのデータを解釈(パース)して、描画命令の描画範囲を取得する。なお、ここで行うパースは描画命令単位で行う処理であり、XMLドキュメントの記述を後端行から先頭行の記述に向って順番(すなわち、逆順)に処理する。1つの描画命令についての描画範囲を取得するとステップS220に進んで、第2XML解釈部222は、取得した描画命令の描画範囲が先頭バンドのバンド領域に掛かっているか否かを判断する。   When the processing proceeds to step S210, the second XML interpretation unit 222 interprets (parses) the data of the XML document and acquires the drawing range of the drawing command. Note that the parsing performed here is processing performed in units of drawing commands, and the description of the XML document is processed in order (that is, in reverse order) from the rear end line to the description of the first line. When the drawing range for one drawing command is acquired, the process proceeds to step S220, and the second XML interpretation unit 222 determines whether or not the drawing range of the acquired drawing command is applied to the band region of the first band.

このときの処理について図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ドキュメントによれば、図9に示すように、行番号「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”, as shown in FIG. 4 ”from the drawing start position A, one object OB consisting of a line returning to the drawing start position A in order through the positions B (x2, y1), C (x2, y2), and D (x1, y2). The drawing content for drawing (4) is acquired. Similarly, the drawing start position E (x3, y3) is specified by the description of the line number “m”, and from the drawing start position E by the description of the line number “m + 1”, the 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, in 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, if the paper transport direction is the short side direction (X direction) or the long side direction (Y direction) of the paper, but the paper transport direction is the Y direction, the band area has a constant band width in the Y direction. It is divided for each BH, and the range of the leading band (band 0) is “0 to BH” in the Y direction.

ステップS220の判断では、第2XML解釈部222は、先頭バンドの範囲が判断対象の描画命令の描画範囲に掛かっているか、すなわち範囲の重複が一部にでも存在しているか否かを判断することにより行う。例えば、図9の例に示すように、「y1,y2,y4>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 XML interpretation unit 222 determines whether the range of the leading band is over the drawing range of the drawing command to be determined, that is, whether there is some overlapping range. To do. For example, as shown in the example of FIG. 9, when “y1, y2, y4> BH> y3”, the object OB (m + 1) in the Y-direction drawing range “y3 to y4” is “y3 to BH”. Partially overlaps the range of the first band. 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は、描画範囲が先頭バンドに掛かる描画命令が記述された行番号を第1XML解釈部221に通知する。図8,9の例であれば、描画範囲が重複するオブジェクトOB(m+1)の記述の後端の行である、「m+1」行目の行番号が通知される。この行番号は、逆順にパースして最初に見つけた先頭バンドにかかる描画命令の記述位置であるので、先頭バンドにかかる描画範囲を有する描画命令の記述範囲の終端位置を示している。第2XML解釈部222は、行番号を通知すると、図5に示した処理を終了する。   When the process proceeds to step S230, the second XML interpreting unit 222 notifies the first XML interpreting unit 221 of the line number in which the drawing command whose drawing range is applied to the first band is described. In the example of FIGS. 8 and 9, the line number of the “m + 1” line, which is the last line of the description of the object OB (m + 1) with overlapping drawing ranges, is notified. Since this line number is the description position of the drawing command relating to the first band found first by parsing in the reverse order, it indicates the end position of the description range of the drawing instruction having the drawing range relating to the first band. When the second XML interpretation unit 222 notifies the line number, the process shown in FIG. 5 is terminated.

次に、第1XML解釈部221が行う処理について説明する。データ制御部212からXMLパース部220にXMLドキュメントが受け渡されると、第1XML解釈部221は、図6に示す処理を開始する。処理を開始すると、まず、ステップS300において、第1XML解釈部221は、受け取ったXMLドキュメントに未処理の記述があるか否かを判断する。未処理の記述があれば(ステップS300:Yes)、ステップS310に進む。未処理の記述がなければ(ステップS300:No)、ステップS380に進む。   Next, processing performed by the first XML interpretation unit 221 will be described. When the XML document is delivered from the data control unit 212 to the XML parsing unit 220, the first XML interpretation unit 221 starts the processing shown in FIG. When the process is started, first, in step S300, the first XML interpretation unit 221 determines whether or not there is an unprocessed description in the received XML document. If there is an unprocessed description (step S300: Yes), the process proceeds to step S310. If there is no unprocessed description (step S300: No), the process proceeds to step S380.

ステップS310に処理が進むと、第1XML解釈部221は、XMLドキュメントの記述を正順に解釈(パース)して、描画命令を取得する。取得した描画命令は、RAM22に格納され、RAM22の格納先のアドレスを示したアドレス指定の描画命令を制御部210に受け渡す。なお、ここで行うパースは描画命令単位で行う処理であり、XMLドキュメントの記述を先頭行から後端行の記述に向って順番に処理するようにして、1つの描画命令について上述した処理を行うと、ステップS320に進む。   When the process proceeds to step S310, the first XML interpretation unit 221 interprets (parses) the description of the XML document in the normal order, and acquires a drawing command. The acquired drawing command is stored in the RAM 22, and an address-designated drawing command indicating the storage destination address of the RAM 22 is transferred to the control unit 210. The parsing performed here is processing performed in units of rendering commands, and the processing described above is performed for one rendering command so that the description of the XML document is processed in order from the first row to the description of the rearmost row. Then, the process proceeds to step S320.

ステップS320に処理が進むと、第1XML解釈部221は、第2XML解釈部222より行番号通知を受け取っているか否かを判断する。行番号通知を受け取っていなければ(ステップS320:No)、ステップS300に戻って次の記述についての処理を行う。ステップS300,310の処理を繰り返し行うようにして、その処理中に行番号通知を受け取っていれば(ステップS320:Yes)、ステップS330に進む。   When the processing proceeds to step S320, the first XML interpretation unit 221 determines whether or not a line number notification is received from the second XML interpretation unit 222. If the line number notification has not been received (step S320: No), the process returns to step S300 to process the next description. If the process of steps S300 and 310 is repeatedly performed and a line number notification is received during the process (step S320: Yes), the process proceeds to step S330.

ステップS330に処理が進むと、第1XML解釈部221は、受け取った行番号通知の行番号と、ステップS310においてパース済みの行番号とを比較して、行番号通知の行番号がパース済みの行番号より大きいか否かを判断する。受け取った通知の行番号がパース済みの行番号より大きければ(ステップS330:Yes)、ステップS340に進んで、ステップS310と同様に、XMLドキュメントの記述を正順にパースして、1つの描画命令を取得して制御部210に受け渡す。そして、ステップS330に戻り再び判断を行う。受け取った通知の行番号の記述までパースされ、パース済みの行番号が通知の行番号以上となると(ステップS330:No)、ステップS350に進む。この判断により、少なくとも、行番号通知の行番号までの記述についてはパース済みとなり、先頭バンドを展開するために必要な描画命令について制御部210への受け渡しが完了してから、ステップS350の処理を行うことになる。   When the process proceeds to step S330, the first XML interpretation unit 221 compares the received line number notification line number with the line number already parsed in step S310, and the line number notification line number has been parsed. It is determined whether or not the number is larger. If the line number of the received notification is larger than the parsed line number (step S330: Yes), the process proceeds to step S340, and the description of the XML document is parsed in the normal order as in step S310, and one drawing command is issued. Obtain and pass to the control unit 210. Then, the process returns to step S330 to make a determination again. Parsing is performed up to the description of the line number of the received notification, and if the parsed line number is equal to or greater than the line number of the notification (step S330: No), the process proceeds to step S350. With this determination, at least the description up to the line number of the line number notification has been parsed, and after the drawing command necessary for developing the leading band has been delivered to the control unit 210, the process of step S350 is performed. Will do.

ステップS350に処理が進むと、第1XML解釈部221は、先頭バンドを展開するために必要な描画命令については制御部210への受け渡しが済んでいるので、先頭バンドの処理開始通知を、制御部210に受け渡す。   When the process proceeds to step S350, the first XML interpreting unit 221 has passed the drawing command necessary for developing the leading band to the control unit 210, so the first band processing start notification is sent to the control unit. Deliver to 210.

次に、ステップS360では、XMLドキュメントに未処理の記述がまだ残っているか否かを判断する。未処理の記述が残っていれば(ステップS360:Yes)、ステップS370に進んで、XMLドキュメントを正順にパースして、取得した1つの描画命令を制御部210に受け渡してから、ステップS360に戻るようにして、XMLドキュメントの全記述分の描画命令の受け渡しが完了するまで、処理を繰り返し行う。全記述について処理がなされると(ステップS360:No)、ステップS380に進む。   Next, in step S360, it is determined whether an unprocessed description still remains in the XML document. If an unprocessed description remains (step S360: Yes), the process proceeds to step S370, the XML document is parsed in the normal order, the obtained one drawing command is transferred to the control unit 210, and the process returns to step S360. In this way, the process is repeated until the drawing commands for all the descriptions in the XML document are transferred. When the process is performed for all the descriptions (step S360: No), the process proceeds to step S380.

ステップS300又はステップS360よりステップS380に処理が進むと、第1XML解釈部221は、XMLドキュメントの全記述についてパース・描画命令の受け渡しが終了しているので、制御部210にデータ終了通知を受け渡して、図6に示した処理を終了する。   When the process proceeds from step S300 or step S360 to step S380, the first XML interpretation unit 221 passes the data end notification to the control unit 210 because the parsing / drawing command has been passed for all the descriptions of the XML document. Then, the process shown in FIG.

このように、XMLパース部220においては、第2XML解釈部222が、XMLドキュメントより先頭バンドにかかる描画範囲を有する描画命令の記述部分の終端位置を探索している。第1XML解釈部221は、XMLドキュメントの記述を解釈して描画命令を次々に制御部210に受け渡すようにしながら、終端位置までの記述が処理されたタイミングで、先頭バンドの処理開始通知を制御部210に受け渡している。また、XMLドキュメントを受け取ったタイミングで、第1XML解釈部221が行う処理と、第2XML解釈部222が行う処理とを開始するようにして並列に処理を行っている。そして、先頭バンドの処理開始通知後には、XMLドキュメントの未処理の記述を解釈、描画命令を受け渡すようにして、全記述について処理を終えると、データ終了通知を制御部210に受け渡している。   As described above, in the XML parsing unit 220, the second XML interpretation unit 222 searches for the end position of the description portion of the rendering command having the rendering range related to the head band from the XML document. The first XML interpreting unit 221 controls the start band processing start notification at the timing when the description up to the end position is processed while interpreting the description of the XML document and sequentially passing drawing commands to the control unit 210. It passes to the part 210. Further, at the timing when the XML document is received, the processing performed by the first XML interpretation unit 221 and the processing performed by the second XML interpretation unit 222 are started in parallel. Then, after the processing start notification of the first band, an unprocessed description of the XML document is interpreted and a drawing command is transferred. When all the descriptions have been processed, a data end notification is transferred to the control unit 210.

次に、図4のフローチャートに戻って、制御部210がXMLパース部220からデータを受け取った際に行う処理手順について説明する。   Next, returning to the flowchart of FIG. 4, a processing procedure performed when the control unit 210 receives data from the XML parsing unit 220 will be described.

制御部210は、上記したXMLドキュメントの入力処理(ステップS100及びステップS110)を終了したタイミングでステップS120の処理を開始している。ステップS120では、データ制御部212は、XMLパース部220から受け渡されるデータを監視するようにして、XMLパース部220からデータを受信したか否かを判断し続けている。データを受信していなければ(ステップS120:No)、再びステップS120の処理を行うようにして監視を続行する。そして、XMLパース部220からデータを受信すると(ステップS120:Yes)、ステップS130に進む。   The control unit 210 starts the process of step S120 at the timing when the XML document input process (steps S100 and S110) is completed. In step S120, the data control unit 212 continues to determine whether data has been received from the XML parsing unit 220 by monitoring the data delivered from the XML parsing unit 220. If data has not been received (step S120: No), monitoring is continued by performing the process of step S120 again. 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 data control unit 212 determines whether the received data is a drawing command. If the received data is a drawing command (step S130: Yes), the process proceeds to step S140. If it is not a drawing command (step S130: No), the process proceeds to step S150.

ステップS140に処理が進むと、データ制御部212は、描画命令に示されるアドレス指定先のRAM22にアクセスして、描画命令の実データを読み出し(図3(7)参照)、描画命令の実データをレンダリング部230に受け渡す(図3(8)参照)。   When the process proceeds to step S140, the data control unit 212 accesses the address-designated RAM 22 indicated by the drawing command, reads the actual data of the drawing command (see FIG. 3 (7)), and the actual data of the drawing command. Is transferred to the rendering unit 230 (see FIG. 3 (8)).

ステップS140において描画命令がレンダリング部230に受け渡すと、ステップS120に処理が戻るようにして、データ制御部212は次にXMLパース部220から送信されるデータの監視を続行する。   When the drawing command is transferred to the rendering unit 230 in step S140, the data control unit 212 continues to monitor the data transmitted from the XML parsing unit 220 next so that the process returns to step S120.

また、ステップS130の処理において受信したデータが描画命令でなければ(ステップS130:No)、ステップS150に処理が進んで、受信したデータが先頭バンドの処理開始通知であるか否かを判断する。処理開始通知であれば(ステップS150:Yes)、ステップS160に進んで、先頭バンドの処理開始通知をレンダリング部230に受け渡す(図3(9)参照)。先頭バンドの処理開始通知を受け渡すと、ステップS120に処理が戻るようにして、データ制御部212は次にXMLパース部220から送信されるデータの監視を続行する。   If the data received in the process of step S130 is not a drawing command (step S130: No), the process proceeds to step S150, and it is determined whether the received data is a process start notification for the first band. If it is a processing start notification (step S150: Yes), the process proceeds to step S160, and the processing start notification of the first band is transferred to the rendering unit 230 (see FIG. 3 (9)). When the processing start notification for the first band is delivered, the process returns to step S120, and the data control unit 212 continues to monitor the data transmitted from the XML parsing unit 220 next.

また、ステップS150の処理において受信したデータが先頭バンドの処理開始通知でなければ(ステップS150:No)、ステップS170に処理が進んで、受信したデータがデータ終了通知であるか否かを判断する。受信したデータがデータ終了通知でなければ(ステップS170:No)、ステップS120に戻ってデータの監視を続行する。データ終了通知であれば(ステップS170:Yes)、ステップS180に進んで、XMLドキュメントについての描画命令の送信が終了した旨のデータ終了通知を、レンダリング部230に受け渡してから、図4に示した処理を終了する。   If the data received in the process of step S150 is not the start band process start notification (step S150: No), the process proceeds to step S170 to determine whether the received data is a data end notification. . If the received data is not a data end notification (step S170: No), the process returns to step S120 to continue monitoring the data. If it is a data end notification (step S170: Yes), the process proceeds to step S180, and the data end notification indicating that the transmission of the rendering command for the XML document has ended is delivered to the rendering unit 230 and then shown in FIG. The process ends.

このように、制御部210は、XMLパース部220から次々に受け取る、アドレス指定の描画命令を、実データに置き換えてレンダリング部230に順次受け渡す処理を行っている。また、XMLパース部220から、先頭バンドの処理開始通知又はデータ終了通知を受け取ると、受け取った通知をレンダリング部230に受け渡す処理を行っている。   As described above, the control unit 210 performs a process of sequentially transferring the address-designated drawing commands received from the XML parsing unit 220 one after another to the rendering unit 230 by replacing the actual data. In addition, when the processing start notification or the data end notification of the leading band is received from the XML parsing unit 220, a process of passing the received notification to the rendering unit 230 is performed.

次に、レンダリング部230が行う処理手順について、図7のフローチャートに従って説明する。   Next, the processing procedure performed by the rendering unit 230 will be described with reference to the flowchart of FIG.

図7に示す処理を開始すると、ステップS400において、レンダリング部230は制御部210からデータを受けとったか否かを判断して、新たにデータを受け取っていなければ(ステップS400:No)、所定の時間経過後に再びステップS400の判断を行うようにして、新たにデータを受け取っていればステップS410に進む(ステップS400:Yes)。   When the processing shown in FIG. 7 is started, in step S400, the rendering unit 230 determines whether or not data has been received from the control unit 210. If no new data has been received (step S400: No), a predetermined time period is reached. After the elapse of time, the determination in step S400 is performed again, and if new data has been received, the process proceeds to step S410 (step S400: Yes).

ステップS410に処理が進むと、レンダリング部230は受け取ったデータが描画命令であるか否かを判断する。描画命令であれば(ステップS410:Yes)、ステップS420に進む。描画命令でなければ(ステップS410:No)、ステップS430に進む。   When the process proceeds to step S410, the rendering unit 230 determines whether the received data is a drawing command. If it is a drawing command (step S410: Yes), the process proceeds to step S420. If it is not a drawing command (step S410: No), the process proceeds to step S430.

ステップS420に処理が進むと、レンダリング部230は、受け取った描画命令を展開する。そして、展開したオブジェクト画像を、受け取った描画命令の描画開始位置に配置して、ビットマップ形式の画像データにオブジェクト画像を埋め込む処理を行う。このレンダリング処理により、処理対象の描画命令を反映させた画像データが得られる。レンダリング処理を行うと、ステップS410に戻って、次に受け取るデータについて処理を行うようにして、次々に受け渡される描画命令について、次々にレンダリング処理を行う。   When the process proceeds to step S420, the rendering unit 230 expands the received drawing command. Then, the developed object image is arranged at the drawing start position of the received drawing command, and processing for embedding the object image in the bitmap format image data is performed. By this rendering process, image data reflecting a rendering command to be processed is obtained. 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 drawing commands that are successively transferred.

ステップS410において、受け取ったデータが描画命令でなければ(ステップS410:No)、ステップS430に進んで、受け取ったデータが先頭バンドの処理開始通知であるか否かを判断する。先頭バンドの処理開始通知であれば(ステップS430:Yes)、ステップS440に進む。描画命令でなければ(ステップS430:No)、ステップS460に進む。   In step S410, if the received data is not a drawing command (step S410: No), the process proceeds to step S430, and it is determined whether the received data is a processing start notification for the first band. If it is the processing start notification of the first band (step S430: Yes), the process proceeds to step S440. If it is not a drawing command (step S430: No), the process proceeds to step S460.

ステップS440に処理が進むと、レンダリング部230は、ステップS420のレンダリング処理により、先頭バンドを展開するために必要となる全ての描画命令についてレンダリング処理が行われたので、生成された画像データから先頭バンドのバンドデータを生成する。そして、ステップS450において、先頭バンドのバンドデータを制御部210に受け渡す。制御部210の印刷制御部213は、通信I/F26を介して先頭バンドのバンドデータをプリンタ3に送信することにより、ホストコンピュータ2はプリンタ3に先頭バンドの印刷処理を開始させる。レンダリング部230は、先頭バンドのバンドデータを受け渡すと、ステップS410に戻って、次に受け取るデータについて処理を行う。   When the processing proceeds to step S440, the rendering unit 230 has performed rendering processing for all the drawing commands necessary for developing the head band by the rendering processing of step S420. Generate band data for a band. In step S450, the band data of the leading band is transferred to the control unit 210. The print control unit 213 of the control unit 210 transmits the band data of the first band to the printer 3 via the communication I / F 26, so that the host computer 2 causes the printer 3 to start the first band printing process. When the rendering unit 230 delivers the band data of the first band, the rendering unit 230 returns to step S410 and processes the next received data.

また、ステップS430において受け取ったデータが先頭バンドの処理開始通知でなければ(ステップS430:No)、ステップS460に処理が進んで、レンダリング部230は、受け取ったデータがデータ終了通知であるか否かを判断する。データ終了通知でなければ(ステップS460:No)、ステップS410に戻って、次に受け取るデータについて処理を行う。   If the data received in step S430 is not a processing start notification for the first band (step S430: No), the process proceeds to step S460, and the rendering unit 230 determines whether the received data is a data end notification. Judging. If it is not a data end notification (step S460: No), the process returns to step S410, and the next received data is processed.

受け取ったデータがデータ終了通知であれば(ステップS460:Yes)、制御部210から次々に受け取る描画命令に対してステップS420のレンダリング処理を次々に行うようにしてXMLドキュメント全体に対応する画像データが生成済みであるので、ステップS470に進んで、生成した画像データの画像をバンドごとに区分して、先頭バンド以降の各バンドごとのバンドデータを生成する。そして、ステップS480において生成したバンドデータを次々に制御部210に受け渡し、受け渡しを終えると図7に示した処理を終了する。制御部210の印刷制御部213は、受け渡されたバンドデータを通信I/F26を介してプリンタ3に次々に送信することにより、プリンタ3に先頭バンド以降のバンドごとの印刷処理を次々に行わせる。これにより、全バンドについての印刷処理が行われて、XMLドキュメントに対応した印刷がなされる。   If the received data is a data end notification (step S460: Yes), image data corresponding to the entire XML document is obtained by sequentially performing the rendering processing in step S420 on the rendering commands received one after another from the control unit 210. Since it has been generated, the process proceeds to step S470, where the image of the generated image data is divided for each band, and band data for each band after the first band is generated. Then, the band data generated in step S480 is successively transferred to the control unit 210, and when the transfer is completed, the processing shown in FIG. The print control unit 213 of the control unit 210 transmits the passed band data to the printer 3 one after another via the communication I / F 26, thereby performing print processing for each band after the first band on the printer 3 one after another. Make it. As a result, print processing for all bands is performed, and printing corresponding to the XML document is performed.

なお、ステップS100及びステップS110の処理が入力工程、ステップS300〜ステップS380の処理が第1の解釈工程、ステップS200〜ステップS230の処理が第2の解釈工程、ステップS420及びステップS440の処理が第1の展開工程、ステップS420及びステップS470の処理が第2の展開工程、ステップS450及びステップS480の処理が印刷制御工程に相当する。   Note that the processes in steps S100 and S110 are the input process, the processes in steps S300 to S380 are the first interpretation process, the processes in steps S200 to S230 are the second interpretation process, and the processes in steps S420 and S440 are the first. The first development process, the processes in steps S420 and S470 correspond to the second development process, and the processes in steps S450 and S480 correspond to the print control process.

以上に説明したように、本実施形態では、先頭バンド以外のバンドについての描画命令を展開する前に、先頭バンドの描画に必要となる描画命令を展開して先頭バンドのバンドデータを生成して、プリンタ3に先頭バンドの印刷処理を開始させている。そして、先頭バンドのバンドデータの生成後に、先頭バンド以外のバンドについての描画命令を展開して、先頭バンド以降のバンドデータを順次プリンタ3に送り出すようにしている。   As described above, in this embodiment, before developing drawing commands for bands other than the first band, the drawing commands necessary for drawing the first band are developed to generate band data for the first band. The printer 3 is started to print the first band. Then, after the generation of the band data of the first band, the drawing commands for the bands other than the first band are developed, and the band data after the first band are sequentially sent to the printer 3.

以下、本実施形態の効果を記載する。   Hereinafter, effects of the present embodiment will be described.

(1)プリンタ3は、先頭バンドのバンドデータを受け取るステップS450のタイミングで、印刷処理を開始することができるので、XMLオブジェクトの記述から得られる全ての描画命令を展開してからバンドデータを生成する必要がある従来の処理方法に比べて、先頭バンドの印刷処理を開始するタイミングを早めることができる。そして、プリンタ3が先頭バンドについての印刷処理の実行中に、プリンタドライバ200は、先頭バンド以降のバンドについての描画命令をさらに展開して先頭バンド以降のバンドデータを生成するための処理を開始しているので、XMLドキュメントに対応する印刷処理をより早いタイミングで終えることができる。これにより、ユーザにとって印刷完了までの待ち時間が短縮することになるので、ユーザにとっての利便性が向上する。   (1) Since the printer 3 can start the printing process at the timing of step S450 in which the band data of the first band is received, the band data is generated after all drawing commands obtained from the description of the XML object are expanded. Compared to the conventional processing method that needs to be performed, the timing for starting the print processing of the first band can be advanced. Then, while the printer 3 is executing the printing process for the first band, the printer driver 200 starts a process for further developing drawing commands for the bands after the first band and generating band data for the first band and the subsequent bands. Therefore, the printing process corresponding to the XML document can be completed at an earlier timing. As a result, the waiting time until the printing is completed for the user is shortened, and the convenience for the user is improved.

(2)第2XML解釈部222が、先頭バンドに掛かる描画範囲を有する描画命令の記述の後端位置の行番号を検出すると、第1XML解釈部221が、この行番号の通知を受け取り、後端位置より前方の記述を解釈する。このとき、第1XML解釈部221が行う処理と第2XML解釈部222が行う処理とを並列に実行しているので、第2XML解釈部222が後端位置の探索中にも、第1XML解釈部221は、記述を解釈して描画命令を次々に取得している。これにより、処理効率が高まり、より早いタイミングで印刷を開始できるようになる。   (2) When the second XML interpretation unit 222 detects the line number at the rear end position of the description of the drawing command having the drawing range applied to the first band, the first XML interpretation unit 221 receives the notification of the line number, Interpret the description ahead of the position. At this time, since the processing performed by the first XML interpretation unit 221 and the processing performed by the second XML interpretation unit 222 are executed in parallel, the first XML interpretation unit 221 is also in progress while the second XML interpretation unit 222 is searching for the rear end position. Obtains drawing commands one after another by interpreting the description. As a result, the processing efficiency increases, and printing can be started at an earlier timing.

以上、本発明の一実施形態を説明したが、本発明はこうした実施の形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内において様々な形態で実施することもできる。以下、変形例を挙げて説明する。   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 printer driver 200 on the host computer side as the print control apparatus performs the parsing and rendering processing, but the present invention is not limited to this mode. For example, a parsing process may be performed on the host computer side and a rendering process may be performed on the printer side. That is, as shown in FIG. 10A, the printing system 1 includes a host computer 2 including a printer driver 200 having a control unit 210 and an XML parsing unit 220, a rendering unit 230, a print processing unit 300, and a print engine. And a printer 3 having 310.

この印刷システム1において、制御部210は、XMLパース部220からの行番号通知を通信I/F26によりプリンタ3に受け渡して、プリンタ3側のレンダリング部230が、行番号通知を受け取ると、それまでに受け取った描画命令に従ってレンダリング処理を行うことにより、先頭バンドのバンドデータを生成する。先頭バンドのバンドデータを印刷処理部300に受け渡して、印刷処理を開始させると、ホストコンピュータ2より次に受け取る描画命令に従うレンダリング処理を次々に行うようにして、各バンドのバンドデータを生成して、印刷処理部300はこのバンドデータに従う印刷処理を行う。印刷処理部300は、バンドデータを印刷エンジン310に対応する画像信号に変換して、印刷エンジン310はこの画像信号に従って印刷を行う。これにより、印刷処理部300が印刷処理を開始するタイミングが早まり、印刷完了までの待ち時間を短縮することができる。   In this printing system 1, the control unit 210 delivers the line number notification from the XML parsing unit 220 to the printer 3 through the communication I / F 26, and when the rendering unit 230 on the printer 3 receives the line number notification, The band data of the first band is generated by performing a rendering process in accordance with the drawing command received. When the band data of the first band is transferred to the print processing unit 300 and the print process is started, the band data of each band is generated by sequentially performing the rendering process according to the drawing command received next from the host computer 2. The print processing unit 300 performs print processing according to the band data. The print processing unit 300 converts the band data into an image signal corresponding to the print engine 310, and the print engine 310 performs printing according to the image signal. As a result, the timing at which the print processing unit 300 starts the printing process is advanced, and the waiting time until the printing is completed can be shortened.

また、プリンタ側に印刷制御装置の構成を有したシステムであってもよい。すなわち、図10(b)に示すように、プリンタ3は、XMLパース部220、レンダリング部230、印刷処理部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 printer 3 includes an XML parsing unit 220, a rendering unit 230, a print processing unit 300, and a print engine 310. The host computer 2 may send print data including an XML document to the printer 3 so that the pudding 3 having the XML parsing unit 220 and the rendering unit 230 performs parsing and rendering.

(変形例2)上記実施形態では、先頭の1つのバンドを先頭バンドとして処理したが、印刷処理の処理順が先頭から所定数のバンドを先頭バンドとして処理してもよい。このとき、先頭から所定数のバンドに掛かる描画命令の記述の後端位置を探索するようにして、上記実施形態と同様の処理を行うとよい。   (Modification 2) In the above embodiment, the first band is processed as the first band, but the processing order of the printing process may be processed from a first number of bands as the first band. At this time, the same processing as in the above embodiment may be performed by searching for the rear end position of the description of the drawing command applied to a predetermined number of bands from the top.

(変形例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, band 0 is set as the first band because a part of the object is drawn in band 0. However, printing processing is performed for a band in which no object is drawn. Since there is no such thing, the first band including the object should be the first band. For example, when an object is drawn for the first time in band n without drawing an object in bands 0 to n-1, band n is processed as the first 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 control unit 210 and output to the printer 3.

(変形例4)上記実施形態では先頭バンドに対応する記述の後端位置を求めるようにして、先頭バンドの処理に必要な記述範囲を特定したが、先頭バンドに対応する記述の先頭位置を求めて、記述範囲を特定するようにしてもよい。例えば、図11に示すように、第4の変形例に掛かるプリンタドライバ200のXMLパース部220は、第1XML解釈部221及び第2XML解釈部222に加えて、さらに第3XML解釈部223を有している。第3XML解釈部223は、XMLドキュメントの記述を先頭から順番(すなわち、正順)に解釈して、先頭バンドを描画するために必要な描画命令に対応する記述の先頭位置を探索する。このときの第1XML解釈部221は、第3XML解釈部222により探索された先頭位置の記述より解釈を開始して、第2XML解釈部223により探索された後端位置の記述まで解釈することにより、先頭バンドのバンドデータを生成する。このように、先頭バンドの描画に必要な記述の前後を特定して優先的に処理することにより、先頭バンドを処理するために要する処理量がさらに少なくなるので、印刷開始のタイミングをさらに早めることができる。   (Modification 4) In the embodiment described above, the description range necessary for the processing of the head band is specified by obtaining the rear end position of the description corresponding to the head band, but the head position of the description corresponding to the head band is obtained. The description range may be specified. For example, as shown in FIG. 11, the XML parsing unit 220 of the printer driver 200 according to the fourth modification example has a third XML interpretation unit 223 in addition to the first XML interpretation unit 221 and the second XML interpretation unit 222. ing. The third XML interpretation unit 223 interprets the description of the XML document in order from the top (that is, in the normal order), and searches for the top position of the description corresponding to the rendering command necessary for rendering the top band. At this time, the first XML interpretation unit 221 starts interpretation from the description of the head position searched by the third XML interpretation unit 222 and interprets up to the description of the rear end position searched by the second XML interpretation unit 223. Generate band data for the first band. In this way, by specifying and preferentially processing before and after the description necessary for drawing the first band, the amount of processing required to process the first band is further reduced, so that the print start timing can be further advanced. Can do.

(変形例5)展開後のデータ形式はビットマップ形式に限られない。例えば、バンドごとに描画内容の描画命令を示す中間コードのデータを受け渡す印刷システムであれば、レンダリング部230は描画命令を、中間コードデータ(画像データ)に展開する。このとき、プリンタ3は、受け取る中間コードデータに、レンダリング処理・色変換処理・スクリーン処理などの印刷処理を次々に行うようにして、処理するとよい。   (Modification 5) 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 rendering unit 230 expands the drawing command into intermediate code data (image data). At this time, the printer 3 may process the received intermediate code data by sequentially performing printing processing such as rendering processing, color conversion processing, and screen processing.

(変形例6)上記実施形態では、XML形式のデータを処理する例について説明したが、HTML(Hypertext Markup Language)やXHTML(Extensible Hypertext Markup Language)などのマークアップ言語で記述されたデータを処理するようにしてもよい。   (Modification 6) In the above embodiment, an example of processing data in XML format has been described. However, data described in a markup language such as HTML (Hypertext Markup Language) or XHTML (Extensible Hypertext Markup Language) is processed. You may do it.

(変形例7)本発明は、プリンタに限られることなく、複写機やファックスに適用することもできる。   (Modification 7) The present invention is not limited to a printer, but can also be applied to a copying machine or a fax machine.

本実施形態に係る印刷システムの構成を示したブロック図。1 is a block diagram illustrating a configuration of a printing system according to an embodiment. ホストコンピュータの機能的構成を示したブロック図。The block diagram which showed the functional structure of the host computer. プリンタドライバ内におけるデータの動きを説明する説明図。Explanatory drawing explaining the movement of the data in a printer driver. 制御部が行う処理手順を示したフローチャート。The flowchart which showed the process sequence which a control part performs. 第2XML解釈部が行う処理手順を示したフローチャート。The flowchart which showed the process sequence which a 2nd XML interpretation part performs. 第1XML解釈部が行う処理手順を示したフローチャート。The flowchart which showed the process sequence which a 1st XML interpretation part performs. レンダリング部が行う処理手順を示したフローチャート。The flowchart which showed the process sequence which a rendering part performs. XMLドキュメントの一例を示した図。The figure which showed an example of the XML document. 描画命令に従う描画例を示した図。The figure which showed the example of drawing according to a drawing command. 第1の変形例を説明するための説明図、(a)、(b)は変形例の一例を示した図。Explanatory drawing for demonstrating a 1st modification, (a), (b) is a figure showing an example of a modification. 第4の変形例を説明するための説明図。Explanatory drawing for demonstrating a 4th modification. バンドを説明するための説明図。Explanatory drawing for demonstrating a band.

符号の説明Explanation of symbols

1…印刷システム、2…印刷制御装置としてのホストコンピュータ、3…印刷装置としてのプリンタ、4…ネットワークサーバ、5…記録媒体としてのCD−ROM、20…CPU、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 SYMBOLS 1 ... Printing system, 2 ... Host computer as printing control apparatus, 3 ... Printer as printing apparatus, 4 ... Network server, 5 ... CD-ROM as recording medium, 20 ... CPU, 21 ... ROM, 22 ... RAM, DESCRIPTION OF SYMBOLS 23 ... Hard disk, 24 ... CD-ROM drive, 25 ... Network interface, 26 ... Communication interface, 100 ... Application, 200 ... Printer driver, 210 ... Control part, 211 ... XML document input part as an input means, 212 ... Data control 213... Print control unit as print control means, 220... XML parsing section, 221... First XML interpretation section as first interpretation means, 222... Second XML interpretation section as second interpretation means, 230. Rendering unit as means, 300 ... print processing unit, 10 ... the print engine.

Claims (11)

印刷対象の画像を所定の高さに区分したバンドごとに行う印刷処理を、印刷装置に次々に実行させる印刷制御装置であって、
前記印刷対象の画像をマークアップ言語で記述した入力データを受け付ける入力手段と、
前記入力データの記述を順次解釈して、前記印刷対象の画像を描画するための描画命令を次々に取得する第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 sequentially interpreting descriptions of the input data and sequentially obtaining drawing commands for drawing the image to be printed;
Second interpretation means for interpreting the description of the input data and identifying a description range of the input data necessary for the print processing of the leading band in which the execution order of the printing processing is a band from the beginning to a predetermined number of bands; ,
The drawing command acquired from the description of the specified description range is expanded to generate the band data of the first band, and then the drawing command acquired from the description other than the specified description range is further expanded. Expansion means for generating band data 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.
請求項1に記載の印刷制御装置において、
前記第2の解釈手段は、前記入力データの記述を解釈して、先頭バンドに掛かる描画範囲を有する描画命令に対応する記述の後端位置を探索し、
前記展開手段は、前記入力データにおいて前記後端位置より解釈順が前方の記述から取得された描画命令を順次展開して前記先頭バンドのバンドデータを生成してから、前記後端位置より解釈順が後方の記述から取得された描画命令を順次展開するようにして前記先頭バンド以降のバンドデータを生成することを特徴とする印刷制御装置。
The print control apparatus according to claim 1,
The second interpreting means interprets the description of the input data, searches for a rear end position of a description corresponding to a drawing command having a drawing range applied to a leading band,
The expansion means sequentially expands drawing commands acquired from a description preceding the rear end position in the input data from the rear end position to generate band data of the first band, and then generates the first band data from the rear end position. A print control apparatus that generates band data after the first band in such a manner that a drawing command acquired from a description in the rear is sequentially expanded.
請求項2に記載の印刷制御装置において、
前記第1の解釈手段が行う処理と、前記第2の解釈手段が行う処理とを並列して実行させ、
前記展開手段は、前記第2の解釈手段が前記後端位置を見つけるまでは、前記第1の解釈手段が取得した描画命令を順次展開し、前記第2の解釈手段が前記後端位置を見つけてから、前記先頭バンドのバンドデータを生成することを特徴とする印刷制御装置。
The print control apparatus according to claim 2,
The processing performed by the first interpretation means and the processing performed by the second interpretation means are executed in parallel.
The expansion means sequentially expands the drawing commands acquired by the first interpretation means until the second interpretation means finds the rear end position, and the second interpretation means finds the rear end position. A print control apparatus for generating band data of the leading band after the first time.
請求項3に記載の印刷制御装置において、
前記第2の解釈手段は、前記第1の解釈手段が行う解釈の順番とは逆順に前記入力データの記述を解釈することを特徴とする印刷制御装置。
The print control apparatus according to claim 3,
The print control apparatus, wherein the second interpreter interprets the description of the input data in an order reverse to the order of interpretation performed by the first interpreter.
請求項3又は4に記載の印刷制御装置において、
前記展開手段は、前記第2の解釈手段が前記後端位置を検出したときに、前記後端位置の記述に対応する描画命令が未展開の場合、前記第1の解釈手段が取得する描画命令を次々に展開して、前記後端位置の記述に対応する描画命令が展開されたタイミングで、前記先頭バンドのバンドデータを生成することを特徴とする印刷制御装置。
The print control apparatus according to claim 3 or 4,
When the second interpreting means detects the rear end position, the unfolding means obtains the drawing instruction that the first interpreting means acquires when the drawing instruction corresponding to the description of the rear end position is not developed. One after another, the print control device generates band data of the head band at a timing when a drawing command corresponding to the description of the rear end position is developed.
請求項3乃至5のいずれか一項に記載の印刷制御装置において、
前記展開手段は、前記第2の解釈手段が前記後端位置を検出したときに、前記後端位置の記述に対応する描画命令が既に展開済みの場合、既に展開済みの描画命令から前記先頭バンドのバンドデータを生成することを特徴とする印刷制御装置。
The print control apparatus according to any one of claims 3 to 5,
If the drawing command corresponding to the description of the rear end position has already been developed when the second interpretation unit detects the rear end position, the expansion means starts the drawing band from the already developed drawing command. A print control apparatus for generating band data for the print.
請求項1乃至6のいずれか一項に記載の印刷制御装置において、
前記マークアップ言語は、XML、HTML又はXHTMLのいずれかであることを特徴とする印刷制御装置。
The print control apparatus according to any one of claims 1 to 6,
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 sequentially interpreting descriptions of the input data and sequentially obtaining drawing commands for drawing the image to be printed;
Second interpretation means for interpreting the description of the input data and identifying a description range of the input data necessary for the print processing of the leading band in which the execution order of the printing processing is a band from the beginning to a predetermined number of bands; With
The printing apparatus includes:
The drawing command acquired from the description of the specified description range is expanded to generate the band data of the first band, and then the drawing command acquired from the description other than the specified description range is further expanded. Expansion means for generating band data 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 sequentially interpreting the description of the input data and sequentially obtaining drawing commands for drawing the image to be printed;
A second interpretation step of interpreting the description of the input data and specifying a description range of the input data necessary for the print processing of the leading band in which the execution order of the printing processing is a band from the beginning to a predetermined number of bands; ,
A first expansion step of expanding a drawing command acquired from the description of the specified description range to generate band data of the first band;
A second expansion step of further expanding a drawing command acquired from a description outside the specified description range to generate band data 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 sequentially interpreting descriptions of the input data and sequentially obtaining drawing commands for drawing the image to be printed;
Second interpretation means for interpreting the description of the input data and specifying a description range of the input data necessary for the print processing of the leading band, in which the execution order of the printing processing is a band from the top to a predetermined number;
The drawing command acquired from the description of the specified description range is expanded to generate the band data of the first band, and then the drawing command acquired from the description other than the specified description range is further expanded. Expansion means for generating band data 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.
請求項10に記載のドライバプログラムを記録した、コンピュータ読取可能な記録媒体。
A computer-readable recording medium on which the driver program according to claim 10 is recorded.
JP2006184129A 2006-07-04 2006-07-04 PRINT CONTROL DEVICE, DRIVER PROGRAM, AND RECORDING MEDIUM CONTAINING THE PROGRAM Expired - Fee Related JP4770609B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006184129A JP4770609B2 (en) 2006-07-04 2006-07-04 PRINT CONTROL DEVICE, DRIVER PROGRAM, AND RECORDING MEDIUM CONTAINING THE PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006184129A JP4770609B2 (en) 2006-07-04 2006-07-04 PRINT CONTROL DEVICE, DRIVER PROGRAM, AND RECORDING MEDIUM CONTAINING THE PROGRAM

Publications (2)

Publication Number Publication Date
JP2008015649A true JP2008015649A (en) 2008-01-24
JP4770609B2 JP4770609B2 (en) 2011-09-14

Family

ID=39072619

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006184129A Expired - Fee Related JP4770609B2 (en) 2006-07-04 2006-07-04 PRINT CONTROL DEVICE, DRIVER PROGRAM, AND RECORDING MEDIUM CONTAINING THE PROGRAM

Country Status (1)

Country Link
JP (1) JP4770609B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016015032A (en) * 2014-07-02 2016-01-28 セイコーエプソン株式会社 Print control device, method for controlling print control device, and recording medium

Citations (5)

* Cited by examiner, † Cited by third party
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
JP2004236257A (en) * 2003-02-03 2004-08-19 Seiko Epson Corp Image processing using electronic watermark
JP2005141361A (en) * 2003-11-05 2005-06-02 Matsushita Electric Ind Co Ltd Print processing system
JP2005316950A (en) * 2004-03-31 2005-11-10 Canon Inc Data processing apparatus, data processing method, printer driver program, print control apparatus, print control method and printing system

Patent Citations (5)

* Cited by examiner, † Cited by third party
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
JP2004236257A (en) * 2003-02-03 2004-08-19 Seiko Epson Corp Image processing using electronic watermark
JP2005141361A (en) * 2003-11-05 2005-06-02 Matsushita Electric Ind Co Ltd Print processing system
JP2005316950A (en) * 2004-03-31 2005-11-10 Canon Inc Data processing apparatus, data processing method, printer driver program, print control apparatus, print control method and printing system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016015032A (en) * 2014-07-02 2016-01-28 セイコーエプソン株式会社 Print control device, method for controlling print control device, and recording medium

Also Published As

Publication number Publication date
JP4770609B2 (en) 2011-09-14

Similar Documents

Publication Publication Date Title
US20120140269A1 (en) Information processing device, information processing method, and recording medium
JP5006764B2 (en) Image processing apparatus, image processing method, program, and storage medium
JP2008526555A (en) Print control method capable of reducing the required amount of print memory
JP3757847B2 (en) Spool file processing apparatus, program, and recording medium
JP4174476B2 (en) Data processing apparatus, data processing method, printer driver program, print control apparatus, print control method, and printing system
JP4918871B2 (en) Printer and control method thereof
JP2007329919A (en) Image forming apparatus and control method therefor
JP4770609B2 (en) PRINT CONTROL DEVICE, DRIVER PROGRAM, AND RECORDING MEDIUM CONTAINING THE PROGRAM
JP4577907B2 (en) Image processing apparatus, image forming apparatus, and printing system
JP2006235855A (en) Image forming device, image processing device, program, and image processing method
US20110128577A1 (en) Computer readable medium having print control program, print controller and computer executable method using the print control program
JP2007334720A (en) Data processor, printing controller, printing system, data processing method, data processing program and recording medium having the program recorded thereon
JP2009269179A (en) Printer, program and recording medium
JP2008009593A (en) Printing control device, printing system, method for controlling printing device, driver program, and recording medium with program recorded
JP4923899B2 (en) Printer driver program
JP4706495B2 (en) Image processing apparatus, image processing method, and program
JP4532760B2 (en) Image forming apparatus, data processing method of image forming apparatus, and storage medium
KR100645437B1 (en) Methof for starting to produce printing-data nearly simultaneously with starting meta file spooling
JP2007188308A (en) Printing system and storage medium
JP2010181999A (en) Printing system, printer, and print control program
JP3655219B2 (en) Print processing device
JP4290711B2 (en) Printing device
JP2007328493A (en) Data processor, print control device, print system, data processing method, data processing program and recording medium with the program recorded thereon
JP2001171185A (en) Image-forming apparatus and method for processing image
JP2009003832A (en) Printing system, printing control device, printing control method, printing control program, and recording medium recording of the program

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: 20110222

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110325

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110524

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110606

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

Free format text: PAYMENT UNTIL: 20140701

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees