JP2015116703A - Image formation device and image formation method - Google Patents

Image formation device and image formation method Download PDF

Info

Publication number
JP2015116703A
JP2015116703A JP2013260521A JP2013260521A JP2015116703A JP 2015116703 A JP2015116703 A JP 2015116703A JP 2013260521 A JP2013260521 A JP 2013260521A JP 2013260521 A JP2013260521 A JP 2013260521A JP 2015116703 A JP2015116703 A JP 2015116703A
Authority
JP
Japan
Prior art keywords
objects
data
image forming
combining
forming apparatus
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.)
Pending
Application number
JP2013260521A
Other languages
Japanese (ja)
Inventor
宏和 徳元
Hirokazu Tokumoto
宏和 徳元
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2013260521A priority Critical patent/JP2015116703A/en
Publication of JP2015116703A publication Critical patent/JP2015116703A/en
Pending legal-status Critical Current

Links

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Record Information Processing For Printing (AREA)

Abstract

PROBLEM TO BE SOLVED: To perform load dispersion of a rendering process and an object coupling process.SOLUTION: An image formation device performs a coupling process in which a plurality of objects contained in print data are coupled into a single object. Based on a content of the print data, the number of objects which are subjected to the coupling process is decided. Based on the number of objects that has been decided, a plurality of objects contained in the print data are coupled into a single object.

Description

本発明は、PDL(Page Description Language)データから中間データを作成し、中間データをレンダリングしてビットマップ画像を生成する画像形成装置及び画像形成方法に関する。   The present invention relates to an image forming apparatus and an image forming method for generating intermediate data from PDL (Page Description Language) data and rendering the intermediate data to generate a bitmap image.

近年のアプリケーションソフトやOSの多様化、および、ホストPCの性能向上によって、印刷描画命令が複雑化し、画像形成装置における描画処理の負荷が増大してきている。画像形成装置は、外部装置から受信したPDLデータからディスプレイリストと呼ばれる中間データを生成する中間データ生成部と、生成した中間データからビットマップ画像を描画するレンダリング処理部とを含む。この中間データは、描画対象となる各オブジェクトの輪郭を示すエッジデータ(単にエッジとも呼ばれる)を含む。このエッジデータを含む中間データがレンダリング処理部によって処理されることでビットマップ画像が描画される。   With recent diversification of application software and OS, and performance improvement of the host PC, print drawing commands have become complicated, and the load of drawing processing in the image forming apparatus has increased. The image forming apparatus includes an intermediate data generation unit that generates intermediate data called a display list from PDL data received from an external device, and a rendering processing unit that draws a bitmap image from the generated intermediate data. This intermediate data includes edge data (also simply referred to as an edge) indicating the outline of each object to be rendered. A bitmap image is drawn by processing the intermediate data including the edge data by the rendering processing unit.

PDLデータに輪郭の形状が複雑なオブジェクトが大量に含まれる場合、エッジが大量に生成される。その結果、レンダリング処理部にかかる負荷が大きくなり、処理時間が長くなってしまうことがある。   When the PDL data includes a large number of objects having complicated contour shapes, a large number of edges are generated. As a result, the load on the rendering processing unit increases, and the processing time may become longer.

これに対して特許文献1は、中間データに含まれる複数のエッジが結合条件を満たしているかを判定し、結合条件を満たしている場合に複数のエッジを1つのエッジに結合し新たな中間データを生成する技術を開示している。このようなエッジの結合処理が行われることで、エッジ数を減らした新たな中間データが生成され、レンダリング処理部に対する負荷が低減される。   On the other hand, Patent Document 1 determines whether or not a plurality of edges included in the intermediate data satisfy the joining condition, and if the joining condition is satisfied, joins the plurality of edges to one edge and creates new intermediate data. The technique which produces | generates is disclosed. By performing such edge combination processing, new intermediate data with a reduced number of edges is generated, and the load on the rendering processing unit is reduced.

特開2006−350802号公報JP 2006-350802 A

特許文献1に開示された手法においては、エッジの結合条件を満たしている場合に複数のエッジを結合する処理を行っている。そのため、データによっては大量の描画命令が結合条件を満たし、大量のエッジを結合する処理を行うことになるので、結合処理そのものに対する負荷がかかってしまう。その結果、レンダリング処理部の負荷が下がり、レンダリング処理部の時間は高速化されるが、結合処理に非常に時間がかかり、トータルの印刷時間としては結合処理を行うことによって、結合処理を行わない場合より遅くなってしまうことがあり得る。   In the method disclosed in Patent Document 1, a process of combining a plurality of edges is performed when an edge combining condition is satisfied. For this reason, depending on the data, a large amount of drawing commands satisfy the combining condition, and processing for combining a large amount of edges is performed, which places a load on the combining processing itself. As a result, the load on the rendering processing unit is reduced and the time of the rendering processing unit is increased, but the combining process takes a very long time, and the combining process is not performed by performing the combining process as the total printing time. It can be slower than the case.

本発明に係る画像形成装置は、印刷データに含まれる複数のオブジェクトを1つのオブジェクトに結合するための結合処理を行う画像形成装置であって、印刷データを取得する取得手段と、前記取得された印刷データの内容に基づいて、前記結合処理の結合対象となるオブジェクト数を決定する決定手段と、前記決定されたオブジェクト数に基づいて、前記取得された印刷データに含まれる複数のオブジェクトを1つのオブジェクトに結合する結合手段とを有する。   An image forming apparatus according to the present invention is an image forming apparatus that performs a combining process for combining a plurality of objects included in print data into one object, an acquisition unit that acquires print data, and the acquired A determining unit that determines the number of objects to be combined in the combining process based on the contents of the print data, and a plurality of objects included in the acquired print data based on the determined number of objects A coupling means for coupling to the object.

本発明によれば、結合処理とレンダリング処理の負荷分散を行うことが可能となる。   According to the present invention, it is possible to perform load distribution between the combining process and the rendering process.

本発明の実施形態における、画像形成装置を含む印刷システムの一実施形態を示すハードウェア構成図である。1 is a hardware configuration diagram showing an embodiment of a printing system including an image forming apparatus in an embodiment of the present invention. 本発明の実施形態における、印刷データ制御装置と画像形成装置との一実施形態を示すソフトウェアブロック図である。FIG. 2 is a software block diagram illustrating an embodiment of a print data control apparatus and an image forming apparatus in an embodiment of the present invention. 本発明の実施形態における、PDLデータと中間データとビットマップデータとの例を示す模式図である。It is a schematic diagram which shows the example of PDL data, intermediate data, and bitmap data in the embodiment of the present invention. 本発明の実施形態における、描画集計情報の一例を示す模式図である。It is a schematic diagram which shows an example of drawing total information in embodiment of this invention. 本発明の実施形態における、結合処理部への入力データと結合処理部からの出力データとの例を示す模式図である。It is a schematic diagram which shows the example of the input data to a joint process part, and the output data from a joint process part in embodiment of this invention. 結合処理部における結合過剰のケースと結合不足ケースとを示す図である。It is a figure which shows the case of a coupling | bonding excess in a coupling | bond part, and a coupling | bonding insufficient case. 本発明の実施形態における、描画集計情報の取得に関するフローチャートを示す図である。It is a figure which shows the flowchart regarding acquisition of drawing total information in embodiment of this invention. 本発明の実施形態における、一連の描画処理に関するフローチャートを示す図である。It is a figure which shows the flowchart regarding a series of drawing processes in embodiment of this invention. 本発明の実施形態における、結合数の決定に関するフローチャートを示す図である。It is a figure which shows the flowchart regarding determination of the number of coupling | bonding in embodiment of this invention. 本発明の実施形態における、結合数の決定に関する描画データの一例と、描画集計情報の一例と、処理時間の予測に用いる予測式とを示す模式図である。It is a schematic diagram which shows an example of the drawing data regarding determination of the number of coupling | bonding in an embodiment of the present invention, an example of drawing total information, and a prediction formula used for prediction of processing time. 本発明の実施形態における、処理時間の短縮効果を示す図である。It is a figure which shows the shortening effect of the processing time in embodiment of this invention.

以下、本発明を実施するための形態について図面を用いて説明する。ただし、この実施形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらに限定する趣旨のものではない。   Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings. However, the components described in this embodiment are merely examples, and are not intended to limit the scope of the present invention thereto.

図1は、本実施形態に関係する電子部品としてのコントローラが搭載された画像形成装置およびその周辺の機器を含む印刷システムの例を示すブロック図である。印刷システムは、画像形成装置100と、PC170とファイルサーバー180とLAN(Local Area Network)160とを含む。   FIG. 1 is a block diagram illustrating an example of a printing system including an image forming apparatus on which a controller as an electronic component related to the present embodiment is mounted and peripheral devices. The printing system includes an image forming apparatus 100, a PC 170, a file server 180, and a LAN (Local Area Network) 160.

画像形成装置100は、イーサネット(登録商標)等のLANにて、ホストコンピュータであるPC170とファイルサーバー180とに接続されている。画像形成装置100は、リーダー部120と、プリンタ部130と、操作部140と、画像記憶部150と、さらに、これら各構成要素を制御するコントローラ部110とを含む。コントローラ部110は、CPU112と、ROM114と、RAM116とを含む。   The image forming apparatus 100 is connected to a PC 170 as a host computer and a file server 180 via a LAN such as Ethernet (registered trademark). The image forming apparatus 100 includes a reader unit 120, a printer unit 130, an operation unit 140, an image storage unit 150, and a controller unit 110 that controls these components. The controller unit 110 includes a CPU 112, a ROM 114, and a RAM 116.

CPU112がROM114または他の記憶媒体に格納されたプログラムに基づいて、画像形成装置100全体を統括制御する。例えば、コントローラ部110は、CPU112を用いて、PDL解析処理、結合処理、中間データ生成処理、及びレンダリング処理等を行うためのあらかじめ決められたプログラムをロードする。なおレンダリング処理に関しては、専用のハードウェアを利用しても構わない。   The CPU 112 performs overall control of the entire image forming apparatus 100 based on a program stored in the ROM 114 or other storage medium. For example, the controller unit 110 uses the CPU 112 to load a predetermined program for performing PDL analysis processing, combining processing, intermediate data generation processing, rendering processing, and the like. For rendering processing, dedicated hardware may be used.

プリンタ部130は、レンダリングした結果の画像データ(ビットマップデータ)の紙出力を行う。操作部140は、画像出力処理を行うための各種印刷設定の操作を行うキーボード、及び画像出力設定を行う操作ボタン等の表示を行う液晶パネルなどを備える。画像記憶部150は、画像データやドキュメントデータ、印刷装置制御言語(例えば、ESCコード、PDL)などの印刷データの格納ができる。例えば、画像記憶部150は、LANを介してPC170やファイルサーバー180から受信した画像データ、ドキュメントデータ、PDLデータ(ページ記述言語データ)や、リーダー部120を制御して読み込む画像データの格納ができる。   The printer unit 130 outputs the rendered image data (bitmap data) on paper. The operation unit 140 includes a keyboard for performing various print setting operations for performing image output processing, a liquid crystal panel for displaying operation buttons for performing image output settings, and the like. The image storage unit 150 can store print data such as image data, document data, and a printing apparatus control language (for example, ESC code, PDL). For example, the image storage unit 150 can store image data, document data, PDL data (page description language data) received from the PC 170 or the file server 180 via the LAN, and image data read by controlling the reader unit 120. .

本実施形態では、画像形成装置100はMFP(Multi Function Printer)を例として用いて説明する。もちろん、SFP(Single Function Printer)やLBP(Laser Beam Printer)、その他のプリント方式のプリンタでもよいことは言うまでもない。   In this embodiment, the image forming apparatus 100 will be described using an MFP (Multi Function Printer) as an example. Of course, it goes without saying that a single function printer (SFP), a laser beam printer (LBP), or other printers may be used.

PC170は、CPU172とROM174とRAM176とを含む。PC170は、印刷ジョブを生成してファイルサーバー180に送信する。   The PC 170 includes a CPU 172, a ROM 174, and a RAM 176. The PC 170 generates a print job and transmits it to the file server 180.

ファイルサーバー180は、データ記憶部185と印刷データ制御部187とを有する。印刷データ制御部187は、CPU181とROM182とRAM183とを含む。   The file server 180 includes a data storage unit 185 and a print data control unit 187. The print data control unit 187 includes a CPU 181, a ROM 182, and a RAM 183.

PC170にて生成された印刷ジョブは、LANを介して、ファイルサーバー180へ送信される。印刷ジョブは、ファイルサーバー180におけるデータ記憶部185に格納される。   The print job generated by the PC 170 is transmitted to the file server 180 via the LAN. The print job is stored in the data storage unit 185 in the file server 180.

図2は、本実施形態におけるファイルサーバーの印刷データ制御部187および画像形成装置100のコントローラ部110において動作するソフトウェアモジュール図の一例を示す図である。   FIG. 2 is a diagram illustrating an example of a software module diagram that operates in the print data control unit 187 of the file server and the controller unit 110 of the image forming apparatus 100 in the present embodiment.

図2(a)は、印刷データ制御部187におけるROM182に格納されており、起動時に、RAM183へ展開され、CPU181により実行されるソフトウェアのモジュール図である。   FIG. 2A is a module diagram of software that is stored in the ROM 182 of the print data control unit 187, developed into the RAM 183, and executed by the CPU 181 at the time of activation.

データ制御部240は、データ記憶部185に格納された印刷ジョブの入力から出力までの処理を関数コールやメッセージ通信などの手法により制御する。   The data control unit 240 controls processing from input to output of a print job stored in the data storage unit 185 by a method such as a function call or message communication.

PDL解析部241、242、243は、画像形成装置100に搭載されるPDLの種類(例えば、PostScript(登録商標)、PCL、XPS)に応じて存在する。例えば、3つのPDLの種類が画像形成装置100で搭載される場合、3つのPDL解析部が備えられる。PDL解析部241―243は、データ制御部240からの制御に従い、データ記憶部185に格納された印刷ジョブの中からPDLデータを読み込み、解析処理を実行する。描画集計情報生成部245は、データ制御部240からの制御に従い、PDL解析部241―243から渡されたPDLコマンド(描画命令)を用いて処理を実行し、中間データを構成するエッジ/レベル/フィルといった要素の数を集計する。描画命令はPDLコマンドに含まれる命令である。すなわち、より詳細には、描画集計情報生成部245は、PDLコマンドに含まれる描画命令群を用いて中間データを構成する要素の数を集計する。PDLコマンドと描画命令との違いの詳細については後述するが、以下では同じような意味として用いられる場面では、両者を上記のように併記する場合がある。   The PDL analysis units 241, 242, and 243 exist according to the type of PDL (for example, PostScript (registered trademark), PCL, and XPS) installed in the image forming apparatus 100. For example, when three types of PDL are mounted on the image forming apparatus 100, three PDL analysis units are provided. The PDL analysis units 241 to 243 read PDL data from the print job stored in the data storage unit 185 and execute analysis processing according to the control from the data control unit 240. The drawing total information generation unit 245 executes processing using the PDL command (drawing command) passed from the PDL analysis units 241 to 243 in accordance with the control from the data control unit 240, and performs edge / level / Count the number of elements such as fills. The drawing command is a command included in the PDL command. That is, in more detail, the drawing tabulation information generation unit 245 tabulates the number of elements constituting the intermediate data using the drawing command group included in the PDL command. The details of the difference between the PDL command and the drawing command will be described later. However, in the following cases where both are used as similar meanings, both may be written together as described above.

描画集計情報生成部245は、描画命令から中間データを生成する場合における上記の要素の数をオブジェクト毎にカウントしてカウントした数を描画集計情報248として生成する。このように、描画集計情報は、ある領域におけるオブジェクトの中間データを構成する要素数を集計したものである。描画集計情報の詳細については後述する。生成された描画集計情報は、ファイルサーバー180上のRAM183に印刷ジョブに含めて格納される。   The drawing total information generation unit 245 counts the number of the above elements for each object when generating intermediate data from the drawing command, and generates the counted number as the drawing total information 248. As described above, the drawing total information is a total of the number of elements constituting intermediate data of an object in a certain area. Details of the drawing total information will be described later. The generated drawing total information is stored in the RAM 183 on the file server 180 as a print job.

ファイルサーバー180に格納された描画集計情報を含む印刷ジョブは、LANを介して、画像形成装置100へ送信される。ユーザーは、PC170にて印刷ジョブを送信した後、画像形成装置100にて、IDを用いてユーザー認証を行い、紙出力する印刷ジョブを選択する。選択された印刷ジョブは、ファイルサーバー180におけるデータ記憶部185から、画像形成装置100へと送信される。なお、本実施形態では、このようにPC170から印刷ジョブがファイルサーバー180に格納されており、ユーザーが画像形成装置100にて認証を行って印刷ジョブを選択する例を用いて説明するが、これに限られるものではない。すなわち、PC170から画像形成装置100に印刷ジョブが送信され、画像形成装置100において描画集計情報を生成する処理としてもよい。すなわち、図1の例における画像形成装置100とファイルサーバー180とが一体となった構成であってもよい。従って、画像形成装置100は、外部装置から得られる印刷ジョブを取得してもよいし、内部に格納している印刷ジョブを取得してもよい。   A print job including drawing total information stored in the file server 180 is transmitted to the image forming apparatus 100 via the LAN. The user transmits a print job using the PC 170, and then performs user authentication using the ID in the image forming apparatus 100, and selects a print job for paper output. The selected print job is transmitted from the data storage unit 185 in the file server 180 to the image forming apparatus 100. In the present exemplary embodiment, a print job is stored in the file server 180 from the PC 170 as described above, and an example in which the user performs authentication in the image forming apparatus 100 and selects a print job will be described. It is not limited to. In other words, the print job may be transmitted from the PC 170 to the image forming apparatus 100 and the image forming apparatus 100 may generate the drawing total information. In other words, the image forming apparatus 100 and the file server 180 in the example of FIG. 1 may be integrated. Accordingly, the image forming apparatus 100 may acquire a print job obtained from an external apparatus, or may acquire a print job stored therein.

図2(b)は、画像形成装置100におけるROM114にて格納され、起動時に、RAM116へ展開され、CPU112にて動作するソフトウェアのモジュール図である。ジョブ制御部200は、データ記憶部185に格納された印刷ジョブの入力から出力を、関数コールやメッセージ通信などの手段により制御する。PDL解析部201、202、203は、画像形成装置100に搭載されるPDLの種類(例えば、PostScript(登録商標)、PCL、XPSなど)に応じて存在する。PDL解析部201―203は、ジョブ制御部200からの制御に従い、RAM116に格納された印刷ジョブの中からPDLデータを逐次読み込み、解析処理を実行する。結合処理部205は、結合処理部は、印刷ジョブの内容に基づいてオブジェクトの結合数を決定する。例えば、ジョブ制御部200から渡される描画集計情報と、PDL解析部201―203から渡されるPDLコマンド(描画命令)とを用いて、オブジェクトの結合数をある印刷領域毎に決定する。さらに、結合処理部205は、決定した結合数に達するまでオブジェクトの結合処理を実行する。そして結合処理部205は、結合したオブジェクトを示す描画命令を中間データ生成部210に送る。より詳細には、結合処理部205は、結合対象のオブジェクトについてPDLコマンド(描画命令)から中間データを生成し、局所的にレンダリング処理を行う(以下、プレレンダリングと称する)。そして、局所的にレンダリングされた後の結合対象のオブジェクトを含む画像データ(ビットマップデータ)を示す描画命令(すなわち、イメージデータの描画命令)を中間データ生成部に送信する。結合処理の詳細については後述する。なお、結合処理部205は、結合しないオブジェクトについては描画命令をそのまま中間データ生成部210に送る。つまり、結合処理部は、局所的な中間データ生成部及び局所的なプレレンダリング処理部であり、プレレンダリング処理後の画像データ(ビットマップデータ)を描画する描画命令を出力する機能を有しているとも言える。   FIG. 2B is a module diagram of software that is stored in the ROM 114 in the image forming apparatus 100, developed to the RAM 116 at the time of activation, and operated by the CPU 112. The job control unit 200 controls the output from the input of the print job stored in the data storage unit 185 by means such as a function call or message communication. The PDL analysis units 201, 202, and 203 exist according to the type of PDL (for example, PostScript (registered trademark), PCL, XPS, etc.) installed in the image forming apparatus 100. PDL analysis units 201 to 203 sequentially read PDL data from print jobs stored in the RAM 116 and execute analysis processing in accordance with control from the job control unit 200. The combination processing unit 205 determines the number of objects to be combined based on the contents of the print job. For example, the number of combined objects is determined for each print area using the drawing total information passed from the job control unit 200 and the PDL command (drawing command) passed from the PDL analysis unit 201-203. Further, the combination processing unit 205 executes object combination processing until the determined number of combinations is reached. Then, the combination processing unit 205 sends a drawing command indicating the combined object to the intermediate data generation unit 210. More specifically, the combination processing unit 205 generates intermediate data from the PDL command (drawing command) for the objects to be combined, and locally performs rendering processing (hereinafter referred to as pre-rendering). Then, a rendering command (that is, a rendering command for image data) indicating image data (bitmap data) including the object to be combined after being locally rendered is transmitted to the intermediate data generation unit. Details of the combining process will be described later. Note that the combination processing unit 205 directly sends a drawing command to the intermediate data generation unit 210 for objects that are not to be combined. That is, the combination processing unit is a local intermediate data generation unit and a local pre-rendering processing unit, and has a function of outputting a drawing command for drawing image data (bitmap data) after the pre-rendering processing. It can be said that there is.

中間データ生成部210は、結合処理部205から受信した描画命令から中間データを生成し、RAM116にディスプレイリストとして格納する。ディスプレイリストは、前述の中間データを構成する要素をリストの形式にしたものである。1ページ分の中間データが生成されると、レンダリング処理部220は、RAM116から中間データを読み込んでレンダリング処理を実行し、画像データ(ビットマップデータ)を出力する。出力された画像データは、画像記憶部150に格納される。この画像形成装置100による結合処理部205および中間データ生成部210に関する一連の処理の詳細については後述する。   The intermediate data generation unit 210 generates intermediate data from the drawing command received from the combination processing unit 205 and stores it in the RAM 116 as a display list. The display list is a list format of elements constituting the intermediate data described above. When intermediate data for one page is generated, the rendering processing unit 220 reads the intermediate data from the RAM 116, executes the rendering process, and outputs image data (bitmap data). The output image data is stored in the image storage unit 150. Details of a series of processes related to the combination processing unit 205 and the intermediate data generation unit 210 by the image forming apparatus 100 will be described later.

図3は、本実施形態に関わる、PDLデータを解析して得られるオブジェクトのPDLコマンド(描画命令)と、描画命令から得られる中間データと、中間データをレンダリングして得られる画像データとを示す模式図である。   FIG. 3 shows a PDL command (drawing command) of an object obtained by analyzing PDL data, intermediate data obtained from the drawing command, and image data obtained by rendering the intermediate data according to the present embodiment. It is a schematic diagram.

図3(a)は、アプリケーションから出力されるPDLデータを解析して得られる、あるオブジェクトのPDLコマンド(描画命令)と、そのオブジェクトをページ上に描画した例を示す模式図である。PC170にて生成される印刷ジョブは、PDLデータを含む。PDL解析部による解析によってPDLデータから例えば図3(a)に示すようなPDLコマンド300が得られる。図3(a)に示すように、PDLコマンドは、描画するキャンバスの指定、開始点や各点列の座標位置、色値やストローク幅といった描画命令群を含む。中間データ生成部は、この描画命令群から中間データを生成する。図3(a)のPDLコマンド300(すなわち、描画命令群)は、図3(a)のページビュー310の描画を意図したコマンドである。   FIG. 3A is a schematic diagram showing a PDL command (drawing command) of a certain object obtained by analyzing PDL data output from an application, and an example of drawing the object on a page. A print job generated by the PC 170 includes PDL data. For example, a PDL command 300 as shown in FIG. 3A is obtained from the PDL data by analysis by the PDL analysis unit. As shown in FIG. 3A, the PDL command includes a drawing command group such as designation of a canvas to be drawn, the start point, the coordinate position of each point sequence, the color value, and the stroke width. The intermediate data generation unit generates intermediate data from the drawing command group. A PDL command 300 (that is, a drawing command group) in FIG. 3A is a command intended to draw the page view 310 in FIG.

図3(b)は、図3(a)に示すPDLコマンド300を用いて中間データ生成部によって生成される中間データを示す図である。図3(b)に示す中間データは、描画オブジェクトの輪郭情報を有するエッジデータ330と、描画オブジェクトの重なり情報を有するレベルデータ331と、描画オブジェクトの塗り情報を有するフィルデータ332とから構成される。各オブジェクトに対応するデータはエッジ、レベル、フィルの順に参照したリスト構成(ディスプレイリスト)を持つ。レンダリング処理部は、この中間データをエッジから順にたどっていくことで、レンダリング処理を実施する。   FIG. 3B is a diagram illustrating intermediate data generated by the intermediate data generation unit using the PDL command 300 illustrated in FIG. The intermediate data shown in FIG. 3B includes edge data 330 having drawing object outline information, level data 331 having drawing object overlap information, and fill data 332 having drawing object fill information. . Data corresponding to each object has a list configuration (display list) referred to in the order of edge, level, and fill. The rendering processing unit performs the rendering process by tracing the intermediate data in order from the edge.

図3(c)は、図3(b)に示す中間データ(ディスプレイリスト)からレンダリング処理部によってレンダリングされた後の画像データを示す図である。図3(c)に示すように、描画オブジェクトのビットマップデータ320が、レンダリング処理の実行後に生成される。   FIG. 3C is a diagram illustrating the image data after being rendered by the rendering processing unit from the intermediate data (display list) illustrated in FIG. As shown in FIG. 3C, the bitmap data 320 of the drawing object is generated after the rendering process is executed.

図4は、本実施形態に関わる、描画集計情報の一例を示す模式図である。この描画集計情報はファイルサーバー180の描画集計情報生成部245によって生成される。この描画集計情報は、画像形成装置100のレンダリング処理部220および結合処理部205における処理時間を予測するために結合処理部205において用られる。処理時間の予測の例については後述する。描画集計情報は、図3(b)にて説明した中間データ形式におけるエッジ、レベル、フィルといった中間データを構成する各要素の情報をある領域毎(たとえばバンドまたはブロック毎)に集計した値である。具体的には図4に示すような情報である。例えば、エッジ総数とは、各バンドまたはブロック毎に含まれる各オブジェクトのエッジ数を記載した値になる。なお、描画集計情報生成部245は、例えば、描画命令を解釈して、点の座標位置を追跡したり、矩形の数を数えることで、エッジの数を推定することができる。その他の中間データを構成する要素についても同様に、実際に中間データを生成せずにその要素数を推定することができる。   FIG. 4 is a schematic diagram showing an example of drawing total information related to the present embodiment. The drawing total information is generated by the drawing total information generation unit 245 of the file server 180. The drawing total information is used in the combination processing unit 205 in order to predict the processing time in the rendering processing unit 220 and the combination processing unit 205 of the image forming apparatus 100. An example of processing time prediction will be described later. The drawing total information is a value obtained by totaling information on each element constituting intermediate data such as edges, levels, and fills in the intermediate data format described with reference to FIG. 3B for each area (for example, for each band or block). . Specifically, the information is as shown in FIG. For example, the total number of edges is a value describing the number of edges of each object included in each band or block. The drawing total information generation unit 245 can estimate the number of edges, for example, by interpreting a drawing command, tracking the coordinate position of a point, or counting the number of rectangles. Similarly, the number of elements of other elements constituting the intermediate data can be estimated without actually generating the intermediate data.

図5は、本実施形態に関わる、結合処理部205における入出力結果の一例を示す模式図である。画像形成装置100の結合処理部205は、レンダリング処理部220の処理時間を短縮化するために、PDL解析部201―203によって発行されたPDLコマンドによって描画されるオブジェクトを結合する。PDLコマンドとは、例えば図3(a)に示すような描画命令群を含むコマンドである。本実施形態においては、1つのPDLコマンドに複数の描画命令が含まれており、1つのPDLコマンドに含まれる描画命令群によって1つのオブジェクトが描画されるものとする。この描画されるオブジェクトのことを描画オブジェクトと称する。   FIG. 5 is a schematic diagram illustrating an example of an input / output result in the combination processing unit 205 according to the present embodiment. The combination processing unit 205 of the image forming apparatus 100 combines objects drawn by PDL commands issued by the PDL analysis units 201 to 203 in order to shorten the processing time of the rendering processing unit 220. The PDL command is a command including a drawing command group as shown in FIG. In the present embodiment, it is assumed that a plurality of drawing commands are included in one PDL command, and one object is drawn by a group of drawing commands included in one PDL command. This drawn object is referred to as a drawing object.

図5(a)は、結合処理部205へ入力されたPDLコマンドによって描画される描画オブジェクトの例を示す模式図である。図5(a)の例では、所定の領域に5つ矩形オブジェクトが含まれている。すなわち、図5(a)の例では、図3(a)で示すようなPDLコマンドが5つ結合処理部205に入力されている。結合処理部205は、PDLコマンドに対応する領域の描画集計情報を参照して、中間データを構成するであろう要素数を決定する。この結果を用いて結合処理部205は結合処理を行なう。図5(a)の例では、結合処理部205は、入力されたPDLコマンドから5つの矩形オブジェクトを含むことを決定し、描画集計情報から中間データの要素数として10エッジ、5レベル、5フィルの情報を含むことを決定する。   FIG. 5A is a schematic diagram illustrating an example of a drawing object drawn by a PDL command input to the combination processing unit 205. In the example of FIG. 5A, five rectangular objects are included in a predetermined area. That is, in the example of FIG. 5A, five PDL commands as shown in FIG. The combination processing unit 205 determines the number of elements that will constitute the intermediate data with reference to the drawing total information of the area corresponding to the PDL command. Using this result, the combination processing unit 205 performs a combination process. In the example of FIG. 5A, the combination processing unit 205 determines that five rectangular objects are included from the input PDL command, and uses 10 edges, 5 levels, 5 fills as the number of elements of intermediate data from the drawing total information. To include the information.

ある描画領域内に複数の描画オブジェクトが多量に存在する場合は、レンダリングに要する時間は指数関数的に増える。そこで、レンダリング処理部220の処理時間を短縮化するために、描画オブジェクトを結合すること、換言すれば、局所的にプレレンダリング処理をすることで、レンダリング処理に要する時間を短縮化することができる。   When there are a large number of drawing objects in a drawing area, the time required for rendering increases exponentially. Therefore, in order to shorten the processing time of the rendering processing unit 220, it is possible to reduce the time required for the rendering process by combining drawing objects, in other words, by performing the pre-rendering process locally. .

図5(b)は、図5(a)の描画オブジェクトを1つの描画オブジェクトとして結合した結果例を示す模式図である。5つの描画オブジェクトを結合処理部205にてプレレンダリングし、1つのイメージ画像を含む描画オブジェクトへとまとめることで、生成される中間データの要素数が減少する。すなわち、結合処理部205は、5つの描画オブジェクトを示すPDLコマンドから中間データを生成する。生成される中間データは、図5(a)に示すように、10エッジ、5レベル、5フィルの情報を含む。そして、結合処理部205は、この生成された中間データをプレレンダリングして5つの描画オブジェクトを含むビットマップデータを生成する。結合処理部205は、この5つの描画オブジェクトを含むビットマップデータを描画する描画命令を生成する。そして、結合処理部205は、5つの描画オブジェクトを示すPDLコマンド(描画命令群)に代えて、生成したビットマップイメージデータを描画する描画命令を中間データ生成部210に出力する。このように出力された描画命令から中間データ生成部210が生成する中間データは、図5(b)に示すように、2エッジ、1レベル、1フィルとなる。すなわち、図5(a)で示す中間データよりも図5(b)で示す中間データの方が中間データを構成する要素数が減少している。このように結合処理によって、中間データにおける描画情報が減ることで、レンダリング処理部220の処理時間を短縮化することができる。   FIG. 5B is a schematic diagram illustrating an example of a result of combining the drawing objects in FIG. 5A as one drawing object. The number of elements of the intermediate data to be generated is reduced by pre-rendering five drawing objects in the combination processing unit 205 and collecting them into a drawing object including one image. In other words, the combination processing unit 205 generates intermediate data from PDL commands indicating five drawing objects. The generated intermediate data includes information of 10 edges, 5 levels, and 5 fills as shown in FIG. Then, the combination processing unit 205 pre-renders the generated intermediate data to generate bitmap data including five drawing objects. The combination processing unit 205 generates a drawing command for drawing bitmap data including these five drawing objects. Then, the combination processing unit 205 outputs a drawing command for drawing the generated bitmap image data to the intermediate data generating unit 210 instead of the PDL command (drawing command group) indicating the five drawing objects. The intermediate data generated by the intermediate data generation unit 210 from the rendering command output in this way is 2 edges, 1 level, and 1 fill as shown in FIG. That is, the intermediate data shown in FIG. 5B has a smaller number of elements constituting the intermediate data than the intermediate data shown in FIG. As described above, the drawing information in the intermediate data is reduced by the combining process, so that the processing time of the rendering processing unit 220 can be shortened.

しかしながら、闇雲に結合数を増やすと、結合処理に時間がかかりすぎてしまうことがある。上述したように、結合処理とは、いわば局所的なレンダリング処理であるといえる。レンダリング処理においては、中間データの要素数が増えると指数関数的にレンダリング処理に要する時間が増える。ここで、結合数を増やすことは結合処理部におけるプレレンダリングする中間データの要素数が増えることになるので、結合処理(すなわち、プレレンダリング処理)に時間がかかりすぎてしまう状況が発生してしまう。   However, if the number of connections in the dark clouds is increased, the connection process may take too long. As described above, the combining process can be said to be a local rendering process. In rendering processing, as the number of elements of intermediate data increases, the time required for rendering processing increases exponentially. Here, increasing the number of combinations increases the number of elements of intermediate data to be pre-rendered in the combination processing unit, so that a situation occurs in which the combination processing (that is, pre-rendering processing) takes too much time. .

図6は、結合処理部での結合不足および結合過剰な状態を示す模式図である。図6(a)は、結合処理部205へ入力されたPDLコマンドにより描画される描画オブジェクトの例を示す模式図である。図6(a)では、12個のPDLコマンドによって表される12個の多角形オブジェクトが局所的に密集して配置される例を示している。すなわち、結合処理部に入力されるPDLコマンドは、図6(a)のような描画オブジェクトを描画するコマンドである。このような局所的に密集するような描画オブジェクト群については、レンダリング処理部220の処理時間を短縮化するために、結合処理部205にて結合処理(プレレンダリング処理)を行う。   FIG. 6 is a schematic diagram illustrating a state of insufficient coupling and excessive coupling in the coupling processing unit. FIG. 6A is a schematic diagram illustrating an example of a drawing object drawn by a PDL command input to the combination processing unit 205. FIG. 6A shows an example in which twelve polygonal objects represented by twelve PDL commands are locally densely arranged. That is, the PDL command input to the combination processing unit is a command for drawing a drawing object as shown in FIG. For such a group of drawing objects that are locally crowded, a combining process (pre-rendering process) is performed by the combining processing unit 205 in order to shorten the processing time of the rendering processing unit 220.

図6(b)は、図6(a)の12個の描画オブジェクトを1つの描画オブジェクトに結合した状態を示す模式図である。実際には、結合処理部205は、前述の通りPDLコマンドから得られる描画命令に基づいて局所的な領域の中間データを生成してプレレンダリングし、1つのビットマップデータを生成する。そして、結合処理部205は、そのビットマップデータを描画する描画命令を生成して中間データ生成部210に出力する。このような処理が描画オブジェクトの結合処理である。以下では、このような結合処理を、説明を簡略するために、単に複数の描画オブジェクトを1つの描画オブジェクトに結合するという概念的な表現で説明する場合がある。なお、中間データ生成部210では、結合処理部205から出力された描画命令から中間データを生成し、レンダリング処理部220では、中間データをレンダリングする処理が行われることになる。   FIG. 6B is a schematic diagram showing a state where the 12 drawing objects of FIG. 6A are combined into one drawing object. In practice, the combination processing unit 205 generates intermediate data of a local area based on the rendering command obtained from the PDL command as described above, and pre-renders to generate one bitmap data. Then, the combination processing unit 205 generates a drawing command for drawing the bitmap data and outputs the drawing command to the intermediate data generation unit 210. Such processing is drawing object combining processing. In the following, in order to simplify the description, such a combination process may be described with a conceptual expression of simply combining a plurality of drawing objects into one drawing object. The intermediate data generation unit 210 generates intermediate data from the rendering command output from the combination processing unit 205, and the rendering processing unit 220 performs processing for rendering the intermediate data.

図6(b)のように、全ての描画オブジェクトを結合対象としてまとめると、レンダリング処理部220の処理時間は大幅に短縮されるが、結合処理部205におけるプレレンダリング処理時間が増加してしまう。その結果、画像形成装置100のCPU112上で動作するソフトウェアの処理時間が、結合処理によって増加してしまう場合が生じる。   As shown in FIG. 6B, when all drawing objects are combined as a combination target, the processing time of the rendering processing unit 220 is greatly shortened, but the pre-rendering processing time in the combining processing unit 205 is increased. As a result, the processing time of the software operating on the CPU 112 of the image forming apparatus 100 may increase due to the combining process.

図6(c)は、図6(a)のうちの2個の描画オブジェクトを1つの描画オブジェクトに結合した状態を示す模式図である。このように、少ない数の描画オブジェクトを結合すると、結合処理部205の処理時間は少ない。しかしながら、レンダリング処理部220の処理時間は短縮されず、画像形成装置100のCPU112上で動作するソフトウェアの処理時間としては、レンダリング処理によって非常に時間がかかってしまう。   FIG. 6C is a schematic diagram showing a state in which two drawing objects in FIG. 6A are combined into one drawing object. In this way, when a small number of drawing objects are combined, the processing time of the combining processing unit 205 is short. However, the processing time of the rendering processing unit 220 is not shortened, and the processing time of the software operating on the CPU 112 of the image forming apparatus 100 is very long due to the rendering process.

図6(d)は、結合過剰ケースと結合不測ケースの処理時間の例を示す図である。図6(a)では、描画オブジェクトを12として説明したが、図6(d)では描画オブジェクトを1024×1024個としたときの、画像形成装置100のCPU112上で動作するソフトウェアの処理時間を示す図である。結合過剰ケース(図6(b)相当)は、1024×1024個の描画オブジェクト全てを結合処理部にて結合した時である。この場合、レンダリング処理時間が0.5秒と短いが、結合処理時間が、1984.2秒と非常に時間がかかってしまう。また、結合不足ケース(図6(c)相当)では、1024×1024個ある描画オブジェクトを10個単位で結合を行った後に中間データに変換し、レンダリング処理部220にてレンダリング処理を実施した時間である。この場合、結合処理時間が12.3秒と短いが、レンダリング処理時間が、762.2秒と非常に時間がかかってしまう。レンダリング処理においてソート処理にかかる時間の比重が高いため、エッジデータが増加すればするほど、指数関数的に処理時間が増加する傾向にある。そこで、本実施形態では、描画オブジェクトの個数を調整することで、結合不足および過剰を避け、結合処理部205とレンダリング処理部220の処理時間の負荷分散を行う。   FIG. 6D is a diagram illustrating an example of processing times for the excessive coupling case and the unexpected coupling case. In FIG. 6A, the drawing object is described as 12. However, FIG. 6D illustrates the processing time of software operating on the CPU 112 of the image forming apparatus 100 when the number of drawing objects is 1024 × 1024. FIG. The excessive combination case (corresponding to FIG. 6B) is when all the 1024 × 1024 drawing objects are combined by the combination processing unit. In this case, the rendering processing time is as short as 0.5 seconds, but the combining processing time is very long as 1984.2 seconds. In the case of insufficient combination (corresponding to FIG. 6C), the time when 1024 × 1024 drawing objects are combined in units of 10 and then converted to intermediate data, and the rendering processing unit 220 performs the rendering process. It is. In this case, the combining processing time is as short as 12.3 seconds, but the rendering processing time is very long as 762.2 seconds. Since the time taken for the sorting process in the rendering process is high, the processing time tends to increase exponentially as the edge data increases. Therefore, in the present embodiment, by adjusting the number of drawing objects, insufficient and excessive combinations are avoided, and the processing time load of the combination processing unit 205 and the rendering processing unit 220 is distributed.

図7は、ファイルサーバー180の印刷データ制御部187にあるCPU181上で動作するソフトウェアである図2(a)のソフトウェアのモジュールの動作の一例を示すフローチャートである。まず、ステップS701において、印刷データ制御部に含まれるデータ制御部240は、データ記憶部185に格納されたPDLデータを読み込み、該当するPDL解析部へ、解析処理依頼を実行する。次にステップS702において、PDL解析部241、242、243は、PDLデータから得られた図3(a)のようなPDLコマンドを解析する。次にステップS703へ進み、PDL解析部241―243は、PDLコマンドを解析して描画命令を発行し、その描画命令を描画集計情報生成部245へ通知する。次にステップS704へ進み、描画集計情報生成部245は、描画命令によって発行される中間データの要素数を推定する。例えば、図3(a)に示すPDLコマンド(描画命令)から、図3(b)に示すような中間データの要素数を推定する。次にステップS705へ進み、推定した中間データの要素数を集計する。次にステップS706へ進み、描画集計情報生成部245は、ある領域毎に中間データの要素数を集計した描画集計情報を生成する。PDLコマンド解析が終了するまでステップS702からS706の処理を繰り返す。全てのPDLコマンドの解析が終了したら、ステップS707へ進み、印刷データ制御部187は、描画集計情報248を印刷ジョブに含めてデータ記憶部185に格納する。   FIG. 7 is a flowchart showing an example of the operation of the software module of FIG. 2A, which is software operating on the CPU 181 in the print data control unit 187 of the file server 180. First, in step S701, the data control unit 240 included in the print data control unit reads the PDL data stored in the data storage unit 185, and executes an analysis processing request to the corresponding PDL analysis unit. Next, in step S702, the PDL analysis units 241, 242, and 243 analyze the PDL command as shown in FIG. 3A obtained from the PDL data. In step S703, the PDL analysis units 241 to 243 analyze the PDL command, issue a drawing command, and notify the drawing total information generation unit 245 of the drawing command. In step S704, the drawing total information generation unit 245 estimates the number of elements of intermediate data issued by the drawing command. For example, the number of elements of the intermediate data as shown in FIG. 3B is estimated from the PDL command (drawing command) shown in FIG. In step S705, the estimated number of elements of intermediate data is totaled. In step S706, the drawing total information generation unit 245 generates drawing total information obtained by totaling the number of elements of the intermediate data for each area. The processes in steps S702 to S706 are repeated until the PDL command analysis is completed. When the analysis of all PDL commands is completed, the process advances to step S707, and the print data control unit 187 includes the drawing total information 248 in the print job and stores it in the data storage unit 185.

図8は、画像形成装置100のコントローラ部110にあるCPU112上で動作する図2(b)のソフトウェアのモジュールの一例の描画処理についての動作を示すフローチャートである。まず、ステップS801において、ジョブ制御部200はファイルサーバー180から受信した印刷ジョブをRAM116に格納する。印刷ジョブはPDLデータと描画集計情報とを含む。次にステップS802において、PDL解析部201―203は印刷ジョブに含まれるPDLデータを解析する。   FIG. 8 is a flowchart showing an operation of the drawing process of an example of the software module of FIG. 2B that operates on the CPU 112 in the controller unit 110 of the image forming apparatus 100. First, in step S <b> 801, the job control unit 200 stores the print job received from the file server 180 in the RAM 116. The print job includes PDL data and drawing total information. In step S802, the PDL analysis units 201 to 203 analyze the PDL data included in the print job.

次にステップS803において、PDL解析部201―203はページ開始命令を発行し、先頭ページのPDL解析を実施する。次にステップS804へ進み、結合処理部205は、ある領域において結合処理部が結合する描画オブジェクトの数を決定する。ステップS804では、結合処理部205が描画集計情報を読み込み、レンダリング処理の時間予測を行い、描画オブジェクトの結合数を決定する。このステップS804における結合数の決定処理に関しては、図9および図10を用いて後述する。   In step S803, the PDL analysis unit 201-203 issues a page start command and performs PDL analysis of the first page. In step S804, the combination processing unit 205 determines the number of drawing objects combined by the combination processing unit in a certain area. In step S804, the combination processing unit 205 reads the drawing total information, performs time prediction of rendering processing, and determines the number of drawing objects to be combined. The process for determining the number of connections in step S804 will be described later with reference to FIGS.

次にステップS805へ進み、PDL解析部201―203はPDLデータの該当ページにおけるPDLコマンドを解析する。前述の通り、1つのPDLコマンドから1つの描画オブジェクトが描画される。ステップS805では、該当ページに対応する複数のPDLコマンドのうち、1つのPDLコマンドを処理単位として以降の処理を行う。   In step S805, the PDL analysis unit 201-203 analyzes the PDL command in the corresponding page of the PDL data. As described above, one drawing object is drawn from one PDL command. In step S805, the subsequent processing is performed using one PDL command as a processing unit among a plurality of PDL commands corresponding to the page.

ステップS806において、PDL解析部201―203はPDLコマンドに含まれる描画命令を発行し、その描画命令を結合処理部205へ通知する。次にステップS807へ進み、結合処理部205は、通知された描画命令が結合条件を満たすかどうかを判定する。結合条件とは、描画命令によって描画される描画オブジェクトの位置や属性と、その描画命令の前後の描画命令によって描画される描画オブジェクトの位置や属性とによって決定される。例えば、描画オブジェクトの位置が一定以上重なっている場合や、描画オブジェクトの属性が同じ場合に結合条件を満たすと判定される。結合条件はこの例に限られるものではなく、任意の条件を設定することができる。   In step S806, the PDL analysis units 201 to 203 issue a drawing command included in the PDL command, and notify the combination processing unit 205 of the drawing command. In step S807, the combination processing unit 205 determines whether the notified drawing command satisfies the combination condition. The combination condition is determined by the position and attribute of the drawing object drawn by the drawing command and the position and attribute of the drawing object drawn by the drawing command before and after the drawing command. For example, it is determined that the joining condition is satisfied when the positions of the drawing objects overlap by a certain amount or when the attributes of the drawing objects are the same. The coupling condition is not limited to this example, and an arbitrary condition can be set.

ステップS807において結合条件を満たさないと判定された場合、ステップS813に進み、中間データ生成部210にて中間データを生成する処理を開始する。ステップS807において結合条件を満たすと判定された場合は、ステップS808に進み、結合処理部205が、結合条件を満たす描画オブジェクト数が結合数以下かどうかを判定する。より詳細には、結合処理部205は、結合条件を満たす描画オブジェクトの数が、現在の処理対象の領域に対応するステップS804で決定された結合数以下か否かを判定する。本実施形態では、結合数は所定の領域毎に決定されるので、ステップS808の判定も所定の領域毎に行われる。   If it is determined in step S807 that the join condition is not satisfied, the process proceeds to step S813, and the intermediate data generation unit 210 starts processing to generate intermediate data. If it is determined in step S807 that the join condition is satisfied, the process advances to step S808, and the join processing unit 205 determines whether the number of drawing objects satisfying the join condition is equal to or less than the join number. More specifically, the combination processing unit 205 determines whether or not the number of drawing objects satisfying the combination condition is equal to or less than the number of combinations determined in step S804 corresponding to the current processing target area. In this embodiment, since the number of connections is determined for each predetermined area, the determination in step S808 is also performed for each predetermined area.

ステップS808において、結合条件を満たすオブジェクト数が結合数より多い場合は、ステップS813に進み、中間データ生成部210にて中間データに含まれる要素を生成する処理を開始する。一方、ステップS808において、結合条件を満たすオブジェクト数が結合数以下の場合は、ステップS809に進み、結合処理部205は、ステップS806で発行された描画命令で描画される描画オブジェクトを結合対象のオブジェクトと決定する。   In step S808, if the number of objects satisfying the join condition is greater than the number of joins, the process proceeds to step S813, where the intermediate data generation unit 210 starts processing for generating elements included in the intermediate data. On the other hand, if the number of objects satisfying the join condition is equal to or less than the join number in step S808, the process proceeds to step S809, and the join processing unit 205 sets the draw object drawn by the draw command issued in step S806 as the object to be joined. And decide.

次にステップS810において結合処理部205は、結合対象のオブジェクトの数はステップS804で決定された結合数であるかを判定する。結合対象のオブジェクトの数が決定された結合数である場合、ステップS812において結合処理部205は、結合対象のオブジェクトの結合処理を行う。ステップS810において結合対象のオブジェクトの数が決定された結合数でない場合、ステップS811において結合処理部205は、現在の処理対象となっているPDLコマンドが最後のPDLコマンドであるかを判定する。ここでは、領域毎に結合処理を行っているので、処理対象の領域における最後のPDLコマンドであるかを判定する。最後のPDLコマンドである場合、ステップS812に進みそれまでの結合対象のオブジェクトを用いて結合処理を行う。最後のPDLコマンドでない場合、ステップS805に処理を戻す。   In step S810, the combination processing unit 205 determines whether the number of objects to be combined is the number of connections determined in step S804. When the number of objects to be combined is the determined number of objects to be combined, in step S812, the combining processing unit 205 performs a combining process on the objects to be combined. If the number of objects to be combined is not determined in step S810, the combination processing unit 205 determines in step S811 whether the PDL command currently being processed is the last PDL command. Here, since the combination process is performed for each area, it is determined whether it is the last PDL command in the area to be processed. If it is the last PDL command, the process proceeds to step S812, and the combining process is performed using the objects to be combined so far. If it is not the last PDL command, the process returns to step S805.

ステップS812において結合処理部205は、処理対象のオブジェクトの結合処理を行う。すなわち、処理対象となっている複数のオブジェクトそれぞれをプレレンダリングし1つのビットマップデータを生成する。そして生成したビットマップデータを示す描画命令を中間データ生成部210に出力する。   In step S812, the combination processing unit 205 performs combination processing of objects to be processed. That is, each of a plurality of objects to be processed is pre-rendered to generate one bitmap data. Then, a rendering command indicating the generated bitmap data is output to the intermediate data generation unit 210.

具体例を挙げてステップS808からステップS812の処理について補足する。例えば、ある領域についてステップS804で決定された結合数が100であるとする。この意味は、この領域について100個の描画オブジェクトを結合した場合、結合処理に要する時間もレンダリング処理に要する時間もほどよく調和されたものとなる数である。このとき、この領域に描画オブジェクトが300個あると仮定する。また、この300個のオブジェクトは全て結合条件を満たすものと仮定する。この場合、1つ目から100個目までの描画オブジェクトが1つの描画オブジェクトに結合される。その次の101個目から200個目までの描画オブジェクトについても同様に1つの描画オブジェクトに結合される。   A specific example will be given to supplement the processing from step S808 to step S812. For example, assume that the number of connections determined in step S804 for a certain region is 100. This means that when 100 drawing objects are combined in this area, the time required for the combining process and the time required for the rendering process are well balanced. At this time, it is assumed that there are 300 drawing objects in this area. Further, it is assumed that all these 300 objects satisfy the coupling condition. In this case, the first to 100th drawing objects are combined into one drawing object. The next 101st to 200th drawing objects are similarly combined into one drawing object.

ステップS813において中間データ生成部210は、受信した描画命令に基づいて中間データを生成する。すなわち、中間データに含まれる要素を生成する。   In step S813, the intermediate data generation unit 210 generates intermediate data based on the received drawing command. That is, an element included in the intermediate data is generated.

該当ページのPDLコマンドを全て解析するまでステップS805からS813処理を繰り返す。該当ページのPDLコマンドを全て解析し、中間データに含まれる要素を生成し終えたら、次にステップS813へ進み、中間データをクローズする。次にステップS814へ進み、レンダリング処理部220は、RAM116から中間データを読み込み、中間データをレンダリングし、ステップS815にて画像出力を行う。全てのページに対して、中間データを生成し、レンダリング処理を実施するまでS803からS816の処理を繰り返し、一連の処理を終了する。   Steps S805 to S813 are repeated until all the PDL commands of the corresponding page are analyzed. When all the PDL commands of the corresponding page are analyzed and the elements included in the intermediate data are generated, the process advances to step S813 to close the intermediate data. In step S814, the rendering processing unit 220 reads intermediate data from the RAM 116, renders the intermediate data, and outputs an image in step S815. The intermediate data is generated for all pages, and the processing from S803 to S816 is repeated until the rendering processing is performed, and the series of processing ends.

図9は、画像形成装置100のコントローラ部110にあるCPU112上で動作する結合処理部205の動作を示すフローチャートであり、S804における描画集計情報から結合数を決定する処理を示す図である。結合処理部205は、ステップS901において、ジョブ制御部200から渡される描画集計情報を読み込む。次にステップS902へ進み、先頭領域であるバンドを、レンダリング処理時間を予測し、結合数を決定する対象の領域とする。以下、領域のことをバンドと称する。   FIG. 9 is a flowchart illustrating the operation of the combination processing unit 205 that operates on the CPU 112 in the controller unit 110 of the image forming apparatus 100, and illustrates the process of determining the number of connections from the drawing total information in S804. In step S <b> 901, the combination processing unit 205 reads drawing total information passed from the job control unit 200. Next, the processing proceeds to step S902, where the band that is the head region is set as a region for which the rendering processing time is predicted and the number of connections is determined. Hereinafter, the region is referred to as a band.

本実施形態では、図10(a)に示す模式図のように、バンド単位で描画集計情報が生成されている。よって、結合数の決定もバンド毎に行われる。すなわち、先頭のバンド1からバンド2、バンド3へと順次、各バンドの描画集計情報からのレンダリング時間の予測処理が行われることになる。詳細は後述する。   In the present embodiment, as shown in the schematic diagram of FIG. 10A, drawing total information is generated in band units. Therefore, the number of couplings is also determined for each band. That is, rendering time prediction processing is performed from the first band 1 to band 2 and band 3 in order from the drawing total information of each band. Details will be described later.

ステップS903において結合処理部205は、結合数を初期値に設定する。初期値はどのような値であってもよいが、本実施形態では、以降の処理で結合数を引き上げる処理を行うので、2や5などの少ない値を用いるものとする。また、結合しないことを示す0であってもよい。結合処理部205は、初期値の結合数によって結合処理部205が描画オブジェクトを結合した場合に推定される減少した中間データの要素の数で、受信した描画集計情報を更新する。例えば初期値の結合数が5個である場合、受信した描画集計情報に含まれる中間データの要素の推定数を結合数に応じて減らす。この処理は、先に説明したようにPDLコマンドの描画命令から結合されるであろう結合対象の描画オブジェクトを推定し、結合対象の描画オブジェクトを結合した場合に残る中間データの要素の数を推定する。結合処理部205は、この減少した値を用いて受信した描画集計情報を更新する。   In step S903, the combination processing unit 205 sets the number of combinations to an initial value. The initial value may be any value, but in the present embodiment, since the process of increasing the number of connections is performed in the subsequent processes, a small value such as 2 or 5 is used. Moreover, 0 which shows not couple | bonding may be sufficient. The combination processing unit 205 updates the received drawing total information with the number of elements of the reduced intermediate data estimated when the combination processing unit 205 combines the drawing objects according to the initial number of combinations. For example, when the number of combined initial values is 5, the estimated number of elements of the intermediate data included in the received drawing total information is reduced according to the combined number. As described above, this process estimates the drawing object to be combined that will be combined from the drawing instruction of the PDL command, and estimates the number of elements of the intermediate data remaining when the drawing object to be combined is combined. To do. The combination processing unit 205 updates the received drawing total information using the decreased value.

次にステップS904へ進み、結合処理部205は、対象バンドにおける更新された描画集計情報からレンダリング処理時間を予測する。次にステップS905へ進み、結合処理部205は、レンダリング予測時間がN分以上であるかどうかを判定する。Nはレンダリング予測時間がこの値を超えると処理に時間がかかりすぎるとユーザーが考える時間を任意に設定できる。例えばNは3であるとする。   In step S904, the combination processing unit 205 predicts the rendering processing time from the updated drawing total information in the target band. In step S905, the combination processing unit 205 determines whether the rendering prediction time is N minutes or longer. N can arbitrarily set the time that the user thinks that the processing takes too much time if the estimated rendering time exceeds this value. For example, suppose N is 3.

具体例を用いて説明する。図10(a)を入力データの例とした場合、ステップS905では、バンド1の描画集計情報を図10(b)として読み込む。バンド1には矩形オブジェクトが一つしか存在しないため、エッジ総数は2といった描画集計情報が記載されている。図10(e)はステップS904で行う描画集計情報からのレンダリング時間の予測に用いる予測式である。描画集計情報の各パラメーターを用いて、レンダリング時間を予測する。図10(e)の“a” から“n”は所定の係数である。EdgeCountはエッジ総数に対応し、VectorEdgeはエッジの種類に対応し、SegmentHeightはエッジの長さ総数に対応し、SegmentCountは点列数に対応し、EdgeDensityはエッジ密集度に対応する。また、CompositeLevelはレベル総数に対応し、LevelDensityはレベル密集度に対応する。また、FillCountはフィル総数に対応し、RotateImageは回転イメージ総数に対応し、NoRotateImageは非回転イメージ総数に対応する。CompositeImageは合成イメージ総数に対応し、NoCompositeImageは非合成イメージ総数に対応し、GradImageはグラデーション総数に対応する。Cは定数である。この計算式によって算出される予測時間がN分以上であるかどうかの判定を、ステップS905の処理で判定する。   This will be described using a specific example. When FIG. 10A is an example of input data, in step S905, the drawing total information of band 1 is read as FIG. 10B. Since there is only one rectangular object in band 1, drawing total information such as 2 for the total number of edges is described. FIG. 10E shows a prediction formula used for prediction of rendering time from the drawing total information performed in step S904. The rendering time is predicted using each parameter of the drawing total information. “A” to “n” in FIG. 10E are predetermined coefficients. EdgeCount corresponds to the total number of edges, VectorEdge corresponds to the type of edge, SegmentHeight corresponds to the total number of edge lengths, SegmentCount corresponds to the number of point sequences, and EdgeDensity corresponds to the edge density. CompositeLevel corresponds to the total number of levels, and LevelDensity corresponds to the level density. FillCount corresponds to the total number of fills, RotateImage corresponds to the total number of rotated images, and NoRotateImage corresponds to the total number of non-rotated images. CompositeImage corresponds to the total number of composite images, NoCompositeImage corresponds to the total number of non-composite images, and GradImage corresponds to the total number of gradations. C is a constant. Whether or not the predicted time calculated by this formula is N minutes or more is determined in the process of step S905.

次にステップS905において、結合処理部205は、予測したレンダリング時間がN分以上であるかどうかを判定する。N分以下である場合は、レンダリング処理に負荷のかかるバンドデータではないため、そのままステップS913へ進み、全バンド分の処理を繰り返す。ステップS905において、レンダリング処理の予測時間がN分以上である場合は、ステップS906に進み、ステップS903で設定した結合数(=初期値)をMだけ引き上げる(Mを結合数に加算する)。次にステップS907へ進み、引き上げた結合数によって、描画集計情報を更新する。描画集計情報の更新についてはステップS903で説明したものと同様に処理が行われる。次にステップS908へ進み、結合処理部205は、更新された描画集計情報によってレンダリング時間を予測する。   In step S905, the combination processing unit 205 determines whether the predicted rendering time is N minutes or longer. If it is less than or equal to N minutes, it is not band data that imposes a load on the rendering process, so the process proceeds to step S913 as it is, and the process for all bands is repeated. In step S905, if the estimated rendering processing time is N minutes or more, the process proceeds to step S906, and the number of connections (= initial value) set in step S903 is increased by M (M is added to the number of connections). In step S907, the drawing total information is updated according to the increased number of connections. The update of the drawing total information is performed in the same manner as described in step S903. In step S908, the combination processing unit 205 predicts the rendering time based on the updated drawing total information.

次にステップS909へ進み、結合処理部205は、ステップS909で得られたレンダリング予測時間がN分未満かどうかを判定する。N分未満でない場合は、まだレンダリング処理時間が基準時間としたN分に満たしていないため、さらに結合する必要性がある。そこで、結合数を引き上げるためステップS906に進み、再度ステップS906から909の処理を繰り返す。   In step S909, the combination processing unit 205 determines whether the rendering prediction time obtained in step S909 is less than N minutes. If it is not less than N minutes, the rendering process time has not yet reached N minutes as the reference time, and there is a need for further combining. Therefore, the process proceeds to step S906 to increase the number of connections, and the processes from step S906 to step 909 are repeated again.

ステップS909において、レンダリング予測時間がN分未満と判定した場合は、ステップS910へ進み、引き上げた結合数での結合処理部205にかかる結合処理時間を同様に予測する。すなわち、引き上げた結合数分の描画オブジェクトをプレレンダリングした場合の処理時間を予測する。   If it is determined in step S909 that the predicted rendering time is less than N minutes, the process advances to step S910 to similarly predict the combination processing time for the combination processing unit 205 with the increased number of combinations. That is, the processing time when the rendering objects corresponding to the number of pulled-up connections is pre-rendered is predicted.

次にステップS911へ進み、結合処理部205は、ステップS908にて行ったレンダリング処理の予測時間と、ステップS910にて行った結合処理の予測時間に基準値であるN分を加えた時間とを比較する。ステップS911において、レンダリング処理の予測時間が、結合処理の予測時間+Nより大きい場合は、結合処理のコストが低いので、結合処理が高速化処理として機能する。よって、ステップS912に進み、S906にて引き上げていった結合数を当該バンドに適用すると決定する。ステップS911において、レンダリング処理の予測時間が、結合処理の予測時間+Nより小さい場合は、結合処理のコストが高く、結合処理そのものがネックとなるので結合数の引き上げは行わず、当該バンドには初期値のままの値を用いる。次にステップS913へ進み、次のバンドがあるか判定する。次のバンドがある場合は、ステップS914にて対象バンドを進める。全てのバンドに対して結合数の算出を行った場合は、一連の処理を終了する。   Next, proceeding to step S911, the combination processing unit 205 calculates the predicted time of the rendering process performed in step S908 and the time obtained by adding N minutes as a reference value to the predicted time of the combination process performed in step S910. Compare. In step S911, when the prediction time of the rendering process is larger than the predicted time of the combination process + N, the combination process functions as an acceleration process because the cost of the combination process is low. Therefore, it progresses to step S912 and it determines with applying the number of coupling | bonding raised in S906 to the said band. In step S911, if the rendering processing prediction time is smaller than the joint processing prediction time + N, the cost of the joint processing is high and the joint processing itself becomes a bottleneck, so the number of joints is not increased, and the band is initially set. Use the value as it is. In step S913, it is determined whether there is a next band. If there is a next band, the target band is advanced in step S914. When the number of bonds has been calculated for all the bands, the series of processing ends.

以下、図10の例を用いて具体的に説明する。図10(a)のバンド2を入力データの例とした場合、ステップS901では、バンド2の描画集計情報を図10(c)として読み込む。バンド2には多角形オブジェクトが大量に存在するため、エッジ総数は1,048,576といった値が含まれている。バンド2には大量のエッジが含まれるためレンダリング時間が3分以上と予測される。従って、ステップS906に進み結合数の引き上げを開始する。ステップS907では、ステップS903で設定した結合数の初期値(例えば初期値=10とする)に、M(例えばM=100)だけ引き上げた値の結合数を用いて描画集計情報を更新する。そして、ステップS908で結合処理部205は、更新された描画集計情報において、再度、図10(e)の予測式に基づいてレンダリング時間を算出する。そのレンダリング予測時間が3分以下となるまで、結合数をMだけ順次引き上げて求める。最終的に3分以下となった描画集計情報を図10(d)に示す。このときの結合数は1210になっており、この結合数をバンド2には適用する。   This will be specifically described below with reference to the example of FIG. When band 2 in FIG. 10A is an example of input data, the drawing total information of band 2 is read as FIG. 10C in step S901. Since a large number of polygonal objects exist in band 2, the total number of edges includes values such as 1,048,576. Since the band 2 includes a large amount of edges, the rendering time is predicted to be 3 minutes or more. Accordingly, the process proceeds to step S906 to start increasing the number of connections. In step S907, the drawing total information is updated by using the number of connections increased by M (for example, M = 100) as the initial value (for example, initial value = 10) of the number of connections set in step S903. In step S908, the combination processing unit 205 calculates the rendering time again based on the prediction formula of FIG. The number of connections is sequentially increased by M until the rendering prediction time becomes 3 minutes or less. FIG. 10D shows the drawing total information that finally becomes 3 minutes or less. The number of bonds at this time is 1210, and this number of bonds is applied to band 2.

図11は、本実施形態における効果を示す具体例である。図6(d)に示したように、1024×1024個の描画オブジェクトを含む入力データに対して、結合数を1024×1024とし全て結合した結合過剰ケースと、結合数を10とした結合不足ケースとが比較対象である。本実施形態による適切な結合ケースでは、結合数が1010と求まり、その処理時間が結合処理時間とレンダリング処理時間とで負荷分散され、合計時間として短縮された結果を得ることが出来る。   FIG. 11 is a specific example showing the effect in the present embodiment. As shown in FIG. 6 (d), the input excess data including 1024 × 1024 drawing objects has the combined number of 1024 × 1024 and the combined excessive case, and the combined insufficient case has the combined number of 10. And are comparison targets. In an appropriate combination case according to the present embodiment, the number of combinations is obtained as 1010, the processing time is load-balanced between the combination processing time and the rendering processing time, and a result of shortening the total time can be obtained.

<その他の実施例>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
<Other examples>
The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, or the like) of the system or apparatus reads the program. It is a process to be executed.

Claims (11)

印刷データに含まれる複数のオブジェクトを1つのオブジェクトに結合するための結合処理を行う画像形成装置であって、
印刷データを取得する取得手段と、
前記取得された印刷データの内容に基づいて、前記結合処理の結合対象となるオブジェクト数を決定する決定手段と、
前記決定されたオブジェクト数に基づいて、前記取得された印刷データに含まれる複数のオブジェクトを1つのオブジェクトに結合する結合手段と、
を有する画像形成装置。
An image forming apparatus that performs a combination process for combining a plurality of objects included in print data into one object,
Acquisition means for acquiring print data;
Determining means for determining the number of objects to be combined in the combining process based on the content of the acquired print data;
A combining unit configured to combine a plurality of objects included in the acquired print data into one object based on the determined number of objects;
An image forming apparatus.
前記印刷データから得られるデータを用いて描画処理を行う描画手段をさらに有することを特徴とする請求項1に記載の画像形成装置。   The image forming apparatus according to claim 1, further comprising a drawing unit that performs a drawing process using data obtained from the print data. 前記決定手段は、前記描画手段で行われる描画処理に要する時間が前記結合手段で行われる結合処理に要する時間よりも短くなるように前記オブジェクトの数を決定することを特徴とする請求項2に記載の画像形成装置。   3. The determination unit according to claim 2, wherein the number of the objects is determined so that a time required for the drawing process performed by the drawing unit is shorter than a time required for the combining process performed by the combining unit. The image forming apparatus described. 前記取得手段は、前記印刷データとして、ページ記述言語で記述されたページ記述言語データを取得し、
前記画像形成装置は、
前記ページ記述言語データから得られる描画命令に基づいて中間データを生成する生成手段をさらに有し、
前記描画手段は、前記生成手段で生成された中間データを用いて描画処理を行うことを特徴とする請求項2または3に記載の画像形成装置。
The acquisition means acquires page description language data described in a page description language as the print data,
The image forming apparatus includes:
Further comprising generating means for generating intermediate data based on a drawing command obtained from the page description language data;
The image forming apparatus according to claim 2, wherein the drawing unit performs a drawing process using the intermediate data generated by the generation unit.
前記結合手段は、前記結合対象となるオブジェクトに対応する描画命令に基づいて複数のオブジェクトを1つのオブジェクトに結合した画像データを生成し、生成した画像データを描画する描画命令を前記生成手段に出力する請求項4に記載の画像形成装置。   The combining unit generates image data in which a plurality of objects are combined into one object based on a drawing command corresponding to the object to be combined, and outputs a drawing command for drawing the generated image data to the generating unit The image forming apparatus according to claim 4. 前記決定手段は、前記印刷データの中間データを構成する要素数を集計し、集計した要素数から前記描画手段で行われる描画処理に要する時間を推定することを特徴とする請求項2から5のいずれか一項に記載の画像形成装置。   6. The determination unit according to claim 2, wherein the determination unit totals the number of elements constituting the intermediate data of the print data, and estimates the time required for the drawing process performed by the drawing unit from the total number of elements. The image forming apparatus according to claim 1. 前記決定手段は、前記印刷データの結合対象の数のオブジェクトに対応する描画命令に基づいて複数のオブジェクトを1つのオブジェクトに結合した画像データを生成する際に要する時間を前記結合手段で行われる結合処理に要する時間と推定する請求項2から6のいずれか一項に記載の画像形成装置。   The determining means is a combination performed by the combining means for a time required to generate image data in which a plurality of objects are combined into one object based on a drawing command corresponding to the number of objects to be combined with the print data. The image forming apparatus according to claim 2, wherein the time required for processing is estimated. 前記結合手段は、印刷データに含まれる印刷領域毎に結合処理を行うことを特徴とする請求項1から7のいずれか一項に記載の画像形成装置。   The image forming apparatus according to claim 1, wherein the combining unit performs a combining process for each print area included in the print data. 前記結合手段は、処理対象の印刷領域において、結合されたオブジェクトの数が前記決定手段で決定されたオブジェクトの数を超える場合、前記決定手段で決定された数のオブジェクトを1つのオブジェクトに結合し、該処理対象の印刷領域における他のオブジェクトを用いた結合をさらに行うことを特徴とする請求項8に記載の画像形成装置。   When the number of combined objects exceeds the number of objects determined by the determining means in the print area to be processed, the combining means combines the number of objects determined by the determining means into one object. 9. The image forming apparatus according to claim 8, further comprising a combination using another object in the print area to be processed. 印刷データに含まれる複数のオブジェクトを1つのオブジェクトに結合するための結合処理を行う画像形成方法であって、
印刷データを取得する取得工程と、
前記取得された印刷データの内容に基づいて、前記結合処理の結合対象となるオブジェクト数を決定する決定工程と、
前記決定されたオブジェクト数に基づいて、前記取得された印刷データに含まれる複数のオブジェクトを1つのオブジェクトに結合する結合工程と、
を有する画像形成方法。
An image forming method for performing a combining process for combining a plurality of objects included in print data into one object,
An acquisition process for acquiring print data;
A determination step of determining the number of objects to be combined in the combining process based on the content of the acquired print data;
A combining step of combining a plurality of objects included in the acquired print data into one object based on the determined number of objects;
An image forming method comprising:
コンピュータを請求項1から9のいずれか一項に記載の画像形成装置の各手段として機能させるためのプログラム。
A program for causing a computer to function as each unit of the image forming apparatus according to any one of claims 1 to 9.
JP2013260521A 2013-12-17 2013-12-17 Image formation device and image formation method Pending JP2015116703A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013260521A JP2015116703A (en) 2013-12-17 2013-12-17 Image formation device and image formation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013260521A JP2015116703A (en) 2013-12-17 2013-12-17 Image formation device and image formation method

Publications (1)

Publication Number Publication Date
JP2015116703A true JP2015116703A (en) 2015-06-25

Family

ID=53529904

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013260521A Pending JP2015116703A (en) 2013-12-17 2013-12-17 Image formation device and image formation method

Country Status (1)

Country Link
JP (1) JP2015116703A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017136727A (en) * 2016-02-02 2017-08-10 キヤノン株式会社 Printing time estimation device, printing time estimation method and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017136727A (en) * 2016-02-02 2017-08-10 キヤノン株式会社 Printing time estimation device, printing time estimation method and program

Similar Documents

Publication Publication Date Title
JP6454213B2 (en) Image output system, image processing apparatus, image output apparatus, method and program therefor
US8675237B2 (en) Image forming apparatus, image forming method, and computer readable medium for comparing two types of print data
US8976386B2 (en) Information processing apparatus configured to generate reconfigurable print data, print control program, storage medium, image forming apparatus and printing system
US20200174723A1 (en) Print system, printing apparatus, method of controlling the printing apparatus, and storage medium that generate print data to be printed using rendered print data
JP2010165261A (en) Printing control device and control method thereof
US20160078643A1 (en) Information processing apparatus, information processing method, and program
US20150294203A1 (en) Image output system, image output method, document server, and non-transitory computer readable recording medium
JP2013001059A (en) Image forming apparatus, method for controlling image forming apparatus, and program
JP2017151820A (en) Information processing device, program, and control method
US9716810B2 (en) Image processing apparatus configured to perform smoothing based on analysis of PDL data, and storage medium storing program therefor
JP2015116703A (en) Image formation device and image formation method
EP3584761A1 (en) Image forming apparatus capable of changing thickness of character, control method therefor, and storage medium storing control program therefor
US10423374B2 (en) Image forming apparatus and method for controlling image forming apparatus for reducing print processing time
US10620887B2 (en) Image forming apparatus and information processing apparatus configured to print a specified page of a plurality of documents, control method thereof, and non-transitory computer-readable storage medium
JP2016137664A (en) Image processing device, image processing method and program thereof for calculating prediction value of time required for printing
JP2012060401A (en) Image formation apparatus and drawing control method
KR102130515B1 (en) Print control apparatus, and print control method
US20170039013A1 (en) Image forming apparatus, method of controlling the same, and storage medium
US9336468B2 (en) Image forming apparatus, image forming method, and medium
JP2016095570A (en) Information processing device, image forming apparatus with the information processing device, information processing method, and program for making computer achieve the information processing method
JP2010250393A (en) Information processing apparatus and information processing method
US9766839B2 (en) Information processing apparatus, control method, and recording medium
US20180260164A1 (en) Image forming apparatus and method for controlling image forming apparatus
JP2016087933A (en) Information processor, control method for information processor, and program
JP2016016564A (en) Information processor, information processing method and program