JP2022017931A - Image formation processing apparatus, processing method for image formation processing apparatus, and program - Google Patents

Image formation processing apparatus, processing method for image formation processing apparatus, and program Download PDF

Info

Publication number
JP2022017931A
JP2022017931A JP2020120797A JP2020120797A JP2022017931A JP 2022017931 A JP2022017931 A JP 2022017931A JP 2020120797 A JP2020120797 A JP 2020120797A JP 2020120797 A JP2020120797 A JP 2020120797A JP 2022017931 A JP2022017931 A JP 2022017931A
Authority
JP
Japan
Prior art keywords
intermediate data
written
memory
drawing information
generated
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
JP2020120797A
Other languages
Japanese (ja)
Other versions
JP7566516B2 (en
Inventor
洋 山下
Hiroshi Yamashita
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 JP2020120797A priority Critical patent/JP7566516B2/en
Publication of JP2022017931A publication Critical patent/JP2022017931A/en
Application granted granted Critical
Publication of JP7566516B2 publication Critical patent/JP7566516B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)
  • Image Generation (AREA)
  • Storing Facsimile Image Data (AREA)

Abstract

To make it possible to appropriately generate intermediate data based on print data even when the print data is large.SOLUTION: An image formation processing apparatus has: intermediate data generation means that, on the basis of a plurality of pieces of drawing information included in print data, generates intermediate data for each of the pieces of drawing data, writes the generated intermediate data in a memory, writes the intermediate data written in the memory in an external storage, releases the area of the memory for the intermediate data, and integrates the plurality of pieces of intermediate data based on the plurality of pieces of drawing data written in the external storage; and rendering means that renders the intermediate data integrated by the intermediate data generation means to create a raster image.SELECTED DRAWING: Figure 6

Description

本発明は、画像形成処理装置、画像形成処理装置の処理方法およびプログラムに関する。 The present invention relates to an image forming processing apparatus, a processing method and a program of the image forming processing apparatus.

大判機等、使用する印刷用紙のサイズが特別に大きいプリンタ装置は、ページ記述言語で記述された印刷データを投入しても、印刷が困難なケースが存在する。特に、印刷データのページ中に極めて大きな画像が埋め込まれている場合や、非常に多くの図形データ等が含まれる場合では、該ページを処理する途中の段階で、メモリの空き容量不足に陥ってしまい、処理が続行できない場合がある。一般に、プリンタドライバやプリンタコントローラは、いずれも定められたハードウェアリソース(例えばプロセスに割り当てられるメモリには制限がある)で処理するように構成されているために、何らかの対策を講じる必要がある。 In a printer device such as a large format machine in which the size of the printing paper used is particularly large, there are cases where printing is difficult even if print data described in the page description language is input. In particular, when an extremely large image is embedded in a page of print data, or when a large amount of graphic data is included, the free memory space becomes insufficient during the process of processing the page. In some cases, the process cannot be continued. In general, printer drivers and printer controllers are both configured to process with specified hardware resources (for example, the memory allocated to a process is limited), so some measures need to be taken.

印刷データ処理時にメモリの空き容量が不足(メモリアロックが出来ない等)し、処理を継続できない場合の対策の一例としては、特許文献1および特許文献4の方法が知られている。特許文献1では、メモリの空き容量が不足した時点で、処理プログラムがメモリに記録されている中間データを用いて画像形成(レンダリング)を実施することにより、それまでに蓄えたデータを解放することで、データサイズを削減する。これらの技術に加え、データの統合処理によってデータサイズを削減する方法(フラット化)が知られている(特許文献2および特許文献3参照)。 The methods of Patent Document 1 and Patent Document 4 are known as an example of measures to be taken when the free space of the memory is insufficient (memory cannot be locked, etc.) during the print data processing and the processing cannot be continued. In Patent Document 1, when the free space of the memory is insufficient, the processing program performs image formation (rendering) using the intermediate data recorded in the memory to release the data stored up to that point. So, reduce the data size. In addition to these techniques, a method of reducing the data size (flattening) by data integration processing is known (see Patent Document 2 and Patent Document 3).

特開2011-61555号公報Japanese Unexamined Patent Publication No. 2011-61555 特開2018-152113号公報Japanese Unexamined Patent Publication No. 2018-152113 特開2017-194932号公報Japanese Unexamined Patent Publication No. 2017-194932 特開平6-261202号公報Japanese Unexamined Patent Publication No. 6-261202

しかし、印刷データのページ中に極めて大きな画像が埋め込まれている場合や、非常に多くの図形データ等が含まれる場合では、データの統合処理を行っても、メモリの空き容量が不足してしまう場合がある。 However, if an extremely large image is embedded in the print data page, or if a large amount of graphic data is included, the free memory space will be insufficient even if the data integration process is performed. In some cases.

本発明の目的は、印刷データが大きい場合であっても、印刷データを基に中間データを適切に生成することができるようにすることである。 An object of the present invention is to make it possible to appropriately generate intermediate data based on print data even when the print data is large.

本発明の画像形成処理装置は、印刷データに含まれる複数の描画情報を基に、前記描画情報ごとに中間データを生成し、前記生成した中間データをメモリに書き込み、前記メモリに書き込まれた中間データを外部記憶装置に書き込み、前記中間データのメモリの領域を解放し、前記外部記憶装置に書き込まれた前記複数の描画情報に基づく複数の中間データを統合する中間データ生成手段と、前記中間データ生成手段により統合された中間データをレンダリングし、ラスタ画像を生成するレンダリング手段とを有する。 The image forming processing apparatus of the present invention generates intermediate data for each drawing information based on a plurality of drawing information included in the print data, writes the generated intermediate data to a memory, and writes the intermediate data to the memory. An intermediate data generation means that writes data to an external storage device, releases a memory area of the intermediate data, and integrates a plurality of intermediate data based on the plurality of drawing information written in the external storage device, and the intermediate data. It has a rendering means that renders the intermediate data integrated by the generation means and generates a raster image.

本発明によれば、印刷データが大きい場合であっても、印刷データを基に中間データを適切に生成することができる。 According to the present invention, even when the print data is large, intermediate data can be appropriately generated based on the print data.

印刷システムの構成例を示す図である。It is a figure which shows the configuration example of a printing system. フラット化によってメモリが削減される一例を示す図である。It is a figure which shows an example which memory is reduced by flattening. フラット化を実施してもメモリが不足する例を示す図である。It is a figure which shows the example which the memory is insufficient even if flattening is performed. 画像形成処理装置のハードウェア構成例を示す図である。It is a figure which shows the hardware configuration example of the image formation processing apparatus. 中間データ生成部で生成される中間データを示す図である。It is a figure which shows the intermediate data generated by the intermediate data generation part. 画像形成処理装置の処理方法を示すフローチャートである。It is a flowchart which shows the processing method of the image formation processing apparatus. 画像形成処理装置の処理方法を示すフローチャートである。It is a flowchart which shows the processing method of the image formation processing apparatus. 画像形成処理装置の処理方法を示すフローチャートである。It is a flowchart which shows the processing method of the image formation processing apparatus. 性能の改善を示す図である。It is a figure which shows the improvement of performance. 画像形成処理装置の処理方法を示すフローチャートである。It is a flowchart which shows the processing method of the image formation processing apparatus. 印刷ジョブ情報の一例を示す図である。It is a figure which shows an example of the print job information. 動作モード切り替え処理を示すフローチャートである。It is a flowchart which shows the operation mode switching process. 画像形成処理装置の処理方法を示すフローチャートである。It is a flowchart which shows the processing method of the image formation processing apparatus. 画像形成処理装置の処理方法を示すフローチャートである。It is a flowchart which shows the processing method of the image formation processing apparatus. 性能の改善を示す図である。It is a figure which shows the improvement of performance. 画像形成処理装置の処理方法を示すフローチャートである。It is a flowchart which shows the processing method of the image formation processing apparatus.

図1(A)は、印刷システムの構成例を示す図である。印刷システムは、画像形成処理装置100と、コンピュータ200を有する。コンピュータ200は、印刷データ生成部201を有する。印刷データ生成部201は、印刷対象データ202から印刷データ203を生成する。 FIG. 1A is a diagram showing a configuration example of a printing system. The printing system includes an image forming processing apparatus 100 and a computer 200. The computer 200 has a print data generation unit 201. The print data generation unit 201 generates print data 203 from the print target data 202.

画像形成処理装置100は、入力部204と、解析部205と、ラスタ画像生成処理部206と、出力部207とを有する。入力部204は、印刷データ生成部201が生成した印刷データ203を入力する。解析部205は、入力部204が入力した印刷データ203を解析し、印刷データ203から描画命令を抽出する。 The image forming processing apparatus 100 includes an input unit 204, an analysis unit 205, a raster image generation processing unit 206, and an output unit 207. The input unit 204 inputs the print data 203 generated by the print data generation unit 201. The analysis unit 205 analyzes the print data 203 input by the input unit 204 and extracts a drawing command from the print data 203.

ラスタ画像生成処理部206は、中間データ生成部208と、レンダリング部209とを有する。中間データ生成部208は、解析部205で抽出された描画命令から描画情報210と画像211を抽出し、中間データを生成し、中間データを画像形成処理装置100内のメモリに格納する。 The raster image generation processing unit 206 has an intermediate data generation unit 208 and a rendering unit 209. The intermediate data generation unit 208 extracts the drawing information 210 and the image 211 from the drawing command extracted by the analysis unit 205, generates the intermediate data, and stores the intermediate data in the memory in the image forming processing apparatus 100.

レンダリング部209は、中間データ生成部208で生成された中間データをレンダリングし、ラスタ画像を生成する。出力部207は、レンダリング部209で生成されたラスタ画像から出力データ212を生成する。 The rendering unit 209 renders the intermediate data generated by the intermediate data generation unit 208 to generate a raster image. The output unit 207 generates the output data 212 from the raster image generated by the rendering unit 209.

図2は、中間データ生成部208のフラット化によってメモリが削減される様子を示す図である。中間データ生成部208は、中間データのフラット化を実施することで、メモリ使用量が削減され、処理を継続することが可能となる。中間データ生成部208は、画像形成処理を継続するために、内部メモリの縮退処理により、中間データの削減を実施している。縮退処理とは、中間データを最終的にスプールアウトする中間データと類似の構造として保持し、メモリが不足した場合に、フラット化と呼ばれる処理で統合する処理のことである。しかしながら、この方式では、使用可能なメモリ量が徐々に少なくなってくると、再びフラット化を実施する必要がある。ワーストケースでは、フラット化が繰り返される。 FIG. 2 is a diagram showing how the memory is reduced by flattening the intermediate data generation unit 208. By flattening the intermediate data, the intermediate data generation unit 208 reduces the memory usage and enables the processing to be continued. The intermediate data generation unit 208 reduces the intermediate data by the degeneration process of the internal memory in order to continue the image formation process. The degeneration process is a process in which the intermediate data is held as a structure similar to the intermediate data that is finally spooled out, and when the memory is insufficient, the intermediate data is integrated by a process called flattening. However, in this method, when the amount of available memory gradually decreases, it is necessary to perform flattening again. In the worst case, flattening is repeated.

図3は、フラット化を繰り返した結果、メモリの空き容量が不足する例を示す図である。縦軸はメモリの使用量(GB)を示し、横軸は処理時間(分)を示している。例えば、縦軸の最大値2GBがメモリ最大容量である。3回のフラット化が発生し、メモリ使用量が削減されている。しかし、処理時間Tでは、メモリ使用量が最大値2GBに到達しており、メモリの空き容量の不足が発生し、リカバリー処理が必要になる。このように、フラット化を実施しても、メモリの空き容量の不足が発生し、処理を継続出来ないケースが存在する。以下、メモリの空き容量が不足しても、画像形成処理が可能な画像形成処理装置100を説明する。 FIG. 3 is a diagram showing an example in which the free memory capacity is insufficient as a result of repeated flattening. The vertical axis shows the amount of memory used (GB), and the horizontal axis shows the processing time (minutes). For example, the maximum value of 2 GB on the vertical axis is the maximum memory capacity. Three flattenings have occurred, reducing memory usage. However, at the processing time T, the memory usage reaches the maximum value of 2GB, the free memory capacity becomes insufficient, and recovery processing is required. As described above, even if flattening is performed, there is a case where the free memory capacity is insufficient and the processing cannot be continued. Hereinafter, the image forming processing apparatus 100 capable of performing the image forming processing even if the free memory capacity is insufficient will be described.

(第1の実施形態)
図4は、第1の実施形態による画像形成処理装置100のハードウェア構成の一例を示す図である。画像形成処理装置100は、CPU101と、RAM102と、フォントROM103と、プログラムROM104と、データROM105と、バス106とを有する。画像形成処理装置100は、キーボードコントローラ(KBC)107と、CRTコントローラ(CRTC)108と、ディスクコントローラ(DKC)109と、プリンタコントローラ(PRTC)110と、ネットワークコントローラ(NC)111を有する。
(First Embodiment)
FIG. 4 is a diagram showing an example of the hardware configuration of the image forming processing apparatus 100 according to the first embodiment. The image forming processing apparatus 100 includes a CPU 101, a RAM 102, a font ROM 103, a program ROM 104, a data ROM 105, and a bus 106. The image forming processing apparatus 100 includes a keyboard controller (KBC) 107, a CRT controller (CRTC) 108, a disk controller (DKC) 109, a printer controller (PRTC) 110, and a network controller (NC) 111.

CPU101は、プログラムROM104またはHDD114からRAM102にロードされたOSやアプリケーション等のプログラムを実行し、後述するソフトウェアの機能およびフローチャートの処理を実現する。RAM102は、CPU101の主メモリ、およびワークエリア等として機能するランダムアクセスメモリである。フォントROM103は、フォントを記憶する。プログラムROM104は、プログラムを記憶する。データROM105は、データを記憶する。 The CPU 101 executes a program such as an OS or an application loaded from the program ROM 104 or the HDD 114 into the RAM 102, and realizes software functions and flowchart processing described later. The RAM 102 is a random access memory that functions as a main memory of the CPU 101 and a work area or the like. The font ROM 103 stores fonts. The program ROM 104 stores the program. The data ROM 105 stores data.

キーボードコントローラ(KBC)107は、キーボード112や不図示のポインティングデバイスからのキー入力を制御する。CRTコントローラ(CRTC)108は、CRTディスプレイ113の表示を制御する。CRTディスプレイ113は、液晶ディスプレイでもよい。ディスクコントローラ(DKC)109は、ブートプログラム、種々のアプリケーション、フォントデータ、およびユーザファイル等を記憶するハードディスクドライブ(HDD)114やソリッドステートドライブ(SSD)115等に対するアクセスを制御する。HDD114とSSD115は、外部記憶装置である。プリンタコントローラ(PRTC)110は、プリンタとの間の信号の交換を制御する。ネットワークコントローラ(NC)111は、ネットワークに接続され、ネットワークに接続された他の機器との通信制御処理を実行する。 The keyboard controller (KBC) 107 controls key input from a keyboard 112 or a pointing device (not shown). The CRT controller (CRTC) 108 controls the display of the CRT display 113. The CRT display 113 may be a liquid crystal display. The disk controller (DKC) 109 controls access to a hard disk drive (HDD) 114, a solid state drive (SSD) 115, etc. that store boot programs, various applications, font data, user files, and the like. HDD 114 and SSD 115 are external storage devices. The printer controller (PRTC) 110 controls the exchange of signals with the printer. The network controller (NC) 111 is connected to the network and executes communication control processing with other devices connected to the network.

なお、本実施形態では、以下に示す画像形成処理装置100の機能は、ソフトウェアにより実現されるものとして説明するが、各機能を専用のハードウェアで画像形成処理装置100に実装するようにしてもよい。なお、CPU101は、マルチコアのCPUである。画像形成処理装置100は、複数のCPUを有していてもよい。 In the present embodiment, the functions of the image forming processing apparatus 100 shown below will be described as being realized by software, but even if each function is implemented in the image forming processing apparatus 100 by dedicated hardware. good. The CPU 101 is a multi-core CPU. The image forming processing apparatus 100 may have a plurality of CPUs.

図1(B)は、第1の実施形態による印刷システムの構成例を示す図である。印刷システムは、画像形成処理装置100と、コンピュータ200を有する。コンピュータ200は、印刷データ生成部201を有する。印刷データ生成部201は、印刷対象データ202から印刷データ203を生成する。印刷データ203は、例えば、ページ記述言語で記述された印刷データである。 FIG. 1B is a diagram showing a configuration example of a printing system according to the first embodiment. The printing system includes an image forming processing apparatus 100 and a computer 200. The computer 200 has a print data generation unit 201. The print data generation unit 201 generates print data 203 from the print target data 202. The print data 203 is, for example, print data described in a page description language.

画像形成処理装置100は、入力部204と、解析部205と、ラスタ画像生成処理部206と、出力部207とを有する。入力部204は、印刷データ生成部201が生成した印刷データ203を入力する。解析部205は、入力部204が入力した印刷データ203を解析し、印刷データ203から描画命令を抽出する。 The image forming processing apparatus 100 includes an input unit 204, an analysis unit 205, a raster image generation processing unit 206, and an output unit 207. The input unit 204 inputs the print data 203 generated by the print data generation unit 201. The analysis unit 205 analyzes the print data 203 input by the input unit 204 and extracts a drawing command from the print data 203.

ラスタ画像生成処理部206は、中間データ生成部208と、レンダリング部209とを有する。中間データ生成部208は、解析部205で抽出された描画命令を基に、エッジ情報213と合成情報214と塗り情報215を中間データ300(図5)として生成する。そして、中間データ生成部208は、エッジ情報213と合成情報214と塗り情報215をファイルとしてHDD114またはSSD115に保存する。その後、中間データ生成部208は、HDD114またはSSD115に保存されたエッジ情報213と合成情報214と塗り情報215を統合し、中間データを生成する。 The raster image generation processing unit 206 has an intermediate data generation unit 208 and a rendering unit 209. The intermediate data generation unit 208 generates edge information 213, composite information 214, and fill information 215 as intermediate data 300 (FIG. 5) based on the drawing command extracted by the analysis unit 205. Then, the intermediate data generation unit 208 stores the edge information 213, the composite information 214, and the fill information 215 as files in the HDD 114 or the SSD 115. After that, the intermediate data generation unit 208 integrates the edge information 213, the composite information 214, and the fill information 215 stored in the HDD 114 or the SSD 115 to generate the intermediate data.

レンダリング部209は、中間データ生成部208で生成された中間データをレンダリングし、ラスタ画像を生成する。出力部207は、レンダリング部209で生成されたラスタ画像から出力データ212を生成する。 The rendering unit 209 renders the intermediate data generated by the intermediate data generation unit 208 to generate a raster image. The output unit 207 generates the output data 212 from the raster image generated by the rendering unit 209.

なお、コンピュータ200と画像形成処理装置100の機能ブロック図は、上記のように配置される必要はなく、いずれかをコンピュータ200で行ってもよいし、いずれかを画像形成処理装置100で行ってもよいし、自由に変更可能である。 The functional block diagrams of the computer 200 and the image forming processing apparatus 100 do not need to be arranged as described above, and either of them may be performed by the computer 200, or any of them may be performed by the image forming processing apparatus 100. You can change it freely.

図5は、中間データ生成部208が生成する中間データ300を示す図である。中間データ300は、エッジ情報(境界情報)213と、合成情報214と、塗り情報215とを有する。 FIG. 5 is a diagram showing intermediate data 300 generated by the intermediate data generation unit 208. The intermediate data 300 has edge information (boundary information) 213, composite information 214, and fill information 215.

エッジ情報213は、オブジェクトによって区切られる各領域のエッジの座標を示す情報であり、対応する合成情報214を参照するデータである。例えば、エッジ情報213は、各領域の上端および下端のY座標(上下位置)と、Y座標毎の左端と右端のX座標(左右位置)にて示される。 The edge information 213 is information indicating the coordinates of the edges of each region separated by the object, and is data that refers to the corresponding composite information 214. For example, the edge information 213 is indicated by the Y coordinates (upper and lower positions) of the upper and lower ends of each region and the X coordinates (left and right positions) of the left and right ends of each Y coordinate.

塗り情報215は、各オブジェクト等を描画するための色を示すデータである。例えば、塗り情報215は、背景、単色オブジェクト、またはイメージオブジェクトを描画するための色を示す情報である。 The fill information 215 is data indicating colors for drawing each object or the like. For example, the fill information 215 is information indicating a color for drawing a background, a monochrome object, or an image object.

合成情報214は、各領域について、参照する塗り情報215を示す情報であり、複数の塗り情報215を参照する場合にはそれらの合成処理方法も示す。合成情報214は、エッジ情報213から参照される。このように、エッジ情報213と合成情報214と塗り情報215は、相互に関連付けられている。 The composite information 214 is information indicating the fill information 215 to be referred to for each area, and when a plurality of fill information 215 is referred to, the composite processing method thereof is also shown. The composite information 214 is referred to from the edge information 213. In this way, the edge information 213, the composite information 214, and the fill information 215 are related to each other.

図6は、画像形成処理装置100の処理方法を示すフローチャートである。ステップS1000では、解析部205は、印刷データ203を解析し、印刷データ203を一または複数の描画命令に変換する。印刷データ203は、例えばページ記述言語で記述された印刷データであり、一または複数の描画命令を含む。描画命令は、描画情報の一例である。 FIG. 6 is a flowchart showing a processing method of the image forming processing apparatus 100. In step S1000, the analysis unit 205 analyzes the print data 203 and converts the print data 203 into one or a plurality of drawing commands. The print data 203 is print data described in, for example, a page description language, and includes one or a plurality of drawing commands. The drawing command is an example of drawing information.

ステップS1001では、中間データ生成部208は、解析部205により変換された一または複数の描画命令の中の1つの描画命令を選択し、選択した描画命令を基に塗り情報215を生成し、生成した塗り情報215をRAM102に書き込む。次に、中間データ生成部208は、RAM102に書き込まれた塗り情報215をファイルとしてHDD114またはSSD115に書き込み、確保していたRAM102の塗り情報215のメモリ領域を解放する。 In step S1001, the intermediate data generation unit 208 selects one drawing command from one or a plurality of drawing commands converted by the analysis unit 205, generates fill information 215 based on the selected drawing command, and generates it. The painted information 215 is written to the RAM 102. Next, the intermediate data generation unit 208 writes the fill information 215 written in the RAM 102 as a file to the HDD 114 or the SSD 115, and releases the reserved memory area of the fill information 215 of the RAM 102.

ステップS1002では、中間データ生成部208は、塗り情報215の数があらかじめ定めた閾値以上であるか否かを判定する。中間データ生成部208は、塗り情報215の数が閾値以上でないと判定した場合には、ステップS1003に進み、塗り情報215の数が閾値以上であると判定した場合には、ステップS1004に進む。 In step S1002, the intermediate data generation unit 208 determines whether or not the number of fill information 215 is equal to or greater than a predetermined threshold value. If the intermediate data generation unit 208 determines that the number of fill information 215 is not equal to or greater than the threshold value, the process proceeds to step S1003, and if it determines that the number of fill information 215 is equal to or greater than the threshold value, the process proceeds to step S1004.

ステップS1003では、中間データ生成部208は、未処理の描画命令が残っているか否かを判定する。中間データ生成部208は、未処理の描画命令が残っている場合には、ステップS1001に戻り、未処理の描画命令が残っていない場合には、ステップS1004に進む。 In step S1003, the intermediate data generation unit 208 determines whether or not an unprocessed drawing instruction remains. The intermediate data generation unit 208 returns to step S1001 when an unprocessed drawing command remains, and proceeds to step S1004 when no unprocessed drawing command remains.

ステップS1004では、中間データ生成部208は、必要に応じて、HDD114またはSSD115に書き込まれた塗り情報215を読み出し、読み出した塗り情報215を基に合成情報214を生成し、生成した合成情報214をRAM102に書き込む。次に、中間データ生成部208は、RAM102に書き込まれた合成情報214をHDD114またはSSD115にファイルとして書き込み、確保していたRAM102の合成情報214のメモリ領域を解放する。 In step S1004, the intermediate data generation unit 208 reads the fill information 215 written in the HDD 114 or the SSD 115, generates the composite information 214 based on the read fill information 215, and generates the generated composite information 214. Write to RAM 102. Next, the intermediate data generation unit 208 writes the composite information 214 written in the RAM 102 into the HDD 114 or SSD 115 as a file, and releases the reserved memory area of the composite information 214 of the RAM 102.

ステップS1005では、中間データ生成部208は、必要に応じて、HDD114またはSSD115に書き込まれた合成情報214および塗り情報215を読み出し、読み出した合成情報214および塗り情報215を基にエッジ情報213を生成する。そして、中間データ生成部208は、生成したエッジ情報213をRAM102に書き込む。次に、中間データ生成部208は、RAM102に書き込まれたエッジ情報213をHDD114またはSSD115にファイルとして書き込み、確保していたRAM102のエッジ情報213のメモリ領域を解放する。上記の処理により、エッジ情報213と合成情報214と塗り情報215は、中間データ300として、HDD114またはSSD115に保存される。 In step S1005, the intermediate data generation unit 208 reads out the composite information 214 and the fill information 215 written in the HDD 114 or the SSD 115, and generates edge information 213 based on the read composite information 214 and the fill information 215, if necessary. do. Then, the intermediate data generation unit 208 writes the generated edge information 213 to the RAM 102. Next, the intermediate data generation unit 208 writes the edge information 213 written in the RAM 102 to the HDD 114 or SSD 115 as a file, and releases the reserved memory area of the edge information 213 of the RAM 102. By the above processing, the edge information 213, the composite information 214, and the fill information 215 are stored in the HDD 114 or the SSD 115 as the intermediate data 300.

ステップS1006では、中間データ生成部208は、未処理の描画命令が残っているか否かを判定する。中間データ生成部208は、未処理の描画命令が残っている場合には、ステップS1001に戻り、未処理の描画命令が残っていない場合には、ステップS1007に進む。上記の処理により、中間データ生成部208は、描画命令ごとに、塗り情報215と、合成情報214と、エッジ情報213を生成する。 In step S1006, the intermediate data generation unit 208 determines whether or not an unprocessed drawing instruction remains. The intermediate data generation unit 208 returns to step S1001 when an unprocessed drawing command remains, and proceeds to step S1007 when no unprocessed drawing command remains. By the above processing, the intermediate data generation unit 208 generates fill information 215, composite information 214, and edge information 213 for each drawing command.

ステップS1007では、中間データ生成部208は、中間データ300が複数あるか否かを判定する。中間データ生成部208は、中間データ300が複数ある場合には、ステップS1008に進み、中間データ300が1つである場合には、ステップS1009に進む。 In step S1007, the intermediate data generation unit 208 determines whether or not there are a plurality of intermediate data 300. The intermediate data generation unit 208 proceeds to step S1008 when there are a plurality of intermediate data 300, and proceeds to step S1009 when there is one intermediate data 300.

ステップS1008では、中間データ生成部208は、必要に応じて、HDD114またはSSD115に書き込まれた複数の中間データ300を読み出し、読み出した複数の中間データ300を1つの中間データ300に統合する。複数の中間データ300は、複数のエッジ情報213と、複数の合成情報214と、複数の塗り情報215を有する。例えば、中間データ生成部208は、複数のエッジ情報213と複数の合成情報214と複数の塗り情報215を、1つのエッジ情報213と1つの合成情報214と1つの塗り情報215に統合し、1つの中間データ300を生成する。その後、中間データ生成部208は、ステップS1009に進む。 In step S1008, the intermediate data generation unit 208 reads out a plurality of intermediate data 300 written in the HDD 114 or SSD 115, and integrates the read-out intermediate data 300 into one intermediate data 300, if necessary. The plurality of intermediate data 300 has a plurality of edge information 213, a plurality of composite information 214, and a plurality of fill information 215. For example, the intermediate data generation unit 208 integrates a plurality of edge information 213, a plurality of composite information 214, and a plurality of fill information 215 into one edge information 213, one composite information 214, and one fill information 215. Generates two intermediate data 300. After that, the intermediate data generation unit 208 proceeds to step S1009.

ステップS1009では、レンダリング部209は、中間データ生成部208により生成または統合された1つの中間データ300をレンダリングし、ラスタ画像を生成する。出力部207は、レンダリング部209により生成されたラスタ画像を基に出力データ212を生成し、処理を終了する。 In step S1009, the rendering unit 209 renders one intermediate data 300 generated or integrated by the intermediate data generation unit 208 to generate a raster image. The output unit 207 generates output data 212 based on the raster image generated by the rendering unit 209, and ends the process.

以上のように、中間データ生成部208は、RAM102の空き容量が不足しても、複数の中間データ300をRAM102からHDD114またはSSD115に一時退避させることにより、1つの中間データ300を生成することができる。 As described above, the intermediate data generation unit 208 can generate one intermediate data 300 by temporarily saving a plurality of intermediate data 300 from the RAM 102 to the HDD 114 or SSD 115 even if the free space of the RAM 102 is insufficient. can.

(第2の実施形態)
次に、第2の実施形態について説明する。第2の実施形態では、中間データ生成部208は、中間データ300をRAM102に保存する第1のモードと、中間データ300をファイルとしてHDD114またはSSD115に一時退避させる第2のモードを有する。そして、中間データ生成部208は、印刷データ203の最初のページからは第1のモードで動作し、ジョブ処理中の途中のページでRAM102の空き容量が不足した場合に、該ページに関しては第2のモードに切り替えて処理する。
(Second embodiment)
Next, the second embodiment will be described. In the second embodiment, the intermediate data generation unit 208 has a first mode for storing the intermediate data 300 in the RAM 102 and a second mode for temporarily saving the intermediate data 300 as a file in the HDD 114 or SSD 115. Then, the intermediate data generation unit 208 operates in the first mode from the first page of the print data 203, and when the free space of the RAM 102 is insufficient in the middle page during job processing, the second page is the second page. Switch to the mode of and process.

図7は、画像形成処理装置100の処理方法を示すフローチャートである。ステップS1000では、解析部205は、印刷データ203を解析し、印刷データ203を一または複数の描画命令に変換し、ステップS1001に進む。以下、中間データ生成部208は、処理開始時点では、第1のモード(HDD114またはSSD115を使わないモード)で動作する。 FIG. 7 is a flowchart showing a processing method of the image forming processing apparatus 100. In step S1000, the analysis unit 205 analyzes the print data 203, converts the print data 203 into one or a plurality of drawing commands, and proceeds to step S1001. Hereinafter, the intermediate data generation unit 208 operates in the first mode (mode in which the HDD 114 or SSD 115 is not used) at the start of processing.

ステップS1001では、中間データ生成部208は、解析部205により変換された描画命令を基に塗り情報215を生成し、生成した塗り情報215をRAM102に書き込む。ただし、中間データ生成部208は、RAM102に書き込まれた塗り情報215をHDD114またはSSD115に書き込まない。 In step S1001, the intermediate data generation unit 208 generates the fill information 215 based on the drawing command converted by the analysis unit 205, and writes the generated fill information 215 to the RAM 102. However, the intermediate data generation unit 208 does not write the fill information 215 written in the RAM 102 to the HDD 114 or the SSD 115.

ステップS1002では、中間データ生成部208は、塗り情報215の数があらかじめ定めた閾値以上であるか否かを判定する。中間データ生成部208は、塗り情報215の数が閾値以上でないと判定した場合には、ステップS1003に進み、塗り情報215の数が閾値以上であると判定した場合には、ステップS1004に進む。 In step S1002, the intermediate data generation unit 208 determines whether or not the number of fill information 215 is equal to or greater than a predetermined threshold value. If the intermediate data generation unit 208 determines that the number of fill information 215 is not equal to or greater than the threshold value, the process proceeds to step S1003, and if it determines that the number of fill information 215 is equal to or greater than the threshold value, the process proceeds to step S1004.

ステップS1003では、中間データ生成部208は、未処理の描画命令が残っているか否かを判定する。中間データ生成部208は、未処理の描画命令が残っている場合には、ステップS1001に戻り、未処理の描画命令が残っていない場合には、ステップS1004に進む。 In step S1003, the intermediate data generation unit 208 determines whether or not an unprocessed drawing instruction remains. The intermediate data generation unit 208 returns to step S1001 when an unprocessed drawing command remains, and proceeds to step S1004 when no unprocessed drawing command remains.

ステップS1004では、中間データ生成部208は、必要に応じて、RAM102に書き込まれた塗り情報215を読み出し、読み出した塗り情報215を基に合成情報214を生成し、生成した合成情報214をRAM102に書き込む。ただし、中間データ生成部208は、RAM102に書き込まれた合成情報214をHDD114またはSSD115に書き込まない。 In step S1004, the intermediate data generation unit 208 reads the fill information 215 written in the RAM 102, generates the composite information 214 based on the read fill information 215, and transfers the generated composite information 214 to the RAM 102. Write. However, the intermediate data generation unit 208 does not write the synthetic information 214 written in the RAM 102 to the HDD 114 or the SSD 115.

ステップS1005では、中間データ生成部208は、必要に応じて、RAM102に書き込まれた合成情報214および塗り情報215を読み出し、読み出した合成情報214および塗り情報215を基にエッジ情報213を生成する。そして、中間データ生成部208は、生成したエッジ情報213をRAM102に書き込む。ただし、中間データ生成部208は、RAM102に書き込まれたエッジ情報213をHDD114またはSSD115に書き込まない。上記の処理により、エッジ情報213と合成情報214と塗り情報215は、中間データ300として、RAM102に保存される。 In step S1005, the intermediate data generation unit 208 reads out the composite information 214 and the fill information 215 written in the RAM 102, and generates edge information 213 based on the read composite information 214 and the fill information 215, if necessary. Then, the intermediate data generation unit 208 writes the generated edge information 213 to the RAM 102. However, the intermediate data generation unit 208 does not write the edge information 213 written in the RAM 102 to the HDD 114 or the SSD 115. By the above processing, the edge information 213, the composite information 214, and the fill information 215 are stored in the RAM 102 as the intermediate data 300.

ステップS2000では、中間データ生成部208は、中間データ300のサイズが閾値以上であるか否かを判定する。中間データ生成部208は、中間データ300のサイズが閾値以上である場合には、ステップS2001に進み、中間データ300のサイズが閾値以上でない場合には、ステップS2002に進む。 In step S2000, the intermediate data generation unit 208 determines whether or not the size of the intermediate data 300 is equal to or larger than the threshold value. The intermediate data generation unit 208 proceeds to step S2001 when the size of the intermediate data 300 is equal to or larger than the threshold value, and proceeds to step S2002 when the size of the intermediate data 300 is not equal to or larger than the threshold value.

ステップS2001では、中間データ生成部208は、これまで生成された中間データ300のフラット化を行う。すなわち、中間データ生成部208は、これまで生成された複数の中間データ300を1つの中間データ300に統合し、不要となったRAM102のメモリ領域を解放する。1つの中間データ300は、1つのエッジ情報213と、1つの合成情報214と、1つの塗り情報215とを有する。1つの塗り情報215は、1つのイメージデータである。中間データ生成部208は、例えばJPEG等の非可逆圧縮方法により、イメージデータの塗り情報215を圧縮し、塗り情報215のサイズを低減する。その後、中間データ生成部208は、ステップS2002に進む。 In step S2001, the intermediate data generation unit 208 flattens the intermediate data 300 generated so far. That is, the intermediate data generation unit 208 integrates the plurality of intermediate data 300 generated so far into one intermediate data 300, and releases the unnecessary memory area of the RAM 102. One intermediate data 300 has one edge information 213, one composite information 214, and one fill information 215. One fill information 215 is one image data. The intermediate data generation unit 208 compresses the fill information 215 of the image data by a lossy compression method such as JPEG, and reduces the size of the fill information 215. After that, the intermediate data generation unit 208 proceeds to step S2002.

ステップS2002では、中間データ生成部208は、RAM102の状態 (CURRENT_USAGE)を確認し、RAM102の空き容量が不足しているか否かを判定する。中間データ生成部208は、RAM102の空き容量が不足している場合には、ステップS2100に進み、RAM102の空き容量が不足していない場合には、ステップS1006に進む。以上のように、中間データ生成部208は、中間データの生成の途中で、RAM102の空き容量が不足した場合には、ステップS2100に進む。 In step S2002, the intermediate data generation unit 208 confirms the state of the RAM 102 (CURRENT_USAGE) and determines whether or not the free space of the RAM 102 is insufficient. The intermediate data generation unit 208 proceeds to step S2100 when the free space of the RAM 102 is insufficient, and proceeds to step S1006 when the free space of the RAM 102 is not insufficient. As described above, the intermediate data generation unit 208 proceeds to step S2100 when the free space of the RAM 102 is insufficient during the generation of the intermediate data.

ステップS1006では、中間データ生成部208は、未処理の描画命令が残っているか否かを判定する。中間データ生成部208は、未処理の描画命令が残っている場合には、ステップS1001に戻り、未処理の描画命令が残っていない場合には、ステップS1007に進む。 In step S1006, the intermediate data generation unit 208 determines whether or not an unprocessed drawing instruction remains. The intermediate data generation unit 208 returns to step S1001 when an unprocessed drawing command remains, and proceeds to step S1007 when no unprocessed drawing command remains.

ステップS1007では、中間データ生成部208は、中間データ300が複数あるか否かを判定する。中間データ生成部208は、中間データ300が複数ある場合には、ステップS1008に進み、中間データ300が1つである場合には、ステップS2003に進む。 In step S1007, the intermediate data generation unit 208 determines whether or not there are a plurality of intermediate data 300. The intermediate data generation unit 208 proceeds to step S1008 when there are a plurality of intermediate data 300, and proceeds to step S2003 when there is one intermediate data 300.

ステップS1008では、中間データ生成部208は、必要に応じて、HDD114またはSSD115に書き込まれた複数の中間データ300を読み出し、複数の中間データ300を1つの中間データ300に統合する。そして、中間データ生成部208は、不要となったRAM102のメモリ領域を解放する。複数の中間データ300は、複数のエッジ情報213と、複数の合成情報214と、複数の塗り情報215を有する。例えば、中間データ生成部208は、複数のエッジ情報213と複数の合成情報214と複数の塗り情報215を、1つのエッジ情報213と1つの合成情報214と1つの塗り情報215に統合し、1つの中間データ300を生成する。1つの塗り情報215は、1つのイメージデータである。その後、中間データ生成部208は、ステップS2003に進む。 In step S1008, the intermediate data generation unit 208 reads out a plurality of intermediate data 300 written in the HDD 114 or SSD 115, and integrates the plurality of intermediate data 300 into one intermediate data 300, if necessary. Then, the intermediate data generation unit 208 releases the unnecessary memory area of the RAM 102. The plurality of intermediate data 300 has a plurality of edge information 213, a plurality of composite information 214, and a plurality of fill information 215. For example, the intermediate data generation unit 208 integrates a plurality of edge information 213, a plurality of composite information 214, and a plurality of fill information 215 into one edge information 213, one composite information 214, and one fill information 215. Generates two intermediate data 300. One fill information 215 is one image data. After that, the intermediate data generation unit 208 proceeds to step S2003.

ステップS2003では、中間データ生成部208は、中間データ300をフラット化するか否かを判定する。中間データ生成部208は、中間データ300をフラット化すると判定した場合には、ステップS2004に進み、中間データ300をフラット化しないと判定した場合には、ステップS1009に進む。 In step S2003, the intermediate data generation unit 208 determines whether or not to flatten the intermediate data 300. If the intermediate data generation unit 208 determines that the intermediate data 300 is to be flattened, the process proceeds to step S2004, and if it is determined that the intermediate data 300 is not flattened, the intermediate data generation unit 208 proceeds to step S1009.

ステップS2004では、中間データ生成部208は、中間データ300のフラット化を行う。すなわち、中間データ生成部208は、例えばJPEG等の非可逆圧縮方法により、イメージデータの塗り情報215を圧縮し、塗り情報215のサイズを低減する。その後、中間データ生成部208は、ステップS1009に進む。 In step S2004, the intermediate data generation unit 208 flattens the intermediate data 300. That is, the intermediate data generation unit 208 compresses the fill information 215 of the image data by a lossy compression method such as JPEG, and reduces the size of the fill information 215. After that, the intermediate data generation unit 208 proceeds to step S1009.

ステップS1009では、レンダリング部209は、中間データ生成部208により生成された中間データ300をレンダリングし、ラスタ画像を生成する。出力部207は、レンダリング部209により生成されたラスタ画像を基に出力データ212を生成し、処理を終了する。 In step S1009, the rendering unit 209 renders the intermediate data 300 generated by the intermediate data generation unit 208 to generate a raster image. The output unit 207 generates output data 212 based on the raster image generated by the rendering unit 209, and ends the process.

ステップS2100以降では、中間データ生成部208は、第2のモード(HDD114またはSSD115を使うモード)で動作する。ステップS2100では、画像形成処理装置100は、画像形成処理の初期化を行う。ここで、中間データ生成部208は、RAM102に書き込まれた中間データ300を破棄する。 In step S2100 and subsequent steps, the intermediate data generation unit 208 operates in the second mode (mode in which the HDD 114 or SSD 115 is used). In step S2100, the image forming processing apparatus 100 initializes the image forming processing. Here, the intermediate data generation unit 208 discards the intermediate data 300 written in the RAM 102.

ステップS2101では、中間データ生成部208は、中間データ300の保存先をRAM102からHDD114またはSSD115へ変更する。以降、画像形成処理装置100は、図6と同様に、ステップS1000~S1009の処理を行う。 In step S2101, the intermediate data generation unit 208 changes the storage destination of the intermediate data 300 from the RAM 102 to the HDD 114 or the SSD 115. After that, the image forming processing apparatus 100 performs the processing of steps S1000 to S1009 in the same manner as in FIG.

ステップS1000では、解析部205は、印刷データ203を描画命令に変換する。ステップS1001~S1008では、中間データ生成部208は、描画命令から中間データ300を生成する。ステップS1001~S1005では、中間データ生成部208は、エッジ情報213と合成情報214と塗り情報215をHDD114またはSSD115に保存し、RAM102のメモリ領域を解放する。これにより、RAM102の空き容量不足を解消するためのステップS2001のフラット化が不要になる。 In step S1000, the analysis unit 205 converts the print data 203 into a drawing command. In steps S1001 to S1008, the intermediate data generation unit 208 generates the intermediate data 300 from the drawing instruction. In steps S1001 to S1005, the intermediate data generation unit 208 stores the edge information 213, the composite information 214, and the fill information 215 in the HDD 114 or the SSD 115, and releases the memory area of the RAM 102. This eliminates the need for flattening step S2001 to solve the shortage of free space in the RAM 102.

また、ステップS1008では、中間データ生成部208は、中間データ300をHDD114またはSSD115に保存し、RAM102のメモリ領域を解放する。これにより、RAM102の空き容量不足を解消するためのステップS2004のフラット化が不要になる。 Further, in step S1008, the intermediate data generation unit 208 stores the intermediate data 300 in the HDD 114 or the SSD 115, and releases the memory area of the RAM 102. This eliminates the need for flattening step S2004 to solve the shortage of free space in the RAM 102.

ステップS1009では、レンダリング部209は、中間データ生成部208により生成された中間データ300をレンダリングし、ラスタ画像を生成する。出力部207は、レンダリング部209により生成されたラスタ画像を基に出力データ212を生成し、処理を終了する。 In step S1009, the rendering unit 209 renders the intermediate data 300 generated by the intermediate data generation unit 208 to generate a raster image. The output unit 207 generates output data 212 based on the raster image generated by the rendering unit 209, and ends the process.

(第3の実施形態)
図8は、第3の実施形態による画像形成処理装置100の処理方法を示すフローチャートである。図8は、図7に対して、ステップS2002の代わりに、ステップS3000を設けたものである。以下、第3の実施形態が第2の実施形態と異なる点を説明する。
(Third embodiment)
FIG. 8 is a flowchart showing a processing method of the image forming processing apparatus 100 according to the third embodiment. FIG. 8 shows that step S3000 is provided in place of step S2002 with respect to FIG. 7. Hereinafter, the difference between the third embodiment and the second embodiment will be described.

ステップS3000では、中間データ生成部208は、中間データ生成部208の処理時間が閾値t以上になったか否かを判定する。中間データ生成部208は、中間データ生成部208の処理時間が閾値t以上になっていない場合には、ステップS1006に進み、中間データ生成部208の処理時間が閾値t以上になった場合には、ステップS2100に進む。以上のように、中間データ生成部208は、中間データ300の生成の途中で、中間データ生成部の処理時間が閾値t以上になった場合には、ステップS2100に進む。 In step S3000, the intermediate data generation unit 208 determines whether or not the processing time of the intermediate data generation unit 208 is equal to or greater than the threshold value t. The intermediate data generation unit 208 proceeds to step S1006 when the processing time of the intermediate data generation unit 208 is not equal to or longer than the threshold value t, and when the processing time of the intermediate data generation unit 208 is equal to or longer than the threshold value t, the intermediate data generation unit 208 proceeds to step S1006. , Step S2100. As described above, the intermediate data generation unit 208 proceeds to step S2100 when the processing time of the intermediate data generation unit exceeds the threshold value t during the generation of the intermediate data 300.

図9は、図8の画像形成処理装置100の処理方法による性能の改善の一例を示す図である。図9は、図2および図3と同様に、縦軸がRAM102の使用量(GB)を示し、横軸が中間データ生成部208の処理時間(分)を示す。縦軸の最大値2GBは、RAM102の最大容量である。中間データ生成部208は、処理時間が閾値t以上になっていない場合には、ステップS1001~S1006、S2000、S2001およびS3000の処理を繰り返す。また、中間データ生成部208は、処理時間が閾値t以上になった場合には、ステップS2100に進む。ステップS2100では、中間データ生成部208は、RAM102の中間データ300を破棄するので、RAM102の使用量が減る。 FIG. 9 is a diagram showing an example of performance improvement by the processing method of the image forming processing apparatus 100 of FIG. In FIG. 9, similarly to FIGS. 2 and 3, the vertical axis shows the usage amount (GB) of the RAM 102, and the horizontal axis shows the processing time (minutes) of the intermediate data generation unit 208. The maximum value of 2GB on the vertical axis is the maximum capacity of the RAM 102. If the processing time is not equal to or greater than the threshold value t, the intermediate data generation unit 208 repeats the processing of steps S1001 to S1006, S2000, S2001, and S3000. Further, when the processing time exceeds the threshold value t, the intermediate data generation unit 208 proceeds to step S2100. In step S2100, the intermediate data generation unit 208 discards the intermediate data 300 of the RAM 102, so that the amount of the RAM 102 used is reduced.

図3では、処理時間TでRAM102の使用量が最大値2GBに到達しており、RAM102の空き容量不足が発生し、リカバリー処理へ移行する。図9では、中間データ生成部208は、処理時間が閾値t以上になると、ステップS2100以降のリカバリー処理へ移行する。閾値tは、処理時間Tより短いので、図9は、図3に対して、総印刷時間を短縮することができる。 In FIG. 3, the usage amount of the RAM 102 reaches the maximum value of 2 GB at the processing time T, the free space of the RAM 102 becomes insufficient, and the process proceeds to the recovery process. In FIG. 9, when the processing time exceeds the threshold value t, the intermediate data generation unit 208 shifts to the recovery processing after step S2100. Since the threshold value t is shorter than the processing time T, FIG. 9 can shorten the total printing time with respect to FIG.

以上説明したように、図3では、中間データ生成部208は、処理時間TでRAM102の使用量が最大値2GBに到達し、RAM102の空き容量不足が発生し、リカバリー処理へ移行する。図9では、中間データ生成部208は、処理時間が閾値t以上になった場合に、ステップS2100以降のリカバリー処理を行うことで、総印刷時間を短縮することができる。 As described above, in FIG. 3, in FIG. 3, the intermediate data generation unit 208 reaches the maximum value of 2 GB in the usage amount of the RAM 102 at the processing time T, the free space of the RAM 102 becomes insufficient, and the process proceeds to the recovery process. In FIG. 9, when the processing time exceeds the threshold value t, the intermediate data generation unit 208 can shorten the total printing time by performing the recovery processing after step S2100.

(第4の実施形態)
図10は、第4の実施形態による画像形成処理装置100の処理方法を示すフローチャートである。図10は、図7に対して、ステップS4000およびS4001を追加したものである。以下、第4の実施形態が第2の実施形態と異なる点を説明する。画像形成処理装置100は、マルチスレッドモードとシングルスレッドモードの動作を切り替えることができる。中間データ生成部208は、マルチスレッドモードでは、複数のオブジェクトを並列に処理することができる。
(Fourth Embodiment)
FIG. 10 is a flowchart showing a processing method of the image forming processing apparatus 100 according to the fourth embodiment. FIG. 10 shows the addition of steps S4000 and S4001 to FIG. 7. Hereinafter, the difference between the fourth embodiment and the second embodiment will be described. The image forming processing apparatus 100 can switch between the operation of the multi-thread mode and the operation of the single-thread mode. The intermediate data generation unit 208 can process a plurality of objects in parallel in the multithread mode.

ステップS4000は、図10のフローチャートの最初の処理である。ステップS4000では、画像形成処理装置100は、マルチスレッドモード(スレッド数を複数)に設定し、ステップS1000に進む。以降、中間データ生成部208は、マルチスレッドモードで動作する。 Step S4000 is the first process of the flowchart of FIG. In step S4000, the image forming processing apparatus 100 is set to the multi-thread mode (the number of threads is a plurality of threads), and the process proceeds to step S1000. After that, the intermediate data generation unit 208 operates in the multithread mode.

ステップS4001は、ステップS2102とステップS1000との間の処理である。ステップS4001では、画像形成処理装置100は、シングルスレッドモード(スレッド数を1つ)に設定し、ステップS1000に進む。以降、中間データ生成部208は、シングルスレッドモードで動作する。 Step S4001 is a process between steps S2102 and S1000. In step S4001, the image forming processing apparatus 100 sets the single thread mode (the number of threads is one) and proceeds to step S1000. After that, the intermediate data generation unit 208 operates in the single thread mode.

画像形成処理装置100は、マルチスレッドモードで動作する場合には、シングルスレッドモードで動作する場合よりも、RAM102の消費量が多くなる傾向がある。そのために、画像形成処理装置100は、ステップS4001以降では、RAM102の空き容量が不足しないように、シングルスレッドモードで動作させ、RAM102の消費を低減することができる。 When the image forming processing apparatus 100 operates in the multi-thread mode, the consumption of the RAM 102 tends to be larger than when the image forming processing apparatus 100 operates in the single-thread mode. Therefore, in step S4001 or later, the image forming processing apparatus 100 can be operated in the single thread mode so that the free space of the RAM 102 is not insufficient, and the consumption of the RAM 102 can be reduced.

また、中間データ生成部208は、ステップS4001以降では、中間データ300の保存先として、RAM102と、HDD114またはSSD115の両方を使用してもよい。例えば、中間データ生成部208は、RAM102の空き容量不足を発生させやすい描画命令に対する中間データ300をHDD114またはSSD115に保存し、それ以外の描画命令に対する中間データ300をRAM102に保存してもよい。上記のRAM102の空き容量不足を発生させやすい描画命令は、例えば、大きな画像オブジェクトを含むオブジェクトの描画命令等である。 Further, in step S4001 or later, the intermediate data generation unit 208 may use both the RAM 102 and the HDD 114 or the SSD 115 as the storage destination of the intermediate data 300. For example, the intermediate data generation unit 208 may store the intermediate data 300 for a drawing instruction that tends to cause a shortage of free space in the RAM 102 in the HDD 114 or the SSD 115, and may store the intermediate data 300 for other drawing instructions in the RAM 102. The drawing command that tends to cause a shortage of free space in the RAM 102 is, for example, a drawing command for an object including a large image object.

次に、中間データ生成部208がHDD114またはSSD115に保存するタイミングを説明する。中間データ生成部208は、中間データ300の生成処理中に、RAM102の使用状況をリアルタイムに確認し、RAM102の使用状況に問題がないことが確認できた場合には、中間データ300をRAM102に保存し、処理を続行する。また、中間データ生成部208は、RAM102の空き容量が不足する状況になったと判定された場合には、中間データ300をHDD114またはSSD115に保存する。 Next, the timing at which the intermediate data generation unit 208 saves the data in the HDD 114 or the SSD 115 will be described. The intermediate data generation unit 208 confirms the usage status of the RAM 102 in real time during the generation process of the intermediate data 300, and if it is confirmed that there is no problem in the usage status of the RAM 102, the intermediate data 300 is stored in the RAM 102. And continue processing. Further, when it is determined that the free space of the RAM 102 is insufficient, the intermediate data generation unit 208 stores the intermediate data 300 in the HDD 114 or the SSD 115.

(第5の実施形態)
次に、第5の実施形態について説明する。以下、第5の実施形態が第2~第4の実施形態と異なる点を説明する。図11の印刷ジョブ情報と図12のフローチャートを使用して、モード切り替え処理について説明する。第5の実施形態では、中間データ生成部208は、外部記憶装置の種類、出力用紙サイズ、印刷データの描画内容に応じて、印刷データ203の最初のページから第1のモードで動作するか、第2のモードで動作するかを切り替える。
(Fifth Embodiment)
Next, a fifth embodiment will be described. Hereinafter, the fifth embodiment will be described as different from the second to fourth embodiments. The mode switching process will be described with reference to the print job information of FIG. 11 and the flowchart of FIG. In the fifth embodiment, the intermediate data generation unit 208 operates in the first mode from the first page of the print data 203 according to the type of the external storage device, the output paper size, and the drawing content of the print data. Switch whether to operate in the second mode.

図11は、入力部204が印刷データ203を処理して作成する印刷ジョブ情報の一例を示す図である。印刷データ203を含む印刷ジョブ情報は、一行で表現されており、印刷ジョブ識別子1101と、出力用紙サイズ1102と、描画命令数1103と、外部記憶装置の種類1104と、動作モード1105を有する。 FIG. 11 is a diagram showing an example of print job information created by the input unit 204 by processing the print data 203. The print job information including the print data 203 is represented by one line, and has a print job identifier 1101, an output paper size 1102, a number of drawing commands 1103, an external storage device type 1104, and an operation mode 1105.

印刷ジョブ識別子1101は、印刷ジョブを識別するための識別子である。出力用紙サイズ1102は、印刷データ生成部201で指定される。描画命令数1103は、印刷データ203内の描画命令の数である。入力部204は、印刷データ203を空読みして、印刷データ203内の描画命令数1103をカウントする。 The print job identifier 1101 is an identifier for identifying a print job. The output paper size 1102 is designated by the print data generation unit 201. The number of drawing instructions 1103 is the number of drawing instructions in the print data 203. The input unit 204 blankly reads the print data 203 and counts the number of drawing instructions 1103 in the print data 203.

外部記憶装置の種類1104は、HDD114とSSD115のどちらかを示す。入力部204は、オペレーティングシステムの機能を必要に応じて使用することにより、外部記憶装置の種類1104の判別を行う。外部記憶装置の種類1104の判別のタイミングは、外部記憶装置が接続されるタイミングでもよいし、入力部204が印刷データ203を受け付けたタイミングでもよい。 The type 1104 of the external storage device indicates either HDD 114 or SSD 115. The input unit 204 determines the type 1104 of the external storage device by using the function of the operating system as needed. The timing of determining the type 1104 of the external storage device may be the timing at which the external storage device is connected or the timing at which the input unit 204 receives the print data 203.

動作モード1105は、該当する印刷データ203が動作するモードを示す。動作モード1105は、第2の実施形態のように、中間データ300をRAM102に保存する第1のモードと、中間データ300をファイルとして外部記憶装置に一時退避させる第2のモードである。外部記憶装置は、HDD114またはSSD115である。 The operation mode 1105 indicates a mode in which the corresponding print data 203 operates. The operation mode 1105 is a first mode in which the intermediate data 300 is stored in the RAM 102 and a second mode in which the intermediate data 300 is temporarily stored in the external storage device as a file, as in the second embodiment. The external storage device is HDD 114 or SSD 115.

図12は、入力部204が印刷データ203を受け付け、中間データ300をRAM102に保存する第1のモードと、中間データ300をファイルとして外部記憶装置に一時退避させる第2のモードを決定する処理を示すフローチャートである。 FIG. 12 shows a process of determining a first mode in which the input unit 204 receives the print data 203 and saves the intermediate data 300 in the RAM 102, and a second mode in which the intermediate data 300 is temporarily saved in the external storage device as a file. It is a flowchart which shows.

ステップS1201では、入力部204は、図11の外部記憶装置の種類1104を確認する。ステップS1202では、入力部204は、外部記憶装置の種類1104がSSD115であるか否かを判定する。入力部204は、外部記憶装置の種類1104がSSD115である場合には、ステップS1204に進み、外部記憶装置の種類1104がHDD114である場合には、ステップS1203に進む。 In step S1201, the input unit 204 confirms the type 1104 of the external storage device of FIG. In step S1202, the input unit 204 determines whether or not the type 1104 of the external storage device is SSD 115. The input unit 204 proceeds to step S1204 when the type 1104 of the external storage device is SSD 115, and proceeds to step S1203 when the type 1104 of the external storage device is HDD 114.

ステップS1204では、入力部204は、図11の出力用紙サイズ1102を確認する。ステップS1205では、入力部204は、出力用紙サイズ1102が閾値以上であるか否かを判定する。入力部204は、出力用紙サイズ1102が閾値以上である場合には、ステップS1206に進み、出力用紙サイズ1102が閾値以上でない場合には、ステップS1203に進む。例えば、閾値は、A1の用紙サイズである。中間データ生成部208は、図11のジョブ3の場合、A4の出力用紙サイズ1102がA1の閾値以上でないので、ステップS1203に進む。 In step S1204, the input unit 204 confirms the output paper size 1102 of FIG. In step S1205, the input unit 204 determines whether or not the output paper size 1102 is equal to or larger than the threshold value. The input unit 204 proceeds to step S1206 when the output paper size 1102 is equal to or larger than the threshold value, and proceeds to step S1203 when the output paper size 1102 is not equal to or larger than the threshold value. For example, the threshold is the paper size of A1. In the case of job 3 of FIG. 11, the intermediate data generation unit 208 proceeds to step S1203 because the output paper size 1102 of A4 is not equal to or greater than the threshold value of A1.

ステップS1206では、入力部204は、図11の描画命令数(オブジェクト数)1103を確認する。ステップS1207では、入力部204は、描画命令数1103が閾値以上であるか否かを判定する。入力部204は、描画命令数1103が閾値以上である場合には、ステップS1208に進み、描画命令数1103が閾値以上でない場合には、ステップS1203に進む。 In step S1206, the input unit 204 confirms the number of drawing instructions (number of objects) 1103 in FIG. In step S1207, the input unit 204 determines whether or not the number of drawing instructions 1103 is equal to or greater than the threshold value. The input unit 204 proceeds to step S1208 when the number of drawing instructions 1103 is equal to or greater than the threshold value, and proceeds to step S1203 when the number of drawing instructions 1103 is not equal to or greater than the threshold value.

例えば、中間データ生成部208は、図11のジョブ1の場合、10,000の描画命令数1103が閾値以上でないので、ステップS1203に進む。また、中間データ生成部208は、図11のジョブ2の場合、1,000,000の描画命令数1103が閾値以上であるので、ステップS1208に進む。 For example, in the case of the job 1 of FIG. 11, the intermediate data generation unit 208 proceeds to step S1203 because the number of drawing instructions 1103 of 10,000 is not equal to or more than the threshold value. Further, in the case of the job 2 of FIG. 11, the intermediate data generation unit 208 proceeds to step S1208 because the number of drawing instructions 1103 of 1,000,000 is equal to or more than the threshold value.

ステップS1203では、入力部204は、中間データ生成部208に対して、印刷データ203の最初のページでは、中間データ300をRAM102に保存する第1のモードで動作させるように、図11の動作モード1105に第1のモードを設定する。その後、入力部204は、処理を終了する。この場合、画像形成処理装置100は、第2~第4の実施形態と同様の処理を行う。 In step S1203, the operation mode of FIG. 11 is such that the input unit 204 operates the intermediate data generation unit 208 in the first mode in which the intermediate data 300 is stored in the RAM 102 on the first page of the print data 203. The first mode is set in 1105. After that, the input unit 204 ends the process. In this case, the image forming processing apparatus 100 performs the same processing as in the second to fourth embodiments.

ステップS1208では、入力部204は、中間データ生成部208に対して、印刷データ203の最初のページから、中間データ300をファイルとして外部記憶装置に一時退避させる第2のモードで動作させるように設定する。入力部204は、図11の動作モード1105に第2のモードを設定し、処理を終了する。この場合、画像形成処理装置100は、第1の実施形態と同様の処理を行う。 In step S1208, the input unit 204 is set to operate the intermediate data generation unit 208 in a second mode in which the intermediate data 300 is temporarily saved as a file in the external storage device from the first page of the print data 203. do. The input unit 204 sets a second mode in the operation mode 1105 of FIG. 11 and ends the process. In this case, the image forming processing apparatus 100 performs the same processing as in the first embodiment.

中間データ生成部208は、図11の動作モード1105に応じて、印刷データ203の最初のページでは、第1のモードまたは第2のモードで動作を開始する。外部記憶装置は、HDD114またはSSD115である。一般的に、SSD115は、HDD114に対して、ファイルアクセスが高速である。 The intermediate data generation unit 208 starts operation in the first mode or the second mode on the first page of the print data 203 according to the operation mode 1105 of FIG. The external storage device is HDD 114 or SSD 115. Generally, the SSD 115 has a high file access to the HDD 114.

以上説明したように、入力部204は、ステップS2100以降のリカバリー処理が必要になる可能性が高い条件の印刷ジョブの場合には、中間データ生成部208に対して、最初のページから第2のモードで動作させる。その結果、不要となる可能性の高い処理時間を省き、最適な処理時間で動作させることが可能となる。 As described above, in the case of a print job under the condition that recovery processing after step S2100 is likely to be required, the input unit 204 is second to the intermediate data generation unit 208 from the first page. Operate in mode. As a result, it is possible to eliminate the processing time that is likely to be unnecessary and to operate at the optimum processing time.

(第6の実施形態)
次に、第6の実施形態について説明する。以下、第6の実施形態が第2~第5の実施形態と異なる点を説明する。図11の印刷ジョブ情報と図13のフローチャートを使用し、第6の実施形態を説明する。
(Sixth Embodiment)
Next, the sixth embodiment will be described. Hereinafter, the points that the sixth embodiment differs from the second to fifth embodiments will be described. A sixth embodiment will be described with reference to the print job information of FIG. 11 and the flowchart of FIG.

図13は、第6の実施形態による画像形成処理装置100の処理方法を示すフローチャートである。図13は、図8に対して、ステップS5000を追加したものである。ステップS5000は、図13のフローチャートの最初の処理である。ステップS5000では、入力部204は、図11の外部記憶装置の種類1104を確認する。入力部204は、外部記憶装置の種類1104がHDD114である場合には、ステップS3000の処理時間の閾値をtに設定し、外部記憶装置の種類1104がSSD115である場合には、ステップS3000の処理時間の閾値をt’に設定する。閾値t’は、閾値tとは異なる値である。ステップS3000の処理時間の閾値は、外部記憶装置の種類1104によって異なる。その後、画像形成処理装置100は、図8と同様に、ステップS1000以降の処理を行う。 FIG. 13 is a flowchart showing a processing method of the image forming processing apparatus 100 according to the sixth embodiment. FIG. 13 is an addition of step S5000 to FIG. Step S5000 is the first process of the flowchart of FIG. In step S5000, the input unit 204 confirms the type 1104 of the external storage device of FIG. The input unit 204 sets the threshold value of the processing time in step S3000 to t when the type 1104 of the external storage device is HDD 114, and the processing of step S3000 when the type 1104 of the external storage device is SSD 115. Set the time threshold to t'. The threshold value t'is a value different from the threshold value t. The threshold of the processing time in step S3000 differs depending on the type 1104 of the external storage device. After that, the image forming processing apparatus 100 performs the processing after step S1000 in the same manner as in FIG.

ステップS3000では、外部記憶装置の種類1104がHDD114である場合には、中間データ生成部208は、中間データ生成部208の処理時間が閾値t以上になったか否かを判定する。中間データ生成部208は、中間データ生成部208の処理時間が閾値t以上になっていない場合には、ステップS1006に進み、中間データ生成部208の処理時間が閾値t以上になった場合には、ステップS2100に進む。 In step S3000, when the type 1104 of the external storage device is the HDD 114, the intermediate data generation unit 208 determines whether or not the processing time of the intermediate data generation unit 208 has reached the threshold value t or more. The intermediate data generation unit 208 proceeds to step S1006 when the processing time of the intermediate data generation unit 208 is not equal to or longer than the threshold value t, and when the processing time of the intermediate data generation unit 208 is equal to or longer than the threshold value t, the intermediate data generation unit 208 proceeds to step S1006. , Step S2100.

また、ステップS3000では、外部記憶装置の種類1104がSSD115である場合には、中間データ生成部208は、中間データ生成部208の処理時間が閾値t’以上になったか否かを判定する。中間データ生成部208は、中間データ生成部208の処理時間が閾値t’以上になっていない場合には、ステップS1006に進み、中間データ生成部208の処理時間が閾値t’以上になった場合には、ステップS2100に進む。 Further, in step S3000, when the type 1104 of the external storage device is SSD 115, the intermediate data generation unit 208 determines whether or not the processing time of the intermediate data generation unit 208 is equal to or greater than the threshold value t'. The intermediate data generation unit 208 proceeds to step S1006 when the processing time of the intermediate data generation unit 208 is not equal to or greater than the threshold value t', and when the processing time of the intermediate data generation unit 208 is equal to or longer than the threshold value t'. To step S2100.

以上説明したように、入力部204は、外部記憶装置の種類1104に応じて、ステップS3000の処理時間の閾値tまたはt’を設定することができる。 As described above, the input unit 204 can set the threshold value t or t'of the processing time in step S3000 according to the type 1104 of the external storage device.

(第7の実施形態)
次に、第7の実施形態について説明する。以下、第7の実施形態が第2の実施形態と異なる点を説明する。図14のフローチャートを使用し、第7の実施形態を説明する。
(7th Embodiment)
Next, a seventh embodiment will be described. Hereinafter, the difference between the seventh embodiment and the second embodiment will be described. A seventh embodiment will be described with reference to the flowchart of FIG.

図14は、第7の実施形態による画像形成処理装置100の処理方法を示すフローチャートである。図14は、図7に対して、ステップS2002の代わりに、ステップS6000を設けたものである。 FIG. 14 is a flowchart showing a processing method of the image forming processing apparatus 100 according to the seventh embodiment. FIG. 14 shows that step S6000 is provided in place of step S2002 with respect to FIG. 7.

ステップS2000では、中間データ生成部208は、中間データ300のサイズが閾値以上である場合には、ステップS2001に進み、中間データ300のサイズが閾値以上でない場合には、ステップS6000に進む。 In step S2000, the intermediate data generation unit 208 proceeds to step S2001 when the size of the intermediate data 300 is equal to or larger than the threshold value, and proceeds to step S6000 when the size of the intermediate data 300 is not equal to or larger than the threshold value.

ステップS2001では、中間データ生成部208は、図7と同様のフラット化を行い、フラット化を行った回数をインクリメントし、フラット化を行った回数を保存し、不要となったRAM102のメモリ領域を解放し、ステップS6000に進む。 In step S2001, the intermediate data generation unit 208 performs the same flattening as in FIG. 7, increments the number of times the flattening is performed, stores the number of times the flattening is performed, and saves the unnecessary memory area of the RAM 102. Release and proceed to step S6000.

ステップS6000では、中間データ生成部208は、ステップS2001でフラット化(統合)を行った回数を確認する。中間データ生成部208は、フラット化を行った回数が閾値以上でない場合には、ステップS1006に進み、フラット化を行った回数が閾値以上である場合には、ステップS2100に進む。以上のように、中間データ生成部208は、中間データ300の生成の途中で、フラット化の回数が閾値以上になった場合には、ステップS2100に進む。これ以降の処理は、図7と同様である。 In step S6000, the intermediate data generation unit 208 confirms the number of times flattening (integration) is performed in step S2001. The intermediate data generation unit 208 proceeds to step S1006 when the number of times of flattening is not equal to or more than the threshold value, and proceeds to step S2100 when the number of times of flattening is equal to or more than the threshold value. As described above, the intermediate data generation unit 208 proceeds to step S2100 when the number of flattenings exceeds the threshold value during the generation of the intermediate data 300. Subsequent processing is the same as in FIG. 7.

図15は、図14の画像形成処理装置100の処理方法による性能の改善の一例を示す図である。図15は、図2および図3と同様に、縦軸がRAM102の使用量(GB)を示し、横軸が中間データ生成部208の処理時間(分)を示す。縦軸の最大値2GBは、RAM102の最大容量である。 FIG. 15 is a diagram showing an example of performance improvement by the processing method of the image forming processing apparatus 100 of FIG. In FIG. 15, similarly to FIGS. 2 and 3, the vertical axis shows the usage amount (GB) of the RAM 102, and the horizontal axis shows the processing time (minutes) of the intermediate data generation unit 208. The maximum value of 2GB on the vertical axis is the maximum capacity of the RAM 102.

ステップS6000の閾値は、例えば、2回である。中間データ生成部208は、フラット化を行った回数が閾値(2回)以上でない場合には、ステップS1006に進み、フラット化を行った回数が閾値(2回)以上である場合には、ステップS2100に進む。中間データ生成部208は、フラット化を行った回数が2回以上になると、ステップS2100に進み、RAM102の中間データ300を破棄するので、RAM102の使用量が減る。 The threshold value of step S6000 is, for example, twice. The intermediate data generation unit 208 proceeds to step S1006 when the number of flattenings is not equal to or more than the threshold value (2 times), and steps when the number of flattenings is equal to or greater than the threshold value (2 times). Proceed to S2100. When the number of times of flattening is performed twice or more, the intermediate data generation unit 208 proceeds to step S2100 and discards the intermediate data 300 of the RAM 102, so that the amount of the RAM 102 used is reduced.

図3では、フラット化が3回発生した後、RAM102の空き容量不足が発生し、リカバリー処理へ移行している。これに対し、図15では、フラット化が2回発生した後に、ステップS2100以降のリカバリー処理へ移行するので、図3の場合よりも早くリカバリー処理へ移行することが可能となり、総印刷時間を短縮することができる。 In FIG. 3, after the flattening occurs three times, the free space of the RAM 102 becomes insufficient, and the process shifts to the recovery process. On the other hand, in FIG. 15, since the recovery process is performed after step S2100 after the flattening occurs twice, the recovery process can be performed earlier than in the case of FIG. 3, and the total printing time is shortened. can do.

(第8の実施形態)
次に、第8の実施形態について説明する。以下、第8の実施形態が第2の実施形態と異なる点を説明する。図16のフローチャートを使用し、第8の実施形態を説明する。
(8th Embodiment)
Next, the eighth embodiment will be described. Hereinafter, the difference between the eighth embodiment and the second embodiment will be described. An eighth embodiment will be described with reference to the flowchart of FIG.

図16は、第8の実施形態による画像形成処理装置100の処理方法を示すフローチャートである。図16は、図7に対して、ステップS2001およびS2002を削除したものである。以下、図16が図7と異なる点を説明する。 FIG. 16 is a flowchart showing a processing method of the image forming processing apparatus 100 according to the eighth embodiment. FIG. 16 shows that steps S2001 and S2002 are deleted with respect to FIG. 7. Hereinafter, the points that FIG. 16 differs from FIG. 7 will be described.

ステップS2000では、中間データ生成部208は、中間データ300のサイズが閾値以上である場合には、ステップS2100に進み、中間データ300のサイズが閾値以上でない場合には、ステップS1006に進む。以上のように、中間データ生成部208は、中間データ300の生成の途中で、中間データ300のサイズが閾値以上になった場合には、ステップS2100に進む。これ以降の処理は、図7と同様である。 In step S2000, the intermediate data generation unit 208 proceeds to step S2100 when the size of the intermediate data 300 is equal to or larger than the threshold value, and proceeds to step S1006 when the size of the intermediate data 300 is not equal to or larger than the threshold value. As described above, the intermediate data generation unit 208 proceeds to step S2100 when the size of the intermediate data 300 becomes equal to or larger than the threshold value during the generation of the intermediate data 300. Subsequent processing is the same as in FIG. 7.

図16では、図7のステップS2001のフラット化が削除されている。フラット化は、それまでの中間データ300を統合するため、RAM102の使用量削減の効果は高いが、処理コストが高くなり、全体的な処理時間が延びてしまう。そのため、図16では、図7のステップS2001のフラット化が削除されている。 In FIG. 16, the flattening of step S2001 in FIG. 7 is deleted. Since the flattening integrates the intermediate data 300 up to that point, the effect of reducing the usage amount of the RAM 102 is high, but the processing cost is high and the overall processing time is extended. Therefore, in FIG. 16, the flattening of step S2001 in FIG. 7 is deleted.

以上説明した通り、中間データ生成部208は、ステップS2001のフラット化を行わず、中間データ300のサイズが閾値以上になった場合に、ステップS2100以降のリカバリー処理を行う。 As described above, the intermediate data generation unit 208 does not flatten the step S2001, but performs the recovery process after the step S2100 when the size of the intermediate data 300 becomes equal to or larger than the threshold value.

(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
(Other embodiments)
The present invention supplies a program that realizes one or more functions of the above-described embodiment to a system or device via a network or storage medium, and one or more processors in the computer of the system or device reads and executes the program. It can also be realized by the processing to be performed. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.

なお、上記実施形態は、何れも本発明を実施するにあたっての具体例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。 It should be noted that the above embodiments are merely specific examples for carrying out the present invention, and the technical scope of the present invention should not be construed in a limited manner by these. That is, the present invention can be implemented in various forms without departing from the technical idea or its main features.

100 画像形成処理装置、204 入力部、205 解析部、206 ラスタ画像生成処理部、207 出力部、208 中間データ生成部、209 レンダリング部 100 Image formation processing device, 204 Input unit, 205 Analysis unit, 206 Raster image generation processing unit, 207 Output unit, 208 Intermediate data generation unit, 209 Rendering unit

Claims (15)

印刷データに含まれる複数の描画情報を基に、前記描画情報ごとに中間データを生成し、前記生成した中間データをメモリに書き込み、前記メモリに書き込まれた中間データを外部記憶装置に書き込み、前記中間データのメモリの領域を解放し、前記外部記憶装置に書き込まれた前記複数の描画情報に基づく複数の中間データを統合する中間データ生成手段と、
前記中間データ生成手段により統合された中間データをレンダリングし、ラスタ画像を生成するレンダリング手段と
を有することを特徴とする画像形成処理装置。
Based on a plurality of drawing information included in the print data, intermediate data is generated for each drawing information, the generated intermediate data is written in a memory, and the intermediate data written in the memory is written in an external storage device. An intermediate data generation means that releases a memory area of intermediate data and integrates a plurality of intermediate data based on the plurality of drawing information written in the external storage device.
An image forming processing apparatus comprising: a rendering means for rendering intermediate data integrated by the intermediate data generating means and generating a raster image.
前記印刷データは、ページ記述言語で記述された印刷データであり、
前記描画情報は、描画命令であることを特徴とする請求項1に記載の画像形成処理装置。
The print data is print data described in a page description language.
The image forming processing apparatus according to claim 1, wherein the drawing information is a drawing command.
前記印刷データを解析し、前記印刷データを複数の描画命令に変換する解析手段をさらに有することを特徴とする請求項2に記載の画像形成処理装置。 The image forming processing apparatus according to claim 2, further comprising an analysis means for analyzing the print data and converting the print data into a plurality of drawing commands. 前記中間データは、エッジ情報と、合成情報と、塗り情報とを有することを特徴とする請求項1~3のいずれか1項に記載の画像形成処理装置。 The image forming processing apparatus according to any one of claims 1 to 3, wherein the intermediate data has edge information, composite information, and fill information. 前記中間データ生成手段は、
前記描画情報を基に前記塗り情報を生成し、前記塗り情報を前記メモリに書き込み、前記メモリに書き込まれた前記塗り情報を前記外部記憶装置に書き込み、前記塗り情報のメモリの領域を解放し、
前記塗り情報を前記外部記憶装置から読み出し、前記塗り情報を基に前記合成情報を生成し、前記合成情報を前記メモリに書き込み、前記メモリに書き込まれた前記合成情報を前記外部記憶装置に書き込み、前記合成情報のメモリの領域を解放し、
前記塗り情報または前記合成情報を前記外部記憶装置から読み出し、前記塗り情報または前記合成情報を基に前記エッジ情報を生成し、前記エッジ情報を前記メモリに書き込み、前記メモリに書き込まれた前記エッジ情報を前記外部記憶装置に書き込み、前記エッジ情報のメモリの領域を解放することを特徴とする請求項4に記載の画像形成処理装置。
The intermediate data generation means is
The fill information is generated based on the drawing information, the fill information is written in the memory, the fill information written in the memory is written in the external storage device, and the memory area of the fill information is released.
The fill information is read from the external storage device, the synthetic information is generated based on the fill information, the synthetic information is written to the memory, and the synthetic information written in the memory is written to the external storage device. The memory area of the composite information is released, and the area is released.
The fill information or the composite information is read from the external storage device, the edge information is generated based on the fill information or the composite information, the edge information is written in the memory, and the edge information written in the memory. The image forming processing apparatus according to claim 4, wherein the image is written in the external storage device to release the memory area of the edge information.
前記外部記憶装置は、ハードディスクドライブまたはソリッドステートドライブであることを特徴とする請求項1~5のいずれか1項に記載の画像形成処理装置。 The image forming processing device according to any one of claims 1 to 5, wherein the external storage device is a hard disk drive or a solid state drive. 前記中間データ生成手段は、
前記印刷データに含まれる複数の描画情報を基に、前記描画情報ごとに中間データを生成し、前記生成した中間データをメモリに書き込み、前記メモリに書き込まれた前記複数の描画情報に基づく複数の中間データを統合し、
前記中間データの生成の途中で、前記メモリの空き容量が不足した場合には、前記メモリに書き込まれた中間データを破棄し、前記印刷データに含まれる複数の描画情報を基に、前記描画情報ごとに中間データを生成し、前記生成した中間データをメモリに書き込み、前記メモリに書き込まれた中間データを外部記憶装置に書き込み、前記中間データのメモリの領域を解放し、前記外部記憶装置に書き込まれた前記複数の描画情報に基づく複数の中間データを統合することを特徴とする請求項1~6のいずれか1項に記載の画像形成処理装置。
The intermediate data generation means is
Based on the plurality of drawing information included in the print data, intermediate data is generated for each of the drawing information, the generated intermediate data is written in the memory, and a plurality of drawing information based on the plurality of drawing information written in the memory. Integrate intermediate data
If the free space of the memory becomes insufficient during the generation of the intermediate data, the intermediate data written in the memory is discarded, and the drawing information is based on a plurality of drawing information included in the print data. Intermediate data is generated for each, the generated intermediate data is written to the memory, the intermediate data written in the memory is written to the external storage device, the memory area of the intermediate data is released, and the intermediate data is written to the external storage device. The image forming processing apparatus according to any one of claims 1 to 6, wherein a plurality of intermediate data based on the plurality of drawing information are integrated.
前記中間データ生成手段は、
前記印刷データに含まれる複数の描画情報を基に、前記描画情報ごとに中間データを生成し、前記生成した中間データをメモリに書き込み、前記メモリに書き込まれた前記複数の描画情報に基づく複数の中間データを統合し、
前記中間データの生成の途中で、前記中間データ生成手段の処理時間が第1の閾値以上になった場合には、前記メモリに書き込まれた中間データを破棄し、前記印刷データに含まれる複数の描画情報を基に、前記描画情報ごとに中間データを生成し、前記生成した中間データをメモリに書き込み、前記メモリに書き込まれた中間データを外部記憶装置に書き込み、前記中間データのメモリの領域を解放し、前記外部記憶装置に書き込まれた前記複数の描画情報に基づく複数の中間データを統合することを特徴とする請求項1~6のいずれか1項に記載の画像形成処理装置。
The intermediate data generation means is
Based on the plurality of drawing information included in the print data, intermediate data is generated for each of the drawing information, the generated intermediate data is written in the memory, and a plurality of drawing information based on the plurality of drawing information written in the memory. Integrate intermediate data
If the processing time of the intermediate data generation means becomes equal to or longer than the first threshold value during the generation of the intermediate data, the intermediate data written in the memory is discarded, and a plurality of intermediate data included in the print data are discarded. Based on the drawing information, intermediate data is generated for each drawing information, the generated intermediate data is written in the memory, the intermediate data written in the memory is written in the external storage device, and the memory area of the intermediate data is created. The image forming processing apparatus according to any one of claims 1 to 6, which is released and integrates a plurality of intermediate data based on the plurality of drawing information written in the external storage device.
前記中間データ生成手段は、
マルチスレッドモードで、前記印刷データに含まれる複数の描画情報を基に、前記描画情報ごとに中間データを生成し、前記生成した中間データをメモリに書き込み、前記メモリに書き込まれた前記複数の描画情報に基づく複数の中間データを統合し、
前記中間データの生成の途中で、前記メモリの空き容量が不足した場合には、前記メモリに書き込まれた中間データを破棄し、シングルスレッドモードで、前記印刷データに含まれる複数の描画情報を基に、前記描画情報ごとに中間データを生成し、前記生成した中間データをメモリに書き込み、前記メモリに書き込まれた中間データを外部記憶装置に書き込み、前記中間データのメモリの領域を解放し、前記外部記憶装置に書き込まれた前記複数の描画情報に基づく複数の中間データを統合することを特徴とする請求項7に記載の画像形成処理装置。
The intermediate data generation means is
In the multi-thread mode, based on the plurality of drawing information included in the print data, intermediate data is generated for each of the drawing information, the generated intermediate data is written to the memory, and the plurality of drawings written in the memory are written. Integrate multiple informed intermediate data
If the free space of the memory becomes insufficient during the generation of the intermediate data, the intermediate data written in the memory is discarded, and in the single thread mode, a plurality of drawing information included in the print data is used as the basis. In the above, intermediate data is generated for each drawing information, the generated intermediate data is written in the memory, the intermediate data written in the memory is written in the external storage device, and the memory area of the intermediate data is released. The image forming processing apparatus according to claim 7, wherein a plurality of intermediate data based on the plurality of drawing information written in the external storage device are integrated.
前記中間データ生成手段は、
外部記憶装置の種類、出力用紙サイズ、または印刷データの描画命令数に応じて、第1のモードまたは第2のモードで動作し、
前記第1のモードでは、
前記印刷データに含まれる複数の描画情報を基に、前記描画情報ごとに中間データを生成し、前記生成した中間データをメモリに書き込み、前記メモリに書き込まれた前記複数の描画情報に基づく複数の中間データを統合し、
前記中間データの生成の途中で、前記メモリの空き容量が不足した場合または前記中間データ生成手段の処理時間が第1の閾値以上になった場合には、前記メモリに書き込まれた中間データを破棄し、前記印刷データに含まれる複数の描画情報を基に、前記描画情報ごとに中間データを生成し、前記生成した中間データをメモリに書き込み、前記メモリに書き込まれた中間データを外部記憶装置に書き込み、前記中間データのメモリの領域を解放し、前記外部記憶装置に書き込まれた前記複数の描画情報に基づく複数の中間データを統合し、
前記第2のモードでは、
前記印刷データに含まれる複数の描画情報を基に、前記描画情報ごとに中間データを生成し、前記生成した中間データをメモリに書き込み、前記メモリに書き込まれた中間データを外部記憶装置に書き込み、前記中間データのメモリの領域を解放し、前記外部記憶装置に書き込まれた前記複数の描画情報に基づく複数の中間データを統合することを特徴とする請求項1~6のいずれか1項に記載の画像形成処理装置。
The intermediate data generation means is
It operates in the first mode or the second mode, depending on the type of external storage device, the output paper size, or the number of print data drawing commands.
In the first mode,
Based on the plurality of drawing information included in the print data, intermediate data is generated for each of the drawing information, the generated intermediate data is written in the memory, and a plurality of drawing information based on the plurality of drawing information written in the memory. Integrate intermediate data
If the free space of the memory is insufficient or the processing time of the intermediate data generation means exceeds the first threshold value during the generation of the intermediate data, the intermediate data written in the memory is discarded. Then, based on the plurality of drawing information included in the print data, intermediate data is generated for each drawing information, the generated intermediate data is written in the memory, and the intermediate data written in the memory is stored in the external storage device. Writing, freeing the memory area of the intermediate data, integrating a plurality of intermediate data based on the plurality of drawing information written in the external storage device,
In the second mode,
Based on the plurality of drawing information included in the print data, intermediate data is generated for each drawing information, the generated intermediate data is written in the memory, and the intermediate data written in the memory is written in the external storage device. The invention according to any one of claims 1 to 6, wherein the memory area of the intermediate data is released and a plurality of intermediate data based on the plurality of drawing information written in the external storage device are integrated. Image forming processing device.
前記第1の閾値は、前記外部記憶装置の種類によって異なることを特徴とする請求項8または10に記載の画像形成処理装置。 The image forming processing apparatus according to claim 8 or 10, wherein the first threshold value differs depending on the type of the external storage device. 前記中間データ生成手段は、
前記印刷データに含まれる複数の描画情報を基に、前記描画情報ごとに中間データを生成し、前記生成した中間データをメモリに書き込み、前記中間データのサイズが第2の閾値以上になった場合には、前記メモリに書き込まれた中間データを統合し、すべての描画情報に基づく中間データの生成が終了した場合には、前記メモリに書き込まれた前記複数の描画情報に基づく複数の中間データを統合し、
前記中間データの生成の途中で、前記統合の回数が第3の閾値以上になった場合には、前記メモリに書き込まれた中間データを破棄し、前記印刷データに含まれる複数の描画情報を基に、前記描画情報ごとに中間データを生成し、前記生成した中間データをメモリに書き込み、前記メモリに書き込まれた中間データを外部記憶装置に書き込み、前記中間データのメモリの領域を解放し、前記外部記憶装置に書き込まれた前記複数の描画情報に基づく複数の中間データを統合することを特徴とする請求項1~6のいずれか1項に記載の画像形成処理装置。
The intermediate data generation means is
When intermediate data is generated for each drawing information based on a plurality of drawing information included in the print data, the generated intermediate data is written to the memory, and the size of the intermediate data becomes equal to or larger than the second threshold value. In, the intermediate data written in the memory is integrated, and when the generation of the intermediate data based on all the drawing information is completed, the plurality of intermediate data based on the plurality of drawing information written in the memory is combined. Integrate and
If the number of integrations exceeds the third threshold during the generation of the intermediate data, the intermediate data written in the memory is discarded, and a plurality of drawing information included in the print data is used as the basis. In the above, intermediate data is generated for each drawing information, the generated intermediate data is written in the memory, the intermediate data written in the memory is written in the external storage device, and the memory area of the intermediate data is released. The image forming processing apparatus according to any one of claims 1 to 6, wherein a plurality of intermediate data based on the plurality of drawing information written in the external storage device are integrated.
前記中間データ生成手段は、
前記印刷データに含まれる複数の描画情報を基に、前記描画情報ごとに中間データを生成し、前記生成した中間データをメモリに書き込み、前記メモリに書き込まれた前記複数の描画情報に基づく複数の中間データを統合し、
前記中間データの生成の途中で、前記中間データのサイズが第4の閾値以上になった場合には、前記メモリに書き込まれた中間データを破棄し、前記印刷データに含まれる複数の描画情報を基に、前記描画情報ごとに中間データを生成し、前記生成した中間データをメモリに書き込み、前記メモリに書き込まれた中間データを外部記憶装置に書き込み、前記中間データのメモリの領域を解放し、前記外部記憶装置に書き込まれた前記複数の描画情報に基づく複数の中間データを統合することを特徴とする請求項1~6のいずれか1項に記載の画像形成処理装置。
The intermediate data generation means is
Based on the plurality of drawing information included in the print data, intermediate data is generated for each of the drawing information, the generated intermediate data is written in the memory, and a plurality of drawing information based on the plurality of drawing information written in the memory. Integrate intermediate data
If the size of the intermediate data exceeds the fourth threshold during the generation of the intermediate data, the intermediate data written in the memory is discarded and a plurality of drawing information included in the print data is displayed. Based on this, intermediate data is generated for each drawing information, the generated intermediate data is written to the memory, the intermediate data written in the memory is written to the external storage device, and the memory area of the intermediate data is released. The image forming processing apparatus according to any one of claims 1 to 6, wherein a plurality of intermediate data based on the plurality of drawing information written in the external storage device are integrated.
印刷データに含まれる複数の描画情報を基に、前記描画情報ごとに中間データを生成し、前記生成した中間データをメモリに書き込み、前記メモリに書き込まれた中間データを外部記憶装置に書き込み、前記中間データのメモリの領域を解放し、前記外部記憶装置に書き込まれた前記複数の描画情報に基づく複数の中間データを統合する中間データ生成ステップと、
前記中間データ生成ステップで統合された中間データをレンダリングし、ラスタ画像を生成するレンダリングステップと
を有することを特徴とする画像形成処理装置の処理方法。
Based on a plurality of drawing information included in the print data, intermediate data is generated for each drawing information, the generated intermediate data is written in a memory, and the intermediate data written in the memory is written in an external storage device. An intermediate data generation step that frees the memory area of the intermediate data and integrates a plurality of intermediate data based on the plurality of drawing information written in the external storage device.
A processing method of an image forming processing apparatus, which comprises a rendering step of rendering integrated intermediate data in the intermediate data generation step and generating a raster image.
コンピュータを、請求項1~13のいずれか1項に記載された画像形成処理装置の各手段として機能させるためのプログラム。 A program for making a computer function as each means of the image forming processing apparatus according to any one of claims 1 to 13.
JP2020120797A 2020-07-14 2020-07-14 Image forming processing device, processing method and program for image forming processing device Active JP7566516B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020120797A JP7566516B2 (en) 2020-07-14 2020-07-14 Image forming processing device, processing method and program for image forming processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020120797A JP7566516B2 (en) 2020-07-14 2020-07-14 Image forming processing device, processing method and program for image forming processing device

Publications (2)

Publication Number Publication Date
JP2022017931A true JP2022017931A (en) 2022-01-26
JP7566516B2 JP7566516B2 (en) 2024-10-15

Family

ID=80186092

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020120797A Active JP7566516B2 (en) 2020-07-14 2020-07-14 Image forming processing device, processing method and program for image forming processing device

Country Status (1)

Country Link
JP (1) JP7566516B2 (en)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4238889B2 (en) 2006-07-20 2009-03-18 コニカミノルタビジネステクノロジーズ株式会社 Image forming apparatus, image forming method, and program
JP2017079003A (en) 2015-10-21 2017-04-27 京セラドキュメントソリューションズ株式会社 Memory sharing system and memory sharing program
JP6741463B2 (en) 2016-04-22 2020-08-19 キヤノン株式会社 Image processing apparatus, image processing method, and program
EP3449896B1 (en) 2016-04-28 2021-03-17 Shiseido Company, Ltd. Oil-in-water solid cosmetic
JP6772020B2 (en) 2016-10-06 2020-10-21 キヤノン株式会社 Image processing device, control method of image processing device, and program
JP2019074916A (en) 2017-10-16 2019-05-16 キヤノン株式会社 Host device, system, method, and program
JP2020097163A (en) 2018-12-18 2020-06-25 キヤノン株式会社 Image formation device, control method for the same and program

Also Published As

Publication number Publication date
JP7566516B2 (en) 2024-10-15

Similar Documents

Publication Publication Date Title
JP4829835B2 (en) Image processing apparatus, image processing method, computer program, and computer-readable storage medium
US9195919B2 (en) Fixed memory rendering
JP3854786B2 (en) Printing control apparatus and method
JP2016001469A (en) Image processing method and image processing apparatus
US9600747B2 (en) Image forming apparatus and control method that execute a plurality of rendering processing units in parallel
US9230200B2 (en) Method of processing graphics with limited memory
JP4912360B2 (en) Information processing apparatus, information processing method, and program
US20010015820A1 (en) Method and apparatus for conservation of memory in a printer through selective compression of a display list
JP6766598B2 (en) Image processing device, image processing method and control program
JP2022017931A (en) Image formation processing apparatus, processing method for image formation processing apparatus, and program
US11637944B2 (en) Image processing apparatus, image processing method, and non-transitory computer-readable storage medium for generating intermediate data based on print data
US20170206628A1 (en) Image processing apparatus, image processing method, and storage medium
GB2344444A (en) Band management in a printer/imager page pipe
JP6904717B2 (en) Image processing equipment, its control method, and programs
JP2010111099A (en) Image processing apparatus and its control method
US20150009540A1 (en) Image forming apparatus, image forming method, and medium
JP2016206934A (en) Image processing device, image processing method and program
US10121098B2 (en) Image forming apparatus having plurality of processing units for generating intermediate data, and method for controlling the image forming apparatus
JP7417461B2 (en) Image processing device, image processing method
US8756491B2 (en) PDL data processing device
JP7467211B2 (en) IMAGE PROCESSING APPARATUS, IMAGE PROCESSING METHOD AND PROGRAM FOR IMAGE PROCESSING APPARATUS
JP2023077248A (en) Image forming device, control method thereof and program
AU2016277671A1 (en) Method of controlling memory usage in a graphics rendering system
JP2004289603A (en) Image forming apparatus, image forming method, and image forming program
JP2006092125A (en) Image processor, image processing method, program and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230707

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240903

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20241002

R150 Certificate of patent or registration of utility model

Ref document number: 7566516

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150