JP7417461B2 - Image processing device, image processing method - Google Patents
Image processing device, image processing method Download PDFInfo
- Publication number
- JP7417461B2 JP7417461B2 JP2020074259A JP2020074259A JP7417461B2 JP 7417461 B2 JP7417461 B2 JP 7417461B2 JP 2020074259 A JP2020074259 A JP 2020074259A JP 2020074259 A JP2020074259 A JP 2020074259A JP 7417461 B2 JP7417461 B2 JP 7417461B2
- Authority
- JP
- Japan
- Prior art keywords
- image processing
- intermediate data
- external storage
- information
- storage device
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims 3
- 238000000034 method Methods 0.000 claims description 66
- 238000009877 rendering Methods 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 10
- 239000000203 mixture Substances 0.000 claims description 9
- 238000007639 printing Methods 0.000 claims description 9
- 238000004040 coloring Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 239000002131 composite material Substances 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000010422 painting Methods 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Images
Landscapes
- Record Information Processing For Printing (AREA)
- Storing Facsimile Image Data (AREA)
Description
本発明は、PDLデータに基づく中間データの生成に関するものである。 The present invention relates to generation of intermediate data based on PDL data.
大判機等、使用する印刷用紙のサイズが特別に大きいプリンタ装置の場合は、印刷ジョブを投入しても印刷が困難なケースが存在する。特に、ジョブのページ中に極めて大きな画像が埋め込まれている場合や、非常に多くの図形データ等が含まれる場合等は、該ページを処理する途中の段階でメモリ不足に陥ってしまい、処理が続行できない場合がある。一般に、プリンタドライバやプリンタコントローラは、いずれも定められたハードウェアリソース(例えばプロセスに割り当てられるメモリには制限がある)で処理するように構成されているために、何らかの対策を講じる必要がある。 In the case of a printer device such as a large-format printer that uses a particularly large size of printing paper, there are cases where it is difficult to print even if a print job is input. In particular, when extremely large images are embedded in the job page or a large amount of graphical data is included, memory may run out during the process of processing the page, resulting in processing being delayed. You may not be able to continue. In general, printer drivers and printer controllers are configured to perform processing using predetermined hardware resources (for example, there is a limit to the memory allocated to a process), so it is necessary to take some measures.
従来、印刷ジョブの処理時にメモリが不足し、処理を継続できない場合の対策の一例として、特許文献1や特許文献4に記載の方法が知られている。特許文献1には、メモリが不足した時点(メモリアロックが出来ない等)で、処理プログラムがメモリに記録されている内部データ(中間データ等)を用いて画像形成(レンダリング)を実施することによりそれまでに蓄えたデータを解放することでデータサイズを削減する等の方法が開示されている。これらの技術に加え、合成処理によってデータサイズを削減する方法(フラット化)も提案されている(特許文献2、特許文献3)。
Conventionally, methods described in
従来の印刷システムの構成例について、図2のブロック図を用いて説明する。図2に示す印刷システムは、コンピュータ200と、画像処理装置100と、を有する。
An example of the configuration of a conventional printing system will be described using the block diagram of FIG. 2. The printing system shown in FIG. 2 includes a
コンピュータ200が有する生成部201は、印刷対象データ202から印刷データ203を生成する。画像処理装置100は、入力部204と、解析部205と、処理部206と、出力部207と、を有する。入力部204は、生成部201が生成した印刷データ203を受け取る。解析部205は、入力部204が受け取った印刷データ203を解析して、描画命令を抽出する。処理部206は、生成部208と、レンダリング部209と、を有する。生成部208は、解析部205で抽出した描画命令から描画情報210と画像211とを抽出して中間データを生成する。該中間データを生成する時、生成部208は、中間データ生成のための内部データを生成する。このようなデータは、通常は、画像処理装置100内のRAMに格納されている。図4は、フラット化によってメモリが削減される様子を示す図である。フラット化を実施することでメモリが削減され、処理を継続することが可能となる。
A
上述のように、画像処理を継続するために内部メモリの縮退処理(中間データを処理する際に利用する内部データを、最終的にスプールアウトする中間データと類似の構造として保持し、メモリが不足した場合にフラット化と呼ばれる処理で統合する処理等)によりデータ削減を実施している。しかしながら、この方式では、利用可能なメモリが徐々に少なくなってくると再びフラット化を実施する必要がある。ワーストケースではフラット化が繰り返される。 As mentioned above, in order to continue image processing, the internal memory is degenerated (the internal data used when processing intermediate data is held in a structure similar to the intermediate data that will eventually be spooled out, and memory is insufficient). Data reduction is implemented through a process called flattening, where data is integrated using a process called flattening. However, with this method, it is necessary to perform flattening again as the available memory gradually decreases. In the worst case, flattening occurs repeatedly.
図5は、フラット化を繰り返した結果、メモリが不足する例を示したグラフである。縦軸はメモリの使用量(GB)を示しており、横軸は処理時間(分)を示している。なお、縦軸の最大値2GBが、この例におけるメモリ最大容量としている。3回のフラット化が発生してメモリ使用量が削減されているが、処理時間T時点ではメモリ使用量が最大値2GBに到達しており、メモリ不足が発生している。このようにフラット化を実施してもメモリ不足が発生し、処理を継続出来ないケースが存在する。本発明では、メモリが不足して画像処理を継続できないようなPDLデータであっても、該PDLデータに基づく中間データの生成を可能にする技術を提供する。 FIG. 5 is a graph showing an example where memory becomes insufficient as a result of repeated flattening. The vertical axis shows memory usage (GB), and the horizontal axis shows processing time (minutes). Note that the maximum value of 2 GB on the vertical axis is the maximum memory capacity in this example. Although the memory usage has been reduced by flattening three times, the memory usage has reached the maximum value of 2 GB at the time of processing time T, and a memory shortage has occurred. Even if flattening is performed in this way, there are cases where memory shortage occurs and processing cannot be continued. The present invention provides a technology that enables generation of intermediate data based on PDL data even if the PDL data is such that image processing cannot be continued due to insufficient memory.
本発明の一様態では、画像処理装置であって、
PDLデータに基づく中間データの生成で用いる情報を該PDLデータに基づいて生成し、該情報を、条件に応じて、前記画像処理装置の内部メモリに保持しておく若しくは前記画像処理装置の外部記憶装置に格納する第1生成手段と、
前記内部メモリに保持されている若しくは前記外部記憶装置に格納された情報に基づいて前記中間データを生成し、該生成した中間データを、条件に応じて、前記内部メモリに保持しておく若しくは前記外部記憶装置に格納する第2生成手段と、
前記内部メモリに保持されている若しくは前記外部記憶装置に格納された中間データに基づいてレンダリングを行うことでラスタ画像を生成するレンダリング手段と
を備えることを特徴とする。
In one aspect of the present invention, an image processing device includes:
Information used in generating intermediate data based on the PDL data is generated based on the PDL data, and the information is stored in the internal memory of the image processing device or in the external storage of the image processing device, depending on conditions. a first generating means stored in the device;
The intermediate data is generated based on information held in the internal memory or stored in the external storage device, and the generated intermediate data is held in the internal memory according to conditions. or a second generation means for storing in the external storage device;
and a rendering unit that generates a raster image by performing rendering based on intermediate data held in the internal memory or stored in the external storage device.
本発明の構成によれば、メモリが不足して画像処理を継続できないようなPDLデータであっても、該PDLデータに基づく中間データの生成を可能にする。 According to the configuration of the present invention, even if the PDL data is such that image processing cannot be continued due to insufficient memory, it is possible to generate intermediate data based on the PDL data.
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものでない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。 Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the claimed invention. Although a plurality of features are described in the embodiments, not all of these features are essential to the invention, and the plurality of features may be arbitrarily combined. Furthermore, in the accompanying drawings, the same or similar components are designated by the same reference numerals, and redundant description will be omitted.
[第1の実施形態]
まず、本実施形態に係るシステムの構成例について、図6のブロック図を用いて説明する。図6に示す如く、本実施形態に係るシステムは、コンピュータ700と画像処理装置100とを有する。コンピュータ700および画像処理装置100は、無線および/または有線のネットワークに接続されており、該ネットワークを介して互いにデータ通信が可能なように構成されている。
[First embodiment]
First, an example of the configuration of the system according to this embodiment will be described using the block diagram of FIG. 6. As shown in FIG. 6, the system according to this embodiment includes a
まず、コンピュータ700について説明する。印刷対象データ702は、画像やテキストなどの印刷対象データである。生成部701は、このような印刷対象データ702から印刷データ(PDLデータ)703を生成し、該生成した印刷データ703を画像処理装置100に対して出力する。
First, the
次に、画像処理装置100について説明する。入力部704は、コンピュータ700から出力された印刷データ703を取得する。処理部705は、解析部706、生成部707、加工部708、レンダリング部709を有する。
Next, the
解析部706は、入力部704が取得した印刷データ703を解析して、描画命令(描画コマンド)を生成する。生成部707は、描画コマンドから中間データを生成する。生成部707は、通常は、中間データの生成に用いる情報を描画コマンドから生成して内部メモリ(RAMなどの揮発性メモリ)に保持するが、「外部記憶装置710に格納する」ための条件が満たされると、該情報を外部記憶装置710に格納する。そして生成部707は、内部メモリもしくは外部記憶装置710に格納されている情報に基づいて中間データを生成する。生成部707は、通常は、該生成した中間データを該内部メモリに保持しておくが、「外部記憶装置710に格納する」ための条件が満たされると、該生成した中間データを外部記憶装置710に格納する。
The
加工部708は、中間データを変換する。例えば、加工部708は、中間データをレンダリングしやすい形式に変換する。この変換では、例えば、中間データをタイル単位のデータ(分割データ)に分割し、分割データごとに圧縮してタイルデータを生成する。ここで、タイルとは、印刷領域をプリントデバイスのピクセル座標系で均等に分割した領域であり、中間データをタイルデータに変換することで、該中間データを保持するメモリの使用量を抑えつつ、並列動作も可能にする。加工部708は、通常は、変換した中間データを内部メモリに保持しておくが、「外部記憶装置710に格納する」ための条件が満たされると、該変換した中間データを外部記憶装置710に格納する。
A
レンダリング部709は、内部メモリ若しくは外部記憶装置710に保持されている中間データに基づいてレンダリングを行うことでラスタ画像(プリントデバイスのピクセル座標系におけるラスタデータ)を生成する。
The
出力部711は、レンダリング部709により生成されたラスタ画像を出力データ712として出力する。出力データ712の出力先は特定の出力先に限らない。例えば、出力部711は、出力データ712を、画像処理装置100内もしくは画像処理装置100外の印刷部に出力して、該出力データ712に基づく画像や文字を紙などの印刷媒体に印刷させてもよい。また、出力部711は、出力データ712を画像処理装置100内もしくは画像処理装置100外のメモリに対して出力してもよい。
The
外部記憶装置710は、上記の内部メモリよりもデータ容量が大きい不揮発性の記憶装置であり、例えばハードディスクドライブ装置やSSD(Solid State Drive)である。
The
画像処理装置100の上記の各機能部はハードウェアで実装してもよいが、ソフトウェア(コンピュータプログラム)で実装してもよい。後者の場合、このコンピュータプログラムを実行可能なコンピュータ装置は、画像処理装置100に適用することができる。本実施形態では、後者のケースについて説明する。このようなコンピュータ装置のハードウェア構成例について、図1のブロック図を用いて説明する。
Each of the above-mentioned functional units of the
CPU101は、RAM102やROM(フォントROM103、プログラムROM104、データROM105)に格納されているコンピュータプログラムやデータを用いて各種の処理を実行する。これによりCPU101は、画像処理装置100全体の動作制御を行うとともに、画像処理装置100が行うものとして説明する各処理を実行もしくは制御する。
The
RAM102は、ROM(フォントROM103、プログラムROM104、データROM105)やHD(ハードディスク)114からロードされたコンピュータプログラムやデータを格納するためのエリアを有する。さらにRAM102は、通信部110により外部(例えば上記のコンピュータ700)から受信したコンピュータプログラムやデータを格納するためのエリアを有する。さらにRAM102は、CPU101が各種の処理を実行する際に用いるワークエリアを有する。このようにRAM102は、各種のエリアを適宜提供することができる。
The
フォントROM103には、各種のフォントのデータが格納されている。プログラムROM104には、画像処理装置100が行うものとして説明する各処理をCPU101に実行もしくは制御させるためのコンピュータプログラムが格納されている。データROM105には、画像処理装置100が行うものとして説明する各処理をCPU101に実行もしくは制御させるためのデータが格納されている。
The
KBC(キーボードコントローラ)107は、ユーザがKB(キーボード)112を操作することで入力した指示や情報をCPU101に通知する。なお、画像処理装置100において使用可能なユーザインターフェースはキーボードに限らず、マウスやタッチパネル画面なども適用可能である。
The KBC (keyboard controller) 107 notifies the
表示制御部108は、表示部113の表示制御を行う。表示部113は液晶画面やタッチパネル画面などの表示画面を有する表示装置であり、CPU101による処理結果を画像や文字などでもって表示することができる。なお、表示部113は、画像や文字を投影するプロジェクタなどの投影装置であってもよい。
The
HD制御部109は、HD114に対するコンピュータプログラムやデータの読み書きを制御する。HD114には、各種のコンピュータプログラムやデータを格納することができる。なお、本実施形態では、HD114は上記の外部記憶装置710の一例であるものとして説明するが、これに限らず、他の種類のメモリ装置を外部記憶装置710として用いても構わない。
The
通信部110は、コンピュータ700との間のデータ通信を行う。CPU101、RAM102、フォントROM103、プログラムROM104、データROM105、KBC107、表示制御部108、HD制御部109、通信部110、は何れもバス106に接続されている。
The
次に、画像処理装置100の動作について、図7のフローチャートに従って説明する。以下では、図6に示した機能部を処理の主体として説明するが、実際には、該機能部に対応する機能をCPU101に実行もしくは制御させるためのコンピュータプログラムをCPU101が実行することで、該機能部の機能が実現される。
Next, the operation of the
ステップS2001における処理は、解析部706において行われる。ステップS2001では、解析部706は、PDLデータである印刷データ703を解析して、ページごとの描画命令(描画コマンド)を生成する。
The processing in step S2001 is performed by the
ステップS2003~S2008aにおける処理は、生成部707において行われる。ステップS2003では、生成部707は、ページごとの描画コマンドから未選択のページの描画コマンドを選択ページの描画コマンドとして選択する。そして生成部707は、該選択ページの描画コマンドから、該選択ページにおける塗りに関する塗り情報を生成する。
The processing in steps S2003 to S2008a is performed in the
ステップS2004では、生成部707は、選択ページの描画コマンドから生成された塗り情報にイメージ情報が含まれているか否かを判断する。この判断の結果、選択ページの描画コマンドから生成された塗り情報にイメージ情報が含まれている場合には、処理はステップS2005に進む。一方、選択ページの描画コマンドから生成された塗り情報にイメージ情報が含まれていない場合には、処理はステップS2006に進む。
In step S2004, the
ステップS2005では、生成部707は、選択ページの描画コマンドから生成された塗り情報に含まれているイメージ情報を圧縮する。そして生成部707は、「外部記憶装置710に格納する」ための条件が満たされている場合には、該圧縮したイメージ情報を外部記憶装置710に格納し、該条件が満たされていない場合には、該圧縮したイメージ情報を内部メモリに保持しておく。
In step S2005, the
ステップS2006では、生成部707は、選択ページの描画コマンドから、該選択ページ上のオブジェクトの合成に係る合成情報を生成する。そして生成部707は、「外部記憶装置710に格納する」ための条件が満たされている場合には、該合成情報を外部記憶装置710に格納し、該条件が満たされていない場合には、該合成情報を内部メモリに保持しておく。
In step S2006, the
ステップS2007では、生成部707は、選択ページの描画コマンドから、該選択ページ上のオブジェクトのエッジに関するエッジ情報を生成する。
In step S2007, the
このように、本実施形態では、描画コマンドから中間データを生成するために用いられる情報群(塗り情報(イメージ情報を含む)、合成情報、エッジ情報)を内部データとして生成する。内部データの構成例を図3に示す。図3に示す如く、内部データ300は、エッジ情報213、合成情報214、塗り情報215を含む。
In this manner, in this embodiment, a group of information (painting information (including image information), compositing information, edge information) used to generate intermediate data from a drawing command is generated as internal data. FIG. 3 shows an example of the structure of internal data. As shown in FIG. 3,
ステップS2008では、生成部707は、ステップS2006で生成した合成情報の数が閾値を超えるか否かを判断する。この判断の結果、ステップS2006で生成した合成情報の数が閾値を超える場合には、処理はステップS2008aに進む。一方、ステップS2006で生成した合成情報の数が閾値を超えない場合には、処理はステップS2003に進む。
In step S2008, the
ステップS2008aでは、生成部707は、内部メモリもしくは外部記憶装置710に格納されている情報群(塗り情報(イメージ情報も含む)、合成情報、エッジ情報)を読みだして適宜参照して、選択ページの中間データを生成する。そして生成部707は、「外部記憶装置710に格納する」ための条件が満たされている場合には、該中間データを外部記憶装置710に格納し、該条件が満たされていない場合には、該中間データを内部メモリに保持しておく。
In step S2008a, the
ステップS2009~S2016における処理は、加工部708において行われる。ステップS2009では、加工部708は、内部メモリもしくは外部記憶装置710に格納されている中間データを読み出し、該読みだした中間データを変換し、例えば、該読みだした中間データを前述のタイルデータ形式等の中間データに変換する。そして加工部708は、「外部記憶装置710に格納する」ための条件が満たされている場合には、該変換済みの中間データを外部記憶装置710に格納し、該条件が満たされていない場合には、該変換済みの中間データを内部メモリに保持しておく。
The processing in steps S2009 to S2016 is performed in the
ステップS2010では、加工部708は、内部メモリの残量(空き容量)が不足しているか否かを判断する。この判断では、例えば、内部メモリの残量(空き容量)が予め定められたデータサイズ以下であれば、内部メモリの残量(空き容量)が不足していると判断する。
In step S2010, the
この判断の結果、内部メモリの残量(空き容量)が不足している場合には、処理はステップS2011に進み、内部メモリの残量(空き容量)が不足していない場合には、処理はステップS2012に進む。 As a result of this determination, if the remaining amount (free space) of the internal memory is insufficient, the process proceeds to step S2011, and if the remaining amount (free space) of the internal memory is not insufficient, the process is continued. The process advances to step S2012.
ステップS2011では、加工部708は、内部メモリもしくは外部記憶装置710に格納されている変換済みの中間データを読み出し、該読みだした変換済みの中間データに対してイメージ変換処理を行う。イメージ変換処理は、メモリ不足の原因となっている複雑または大量の中間データをレンダリングして1つのラスタデータを生成し、そのラスタデータを塗り情報とする単純化した中間データに変換する処理である。そして加工部708は「外部記憶装置710に格納する」為の条件が満たされている場合、イメージ変換処理を行った中間データを外部記憶装置710に格納し、該条件が満たされていない場合、イメージ変換処理を行った中間データを内部メモリに保持しておく。
In step S2011, the
ステップS2012では、加工部708は、まだ選択ページの描画コマンドとして選択していないページの描画コマンドが残っているか否かを判断する。この判断の結果、残っている場合には、処理はステップS2003に進み、残っていない場合には、処理はステップS2013に進む。
In step S2012, the
ステップS2013では、加工部708は、内部メモリもしくは外部記憶装置710に格納されている中間データの数が複数か否かを判断する。この判断の結果、内部メモリもしくは外部記憶装置710に格納されている中間データの数が複数である場合には、処理はステップS2014に進む。一方、内部メモリもしくは外部記憶装置710に格納されている中間データの数が単数である場合には、処理はステップS2015に進む。
In step S2013, the
ステップS2014では、加工部708は、内部メモリもしくは外部記憶装置710に格納されている「複数の中間データ」を読み出し、該読みだした「複数の中間データ」を1つの中間データにマージ(データ統合処理)する。そして加工部708は、「外部記憶装置710に格納する」ための条件が満たされている場合には、該マージにより生成された1つの中間データを外部記憶装置710に格納する。一方、加工部708は、該条件が満たされていない場合には、該マージにより生成された1つの中間データを内部メモリに保持しておく。
In step S2014, the
ステップS2015では、加工部708は、イメージ変換処理が必要かを確認する。ここでは、内部メモリの残量が不足しているかの判断(ステップS2010と同様)に加え、レンダリングの対象として内部メモリもしくは外部記憶装置710に格納されている中間データがレンダリング部709が処理可能な中間データであるかの判断を行う。
In step S2015, the
内部メモリの残量が不足しており、且つレンダリングの対象として内部メモリもしくは外部記憶装置710に格納されている中間データがレンダリング部709が処理可能な中間データではない場合、イメージ変換処理が必要と判断する。イメージ変換処理が必要であると判断された場合には、処理はステップS2016に進み、イメージ変換処理が必要であると判断されなかった場合には、処理はステップS2017に進む。
If the remaining amount of internal memory is insufficient and the intermediate data stored in the internal memory or
ステップS2016では、加工部708は、レンダリングの対象として内部メモリもしくは外部記憶装置710に格納されている中間データに対して、ステップS2011と同様のイメージ変換処理を行う。
In step S2016, the
ステップS2017における処理は、レンダリング部709において行われる。ステップS2017では、レンダリング部709は、内部メモリもしくは外部記憶装置710に格納されている中間データを読み出し、該読みだした中間データを用いてレンダリングを行うことでラスタ画像を生成する。
The processing in step S2017 is performed in the
ここで、レンダリング部709については、性能/コストの観点からいくつかのバリエーションが考えられ、それに応じて処理できる中間データが異なる。例えば、画像処理装置100の一部若しくは全部の構成として廉価なハードウェアを使用する場合は、ハードウェアの規模を小さくするために、処理できる中間データに限定が入るため、ステップS2015でイメージ変換処理が必要と判断される。レンダリング部709によるレンダリングによって生成されたラスタ画像は、出力部207によって適当な出力先に出力データ212として出力される。
Here, regarding the
次に、上記のステップS2005における処理の詳細について、図8のフローチャートに従って説明する。ステップS3001では、生成部707は、選択ページの描画コマンドから生成された塗り情報からイメージ情報を取得し、該取得したイメージ情報を圧縮する。圧縮の形式は特定の形式に限らず、例えば、JPEG圧縮やPACKBITS圧縮等を適用することができる。
Next, details of the process in step S2005 above will be explained according to the flowchart of FIG. 8. In step S3001, the
次に、ステップS3002では、生成部707は、「外部記憶装置710に格納する」ための条件が満たされているか否かを判断する。「外部記憶装置710に格納する」ための条件が満たされているか否かの判断方法は特定の判断方法に限らない。例えば、内部メモリにおいて現在使用中のメモリ量が基準値(使用可能なメモリ量の70%等)を超えている場合や、レンダリング部709に対して「外部記憶装置710を使用する」ことが設定されている場合に、「外部記憶装置710に格納する」ための条件が満たされていると判断する。
Next, in step S3002, the
「外部記憶装置710に格納する」ための条件が満たされている場合には、処理はステップS3003に進み、「外部記憶装置710に格納する」ための条件が満たされていない場合には、圧縮したイメージ情報を内部メモリに保持しておく。ステップS3003では、生成部707は、圧縮したイメージ情報を外部記憶装置710に格納し、内部メモリから該圧縮したイメージ情報を消去する。
If the conditions for "storing in the
次に、上記のステップS2006における処理の詳細について、図9のフローチャートに従って説明する。ステップS4001では、生成部707は、選択ページの描画コマンドから、該選択ページ上のオブジェクトの合成に係る合成情報を生成する。
Next, details of the process in step S2006 above will be explained according to the flowchart of FIG. 9. In step S4001, the
次に、ステップS4002では、生成部707は、上記のステップS3002と同様の判断方法でもって、「外部記憶装置710に格納する」ための条件が満たされているか否かを判断する。なお、ステップS4002における判断方法と上記のステップS3002における判断方法とは異なっていてもよい。
Next, in step S4002, the
「外部記憶装置710に格納する」ための条件が満たされている場合には、処理はステップS4003に進み、「外部記憶装置710に格納する」ための条件が満たされていない場合には、合成情報を内部メモリに保持しておく。ステップS4003では、生成部707は、合成情報を外部記憶装置710に格納し、内部メモリから該合成情報を消去する。
If the conditions for "storing in the
次に、上記のステップS2009における処理の詳細について、図10のフローチャートに従って説明する。ステップS5001では、加工部708は、上記のステップS3002、S4002と同様の判断方法でもって、「外部記憶装置710に格納する」ための条件が満たされているか否かを判断する。なお、ステップS5001における判断方法と上記のステップS3002、S4002における判断方法とは異なっていてもよい。
Next, details of the process in step S2009 above will be explained according to the flowchart of FIG. 10. In step S5001, the
「外部記憶装置710に格納する」ための条件が満たされている場合には、処理はステップS5003に進み、「外部記憶装置710に格納する」ための条件が満たされていない場合には、処理はステップS5002に進む。
If the conditions for "storing in the
ステップS5002では、加工部708は、内部メモリに格納されている中間データを変換する。
In step S5002, the
一方、ステップS5003では、加工部708は、外部記憶装置710に格納されている中間データを読みだす。そしてステップS5004では、加工部708は、ステップS5003で読みだした中間データを変換する。そしてステップS5005では、加工部708は、ステップS5004で変換した中間データを外部記憶装置710に格納し、ステップS5004で変換した中間データを内部メモリから消去する。
On the other hand, in step S5003, the
次に、上記のステップS2011(ステップS2016)の処理の詳細について、図11のフローチャートに従って説明する。ステップS6001では、加工部708は、上記のステップS3002、S4002、S5001と同様の判断方法でもって、「外部記憶装置710に格納する」ための条件が満たされているか否かを判断する。なお、ステップS6001における判断方法と上記のステップS3002、S4002、S5001における判断方法とは異なっていてもよい。
Next, details of the process in step S2011 (step S2016) described above will be explained according to the flowchart in FIG. 11. In step S6001, the
「外部記憶装置710に格納する」ための条件が満たされている場合には、処理はステップS6006に進み、「外部記憶装置710に格納する」ための条件が満たされていない場合には、処理はステップS6002に進む。
If the conditions for "storing in the
ステップS6002では、加工部708は、内部メモリに格納されている中間データにおいて「不要な中間データ」を消去する。ここで、「不要な中間データ」とは、ステップS2009、ステップS2011(ステップS2016)、ステップS2014の3つの処理の対象となる中間データにおいて、該3つの処理に影響を与えない情報を指す。例えば、「不要な中間データ」は、不透過な描画コマンドによって覆いかぶさられた描画コマンドの塗り情報(イメージ含む)、合成情報、エッジ情報(描画結果に影響しない情報群)である。
In step S6002, the
ステップS6003では、加工部708は、内部メモリに格納されている中間データ(ステップS6002において「不要な中間データ」が削除された中間データ)を用いてレンダリングを行うことでラスタ画像を生成する。
In step S6003, the
ステップS6004では、加工部708は、「ステップS6003で生成したラスタ画像」を塗り情報として有する中間データを生成する。
In step S6004, the
ステップS6005では、加工部708は、上記のステップS6002と同様にして、内部メモリに格納されている中間データにおいて「不要な中間データ」(例えば、イメージ変換処理の対象となる塗り情報、合成情報、エッジ情報)を消去する。
In step S6005, the
一方、ステップS6006では、加工部708は、外部記憶装置710から中間データを内部メモリに読みだす。そしてステップS6007では、加工部708は、ステップS6006で内部メモリに読みだした中間データを用いてレンダリングを行うことでラスタ画像を生成する。
On the other hand, in step S6006, the
ステップS6008では、加工部708は、「ステップS6007で生成したラスタ画像」を塗り情報として有する中間データを生成する。ステップS6009では、加工部708は、ステップS6008で生成した中間データを外部記憶装置710に格納し、該中間データを内部メモリから消去する。
In step S6008, the
次に、上記のステップS2014における処理の詳細について、図12のフローチャートに従って説明する。ステップS7001では、加工部708は、上記のステップS3002、S4002、S5001、S6001と同様の判断方法でもって、「外部記憶装置710に格納する」ための条件が満たされているか否かを判断する。なお、ステップS7001における判断方法と上記のステップS3002、S4002、S5001、S6001における判断方法とは異なっていてもよい。
Next, details of the process in step S2014 above will be explained according to the flowchart of FIG. 12. In step S7001, the
「外部記憶装置710に格納する」ための条件が満たされている場合には、処理はステップS7005に進み、「外部記憶装置710に格納する」ための条件が満たされていない場合には、処理はステップS7002に進む。
If the conditions for "storing in the
ステップS7002では、加工部708は、上記のステップS6002と同様にして、内部メモリに格納されている中間データにおいて「不要な中間データ」を消去する。ステップS7003では、加工部708は、内部メモリに格納されている複数の中間データを統合して1つの中間データを生成する。ステップS7004では、加工部708は、上記のステップS6002と同様にして、内部メモリに格納されている中間データ(ステップS7003で統合された1つの中間データ)において「不要な中間データ」を消去する。
In step S7002, the
一方、ステップS7005では、加工部708は、外部記憶装置710から中間データを内部メモリに読みだす。そしてステップS7006では、加工部708は、ステップS6006で内部メモリに読みだした中間データを統合して1つの中間データを生成する。ステップS7007では、加工部708は、ステップS7006で統合された1つの中間データを外部記憶装置710に格納し、該1つの中間データを内部メモリから消去する。 [第2の実施形態]
上記の説明で条件に応じて外部記憶装置710に格納する情報として説明した情報(圧縮したイメージ情報、合成情報、中間データなど)以外の情報についても、条件に応じて外部記憶装置710に格納するようにしてもよい。
On the other hand, in step S7005, the
Information other than the information described above as information to be stored in the
また、上記の説明において使用した数値、処理タイミング、処理順などは、具体的な説明を行うために一例として挙げたものであり、これらの数値、処理タイミング、処理順などに限定することを意図したものではない。 In addition, the numerical values, processing timing, processing order, etc. used in the above explanation are given as examples to provide concrete explanations, and are intended to be limited to these numerical values, processing timing, processing order, etc. It's not something I did.
また、以上説明した各実施形態の一部若しくは全部を適宜組み合わせて使用しても構わない。また、以上説明した各実施形態の一部若しくは全部を選択的に使用しても構わない。 Furthermore, some or all of the embodiments described above may be used in combination as appropriate. Moreover, some or all of the embodiments described above may be selectively used.
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
(Other embodiments)
The present invention provides a system or device with a program that implements one or more functions of the embodiments described above via a network or a storage medium, and one or more processors in a computer of the system or device reads and executes the program. This can also be achieved by processing. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。 The invention is not limited to the embodiments described above, and various changes and modifications can be made without departing from the spirit and scope of the invention. Therefore, the following claims are hereby appended to disclose the scope of the invention.
100:画像処理装置 704:入力部 705:処理部 706:解析部 707:生成部 708:加工部 709:レンダリング部 710:外部記憶装置 711:出力部 100: Image processing device 704: Input section 705: Processing section 706: Analysis section 707: Generation section 708: Processing section 709: Rendering section 710: External storage device 711: Output section
Claims (11)
PDLデータに基づく中間データの生成で用いる情報を該PDLデータに基づいて生成し、該情報を、条件に応じて、前記画像処理装置の内部メモリに保持しておく若しくは前記画像処理装置の外部記憶装置に格納する第1生成手段と、
前記内部メモリに保持されている若しくは前記外部記憶装置に格納された情報に基づいて前記中間データを生成し、該生成した中間データを、条件に応じて、前記内部メモリに保持しておく若しくは前記外部記憶装置に格納する第2生成手段と、
前記内部メモリに保持されている若しくは前記外部記憶装置に格納された中間データに基づいてレンダリングを行うことでラスタ画像を生成するレンダリング手段と
を備えることを特徴とする画像処理装置。 An image processing device,
Information used in generating intermediate data based on the PDL data is generated based on the PDL data, and the information is stored in the internal memory of the image processing device or in the external storage of the image processing device, depending on conditions. a first generating means stored in the device;
The intermediate data is generated based on information held in the internal memory or stored in the external storage device, and the generated intermediate data is held in the internal memory according to conditions. or a second generation means for storing in the external storage device;
An image processing apparatus comprising: a rendering unit that generates a raster image by performing rendering based on intermediate data held in the internal memory or stored in the external storage device.
前記レンダリング手段により生成されたラスタ画像を印刷する印刷手段を備えることを特徴とする請求項1ないし8の何れか1項に記載の画像処理装置。 moreover,
The image processing apparatus according to any one of claims 1 to 8, further comprising a printing unit that prints the raster image generated by the rendering unit.
前記画像処理装置の第1生成手段が、PDLデータに基づく中間データの生成で用いる情報を該PDLデータに基づいて生成し、該情報を、条件に応じて、前記画像処理装置の内部メモリに保持しておく若しくは前記画像処理装置の外部記憶装置に格納する第1生成工程と、
前記画像処理装置の第2生成手段が、前記内部メモリに保持されている若しくは前記外部記憶装置に格納された情報に基づいて前記中間データを生成し、該生成した中間データを、条件に応じて、前記内部メモリに保持しておく若しくは前記外部記憶装置に格納する第2生成工程と、
前記画像処理装置のレンダリング手段が、前記内部メモリに保持されている若しくは前記外部記憶装置に格納された中間データに基づいてレンダリングを行うことでラスタ画像を生成するレンダリング工程と
を備えることを特徴とする画像処理方法。 An image processing method performed by an image processing device, the method comprising:
A first generating means of the image processing device generates information used in generating intermediate data based on the PDL data, and stores the information in an internal memory of the image processing device according to conditions. a first generation step of storing the image in an external storage device of the image processing device;
A second generation means of the image processing device generates the intermediate data based on information held in the internal memory or stored in the external storage device, and uses the generated intermediate data according to a condition. a second generation step of retaining in the internal memory or storing in the external storage device according to the
and a rendering step in which the rendering means of the image processing device generates a raster image by performing rendering based on intermediate data held in the internal memory or stored in the external storage device. image processing method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020074259A JP7417461B2 (en) | 2020-04-17 | 2020-04-17 | Image processing device, image processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020074259A JP7417461B2 (en) | 2020-04-17 | 2020-04-17 | Image processing device, image processing method |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2021171918A JP2021171918A (en) | 2021-11-01 |
JP2021171918A5 JP2021171918A5 (en) | 2023-04-19 |
JP7417461B2 true JP7417461B2 (en) | 2024-01-18 |
Family
ID=78281167
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020074259A Active JP7417461B2 (en) | 2020-04-17 | 2020-04-17 | Image processing device, image processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7417461B2 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001256016A (en) | 2000-03-09 | 2001-09-21 | Canon Inc | Printer, print control method and storage medium |
JP2007083608A (en) | 2005-09-22 | 2007-04-05 | Oki Data Corp | Image forming apparatus |
JP2010171682A (en) | 2009-01-22 | 2010-08-05 | Konica Minolta Business Technologies Inc | Image processing apparatus, program, and data processing method |
US20150062155A1 (en) | 2013-08-30 | 2015-03-05 | Canon Kabushiki Kaisha | Need-below processing across z-band boundaries |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10308861A (en) * | 1997-05-09 | 1998-11-17 | Canon Inc | Image input/output device and memory control method for the same |
-
2020
- 2020-04-17 JP JP2020074259A patent/JP7417461B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001256016A (en) | 2000-03-09 | 2001-09-21 | Canon Inc | Printer, print control method and storage medium |
JP2007083608A (en) | 2005-09-22 | 2007-04-05 | Oki Data Corp | Image forming apparatus |
JP2010171682A (en) | 2009-01-22 | 2010-08-05 | Konica Minolta Business Technologies Inc | Image processing apparatus, program, and data processing method |
US20150062155A1 (en) | 2013-08-30 | 2015-03-05 | Canon Kabushiki Kaisha | Need-below processing across z-band boundaries |
Also Published As
Publication number | Publication date |
---|---|
JP2021171918A (en) | 2021-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3872558B2 (en) | Fallback processing for page generation using memory reduction techniques | |
US7253914B2 (en) | Print data processing apparatus, print control method, and print control program | |
JP2010140459A (en) | Program, print data conversion device, and computer-readable recording medium | |
US6975416B2 (en) | Print control apparatus and method | |
US8654147B2 (en) | Apparatus for generating raster images, raster image generating method, and storage medium | |
US20020196468A1 (en) | Variable data printing with optimized cache | |
US9230200B2 (en) | Method of processing graphics with limited memory | |
JP7417461B2 (en) | Image processing device, image processing method | |
EP0575134B1 (en) | Method and apparatus for printing according to a graphic language | |
US10169688B2 (en) | Method of enhancing quality of image object included in compound document and apparatus for performing the method | |
US20210090218A1 (en) | Image scaling with enhanced compression | |
CN117573048A (en) | Automatic document watermark generation method and terminal | |
US20020036784A1 (en) | Image processing method and apparatus for performing processing according to the type of rendering command, and program implementing image processing method | |
US10102458B2 (en) | Image processing apparatus for generating intermediate data and processing the intermediate data, method of processing intermediate data generated from print data | |
US20150009540A1 (en) | Image forming apparatus, image forming method, and medium | |
JP2007196469A (en) | Image forming device, and control program | |
AU2016277671A1 (en) | Method of controlling memory usage in a graphics rendering system | |
JP7566516B2 (en) | Image forming processing device, processing method and program for image forming processing device | |
US20170053194A1 (en) | Printer for drawing bold character, method for controlling the same, and storage medium | |
JP3642234B2 (en) | Printer host, printer, printer system, storage medium storing program for converting drawing command into binary image data | |
JP4467715B2 (en) | Image output control apparatus and method | |
JP3382441B2 (en) | Image forming device | |
JP2001282482A (en) | Data processor and method for processing data | |
JP3686490B2 (en) | System and method using variable binarization for printer driver architecture | |
JP2001160148A (en) | Image processor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20210103 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210113 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230411 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230411 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20231117 |
|
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: 20231208 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240105 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7417461 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |