JP7380335B2 - Image processing device - Google Patents
Image processing device Download PDFInfo
- Publication number
- JP7380335B2 JP7380335B2 JP2020036242A JP2020036242A JP7380335B2 JP 7380335 B2 JP7380335 B2 JP 7380335B2 JP 2020036242 A JP2020036242 A JP 2020036242A JP 2020036242 A JP2020036242 A JP 2020036242A JP 7380335 B2 JP7380335 B2 JP 7380335B2
- Authority
- JP
- Japan
- Prior art keywords
- control unit
- content stream
- data
- image processing
- operator
- 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
- 238000012545 processing Methods 0.000 title claims description 92
- 238000006243 chemical reaction Methods 0.000 claims description 71
- 230000006870 function Effects 0.000 claims description 24
- 238000009877 rendering Methods 0.000 claims description 5
- 238000000034 method Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 15
- 230000032258 transport Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 230000008901 benefit Effects 0.000 description 4
- 238000010438 heat treatment Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000007639 printing Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- FHQVHHIBKUMWTI-ZCXUNETKSA-N 1-palmitoyl-2-oleoyl phosphatidylethanolamine Chemical compound CCCCCCCCCCCCCCCC(=O)OCC(COP(O)(=O)OCCN)OC(=O)CCCCCCC\C=C/CCCCCCCC FHQVHHIBKUMWTI-ZCXUNETKSA-N 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Images
Landscapes
- Record Information Processing For Printing (AREA)
- Storing Facsimile Image Data (AREA)
Description
本発明は、文書ファイルで記述されたオブジェクトに基づき画像データを描画する画像処理装置に関する。 The present invention relates to an image processing device that draws image data based on an object described in a document file.
ファイルの記述に基づき、画像データ(ラスターデータ)を生成することがある。1つのファイルの各ページを描画するとき、同じ画像を複数回描画することがある。例えば、各ページに、企業ロゴをのせる場合がある。ラスタライズで同じ画像を複数回生成しなくて済むように、生成した画像データをキャッシュすることがある。ファイルの記述に基づいてラスタライズするとき、繰り返し登場する画像をキャッシュする技術の一例が特許文献1に記載されている。
Image data (raster data) may be generated based on the file description. When drawing each page of one file, the same image may be drawn multiple times. For example, a company logo may be placed on each page. Generated image data may be cached to avoid having to generate the same image multiple times during rasterization. An example of a technique for caching images that appear repeatedly when rasterizing based on a file description is described in
具体的に、特許文献1には、画像形成出力対象の画像を出力する命令情報を処理実行制御装置から受信し、前記命令情報を構成する複数のオブジェクトに含まれる画像情報を比較し、前記オブジェクトを識別する識別情報が異なる複数の前記オブジェクトにおいて、前記画像情報が重複する重複画像情報オブジェクトを検知し、画像形成出力に際して参照する描画情報を命令情報に基づいて生成し、前記画像情報が描画された結果である描画結果情報を記憶し、検知した前記重複画像情報オブジェクトに含まれる画像情報の描画結果情報を用いて、前記描画情報を生成する画像形成出力制御装置が記載されている。オブジェクトの識別情報が異なる部分にキャッシュした画像データを適用しようとする。
Specifically,
環境に左右されずに同様の画像を描画できるフォーマットとして、PDF(Portable Document Format)がある。PDFファイルは描画内容が所定の規則に則って記述される。PDFは幅広く利用されている。 PDF (Portable Document Format) is a format that allows similar images to be drawn regardless of the environment. In a PDF file, drawing contents are described according to predetermined rules. PDF is widely used.
PDFファイルでの構成要素はオブジェクトと称される。また、番号(ラベル)が付されたオブジェクトのまとまりは間接オブジェクト(Indirect Object)と称されることもある。PDFファイルの記述に基づいた描画処理(ラスタライズ処理)を行うことより、各ページの画像データを生成することができる。近年では、受信したPDFファイルを解析し、描画(ラスタライズ)する画像形成装置もある。つまり、PDFファイルを直接処理できる画像形成装置がある。 Components in a PDF file are called objects. Further, a group of objects to which a number (label) is attached is sometimes referred to as an indirect object. Image data for each page can be generated by performing drawing processing (rasterization processing) based on the description of the PDF file. In recent years, there are also image forming apparatuses that analyze and draw (rasterize) a received PDF file. That is, there are image forming apparatuses that can directly process PDF files.
オブジェクトの中には、同じページ又は同じジョブでの複数回の呼び出し(実行)が想定されているものがある。呼び出しごとに同様の描画処理(ラスタライズ処理)を繰り返すことは、効率が悪い。そこで、繰り返し呼び出すオブジェクトの描画結果(ラスタライズ処理で得られる画像データ)をキャッシュすることがある。つまり、RIP済画像データをキャッシュすることがある。キャッシュした画像データに対応するオブジェクトを再実行するとき、描画処理を省略し、キャッシュした画像データを再利用する。処理を高速化することができる。 Some objects are intended to be called (executed) multiple times on the same page or in the same job. Repeating the same drawing process (rasterization process) for each call is inefficient. Therefore, the drawing results (image data obtained through rasterization processing) of objects that are repeatedly called may be cached. That is, RIP image data may be cached. When re-executing an object corresponding to cached image data, drawing processing is omitted and the cached image data is reused. Processing can be sped up.
しかし、画像データをキャッシュすると、キャッシュに必要なメモリー容量が大きくなる場合があるという問題がある。そのため、搭載メモリーの容量を大きくしなくてはならず、装置の製造コストを抑えることができない。また、キャッシュした画像データを加工して使用する場合もある。描画結果である画像データに、拡大や回転のような加工をした場合、画質低下が顕著に現れる場合があるという問題もある。 However, caching image data poses a problem in that the memory capacity required for caching may increase. Therefore, the capacity of the installed memory must be increased, making it impossible to reduce the manufacturing cost of the device. Also, cached image data may be processed and used. There is also a problem in that when image data that is a drawing result is processed such as enlargement or rotation, the image quality may noticeably deteriorate.
なお、特許文献1記載の装置では、描画結果情報、つまり、画像データをキャッシュする。キャッシュに必要なメモリー容量が大きくなる場合がある。従って、特許文献1記載の技術は上記の問題を含む。
Note that the apparatus described in
上記問題点を鑑み、本発明は、画像データの代わりに、繰り返し利用するオブジェクトを高速処理できるように変換したデータをキャッシュし、キャッシュに必要なメモリー容量を抑える。 In view of the above problems, the present invention caches data that has been converted so that objects that are repeatedly used can be processed at high speed instead of image data, thereby reducing the memory capacity required for the cache.
本発明に係る画像処理装置はメモリーと制御部を含む。メモリーはデータをキャッシュする。制御部は、文書ファイルに記述されたオブジェクトに基づき、前記文書ファイルの各ページの画像データを描画する。前記制御部は、前記文書ファイルが含む前記オブジェクトのうち、予め定められた特定オブジェクトのコンテンツストリームである特定コンテンツストリームを初めて実行するとき、前記特定コンテンツストリームが含むオペレーターの記述を前記オペレーターに対応する関数の先頭アドレスに置き換えた変換データを生成する。前記制御部は、生成した前記変換データを前記メモリーにキャッシュする。前記特定コンテンツストリームの2回目以降の実行では、前記制御部は、前記特定コンテンツストリームの代わりに、前記メモリーにキャッシュしてある前記変換データを実行して描画する。 An image processing device according to the present invention includes a memory and a control section. Memory caches data. The control unit draws image data of each page of the document file based on objects described in the document file. When executing for the first time a specific content stream that is a content stream of a predetermined specific object among the objects included in the document file, the control unit may cause a description of an operator included in the specific content stream to correspond to the operator. Generate conversion data replaced with the start address of the function. The control unit caches the generated conversion data in the memory. In the second and subsequent executions of the specific content stream, the control unit executes and draws the converted data cached in the memory instead of the specific content stream.
本発明によれば、繰り返し利用するオブジェクトの内容を、高速に処理できるように変換したデータをキャッシュすることができる。キャッシュに必要なメモリー容量を抑えることができる。 According to the present invention, it is possible to cache data that has been converted so that the contents of objects that are repeatedly used can be processed at high speed. The memory capacity required for cache can be reduced.
以下、図1~図8を用いて、本発明の実施形態に係る画像処理装置100の一例を説明する。本実施形態の説明に記載されている構成、配置等の各要素は、発明の範囲を限定せず単なる説明例にすぎない。
An example of an
(画像処理装置100)
図1を用いて、実施形態に係る画像処理装置100の一例を説明する。図1は、実施形態に係る画像処理装置100の一例を示す図である。
(Image processing device 100)
An example of an
図1に示すように、画像処理装置100はコンピューター200と通信可能である。例えば、コンピューター200はPCである。コンピューター200は、スマートフォンのような携帯通信装置でもよい。コンピューター200と画像処理装置100は、無線又は有線により通信できる。画像処理装置100には、コンピューター200を複数台接続することができる。
As shown in FIG. 1, an
画像処理装置100は画像形成装置でもある。画像処理装置100はいわゆる複合機である。なお、画像処理装置100は複合機以外の印刷可能な装置でもよい(例えば、プリンター)。コンピューター200は、画像処理装置100にファイルを送信できる。コンピューター200からのファイルに基づき、画像処理装置100は印刷する。
The
画像処理装置100は制御部1、記憶部2、原稿読取部3、操作パネル4、プリンター部5を含む。制御部1は各部を制御する。制御部1は、制御回路10、画像処理回路11、通信回路部12を含む。例えば、制御回路10はCPUである。制御回路10は制御に関する演算、処理を行う。例えば、画像処理回路11はASICである。画像処理回路11は、各ページの画像データの画像処理を行い、ページごとに出力用画像データを生成する。出力用画像データはトナーをのせるか否かを示す画像データである。
通信回路部12は、通信制御回路、通信用メモリーを含む。通信用メモリーは通信用ソフトウェアを記憶する。通信回路部12は制御部1の指示に応じてコンピューター200と通信する。記憶部2はROM21、メモリー22(RAM)、を含む。記憶部2は制御用プログラムや各種データを記憶する。記憶部2はストレージを含んでもよい。ストレージは、HDDやSSDのような大容量の記憶装置である。
The
原稿読取部3は、ランプ、イメージセンサーを含む。ランプは読み取る原稿に光を照射する。イメージセンサーは、原稿の反射光を受け、原稿を読み取る。制御部1は、イメージセンサーが出力するアナログ画像信号をA/D変換する。制御部1は、原稿読取部3の読み取りに基づき、原稿の画像データを生成する。
The
画像処理装置100は操作パネル4を含む。操作パネル4は、表示パネル41、タッチパネル42、ハードキー43を含む。制御部1は表示パネル41の表示を制御する。制御部1は、画面、画像を表示パネル41に表示させる。タッチパネル42とハードキー43の出力に基づき、制御部1は使用者の設定内容を認識する。
プリンター部5は、給紙部5a、用紙搬送部5b、画像形成部5c、定着部5dを含む。制御部1は給紙部5a、用紙搬送部5b、画像形成部5c、定着部5dの動作を制御する。給紙部5aは用紙を収容する。給紙部5aは給紙ローラー、給紙モーターを含む。給紙モーターは給紙ローラーを回転させる。印刷ジョブのとき、制御部1は給紙モーター(給紙ローラー)を回転させる。これにより、用紙が給紙部5aから供給される。用紙搬送部5bは、用紙搬送用の搬送ローラー対、搬送モーターを含む。搬送ローラー対は用紙を搬送する。搬送モーターは搬送ローラー対を回転させる。印刷ジョブのとき、制御部1は、用紙を用紙搬送部5bに搬送させる。
The
画像形成部5cは、感光体ドラム、帯電装置、露光装置、現像装置、転写ローラーを含む。出力用画像データに基づき、制御部1はトナー像を画像形成部5cに形成させる。制御部1は、形成されたトナー像の搬送用紙への転写を転写ローラーに行わせる。定着部5dは、ヒーター、加熱回転体、加圧回転体、定着モーターを含む。ヒーターは加熱回転体を熱する。用紙は加熱回転体、加圧回転体のニップを通過する。これにより、トナー像が用紙に定着する。印刷ジョブのとき、制御部1はトナー像の定着を定着部5dに行わせる。用紙搬送部5bは印刷済み用紙を機外に排出する。
The
(文書ファイルに基づくジョブ)
次に、図2を用いて、実施形態に係る画像処理装置100での文書ファイルに基づくジョブの流れの一例を説明する。図2は、実施形態に係る画像処理装置100での文書ファイルに基づくジョブの流れの一例を示す図である。
(Job based on document file)
Next, an example of the flow of a job based on a document file in the
印刷ジョブを画像処理装置100に行わせることができる。画像データに基づき、画像処理装置100は印刷ジョブを行う。例えば、画像処理装置100は、通信回路部12が受信した文書ファイルに基づいて印刷ジョブを行える。本説明での文書ファイルは、例えば、PDFファイル6である。PDFは、Portable Document Formatの略称である。PDFファイル6は、PDFのファイルフォーマットに準拠して生成されたファイル(データ)である。なお、画像処理装置100の制御回路10は、原稿を読み取って得られた画像データに基づき、PDFファイル6を生成することもできる。
The
コンピューター200から画像処理装置100(通信回路部12)に向けて、印刷するPDFファイル6を送信することができる。PDFファイル6を受信したとき、制御部1は、PDFファイル6に基づく印刷ジョブを開始する。また、記憶部2(ストレージ)にPDFファイル6を不揮発的に記憶させておくこともできる。そして、操作パネル4で記憶部2が記憶するPDFファイル6のうち、印刷ジョブに用いるPDFファイル6を選択することもできる。この場合、制御部1は、選択されたPDFファイル6に基づく印刷ジョブを開始する。図2のスタートは、受信、又は、選択により、PDFファイル6に基づいて印刷ジョブを開始する時点である。
A
制御部1は、印刷に用いるPDFファイル6をメモリー22(RAM)に記憶させる(ステップ♯11、図1参照)。画像データの生成(描画、ラスタライズ)を開始するには、PDFファイル6の全体をメモリー22に格納する必要がある。PDFファイル6のメモリー22への格納後、制御部1は、PDFの規格(ルール)にのっとった所定の処理を行う(ステップ♯12)。例えば、制御部1は、PDFファイル6が含むトレーラーの参照、相互参照テーブルの開始位置の認識、相互参照テーブルの参照のような処理を行う。
The
そして、制御部1(制御回路10)は、PDFファイル6の記述に基づき、各ページの画像データの描画(ラスタライズ処理)を開始する(、ステップ♯13)。制御部1は描画処理を行って、例えば、ビットマップ形式の画像データを生成する。
Then, the control unit 1 (control circuit 10) starts drawing (rasterization processing) the image data of each page based on the description of the PDF file 6 (Step #13). The
PDFファイル6の記述には、複数のオブジェクトが含まれる。PDFファイル6のオブジェクトとは、ファイルの構成要素である。オブジェクトの種類には、boolean(真偽値)、null、数字、文字列、名前、配列、辞書、ストリーム、オペレーターなどがある。
The description of the
また、PDFファイル6は、オブジェクトの一種として、間接オブジェクト(Indirect Object)を含む。間接オブジェクトとは、オブジェクトID(番号、ラベル)付きのオブジェクトである。オブジェクトIDを付けた間接オブジェクトは、他のオブジェクトで参照(引用)することができる。間接オブジェクトは、複数のオブジェクト(値)を含む。間接オブジェクトの冒頭部分の書式は「n m obj」である(図3、図7参照)。nはオブジェクト番号であり、正整数である。mは世代番号と称され、非負整数である。例えば、1番目の間接オブジェクトは「1 0 obj」と記述される。間接オブジェクトの終わりの部分の書式は「endobj」である。
Further, the
記述に基づき、制御部1は、PDFファイル6が含む各ページの描画(ラスタライズ処理)を終了する(ステップ♯14)。制御部1は、描画結果(各ページの画像データ)への画像処理を行い、出力用画像データを生成する(ステップ♯15)。出力用画像データに基づいて、制御部1はプリンター部5に印刷させる(ステップ♯16→エンド)。なお、PDFファイル6の全ページの描画が終わる前に印刷を開始してもよい。
Based on the description, the
(コンテンツストリームCS1の処理)
次に、図3~図4を用いて、実施形態に係る画像処理装置100でのコンテンツストリームCS1の処理の一例を説明する。図3は、コンテンツストリームCS1の一例を示す図である。図4は、実施形態に係る画像処理装置100でのコンテンツストリームCS1の処理の一例を示す図である。
(Processing of content stream CS1)
Next, an example of processing of the content stream CS1 in the
PDFファイル6は、コンテンツストリームCS1と呼ばれる記述を含む。コンテンツストリームCS1は、各ページの画像データを描画するための情報を含むオブジェクトである。コンテンツストリームCS1は、例えば、座標の移動、線の太さの変更、色の変更、パスの描画、線の描画、塗りつぶしの描画、フォントの描画、画像の描画、フォームの描画、透明グループの描画を行うための記述を含む。
The
通常、コンテンツストリームCS1はテキスト形式のデータである。コンテンツストリームCS1はオペレーターと呼ばれる記述(オブジェクト)を含む。オペレーターは、各ページの画像データを表現(描画)するためのコマンドである。オペレーターはテキスト形式で記述される。例えば、コンテンツストリームCS1は、オペレーターを複数含む。 Usually, the content stream CS1 is data in text format. Content stream CS1 includes descriptions (objects) called operators. The operator is a command for expressing (drawing) the image data of each page. Operators are written in text format. For example, content stream CS1 includes multiple operators.
図3はコンテンツストリームCS1の一例を示す。streamがコンテンツストリームCS1の始まりを意味する。endstreamは、コンテンツストリームCS1の終わりを意味する。図3に示すコンテンツストリームCS1のうち、「rg」、「re」、「f」がオペレーターである。オペレーターを意味する語は予め定められている。ちなみに、「rg」は塗りつぶし用のRGBの色を設定するオペレーターである。「re」は矩形のパスを追加するオペレーターである。「f」はパスの塗りつぶしの描画を実行するオペレーターである。 FIG. 3 shows an example of content stream CS1. stream means the beginning of content stream CS1. endstream means the end of content stream CS1. In the content stream CS1 shown in FIG. 3, "rg", "re", and "f" are operators. The word meaning operator is predetermined. Incidentally, "rg" is an operator that sets RGB colors for filling. "re" is an operator that adds a rectangular path. "f" is an operator that executes path filling drawing.
図3でのRGB(1、0、0)は赤色を意味する。図3のコンテンツストリームCS1によれば、制御部1(制御回路10)は、色を赤色に設定し、点(0、0)から幅50、高さ50の矩形のパスを設定し、設定したパスを赤色で塗りつぶす描画を行う。 RGB (1, 0, 0) in FIG. 3 means red. According to the content stream CS1 in FIG. 3, the control unit 1 (control circuit 10) sets the color to red, and sets a rectangular path with a width of 50 and a height of 50 from the point (0, 0). Draws to fill the path in red.
図4を用いて、コンテンツストリームCS1の実行時の処理の流れの一例を説明する。例えば、制御部1の制御回路10(CPU)が記述の解析、記述に基づく処理を行う。図4のスタートは、コンテンツストリームCS1の実行を開始する時点である。
An example of the flow of processing when executing the content stream CS1 will be described using FIG. 4. For example, the control circuit 10 (CPU) of the
まず、制御部1(制御回路10)は、コンテンツストリームCS1からトークンをひとつ取り出す(ステップ♯21)。トークンとは、空白文字で区切られるキーワードである。そして、取り出したトークンに基づき、制御部1は、コンテンツストリームCS1が終端か否かを判定する(ステップ♯22)。取り出したトークンが「endstream」のとき、制御部1は、終端と判定する。取り出したトークンが「endstream」以外のとき、制御部1は、終端ではない判定する。
First, the control unit 1 (control circuit 10) takes out one token from the content stream CS1 (step #21). Tokens are keywords separated by whitespace characters. Then, based on the retrieved token, the
終端と判定したとき(ステップ♯22のYes)、制御部1は処理を終了する(エンド)。終端ではないと判定したとき(ステップ♯22のNo)、制御部1は、そのトークンがオペレーターか否かを判定する(ステップ♯23)。
When it is determined that it is the end (Yes in step #22), the
なお、コンテンツストリームCS1を実行するとき、制御部1はオペレーターテーブルをストレージからメモリー22にセットする。オペレーターテーブルは、各オペレーターの名前を含むデータである。制御部1はオペレーターテーブルを介して、オペレーターを実行する。取り出したトークンがオペレーターテーブルに定義された何れかのオペレーターの名前と一致したとき、制御部1はトークンがオペレーターと判定してもよい。取り出したトークンが、オペレーターテーブルが含むオペレーター名のいずれとも一致しないとき、制御部1はトークンがオペレーターでないと判定してもよい。
Note that when executing the content stream CS1, the
どのオペレーターにも該当しない場合(オペレーター以外のオブジェクトの場合)(ステップ♯23のNo)、制御部1は、そのオブジェクト(トークン)の値をスタックする(ステップ♯24)。なお、制御部1は、オブジェクト(値)をスタックするためのスタック領域をメモリー22に設定する。つまり、制御部1は、後に登場するオペレーターの処理に必要な値として、スタック領域にオブジェクト(値)を格納する。スタック後、制御部1は、ステップ♯21を行う(ステップ♯21に戻る)。
If the object does not correspond to any operator (in the case of an object other than an operator) (No in step #23), the
一方、オペレーターと判定したとき(ステップ♯23のYes)、制御部1は、そのオペレーター(オペレーターに対応する関数)を呼び出す(ステップ♯25)。そして、制御部1は、呼び出したオペレーター(関数)で使用する数のオブジェクトをポップする(ステップ♯26)。例えば、オペレーターが「rg」の場合、このオペレーターを実行するには、R、G、Bの3つの値(数値のオブジェクト)が必要である。このように、制御部1は、オペレーターの実行に必要なオブジェクト(値)をスタック領域から読み出す。
On the other hand, when it is determined that the operator is the operator (Yes in step #23), the
実行に3つのオブジェクト(値)が必要なのに、スタックされたオブジェクト(ポップできた値)が2つであれば、オペレーター(関数)を実行できない。そこで、制御部1は、読み出したオブジェクトの数が足りているか否かを判定する(ステップ♯27)。足りない場合(ステップ♯27のNo)、制御部1はエラーと判定する(ステップ♯28)。つまり、制御部1はコンテンツストリームCS1の記述に誤りがあると判定する。この場合、制御部1はコンテンツストリームCS1に基づく処理(描画)を終了する(エンド)。
If three objects (values) are required for execution, but only two objects (values that could be popped) are stacked, the operator (function) cannot be executed. Therefore, the
足りている場合(ステップ♯27のYes)、制御部1は、読み出したオブジェクト(ポップした値)のタイプが適切か否かを判定する(ステップ♯29)。オペレーターが「rg」や「re」の場合、正の数値のオブジェクトが必要である。実行しようとするオペレーターで使用できないオブジェクトが1つでも読み出されているとき、制御部1はタイプが適切ではないと判定する。
If there is enough (Yes in step #27), the
タイプが適切でないとき(ステップ♯29のNo)、制御部1はエラーと判定する(ステップ♯28)。この場合、コンテンツストリームCS1に基づく処理(描画)を終了する(エンド)。タイプが適切なとき(ステップ♯29のYes)、制御部1はオブジェクト(値)に基づき、オペレーターを実行する(ステップ♯210)。実行後、制御部1は、ステップ♯21を行う(ステップ♯21に戻る)。
If the type is not appropriate (No in step #29), the
コンテンツストリームCS1を実行することにより、画像データの描画がなされる。例えば、コンテンツストリームCS1の記述で指定されたサイズ、指定されたフォント、指定された位置に、指定された色の文字の画像データが配置される。また、コンテンツストリームCS1の記述で指定されたサイズ、指定された位置に、指定された色で図形が描画される。また、写真のような画像データを貼り付けることも可能である。 Image data is drawn by executing content stream CS1. For example, image data of characters of a specified color are arranged in a size specified in the description of the content stream CS1, in a specified font, and at a specified position. Further, a figure is drawn in the specified color at the size specified in the description of the content stream CS1 and at the specified position. It is also possible to paste image data such as photographs.
(特定オブジェクト7の処理)
次に、実施形態に係る画像処理装置100での特定オブジェクト7の処理の一例を説明する。
(Processing of specific object 7)
Next, an example of processing of the
PDFファイル6には、XObjectを含めることができる。XObjectは各ページから独立しているオブジェクトである。XObjectは、1つのPDFファイルの各ページを描画する間、複数回実行することを想定したオブジェクトである。XObjectは、どのページでも参照できるオブジェクトといえる。
The
Form XObjectはXObjectの一種である。PDFファイル6には、Form XObjectと呼ばれるオブジェクト(間接オブジェクト)を含めることができる。描画のため、Form XObjectはコンテンツストリームCS1を含む。つまり、Form XObjectは、描画を行うための記述を含む。
Form XObject is a type of XObject. The
同じ画像や文字を複数ページに配置することがある。例えば、会社のロゴを各ページに配置することがある。全てのページで、ヘッダーやフッダーに同じ文字列を配置することもある。同じ画像を描画する場合、コンテンツストリームCS1の記述は同じとなる。各ページに同じコンテンツストリームCS1を含めることは可能である。しかし、PDFファイル6に同じ記述を何個も含めることは効率的ではない。1つのPDFファイル6の各ページを描画するとき、複数回使用するオブジェクト(コンテンツストリームCS1)をForm XObjectとしてPDFファイル6に含めることができる。
The same image or text may be placed on multiple pages. For example, a company's logo may be placed on each page. The same string may be placed in the header or footer on all pages. When drawing the same image, the description of the content stream CS1 will be the same. It is possible for each page to contain the same content stream CS1. However, it is not efficient to include many identical descriptions in the
Form XObjectは、オブジェクトID(ID番号)が付されたオブジェクト(間接オブジェクト)である。Form XObjectは、1つのPDFファイル6での描画において、複数回実行することが想定されているオブジェクトである。Form XObjectは、1ページの描画中に複数回実行することができる。また、Form XObjectは、どのページでも実行することができる。
Form XObject is an object (indirect object) to which an object ID (ID number) is attached. Form XObject is an object that is expected to be executed multiple times when drawing one
Form XObjectと同様に複数回実行するオブジェクトには、TilingPatternObjectがある。TilingPatternObjectは、タイルパターンを描画するためのオブジェクトである。例えば、色違いの四角形を一定の規則で配置した画像がタイルパターンである。背景模様としてタイルパターンを描画することがある。例えば、1つのPDFファイル6の各ページにタイルパターンの背景を含める場合、TilingPatternObjectが複数回実行される。
TilingPatternObject is an object that is executed multiple times like Form XObject. TilingPatternObject is an object for drawing a tile pattern. For example, a tile pattern is an image in which rectangles of different colors are arranged according to a certain rule. A tile pattern may be drawn as a background pattern. For example, when each page of one
画像処理装置100では、これらForm XObjectとTilingPatternObjectを特定オブジェクト7と扱う(図7参照)。特定オブジェクト7とは、特定オブジェクト7以外のオブジェクトとは異なる処理を行うオブジェクトである。
The
特定オブジェクト7は、性質上、コンテンツストリームCS1を含む。以下の説明では、特定オブジェクト7が含むコンテンツストリームCS1を特定コンテンツストリームCS2と称する。
The
1つのPDFファイル6の各ページの画像データを描画(ラスタライズ)するとき、特定コンテンツストリームCS2は複数回実行される場合がある。制御部1(制御回路10)は、特定コンテンツストリームCS2を変換し、変換データ8を生成する。変換データ8は、高速に処理できるように加工されたコンテンツストリームCS1といえる。
When drawing (rasterizing) the image data of each page of one
制御部1は、変換データ8をメモリー22にキャッシュする(記憶させる)(図1参照)。特定コンテンツストリームCS2の代わりに、制御部1は、キャッシュした変換データ8を実行する。特定コンテンツストリームCS2をそのまま実行する場合に比べて、高速にコンテンツストリームCS1の描画結果(画像データ)を得ることができる。
The
特定コンテンツストリームCS2の描画結果(実行して得られる画像データ)そのものはキャッシュしない。ラスタライズで得られた画像データのサイズは大きくなる場合がある。画像データそのものをキャッシュする場合、メモリー22不足が生じないように、容量の大きなメモリー22を搭載する必要がある。容量が大きいほどメモリー22(RAM)は高価である。画像データではなく変換データ8をキャッシュする。キャッシュするデータのサイズは、描画結果(画像データ)そのものをキャッシュする場合に比べて小さい。大容量のメモリー22を搭載する必要がない。画像処理装置100の製造コストを抑えることができる。メモリー22の容量が少ない低価格帯の画像処理装置100でも、PDFファイル6の描画(ラスタライズ)を高速に行うことができる。
The rendering result (image data obtained by executing the specific content stream CS2) itself is not cached. The size of image data obtained by rasterization may become large. When caching the image data itself, it is necessary to install a memory 22 with a large capacity so that the memory 22 does not run out. The larger the capacity, the more expensive the memory 22 (RAM) is. The converted
(特定オブジェクト7の実行時の処理)
次に、図5を用いて、実施形態に係る画像処理装置100での特定オブジェクト7の実行時の処理の一例を説明する。図5は、実施形態に係る画像処理装置100での特定オブジェクト7の実行時の処理一例を示す図である。
(Processing during execution of specific object 7)
Next, an example of processing when the
特定オブジェクト7の特定コンテンツストリームCS2については、制御部1は、変換データ8を生成する。例えば、制御部1は、Form XObjectのコンテンツストリームCS1について、変換データ8を生成する。PDFファイル6が複数の特定オブジェクト7を含む場合、制御部1は、特定オブジェクト7ごと(特定コンテンツストリームCS2ごと)に、変換データ8を生成する。
Regarding the specific content stream CS2 of the
図5のスタートは、特定オブジェクト7が呼び出された時点である。まず、制御部1は、呼び出された特定オブジェクト7の特定コンテンツストリームCS2の変換データ8が既にメモリー22にキャッシュされているか否かを判定する(ステップ♯31)。言い換えると、PDFファイル6に基づく描画(ラスタライズ)の開始後、制御部1は、呼び出した特定オブジェクト7が初めて呼び出したものか否かを判定する。
The start of FIG. 5 is when the
なお、キャッシュされる変換データ8には、対応する特定オブジェクト7のオブジェクトIDが付される(後述のステップ♯37)。つまり、制御部1は、変換データ8に対応する特定オブジェクト7のオブジェクトIDもキャッシュ領域F2に記憶させる。なお、オブジェクトIDとは、オブジェクト(間接オブジェクト)に付される識別番号である。
Note that the object ID of the corresponding
キャッシュ領域F2が記憶するオブジェクトIDの中に、呼び出した特定オブジェクト7のオブジェクトIDと一致するものがあるとき、制御部1は、変換データ8が既にメモリー22にキャッシュされていると判定する。キャッシュ領域F2が記憶するオブジェクトIDの中に、呼び出した特定オブジェクト7のオブジェクトIDと一致するものがないとき、制御部1は、変換データ8がメモリー22にキャッシュされていないと判定する。
When there is an object ID that matches the object ID of the called
キャッシュ済のとき(ステップ♯31のYes)、制御部1(制御回路10)は、キャッシュされた変換データ8を取得する(ステップ♯32)。そして、制御部1は変換データ8を実行する(ステップ♯33)。これにより、制御部1は、特定コンテンツストリームCS2と同じ描画結果(画像データ)を生成する。そして、制御部1は、呼び出された特定オブジェクト7の処理を終了する(エンド)。例えば、制御部1は、続けて、次のオブジェクトの処理を行う。
When the data has been cached (Yes in step #31), the control unit 1 (control circuit 10) obtains the cached conversion data 8 (step #32). Then, the
キャッシュ済ではないとき(ステップ♯31のNo)、制御部1は、変換データ8の生成用領域F1をメモリー22に確保(設定)する(ステップ♯34)。そして、制御部1は、変換データ生成用オペレーターテーブルをメモリー22にセットする(ステップ♯35)。例えば、制御部1は、記憶部2(ストレージ)に不揮発的に記憶された変換データ生成用オペレーターテーブルを読み出す。あるいは、制御部1は、変換データ生成用オペレーターテーブルを生成してもよい。
If the data has not been cached (No in step #31), the
通常のコンテンツストリームCS1を実行する場合、制御部1は、実行するオペレーターに対応する関数に基づいて処理する。例えば、「f」のオペレーターの場合、制御部1は、塗りつぶしの描画を行う関数を実行する。変換データ生成用オペレーターテーブルには、オペレーターの名前とともに、オペレーターに対応する関数の先頭アドレスが定義される。変換データ生成用オペレーターテーブルを参照することで、制御部1は、オペレーターに対応する関数の先頭アドレスを認識できる。
When executing the normal content stream CS1, the
制御部1(制御回路10)は、変換データ生成用オペレーターテーブルを用いて、変換データ8を生成する(ステップ♯36)。変換データ8の生成の詳細は後述する。
The control unit 1 (control circuit 10) generates
制御部1は、生成した変換データ8をオブジェクトIDとともに、メモリー22のキャッシュ領域F2に保存する(ステップ♯37、図1参照)。そして、制御部1は、変換データ生成用オペレーターテーブルに変えて、コンテンツストリーム実行用のオペレーターテーブルを設定する(ステップ♯38)。つまり、制御部1は、オペレーターテーブルを通常のコンテンツストリーム実行用のテーブルに戻す。そして、制御部1は、生成した変換データ8を実行する(ステップ♯33→エンド)。これにより、制御部1は、特定コンテンツストリームCS2と同じ描画結果(画像データ)を生成する。
The
(変換データ8の生成)
次に、図6、図7を用いて、実施形態に係る変換データ8の生成処理の一例を説明する。図6は、実施形態に係る変換データ8の生成処理の一例を示す図である。図7は、特定コンテンツストリームCS2と、その変換データ8の一例を示す図である。
(Generation of conversion data 8)
Next, an example of the process of generating the
変換データ8は、特定コンテンツストリームCS2の記述内容を変更(加工)したデータである。特定コンテンツストリームCS2よりも高速処理できるように変更がなされる。図6を用いて、変換データ8の生成(図5のステップ♯36)の詳細を述べる。
変換データ8の生成処理では、一部の処理が通常のコンテンツストリームCS1の実行時と同様である。例えば、制御部1は、コンテンツストリームCS1の実行時と同様のエラーチェックを行う。図6のスタートは、変換データ8の生成を開始する時点である。
In the process of generating the converted
まず、制御部1(制御回路10)は、特定コンテンツストリームCS2からトークンをひとつ取り出す(ステップ♯41)。そして、取り出したトークンに基づき、制御部1は、特定コンテンツストリームCS2が終端か否かを判定する(ステップ♯42)。取り出したトークンが「endstream」のとき、制御部1は、終端と判定する。取り出したトークンが「endstream」以外のとき、制御部1は、終端ではない判定する。
First, the control unit 1 (control circuit 10) takes out one token from the specific content stream CS2 (step #41). Then, based on the retrieved token, the
終端と判定したとき(ステップ♯42のYes)、制御部1は変換データ8の生成処理を終了する(エンド)。終端ではないと判定したとき(ステップ♯42のNo)、制御部1は、そのトークンがオペレーターか否かを判定する(ステップ♯43)。
When it is determined that it is the end (Yes in step #42), the
なお、変換データ8の生成のため、制御部1は、変換データ生成用オペレーターテーブルをメモリー22にセットしている(図5のステップ♯35)。取り出したトークンが変換データ生成用オペレーターテーブルに定義された何れかのオペレーターの名前と一致したとき、制御部1はトークンがオペレーターと判定してもよい。取り出したトークンと一致するオペレーター名が変換データ生成用オペレーターテーブルにないとき、制御部1はトークンがオペレーターでないと判定してもよい。
In order to generate the converted
どのオペレーターにも該当しない場合(オペレーター以外のオブジェクトの場合)(ステップ♯43のNo)、制御部1は、そのオブジェクト(トークン)の値をスタックする(ステップ♯44)。制御部1は、オブジェクト(値)をスタックするためのスタック領域をメモリー22に設定する。スタック後、制御部1は、ステップ♯41を行う(ステップ♯41に戻る)。
If the object does not correspond to any operator (in the case of an object other than an operator) (No in step #43), the
一方、オペレーターと判定したとき(ステップ♯43のYes)、制御部1は、オペレーターの実行時に用いる関数の先頭アドレスを変換データ8の生成用領域F1に保存する(ステップ♯45)。なお、制御部1は、上述のステップ♯34にて生成用領域F1を確保している。制御部1は、変換データ生成用オペレーターテーブルを参照して、対応する関数の先頭アドレスを認識する。制御部1は、認識した先頭アドレスを生成用領域F1に書き込む。
On the other hand, when it is determined that the operator is an operator (Yes in step #43), the
そして、制御部1は、先頭アドレスを保存した関数で使用する数のオブジェクトをポップし、生成用領域F1に書き込む(ステップ♯46)。具体的に、制御部1は、先頭アドレスに対応する関数で使用するオブジェクト(値)を、先頭アドレスの後に配置した変換データ8を生成する(図7参照)。例えば、オペレーターが「rg」の場合、このオペレーターを実行するには、R、G、Bの3つの値(数値のオブジェクト)が必要である。この場合、制御部1は、最大3つのオブジェクトを生成用領域F1に書き込む。
Then, the
実行に3つのオブジェクト(値)が必要なのに、スタックされたオブジェクト(ポップできた値)が2つであれば、オペレーター(関数)を実行できない。そこで、制御部1は、生成用領域F1に書き込んだオブジェクトの数が足りているか否かを判定する(ステップ♯47)。足りない場合(ステップ♯47のNo)、制御部1はエラーと判定する(ステップ♯48)。つまり、制御部1は、特定コンテンツストリームCS2の記述に誤りがあると判定する。この場合、制御部1は変換データ8の生成処理を終了する(エンド)。
If three objects (values) are required for execution, but only two objects (values that could be popped) are stacked, the operator (function) cannot be executed. Therefore, the
記述に誤りがあるとき、制御部1は、PDFファイル6の記述エラーを表示パネル41に表示させてもよい。また、制御部1は、PDFファイル6を送信したコンピューター200に向けて、PDFファイル6の記述エラーを知らせるメッセージを通信回路部12に送信させてもよい。
When there is an error in the description, the
足りている場合(ステップ♯46のYes)、制御部1は、生成用領域F1に書き込んだオブジェクト(ポップした値)のタイプが適切か否かを判定する(ステップ♯49)。オペレーターが「rg」や「re」の場合、数値のオブジェクトが必要である。実行しようとするオペレーターで使用できないオブジェクトが1つでも読み出されているとき、制御部1はタイプが適切ではないと判定する。
If there is enough (Yes in step #46), the
タイプが適切でないとき(ステップ♯49のNo)、制御部1はエラーと判定する(ステップ♯48)。制御部1は変換データ8の生成処理を終了する(エンド)。タイプが適切なとき(ステップ♯49のYes)、制御部1は、ステップ♯21を行う(ステップ♯21に戻る)。
If the type is not appropriate (No in step #49), the
図7は変換データ8の生成の具体例を示す。図7は、図3のコンテンツストリームCS1と同様の特定コンテンツストリームCS2と、その変換データ8の一例を示す。変換データ8の生成過程で記述のエラーチェックが行われる。そのため、変換データ8を実行するとき、エラーをチェックしなくてよい。
FIG. 7 shows a specific example of generation of
また、変換前のコンテンツストリームCS1では、オブジェクト(値)→オペレーターの順に記述される。変換データ8では、オペレーターで用いる関数の先頭アドレス→オブジェクト(値)の順に記述される。スタックとポップを行う必要がない。
In the content stream CS1 before conversion, objects (values) are written in the order of operators. In the
また、変換データ8では、オペレーター名が、対応する関数の先頭アドレスに置き換えられる。オペレーターテーブルを参照し、オペレーターの名前に基づき先頭アドレスを認識する手間かいらない。必要な関数を直ちに読み出すことができる。
Furthermore, in
変換データ8を実行しても、特定コンテンツストリームCS2を実行しても同じ描画結果が得られる。しかし、高速化の工夫がなされているので、特定コンテンツストリームCS2を実行したときよりも、変換データ8を実行したときの方が、描画(ラスタライズ)を高速に行うことができる。特定コンテンツストリームCS2に対応する描画結果を得るための処理の時間を短くすることができる。
The same rendering result is obtained whether the
(変換データ8による描画の利点)
次に、図8を用いて、実施形態に係る変換データ8による描画の利点の一例を説明する。図8は、実施形態に係る変換データ8による描画の利点の一例を示す図である。
(Advantages of drawing using conversion data 8)
Next, an example of the advantage of drawing using the
特定コンテンツストリームCS2の描画結果(画像データ)を拡大したり、回転したりすることがある。従来技術では、描画結果(画像データ)そのものをキャッシュしたとする。図8の(a)は、キャッシュされた描画結果の一例を示す。 The drawing result (image data) of the specific content stream CS2 may be enlarged or rotated. In the conventional technology, it is assumed that the drawing result (image data) itself is cached. FIG. 8A shows an example of cached drawing results.
キャッシュした画像データを再利用して拡大処理や回転処理を行った場合、画質が低下することがある。図8の(c)はキャッシュされた描画結果を拡大することにより、ジャギーが目立つ結果となった例を示す。 When reusing cached image data to perform enlargement processing or rotation processing, the image quality may deteriorate. FIG. 8C shows an example in which jaggies become noticeable by enlarging the cached drawing result.
画像処理装置100では、変換データ8をキャッシュする。拡大縮小率を指定して変換データ8を実行すれば、なめらかな描画結果(画像データ)を得ることができる。図8の(b)は、指定された倍率に応じて変換データ8を実行し、得られる描画結果の一例を示す。例えば、制御部1は、指定された倍率に応じて、制御部1は、描画に用いるオブジェクト(値)を調整する。
The
このようにして、実施形態に係る画像処理装置100(複合機)は、画像処理装置100はメモリー22と制御部1を含む。メモリー22はデータをキャッシュする。制御部1は、文書ファイルに記述されたオブジェクトに基づき、文書ファイルの各ページの画像データを描画する。制御部1は、文書ファイルが含むオブジェクトのうち、予め定められた特定オブジェクト7のコンテンツストリームCS1である特定コンテンツストリームCS2を初めて実行するとき、特定コンテンツストリームCS2が含むオペレーターの記述をオペレーターに対応する関数の先頭アドレスに置き換えた変換データ8を生成する。制御部1は、生成した変換データ8をメモリー22にキャッシュする。特定コンテンツストリームCS2の2回目以降の実行では、制御部1は、特定コンテンツストリームCS2の代わりに、メモリー22にキャッシュしてある変換データを実行して描画する。
In this way, the image processing apparatus 100 (multifunction peripheral) according to the embodiment includes the memory 22 and the
変換データ8を生成することができる。変換データ8をメモリー22にキャッシュすることができる。変換データ8では、オペレーターの記述がアドレスを示す数値に置き換えられている。変換データ8を用いれば、特定コンテンツストリームCS2を実行する場合に比べて、高速に描画することができる。
描画(ラスタライズ)で得られた画像データをそのままキャッシュしない。キャッシュに必要なメモリー22容量を抑えることができる。画像処理装置100に大容量のメモリー22を搭載しなくてすむ。画像処理装置100の製造コストを抑えることができる。
Do not cache image data obtained by drawing (rasterization) as is. The memory 22 capacity required for cache can be suppressed. It is not necessary to install a large capacity memory 22 in the
また、特定コンテンツストリームCS2により描画される画像について、拡大や回転のような加工を施す場合がある。オブジェクトの描画結果(画像データ)をキャッシュする場合、拡大や回転のような加工を施すと、画質が劣化する場合がある。例えば、ジャギー(階段状のギザギザ)が目立ってしまう場合がある。変換データ8を用いる場合、拡大縮小率を指定すれば、なめらかな描画結果(画像データ)を得ることができる。
Further, the image drawn by the specific content stream CS2 may be subjected to processing such as enlargement or rotation. When caching object drawing results (image data), image quality may deteriorate if processing such as enlargement or rotation is performed. For example, jaggies (step-like jagged edges) may become noticeable. When using the
制御部1は、先頭アドレスに対応する関数で使用するオブジェクトを、先頭アドレスの後に配置した変換データ8を生成する。関数で使用するオブジェクト(値)を関数の後に配置することができる。関数で使用する値をスタックする必要がなくなる。関数の処理を高速化することができる。変換データ8を高速に実行することができる。
The
特定コンテンツストリームCS2を最初に実行するとき、制御部1は、特定コンテンツストリームCS2の記述に基づく描画を行わずに変換データ8を生成する。制御部1は、特定コンテンツストリームCS2の代わりに、生成した変換データ8を実行する。変換データ8を生成後、変換データ8を実行することにより、特定コンテンツストリームCS2に対応する画像データを得ることができる。
When executing the specific content stream CS2 for the first time, the
変換データ8を生成するとき、制御部1は、特定コンテンツストリームCS2の記述にエラーがあるか否かを確認する。制御部1は、エラーがないときに変換データ8を生成する。実行してもエラーが生じない変換データ8を得ることができる。つまり、変換データ8は、エラー有無のチェックが済んでいる。変換データ8を実行するとき、コンテンツストリームCS1の実行時に行うエラーチェック処理を行う必要がない。変換データ8の実行開始から描画結果(画像データ)を得るまでの時間は、特定コンテンツストリームCS2を実行開始してから描画結果(画像データ)を得るまでの時間よりも、確実に短い。変換データ8を用いることにより、高速に描画結果を得ることができる。
When generating the
文書ファイルはPDFファイル6である。制御部1は、Form XObjectと、TilingPatternObjectを特定オブジェクト7とする。繰り返しの使用されるオブジェクトのコンテンツストリームCS1について、変換データ8を生成することができる。
The document file is
画像処理装置100は生成された画像データに基づき印刷するプリンター部5を含む。大容量のメモリー22を搭載しなくても、文書ファイル(PDFファイル6)の処理開始から出力開始までの時間が短い画像処理装置100を提供することができる。
The
以上、本発明の実施形態について説明したが、本発明の範囲はこれに限定されるものではなく、発明の主旨を逸脱しない範囲で種々の変更を加えて実施することができる。 Although the embodiments of the present invention have been described above, the scope of the present invention is not limited thereto, and various modifications can be made without departing from the gist of the invention.
本発明は、PDFファイルを扱う画像処理装置に利用可能である。 INDUSTRIAL APPLICATION This invention can be utilized for the image processing apparatus which handles a PDF file.
100 画像処理装置 1 制御部
22 メモリー 5 プリンター部
7 特定オブジェクト 8 変換データ
CS2 特定コンテンツストリーム
100
Claims (6)
文書ファイルに記述されたオブジェクトに基づき、前記文書ファイルの各ページの画像データを描画し、
前記文書ファイルが含む前記オブジェクトのうち、予め定められた特定オブジェクトのコンテンツストリームである特定コンテンツストリームを初めて実行するとき、前記特定コンテンツストリームが含むオペレーターの記述を前記オペレーターに対応する関数の先頭アドレスに置き換えた変換データを生成し、
生成した前記変換データを前記メモリーにキャッシュし、
前記特定コンテンツストリームの2回目以降の実行では、前記特定コンテンツストリームの代わりに、前記メモリーにキャッシュしてある前記変換データを実行して描画する制御部と、を含むことを特徴とする画像処理装置。 memory for caching data,
drawing image data for each page of the document file based on objects described in the document file;
When a specific content stream, which is a content stream of a predetermined specific object among the objects included in the document file, is executed for the first time, the description of the operator included in the specific content stream is set to the start address of the function corresponding to the operator. Generate the replaced conversion data,
caching the generated conversion data in the memory;
An image processing apparatus characterized in that the image processing apparatus includes a control unit that executes and draws the converted data cached in the memory instead of the specific content stream in the second and subsequent executions of the specific content stream. .
前記制御部は、
前記特定コンテンツストリームの記述に基づく描画を行わずに前記変換データを生成し、
前記特定コンテンツストリームの代わりに、生成した前記変換データを実行することを特徴とする請求項1又は2に記載の画像処理装置。 When the specific content stream is executed for the first time,
The control unit includes:
generating the conversion data without performing rendering based on the description of the specific content stream;
The image processing apparatus according to claim 1 or 2, wherein the generated conversion data is executed instead of the specific content stream.
前記変換データを生成するとき、前記特定コンテンツストリームの記述にエラーがあるか否かを確認し、
前記エラーがないときに前記変換データを生成することを特徴とする請求項1乃至3の何れか1項に記載の画像処理装置。 The control unit includes:
When generating the conversion data, check whether there is an error in the description of the specific content stream;
4. The image processing apparatus according to claim 1, wherein the conversion data is generated when there is no error.
前記制御部は、Form XObjectと、TilingPatternObjectを前記特定オブジェクトとすることを特徴とする請求項1乃至4の何れか1項に記載の画像処理装置。 The document file is a PDF file,
The image processing apparatus according to any one of claims 1 to 4, wherein the control unit uses a Form XObject and a TilingPatternObject as the specific objects.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020036242A JP7380335B2 (en) | 2020-03-03 | 2020-03-03 | Image processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020036242A JP7380335B2 (en) | 2020-03-03 | 2020-03-03 | Image processing device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021138011A JP2021138011A (en) | 2021-09-16 |
JP7380335B2 true JP7380335B2 (en) | 2023-11-15 |
Family
ID=77667812
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020036242A Active JP7380335B2 (en) | 2020-03-03 | 2020-03-03 | Image processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7380335B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7380335B2 (en) | 2020-03-03 | 2023-11-15 | 京セラドキュメントソリューションズ株式会社 | Image processing device |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010157099A (en) | 2008-12-26 | 2010-07-15 | Canon Inc | Print control apparatus, print control method, and computer program |
JP2011084045A (en) | 2009-10-19 | 2011-04-28 | Canon Inc | Image processor, image processing method, and program |
JP2012171239A (en) | 2011-02-22 | 2012-09-10 | Canon Inc | Image forming apparatus, method of controlling the same, and program |
JP2015001866A (en) | 2013-06-17 | 2015-01-05 | 富士ゼロックス株式会社 | Print image processing system and program |
JP2018058297A (en) | 2016-10-06 | 2018-04-12 | 株式会社リコー | Image formation output control device and image formation output control program |
JP2021138011A (en) | 2020-03-03 | 2021-09-16 | 京セラドキュメントソリューションズ株式会社 | Image processing apparatus |
-
2020
- 2020-03-03 JP JP2020036242A patent/JP7380335B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010157099A (en) | 2008-12-26 | 2010-07-15 | Canon Inc | Print control apparatus, print control method, and computer program |
JP2011084045A (en) | 2009-10-19 | 2011-04-28 | Canon Inc | Image processor, image processing method, and program |
JP2012171239A (en) | 2011-02-22 | 2012-09-10 | Canon Inc | Image forming apparatus, method of controlling the same, and program |
JP2015001866A (en) | 2013-06-17 | 2015-01-05 | 富士ゼロックス株式会社 | Print image processing system and program |
JP2018058297A (en) | 2016-10-06 | 2018-04-12 | 株式会社リコー | Image formation output control device and image formation output control program |
JP2021138011A (en) | 2020-03-03 | 2021-09-16 | 京セラドキュメントソリューションズ株式会社 | Image processing apparatus |
Also Published As
Publication number | Publication date |
---|---|
JP2021138011A (en) | 2021-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4995057B2 (en) | Drawing apparatus, printing apparatus, drawing method, and program | |
US8810847B2 (en) | Information processing apparatus, information processing method, and storage medium storing program thereof | |
US20080285074A1 (en) | Systems, devices, and methods for variable data printing | |
US8179558B2 (en) | Image processing apparatus, image processing method, program and storage medium constructed to generate print data including a bitmap image and attribute data of each pixel of the bitmap image | |
US8553269B2 (en) | Image forming apparatus and computer-readable recording medium storing image forming program for allowing storage section to store repeating use instruction information for repeatedly using band data | |
JP7380335B2 (en) | Image processing device | |
JP2008527551A (en) | How to add marks during the page rasterization process | |
US7164484B2 (en) | Print controller, print control method and printer including determination to store macro as instruction or bitmap | |
JP2010142980A (en) | Printing control program, printing control method, and printing control device | |
JP4577907B2 (en) | Image processing apparatus, image forming apparatus, and printing system | |
US11630616B2 (en) | Information processing apparatus, printing method, and non-transitory computer-readable medium storing support program therefor for controlling a printer for printing a barcode image | |
JP2020049903A (en) | Printer and program | |
JP4541577B2 (en) | Image forming apparatus, image forming method, image forming system, program, and storage medium | |
JP4877331B2 (en) | Image processing apparatus, program, and data processing method | |
JP2010006066A (en) | Image processing device and image processing method | |
JP4923899B2 (en) | Printer driver program | |
JP2005275545A (en) | Document print controller, document print control method and document print control program | |
JP7413851B2 (en) | image forming device | |
JP7455912B2 (en) | Information processing device, inspection device, inspection system, inspection system control method and program | |
US20230161522A1 (en) | Printing system, information processing apparatus, and non-transitory computer readable medium storing program | |
JP5966805B2 (en) | Control device for printing | |
US8503038B2 (en) | Media advance with voiding of sensitive substrates | |
JP2021035012A (en) | Image processing apparatus | |
JP2023158554A (en) | Character image quality adjustment system, character image quality adjustment device, and control method and program therefor | |
JP2006218819A (en) | Image formation apparatus, image processing apparatus, program, and image processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230224 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230927 |
|
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: 20231003 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231016 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7380335 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |