JP2012236344A - 印刷装置、印刷装置のデータ処理方法及びプログラム - Google Patents
印刷装置、印刷装置のデータ処理方法及びプログラム Download PDFInfo
- Publication number
- JP2012236344A JP2012236344A JP2011107010A JP2011107010A JP2012236344A JP 2012236344 A JP2012236344 A JP 2012236344A JP 2011107010 A JP2011107010 A JP 2011107010A JP 2011107010 A JP2011107010 A JP 2011107010A JP 2012236344 A JP2012236344 A JP 2012236344A
- Authority
- JP
- Japan
- Prior art keywords
- time
- page
- rendering
- data
- image data
- 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.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/40—Picture signal circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1801—Input data handling means
- G06K15/1822—Analysing the received data before processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1801—Input data handling means
- G06K15/1822—Analysing the received data before processing
- G06K15/1823—Analysing the received data before processing for evaluating the resources needed, e.g. rasterizing time, ink, paper stock
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1848—Generation of the printable image
- G06K15/1856—Generation of the printable image characterized by its workflow
- G06K15/186—Generation of the printable image characterized by its workflow taking account of feedback from an output condition, e.g. available inks, time constraints
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1848—Generation of the printable image
- G06K15/1856—Generation of the printable image characterized by its workflow
- G06K15/1861—Generation of the printable image characterized by its workflow taking account of a limited available memory space or rasterization time
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00912—Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
- H04N1/00954—Scheduling operations or managing resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00912—Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
- H04N1/0096—Simultaneous or quasi-simultaneous functioning of a plurality of operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/0077—Types of the still picture apparatus
- H04N2201/0082—Image hardcopy reproducer
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Record Information Processing For Printing (AREA)
Abstract
【課題】保持される文書画像データに対する各ページ間のレンダリング処理で発生する空白時間を短縮して、ジョブ全体の印刷処理時間を改善する。
【解決手段】文書画像データを解析して中間データを生成するための中間データ生成時間と、生成される中間データをレンダリングするためのレンダリング時間とを加算して印刷時間を予測し(S701)、予測した各ページの印刷時間から各ページに対して搬送される用紙に対して画像を形成しなければならないタイミングに間に合うかどうか判断する(S702)。画像形成タイミングに間に合わないと判断した場合、中間データ生成時間とレンダリング時間とを比較して空白時間が存在するかどうか判別し(S704)、空白時間が存在すると判別した場合、文書画像データ中の特定のオブジェクトに対する処理をレンダリング時に処理するか、中間データ生成時に処理するかを決定するための最適化レベルを変更する(S705)。
【選択図】図7
【解決手段】文書画像データを解析して中間データを生成するための中間データ生成時間と、生成される中間データをレンダリングするためのレンダリング時間とを加算して印刷時間を予測し(S701)、予測した各ページの印刷時間から各ページに対して搬送される用紙に対して画像を形成しなければならないタイミングに間に合うかどうか判断する(S702)。画像形成タイミングに間に合わないと判断した場合、中間データ生成時間とレンダリング時間とを比較して空白時間が存在するかどうか判別し(S704)、空白時間が存在すると判別した場合、文書画像データ中の特定のオブジェクトに対する処理をレンダリング時に処理するか、中間データ生成時に処理するかを決定するための最適化レベルを変更する(S705)。
【選択図】図7
Description
本発明は、外部から受信して保持される文書画像データを処理する印刷装置、印刷装置のデータ処理方法及びプログラムに関するものである。
印刷装置は、印刷する前のデータを文書画像データとして一時的にメモリ上に保持する。この状態のとき、文書画像データは印刷ジョブの情報から生成される。そのフォーマットは、PDF(Portable Document Format)データの仕様をもとに国際標準化したものである。印刷装置はこの文書画像データから中間データを生成、レンダリング処理がされて画像を出力する。また、メモリで保持されている文書画像データの詳細やページ数などから、中間データ生成時間とレンダリング時間を予測することができる。
あらかじめメモリ内に格納されている文書画像データから印刷用の中間データを生成するときに、ジョブによっては印刷時間がエンジン速度に間に合わないといった問題がある。ここで、印刷時間は、中間データ生成時間とレンダリング時間とを加算した値とする。解決策として、各ページでエンジン速度に間に合わないときは、中間データを変更してレンダリング時間を調整するといった方法がある。
下記特許文献1では、印刷データの中間データ生成時間とレンダリング時間とを計測して、過去の印刷時間がかかるデータと傾向が似ているときは、その中間データを変更してレンダリング時間を向上するといった方法がある。こちらの方法では過去のデータをもとに印刷方法を変更するため、扱ったことのないデータでは傾向を理解していないため対策ができない。
また、印刷装置において、上記文書画像データを用いると、オブジェクトの項目ごとにデータを管理できる。つまり、文書画像データから従来の中間データの上位のデータとして使用が可能になる。このように文書画像データを用いることで、従来から印刷の処理時間がかかるデータでも変更が可能となる。
ここで、文書画像データには最適化する方法がいくつか存在する。この最適化方法は、レベルごとに中間データの内容を変更することで、レンダリング時間の変更が可能である。この最適化レベルを用いて、過去に処理したことがない複数ページのジョブのレンダリング時間を改善できる。
しかしながら、上記のように文書画像データを処理することで、レンダリング時間が速くなっても、中間データ生成時間とレンダリング時間との差分から空白時間が発生する。このような空白時間が発生した場合、印刷装置で搬送される用紙に画像形成するタイミングに間に合うよう調整されないと、中間データ生成時かレンダリング時かに待ち処理が発生して印刷時間が遅くなるという課題がある。
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、保持される文書画像データに対する各ページ間のレンダリング処理で発生する空白時間を短縮して、ジョブ全体の印刷処理時間を改善できる仕組みを提供することである。
上記目的を達成する本発明のデータ処理装置は以下に示す構成を備える。
複数ページからなる文書画像データを解析して生成する画像を搬送する用紙に画像形成する印刷装置であって、各ページの文書画像データを解析して中間データを生成するための中間データ生成時間と、生成される中間データをレンダリングするためのレンダリング時間とを加算して各ページの印刷時間を予測する予測手段と、前記予測手段が予測した各ページの印刷時間から各ページに対して搬送される用紙に対して画像を形成しなければならないタイミングに間に合うかどうか判断する判断手段と、前記画像を形成しなければならないタイミングに合わないと判断した場合、前記中間データ生成時間と前記レンダリング時間とを比較して各ページ間でレンダリングを休止すべき空白時間が存在するかどうかを判別する判別手段と、前記判別手段により前記空白時間が存在すると判別された場合、前記文書画像データ中の特定のオブジェクトに対する処理をレンダリング時に処理するか、中間データ生成時に処理するかを決定するための最適化レベルを変更する変更手段とを備えることを特徴とする。
複数ページからなる文書画像データを解析して生成する画像を搬送する用紙に画像形成する印刷装置であって、各ページの文書画像データを解析して中間データを生成するための中間データ生成時間と、生成される中間データをレンダリングするためのレンダリング時間とを加算して各ページの印刷時間を予測する予測手段と、前記予測手段が予測した各ページの印刷時間から各ページに対して搬送される用紙に対して画像を形成しなければならないタイミングに間に合うかどうか判断する判断手段と、前記画像を形成しなければならないタイミングに合わないと判断した場合、前記中間データ生成時間と前記レンダリング時間とを比較して各ページ間でレンダリングを休止すべき空白時間が存在するかどうかを判別する判別手段と、前記判別手段により前記空白時間が存在すると判別された場合、前記文書画像データ中の特定のオブジェクトに対する処理をレンダリング時に処理するか、中間データ生成時に処理するかを決定するための最適化レベルを変更する変更手段とを備えることを特徴とする。
本発明によれば、保持される文書画像データに対する各ページ間のレンダリング処理で発生する空白時間を短縮して、ジョブ全体の印刷処理時間を改善できる。
次に本発明を実施するための最良の形態について図面を参照して説明する。
<システム構成の説明>
〔第1実施形態〕
<システム構成の説明>
〔第1実施形態〕
図1は、本発明の実施形態を示す印刷装置の構成を示すブロック図である。本例は、外部機器101とプリンタ102がネットワーク等の双方向通信インタフェースを介して通信可能な印刷システム例である。本実施形態の印刷装置は、記憶装置を備え外部機器101から受信した文書画像データを保持して、当該保持された文書画像データに対して描画処理を行う。
図1において、印刷装置は、プリンタコントローラ部103と、プリンタエンジン部105と、操作パネル部104とを備える。プリンタコントローラ部103は、ホストコンピュータ(以下、ホスト)などの外部機器101からコードデータ(各種ページ記述言語(以下、PDL))が入力される。プリンタコントローラ部103のCPUは、そのコードデータを解析することによってイメージデータ(ページ情報)を生成する。この生成されたイメージデータはインタフェースを介してプリンタエンジン部105に送信する。
プリンタエンジン部105は、電子写真プロセスにより、プリンタコントローラ部103によって生成されたイメージデータが示す画像を用紙上に形成する。プリンタエンジン部105には、各機構と、その各機構による各印字プロセス処理(例えば、給紙処理など)に関する制御を行うエンジン制御部とが含まれている。操作パネル部104は、ユーザとのインタフェースを司り、プリンタ102に対する所望の動作を指示するための入力操作を行うための操作部を構成する。
次に、プリンタコントローラ部103の構成について図2を参照しながら説明する。
次に、プリンタコントローラ部103の構成について図2を参照しながら説明する。
図2は、図1に示したプリンタコントローラ部103の構成を示すブロック図である。
図2において、202はCPUで、プリンタコントローラ部103全体を制御する。203はホストインタフェース(ホストI/F)で、プリンタコントローラ部103と外部機器101との間の通信制御を行う。
図2において、202はCPUで、プリンタコントローラ部103全体を制御する。203はホストインタフェース(ホストI/F)で、プリンタコントローラ部103と外部機器101との間の通信制御を行う。
206はラスタイメージプロセッサ(RIP)で、外部機器101から受信するPDLデータなどをRAM204を用いてビットマップデータに展開する。ホストI/F203を介して外部機器101から入力されたコードデータから、CPU202はROM205に格納されている制御コードに従い、RIP206からプリンタエンジン部105が処理可能なビットマップデータの作成を行う。
このようにして作成されたビットマップデータは、エンジンI/F部207を介してビデオ信号としてプリンタエンジン部105に転送される。エンジンI/F部207は、プリンタエンジン部105とでやり取りされる信号の入出力部を構成するとともに、プリンタエンジン部105との間の通信制御を行う。
操作パネル部104(図1に示す)から操作入力によって出されたモード設定に関する指示などは、操作パネルI/F部201を介して入力され、操作パネルI/F部201は操作パネル部104とCPU202の間のインタフェースを構成する。
CPU202は、操作パネル部104から指示されたモードに応じて上述の各ブロックに対する制御を行い、この制御はROM205に格納されている制御コードに基づき実行される。上述のCPU202を含む各ブロックは、システムバス208にCPU202がアクセス可能なように接続されている。HDD209はハードディスクドライブであり、各種処理のためのシステムソフトウェア及び入力された画像データ等を格納する。
図3は、図1に示した印刷装置の動作を制御するコントローラソフトウェアの構成を示すブロック図である。
図3は、図1に示した印刷装置の動作を制御するコントローラソフトウェアの構成を示すブロック図である。
図3において、プリンタインタフェース301は、外部との入出力のための手段である。プロトコル制御部302は、ネットワークプロトコルを解析・送信することによって外部との通信を行う手段である。
文書画像データ解析部303は、PDL等の文書画像データを解析して、印刷時間(中間データ生成時間+レンダリング時間)を予測する。また、文書画像データ解析部303は、時間予測をした結果から文書画像データの最適化を決定する。最適化された文書画像データは、より処理しやすい形式の中間記述データ(中間データ401)に変換される。
文書画像データ解析部303において生成された中間コードは、データ描画部304に渡されて処理される。データ描画部304は、上記中間コードをビットマップデータに展開するものであり、展開されたビットマップデータはページメモリ305に逐次描画されて行く。
ページメモリ305は、レンダラが展開するビットマップデータを一次的に保持する揮発性のメモリである。
ページメモリ305は、レンダラが展開するビットマップデータを一次的に保持する揮発性のメモリである。
パネル入出力制御部306は、操作パネル部104からの入出力を制御するものである。パネル入出力制御部306は、ページメモリ305にプレビュー用に生成されたビットマップデータを操作パネル部104にプレビュー画像を表示する。パネル入出力制御部306は、プレビュー画像が更新されるたびに、ページメモリ305に展開されるビットマップデータを操作パネル部104に逐次表示される。
ドキュメント記憶部307は、入力文書の一塊(ジョブ)単位に文書画像データを記憶する手段であり、ハードディスク等の二次記憶装置によって実現される。
スキャン制御部308は、図示しないスキャナから入力した画像データに対して、補正、加工、編集などの各種処理を行う。
ドキュメント記憶部307は、入力文書の一塊(ジョブ)単位に文書画像データを記憶する手段であり、ハードディスク等の二次記憶装置によって実現される。
スキャン制御部308は、図示しないスキャナから入力した画像データに対して、補正、加工、編集などの各種処理を行う。
印刷制御部309は、ページメモリ305の内容をビデオ信号に変換処理し、プリンタエンジン部310へ画像転送を行う。プリンタエンジン部310は受け取ったビデオ信号を記録紙に永久可視画像形成するための印刷機構部である。
図4は、図3に示したデータ描画部304でのスキャンラインレンダラ402の構成を示すブロック図である。
図4において、中間データ401は、文書画像データを文書画像データ解析部303で変換した中間コードである。スキャンラインレンダラ402では、中間データ401を入力データとして、輪郭書き出し処理部403、重なり整列処理部404、色塗り処理部405、色合成処理部406を経てビットマップデータ407を生成する。ビットマップデータ407は、図3に示したページメモリ305へ保持される。
図4において、中間データ401は、文書画像データを文書画像データ解析部303で変換した中間コードである。スキャンラインレンダラ402では、中間データ401を入力データとして、輪郭書き出し処理部403、重なり整列処理部404、色塗り処理部405、色合成処理部406を経てビットマップデータ407を生成する。ビットマップデータ407は、図3に示したページメモリ305へ保持される。
輪郭書き出し処理部403は、中間データ401に含まれる描画オブジェクトから輪郭情報を取得する処理である。輪郭情報は、描画オブジェクトの輪郭の開始点位置、及び輪郭幅の2つの情報を指している。輪郭書き出し処理部403で取得された輪郭の情報が画像データの1スキャンライン分揃ったら、輪郭座標の情報を次の重なり整列処理部404に送る。
重なり整列処理部404は、輪郭座標の情報と描画オブジェクト同士の重なりの上下関係を元に紙面に対して描画オブジェクトが正しい順番で並ぶように整列処理する。整列済みの輪郭情報は、画像データの1スキャンライン分揃ったあと、色塗り処理部405へ送られる。
色塗り処理部405は、整列済みの輪郭情報に対して、輪郭で区切られる1つ1つの区間に対して色情報を付加する。本実施形態で使用するグラデーションパターンは、色塗り処理部405で生成される。色塗り処理部405で生成された色情報が付加された整列済みの輪郭情報は、1スキャンライン分揃ったら、色合成処理部406へ送られる。
色合成処理部406は、色情報が付加された整列済みの輪郭情報を元に輪郭で区切られた領域かつ、その区切られた領域のうち他の輪郭で区切られた領域と重なっている部分同士に対して中間データ401に従った重なりルールを適用する。重なりルールとは、ROP(Raster OPerator)とアルファブレンドがある。
ここで、ROPとは、領域同士が重なっている部分に、全面側と背面側の色値を表現するbit同士で行われる論理演算である。重なりルールとしてROPが指定された場合、全面側と背面側の領域を表現する色値の間で論理演算が行われた結果が出力される。アルファブレンドとは、輪郭で区切られた領域同士で重なっている部分に対して、両者のうち全面側及び背面側の色を混ぜて出力するときの双方の割合比を指定する。
色合成処理部406では、重なりルールを運用し、重なっている領域の全面と背面の領域からどのような色を出力するかを決定する。色合成処理部406で生成されたデータは、画像データの1ピクセルごとの色情報としてビットマップデータ407が出力される。
色合成処理部406では、重なりルールを運用し、重なっている領域の全面と背面の領域からどのような色を出力するかを決定する。色合成処理部406で生成されたデータは、画像データの1ピクセルごとの色情報としてビットマップデータ407が出力される。
図5は、図1に示した外部機器101のデータ処理の流れを説明する図である。本例は、外部機器101で動作する電子画像データ生成を行うプログラムの構成とデータ生成の手順例である。
以下、図5を用いて、ホストコンピュータなどの外部機器101で動作する、文書画像データ生成を行うプログラムの構成とデータ生成の手順を説明する。
以下、図5を用いて、ホストコンピュータなどの外部機器101で動作する、文書画像データ生成を行うプログラムの構成とデータ生成の手順を説明する。
まず、外部機器101の基本的な内部構成を説明する。外部機器101は、ハードウェアとしてCPU、RAM、ROM、HDD、キーボードやマウスなどの入力デバイス、ディスプレイなどの出力デバイス、ネットワークI/F、これらを制御するチップセットなどからなる。さらにこれらは内部データバスによって相互に接続されている。こられのハードウェアを制御するソフトとしてBIOSとオペレーティングシステム(OS)が動作している。
アプリケーションデータ501は、RAMもしくはHDD内に記憶されており、アプリケーション502によって読み込まれ、必要に応じて編集される。アプリケーション502はワードプロセッサ、表計算、図形処理、写真画像処理などを行うソフトウエア(プログラム)である。
グラフィックスエンジン503は、アプリケーション502の処理結果をディスプレイ出力や印刷出力するための描画変換処理を行う。プリンタドライバ504は、グラフィックスエンジン503から描画データを受け取り、印刷装置が解釈可能なページ記述言語(PDL)データに変換を行う。ここでPDLには、LIPS LX(商標)や UFR (商標)などの言語が使われる。ファイルスプーラ505は、プリンタドライバ504によって随時変換され出力されるPDLデータを一時的に溜め込み、PDLデータファイル506として保存する。ここまでの処理は、本発明以前の一般的なPDLデータ生成手順である。
PDLデータファイル507は、PDLデータファイル506と同じものである。PDL解釈部508は、PDLデータファイル506を解釈し、さらに描画オブジェクト生成部509にて、印刷に適した複数の描画オブジェクトを印刷に適した順に生成する。ここで描画オブジェクトは、ページ毎にまとめられ、また1ページから始まり最終ページまで、ページの順番に並べられる。また、1ページに含まれる描画オブジェクトは、描画の重なりを考慮し並べられる。重なりによって覆い隠される描画オブジェクトが先に並べられ、重なりによって前出のオブジェクトを覆い隠す描画オブジェクトほど後に並べられる。
文書画像データ生成部510は、描画オブジェクト生成部509から描画オブジェクトを順に受け取り、定められた文書画像データフォーマットに変換する。ファイルスプーラ511は、文書画像データ生成部510によって随時変換され出力される文書画像データを一時的に溜め込み、文書画像データ512として保存する。さらに必要に応じてホストI/F 513を経由して、ネットワークに接続されるほかの機器に転送される。
以下、図6を用いて文書画像データの内部データ構造について説明する。なお、断りがない限り、本発明で扱う文書画像データファイルはISO32000-1で定められている電子文書ファイルフォーマットと同様の文法を適用する。
図6は、本実施形態を示す印刷装置で処理する文書画像データの内部データ構造を説明する図である。なお、本実施形態で、描画オブジェクトには、イメージ、グラフィックス、グラデーション等の属性の異なるオブジェクトが含まれる。
文書画像データ600は、内部的に以下の601から616のセクションに分けられる。ヘッダ601は、文書画像データファイルのフォーマットバージョンを示す。シリアライズパラメータ602には、本データファイルがファイル先頭から順次処理可能なフォーマットであることを示す辞書オブジェクトであり、典型的には以下のように記述される。
43 0 obj
<< /Serialized 1.0 % シリアル化フォーマットバージョン >>
endobj
43 0 obj
<< /Serialized 1.0 % シリアル化フォーマットバージョン >>
endobj
603は文書カタログである。604は文書レベルオブジェクトで、文書画像データファイル内では共通に使用されるリソースオブジェクトが含まれるセクションである。リソースオブジェクトにはICCプロファイル辞書やFont辞書などが指定される。
ページオブジェクト605は、文書画像データファイルの先頭のページのみに関するページオブジェクトとして定義される。606はオブジェクトが配置されるセクションであり、ページオブジェクト605によって定義された先頭ページに関するオブジェクトを含む。
607は先頭ページの相互参照表であり、ページオブジェクト606内の全てのオブジェクトの位置をファイル先頭からのバイトオフセットで示す。608は先頭ページのトレーラで、先頭ページの相互参照表607の位置を示すバイトオフセット情報や文書カタログ603のアドレス情報が配置されている。先頭ページのトレーラ608までの情報で、1ページ目の描画処理を行うためのすべての情報が揃っている。
609以降は、2ページ目以降の描画処理を行うために必要な部分である。基本的にはページ単位で、ページオブジェクト、ページ内描画に関するオブジェクト、相互参照表、トレーラの順に並んでおり、最終ページまでこれを繰り返す。
なお、2ページ目以降の記述方法に関しては、ISO32000−1で定められている増分更新の文法を適用している。つまり、601から608までの先頭ページに関するセクションを「当初の電子文書ファイル」とする。
609以降のセクションでは、ページが増えるごとに「更新ボディ」、「更新された相互参照表」、「更新トレーラ」を追加し、これを最後ページまで繰り返す。以上の説明からわかるように、文書画像データはシリアライズパラメータ602以外の部分に関しては、ISO32000−1に準拠している。610はオブジェクトが配置されるセクションであり、ページオブジェクト609によって定義された先頭ページに関するオブジェクトを含む。611は2ページの相互参照表である。612は2ページのトレーラである。614はオブジェクトが配置されるセクションであり、ページオブジェクト613によって定義された先頭ページに関するオブジェクトを含む。615は最終ページの相互参照表である。616は最終ページのトレーラである。
なお、ISO32000−1に準拠した電子文書ファイル処理プログラムが、本発明の文書画像データ600を処理することも可能である。その場合は、辞書オブジェクトとして解釈できないシリアライズパラメータ602は無視されるので、ISO32000−1に準拠した電子文書として正常に解釈され、描画処理される。
本実施例では、CPU202が文書画像データ解析部303として文書画像データ512の最適化レベルを変更する例を説明する。
本実施例では、CPU202が文書画像データ解析部303として文書画像データ512の最適化レベルを変更する例を説明する。
図7は、本実施形態を示す印刷装置のデータ処理方法を説明するフローチャートである。本実施形態は、文書画像データ512がユーザの操作により外部機器101からネットワークを経てプリンタ102のドキュメント記憶部307に格納されている状態とする。以下、本実施形態ではユーザから文書画像データ512の印刷要求がある前に、文書画像データに対する最適化レベルをCPU202が変更する処理を説明する。なお、各ステップは、CPU202がHDD209、ROM205に記憶される制御プログラムをRAM204にロードして実行することで実現される。
CPU202は、最初に最適化レベルを決定するため、中間データ生成時間とレンダリング時間とを加算することで印刷時間を予測する(S701)。
具体的には、CPU202は、印刷データの属性、プリンタ102の種類、CPU202の性能を用いて、各条件の組み合わせと印刷時間との関係を保持するテーブルを参照して印刷時間を予測する。
ここで、印刷データの属性には、イメージデータ、グラフィックスデータ、フォントデータなどが含まれる。また、ジョブ時間とオブジェクトごとの印刷時間を示すテーブルは、プリンタ102のドキュメント記憶部307に保持している。
具体的には、CPU202は、印刷データの属性、プリンタ102の種類、CPU202の性能を用いて、各条件の組み合わせと印刷時間との関係を保持するテーブルを参照して印刷時間を予測する。
ここで、印刷データの属性には、イメージデータ、グラフィックスデータ、フォントデータなどが含まれる。また、ジョブ時間とオブジェクトごとの印刷時間を示すテーブルは、プリンタ102のドキュメント記憶部307に保持している。
ここで、保持しているテーブルの値は、固定値である必要はなく、学習によって値が変更されてより精度の高い予測を行うことが可能である。
また、印刷データの属性に関しては、文書画像データ512のページオブジェクト606で洗い出されている。また、CPU202の性能やプリンタ102の種類については固定である。さらに、中間データ生成時間とレンダリング時間の算出に使用するテーブルの要素は異なる。レンダリング時間を予測するための要素としては、プリンタ102で使用するレンダラの種類、CPU202の性能、描画データ量がある。
また、印刷データの属性に関しては、文書画像データ512のページオブジェクト606で洗い出されている。また、CPU202の性能やプリンタ102の種類については固定である。さらに、中間データ生成時間とレンダリング時間の算出に使用するテーブルの要素は異なる。レンダリング時間を予測するための要素としては、プリンタ102で使用するレンダラの種類、CPU202の性能、描画データ量がある。
本実施形態では、プリンタ102が使用しているのはスキャンラインレンダラ402としているが、ペインターズモデルなどその他のレンダラでもよい。スキャンラインレンダラ402の場合、描画データ量としてページ内の描画オブジェクトの輪郭数や重なり数などのパラメータをもとにジョブ時間を予測するテーブルを作成する。
ここで、印刷時間を予測するプログラムに関しては、プリンタ102のHDD209またはRAM204に格納する。プリンタ102ごとにCPU202やレンダラの種類が変わるのに対して、文書画像データ512を用いた時間予測では、全機種共通の描画オブジェクトの情報を使用することが可能である。
ここで、印刷時間を予測するプログラムに関しては、プリンタ102のHDD209またはRAM204に格納する。プリンタ102ごとにCPU202やレンダラの種類が変わるのに対して、文書画像データ512を用いた時間予測では、全機種共通の描画オブジェクトの情報を使用することが可能である。
次に、CPU202は、S701で予測した印刷時間が予測した各ページの印刷時間から各ページに対して搬送される用紙に対して画像を形成しなければならないタイミングに間に合うかどうか判断する(S702)。ここで、比較する時間は、ジョブ単位での印刷時間とし、比較した結果、搬送される用紙に対して画像を形成しなければならないタイミングに間に合うとCPU202が判断した場合は、文書画像データ512の最適化レベルを変更せずにそのまま印刷を開始して(707)、本処理を終了する。
一方、S702で、印刷時間がエンジン速度に間に合わないとCPU202が判断した場合は、中間データ生成時間とレンダリング時間の空白時間805を算出する(S703)。ここで、空白時間805について、図8を参照して説明する。
図8に示すように、印刷時間の予測において、印刷装置側で印刷用のデータとして変更される中間データ生成時間801と、描画の際にかかる処理をレンダリング時間802とし、ページ毎に算出する。この2つの処理時間が印刷装置のエンジン速度に間に合わないとき、双方の処理時間に空白時間805が生じる。
図8に示すように、印刷時間の予測において、印刷装置側で印刷用のデータとして変更される中間データ生成時間801と、描画の際にかかる処理をレンダリング時間802とし、ページ毎に算出する。この2つの処理時間が印刷装置のエンジン速度に間に合わないとき、双方の処理時間に空白時間805が生じる。
図9は、本実施形態を示す印刷装置のデータ処理方法を説明するフローチャートである。本例は、図8に示す空白時間805を算出する処理、より具体的には、S703に示すページ毎の空白時間の算出処理の詳細手順である。なお、各ステップは、CPU202がHDD209、ROM205に記憶される制御プログラムをRAM204にロードして実行することで実現される。ここで、図9で使用する文書画像データ512は複数ページで構成されているとする。
CPU202は、最初に空白時間が最も大きいページを示す変数empty_page、空白時間を算出するページをカウントするためのカウンタNを初期化(変数empty_page(=0)、カウンタN(=1))する(S901)。次に、CPU202は、N+1ページの中間データ生成時間の総和と、レンダリング時間の総和を算出するための変数iを「1」とする(S902)。
CPU202は、最初に空白時間が最も大きいページを示す変数empty_page、空白時間を算出するページをカウントするためのカウンタNを初期化(変数empty_page(=0)、カウンタN(=1))する(S901)。次に、CPU202は、N+1ページの中間データ生成時間の総和と、レンダリング時間の総和を算出するための変数iを「1」とする(S902)。
そして、CPU202は、S906で、変数iがNページ目までカウントされたと判断されるまで(906)、S902〜S906を繰り返す。具体的には、S903で、CPU202は、iページ目のレンダリング時間を算出してレンダリング処理時間として加算し、S904で、CPU202は、i+1ページ目の中間データ生成時間を算出して中間データ生成時間として加算する。そして、CPU202は、変数iを「1」インクリメントして、S906で、CPU202は、変数iがNよりも小さいかどうかを判断する。ここで、変数iがNよりも小さいと判断した場合は、S902へ戻り、同様の処理を繰り返す。
一方、S906で、CPU202が変数iがN以上であると判断した場合は、S907へ進む。
そして、CPU202は、中間データ生成時間とレンダリング時間との差分から空白時間を算出する(S907)。そして、CPU202は、Nページ目の空白時間805が前回のページのときと比較して大きいかどうかを判断する(908)。ここで、空白時間が前回よりも大きいとCPU202が判断した場合は、CPU202は、変数empty_pageの値を更新して(S909)、S910へ進む。これは、最も空白時間の値が大きかったページを算出するためである。なお、空白時間とは、中間データ生成時間とレンダリング時間とを比較して各ページ間でレンダリングを休止すべき空白時間を意味する。
一方、S906で、CPU202が変数iがN以上であると判断した場合は、S907へ進む。
そして、CPU202は、中間データ生成時間とレンダリング時間との差分から空白時間を算出する(S907)。そして、CPU202は、Nページ目の空白時間805が前回のページのときと比較して大きいかどうかを判断する(908)。ここで、空白時間が前回よりも大きいとCPU202が判断した場合は、CPU202は、変数empty_pageの値を更新して(S909)、S910へ進む。これは、最も空白時間の値が大きかったページを算出するためである。なお、空白時間とは、中間データ生成時間とレンダリング時間とを比較して各ページ間でレンダリングを休止すべき空白時間を意味する。
一方、S908で、空白時間805が前回よりも小さいとCPU202が判断した場合は、次のページの空白時間を算出するため、CPU202は、カウンタNの値を「1」インクリメントして更新する(S910)。
そして、CPU202は、最終ページまで空白時間の算出が終了しているかどうかをカウンタNが最終ページ以上であるかどうかから判断する(911)。ここで、最終ページまで空白時間の算出が終了していないと判断した場合は、S902へ戻る。
一方、S911で、最終ページまで空白時間の算出が終了していると判断した場合は、本処理を終了する。
これにより、各ページでの空白時間を算出したとき、双方の処理時間に差が生じたとき(空白時間805)の差が最も大きいページXを抽出することができる。
そして、CPU202は、最終ページまで空白時間の算出が終了しているかどうかをカウンタNが最終ページ以上であるかどうかから判断する(911)。ここで、最終ページまで空白時間の算出が終了していないと判断した場合は、S902へ戻る。
一方、S911で、最終ページまで空白時間の算出が終了していると判断した場合は、本処理を終了する。
これにより、各ページでの空白時間を算出したとき、双方の処理時間に差が生じたとき(空白時間805)の差が最も大きいページXを抽出することができる。
ここで、図7の説明に戻り、CPU202は、上記の方法で空白時間805が存在するかどうかの判別をする(704)。ここで、CPU202は、空白時間805が存在するかどうかは、図9で使用した変数empty_pageの値が「0」であるか否かで判別する。ここで、変数empty_pageが「0」以上でないとCPU202が判別した場合、空白時間805が常に「0」であったことを示し、S706へ進む。
一方、S704で、空白時間が存在するとCPU202が判別した場合、抽出したページXの描画オブジェクトなどの特徴から、文書画像データに対して空白時間を小さくする最適化レベルを選択する(705)。
一方、S704で、空白時間が存在するとCPU202が判別した場合、抽出したページXの描画オブジェクトなどの特徴から、文書画像データに対して空白時間を小さくする最適化レベルを選択する(705)。
最適化レベルは、従来では1パターンの描画方法のみにしか対応しなかった文書画像データ512が、データの傾向により描画方法の最適化をすることで描画内容の変更と処理時間の向上を目的としている。最適化するレベルは各レベルで処理する内容が異なるが、詳細は後述する。
図10は、本実施形態を示す印刷装置のデータ処理方法を説明するフローチャートである。本例は、図7に示すS705の最適化レベル変更処理の詳細手順である。なお、各ステップは、CPU202がHDD209、ROM205に記憶される制御プログラムをRAM204にロードして実行することで実現される。以下、文書画像データに含まれるオブジェクト属性毎のデータ量を判別して空白時間を短縮するように文書画像データに対して処理すべき最適化のレベルを変更する処理を説明する。
まず、CPU202は、ページXのページオブジェクト614から、オブジェクトの特徴とその内容を変更するためにイメージデータの数1001が所定値以上含まれるかどうかを判断する(S1001)。ここで、イメージデータの数1001が所定値以上含まれるとCPU202が判断した場合は、S1005へ進み、文書画像データに対する最適化レベルを最適化レベル1に変更して、本処理を終了する。これにより、選択された最適化レベルによって中間データ生成時間とレンダリング時間との処理時間の負荷が変更される。
ここで、最適化レベル1に変更されたた場合、CPU202は、イメージ画像の描画方法を変更する。例えば文書画像データ512のビットマップイメージが回転処理や、拡大縮小処理をするときに中間データの生成時に行うか、もしくはレンダリング中に行うかを選択する。
ここで、最適化レベル1に変更されたた場合、CPU202は、イメージ画像の描画方法を変更する。例えば文書画像データ512のビットマップイメージが回転処理や、拡大縮小処理をするときに中間データの生成時に行うか、もしくはレンダリング中に行うかを選択する。
図11は、本実施形態を示す印刷装置のデータ処理方法を説明するフローチャートである。本例は、図10に示すS1005の最適化レベル1の変更処理の詳細手順である。なお、各ステップは、CPU202がHDD209、ROM205に記憶される制御プログラムをRAM204にロードして実行することで実現される。以下、文書画像データ中の特定のオブジェクトに対する処理をレンダリング時に処理するか、中間データ生成時に処理するかを決定する処理を説明する。本実施形態では、中間データ生成時に実行可能な特定の画像処理をレンダリング時に実行するように制御する例を説明する。ここで、特定の画像処理とは、拡大縮小処理と、回転処理とを含む例を示す。
CPU202は、最初に対象の文書画像データでは、ページ内に回転イメージが含まれるかどうかを判断する(S1101)。ここで、回転イメージを含むとCPU202が判断した場合は、S1102へ進む。
そして、S1102で、CPU202は、中間データ生成時間とレンダリング時間との処理時間の比較をしてレンダリング時間の方が短いかどうかを判断する(S1102)。ここで、中間データ生成時間がレンダリング時間よりも処理時間が長いと判断した場合、CPU202は、レンダリング中に回転イメージを生成するよう変更して(S1104)、S1105へ進む。
CPU202は、最初に対象の文書画像データでは、ページ内に回転イメージが含まれるかどうかを判断する(S1101)。ここで、回転イメージを含むとCPU202が判断した場合は、S1102へ進む。
そして、S1102で、CPU202は、中間データ生成時間とレンダリング時間との処理時間の比較をしてレンダリング時間の方が短いかどうかを判断する(S1102)。ここで、中間データ生成時間がレンダリング時間よりも処理時間が長いと判断した場合、CPU202は、レンダリング中に回転イメージを生成するよう変更して(S1104)、S1105へ進む。
一方、S1102で、中間データ生成時間とレンダリング時間との処理時間の比較をしてレンダリング時間の方が長いとCPU202が判断した場合は、S1103へ進む。そして、CPU202は、中間データを生成するときに回転処理をするように変更する(S1103)。
これにより、中間データ生成時間とレンダリング時間の処理時間のトレードオフが変更されて、2つの処理時間の総和を変更することができる。
次に、CPU202は、イメージの拡大縮小処理があるかどうかを判断する(S1105)。ここで、イメージの拡大縮小処理があるとCPU202が判断した場合は、中間データ生成時間とレンダリング時間との時間を比較してレンダリング時間の方が短いかどうかを判断する(S1106)。ここで、中間データ生成時間がレンダリング時間よりも処理時間が長いと判断した場合、CPU202は、レンダリング中に拡大縮小イメージを生成するよう変更して(S1108)、処理を終了する。
これにより、中間データ生成時間とレンダリング時間の処理時間のトレードオフが変更されて、2つの処理時間の総和を変更することができる。
次に、CPU202は、イメージの拡大縮小処理があるかどうかを判断する(S1105)。ここで、イメージの拡大縮小処理があるとCPU202が判断した場合は、中間データ生成時間とレンダリング時間との時間を比較してレンダリング時間の方が短いかどうかを判断する(S1106)。ここで、中間データ生成時間がレンダリング時間よりも処理時間が長いと判断した場合、CPU202は、レンダリング中に拡大縮小イメージを生成するよう変更して(S1108)、処理を終了する。
一方、S1106で中間データ生成時間がレンダリング時間よりも処理時間が短いと判断した場合、CPU202は、中間データ生成中に拡大縮小イメージを生成するよう変更して(S1107)、処理を終了する。
一方、S1105で、イメージの拡大縮小処理がないとCPU202が判断した場合は、本処理を終了する。
ここで、図10に示したS1002以降の処理について説明する。
一方、S1105で、イメージの拡大縮小処理がないとCPU202が判断した場合は、本処理を終了する。
ここで、図10に示したS1002以降の処理について説明する。
S1001で、イメージデータの数1001が一定値以上でないとCPU202が判断した場合は、CPU202は、ページXにグラフィックスデータが一定値以上存在するかどうかを判断する(S1002)。
ここで、ページXにグラフィックスデータが一定値以上存在するとCPU202が判断した場合は、文書画像データ512に対する最適化レベルを最適化レベル2へ変更して(S1006)、本処理を終了する。
最適化レベル2では、大量のグラフィックスデータに対してオブジェクトを描画する順序を入れ替える。これは、同一色のオブジェクトかつ同じ位置に上書きするオブジェクトが複数存在する場合、描画するオブジェクトの順番を入れ替えることで、重複するオブジェクトを削減する。これにより、中間データ生成時に同じオブジェクトの描画を複数作成するといった手間を省くことができる。
ここで、ページXにグラフィックスデータが一定値以上存在するとCPU202が判断した場合は、文書画像データ512に対する最適化レベルを最適化レベル2へ変更して(S1006)、本処理を終了する。
最適化レベル2では、大量のグラフィックスデータに対してオブジェクトを描画する順序を入れ替える。これは、同一色のオブジェクトかつ同じ位置に上書きするオブジェクトが複数存在する場合、描画するオブジェクトの順番を入れ替えることで、重複するオブジェクトを削減する。これにより、中間データ生成時に同じオブジェクトの描画を複数作成するといった手間を省くことができる。
一方、S1002で、ページXにグラフィックスデータが一定値以上存在しないとCPU202が判断した場合は、S1003で、CPU202は、ページXにグラデーションデータが一定値以上存在するかどうかを判断する。ここで、ページXにグラデーションデータが一定値以上存在するとCPU202が判断した場合は、S1007へ進む。そして、CPU202は、文書画像データ512に対する最適化レベルを最適化レベル3へ変更して(S1007)、本処理を終了する。
最適化レベル3については、グラデーションデータの描画方法を複数のイメージ描画で構成するか、1つのグラデーション描画に置き変えるかを選択する。複数のイメージで構成されるグラデーション描画は、処理の負荷を中間データ生成時か、もしくはレンダリング中かで変更する。最適化レベルの変更により、空白時間が発生しないための条件として、中間データ生成時間とレンダリング時間との差が縮まるように修正する効果ある。
最適化レベル3については、グラデーションデータの描画方法を複数のイメージ描画で構成するか、1つのグラデーション描画に置き変えるかを選択する。複数のイメージで構成されるグラデーション描画は、処理の負荷を中間データ生成時か、もしくはレンダリング中かで変更する。最適化レベルの変更により、空白時間が発生しないための条件として、中間データ生成時間とレンダリング時間との差が縮まるように修正する効果ある。
上記実施形態では、文書画像データ512の印刷時間が改善されるように、空白時間805が最も大きいページを検出する方法を説明したが、最適化レベルを変更するのはジョブ単位だけでなくページ単位で行ってもよい。
また、各最適化レベルを反映させたときの文書画像データ512の印刷時間を予測して、それぞれのジョブの印刷時間を比較したときに最も時間が速い最適化レベルを選択する方法でもよい。
このように、最適化レベルを変更する方法としては本実施形態のようにページ毎の空白時間を求める方法にこだわらずに印刷時間の短縮を目指す方法として、文書画像データ512の最適化レベルを変更できればよい。
また、各最適化レベルを反映させたときの文書画像データ512の印刷時間を予測して、それぞれのジョブの印刷時間を比較したときに最も時間が速い最適化レベルを選択する方法でもよい。
このように、最適化レベルを変更する方法としては本実施形態のようにページ毎の空白時間を求める方法にこだわらずに印刷時間の短縮を目指す方法として、文書画像データ512の最適化レベルを変更できればよい。
これにより、CPU202は、文書画像データ512から印刷時間を予測した結果から最適化レベルを決定する。そして、CPU202は、文書画像データ512の最適化レベルに合わせて、ページオブジェクトの描画方法を変更するよう文書画像データ512の構成を作り直す処理を実行する。
一方、S1003で、抽出したページXにグラデーションデータが一定値以上存在しないと判断した場合は、S1004へ進み、CPU202は、ページオブジェクトの一部をビットマップイメージへ変換する処理を実行して、本処理を終了する。
以下、印刷予測時間がプリンタ102のエンジン速度に間に合わないかつ空白時間がないとき(706)と、空白時間805が存在するが最適化レベル1から最適化レベル3までに該当しない場合の、S1004の詳細処理について説明する。
以下、印刷予測時間がプリンタ102のエンジン速度に間に合わないかつ空白時間がないとき(706)と、空白時間805が存在するが最適化レベル1から最適化レベル3までに該当しない場合の、S1004の詳細処理について説明する。
このパターンは、文書画像データ512を最適化する際に予想されるパターンのうち、できるだけ実行させたくないパターンである。この場合、文書画像データ512内の複数のページオブジェクト606をあらかじめビットマップイメージに変換しておく。以下、本パターンの処理を図3に従い説明する。
本パターンにおいて、印刷時間がエンジン速度に間に合うようにするためには、あらかじめ、印刷すべきデータを先行して描画しておく必要がある。そこで、文書画像データ解析部303は、ページオブジェクト606から複数のオブジェクトをデータ描画部304に送信する。
そして、データ描画部304で作成したビットマップイメージは、ドキュメント記憶部307に保管される。ここで、先行してビットマップデータを生成するときに、ドキュメント記憶部307の記憶容量を超える領域を生成しないように注意する。文書描画データが先行してレンダリング結果を保持しておくことで、エンジン速度に間に合う中間データ生成とレンダリングを実現することができる。
本パターンにおいて、印刷時間がエンジン速度に間に合うようにするためには、あらかじめ、印刷すべきデータを先行して描画しておく必要がある。そこで、文書画像データ解析部303は、ページオブジェクト606から複数のオブジェクトをデータ描画部304に送信する。
そして、データ描画部304で作成したビットマップイメージは、ドキュメント記憶部307に保管される。ここで、先行してビットマップデータを生成するときに、ドキュメント記憶部307の記憶容量を超える領域を生成しないように注意する。文書描画データが先行してレンダリング結果を保持しておくことで、エンジン速度に間に合う中間データ生成とレンダリングを実現することができる。
最後に、一般的な文書をもとに本実施形態での効果について図8を用いて説明する。
図8に示す例では、印刷データが合計3ページのデータを想定しており、CPU202が印刷時間を予測する処理(S701)で、図8に示すように中間データ生成時間とレンダリング時間を取得する。そして、CPU202は、2ページ目のレンダリング時間を加算したレンダリング時間804と、2ページ目から3ページ目までの中間データ生成時間803の空白時間805を算出する(S703)。
ここで、CPU202は、すべてのページの空白時間805を算出して、最も差が大きかったページが2ページ目のレンダリング時間であると判断する(S907)。次に、CPU202は、空白時間805が存在したため、文書画像データ512の最適化レベルを設定する処理へ移行する(S705)。
図8に示す例では、印刷データが合計3ページのデータを想定しており、CPU202が印刷時間を予測する処理(S701)で、図8に示すように中間データ生成時間とレンダリング時間を取得する。そして、CPU202は、2ページ目のレンダリング時間を加算したレンダリング時間804と、2ページ目から3ページ目までの中間データ生成時間803の空白時間805を算出する(S703)。
ここで、CPU202は、すべてのページの空白時間805を算出して、最も差が大きかったページが2ページ目のレンダリング時間であると判断する(S907)。次に、CPU202は、空白時間805が存在したため、文書画像データ512の最適化レベルを設定する処理へ移行する(S705)。
最適化レベルの検証の際に、CPU202は、2ページ目の文書画像データ512にイメージデータが閾値以上も存在するかどうかを判断する(S1001)。ここで、文書画像データの各ページでは、最適化レベル1(図11)の最適化により、CPU202は、中間データ生成時間801とレンダリング時間802の比較から、イメージの生成方法を変更する。この場合、CPU202は、中間データ生成時間803がレンダリング時間804よりも遅いため、レンダリングでのイメージ処理を負荷分散する(S1104,S1108)。
これにより、CPU202が最適化後の印刷時間を再度予測(S701)した結果、前回予測した時の空白時間805が無くなり印刷時間を削減(時間806)することができる。
以上の印刷時間の修正により、空白時間を埋める最適化レベルを文書画像データ512に反映することで、印刷時間を従来よりも高速にすることができる。
これにより、CPU202が最適化後の印刷時間を再度予測(S701)した結果、前回予測した時の空白時間805が無くなり印刷時間を削減(時間806)することができる。
以上の印刷時間の修正により、空白時間を埋める最適化レベルを文書画像データ512に反映することで、印刷時間を従来よりも高速にすることができる。
本発明の各工程は、ネットワーク又は各種記憶媒体を介して取得したソフトウエア(プログラム)をパソコン(コンピュータ)等の処理装置(CPU、プロセッサ)にて実行することでも実現できる。
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施形態の有機的な組合せを含む)が可能であり、それらを本発明の範囲から除外するものではない。
101 外部機器
102 プリンタ
102 プリンタ
Claims (6)
- 複数ページからなる文書画像データを解析して生成する画像を搬送する用紙に画像形成する印刷装置であって、
各ページの文書画像データを解析して中間データを生成するための中間データ生成時間と、生成される中間データをレンダリングするためのレンダリング時間とを加算して各ページの印刷時間を予測する予測手段と、
前記予測手段が予測した各ページの印刷時間から各ページに対して搬送される用紙に対して画像を形成しなければならないタイミングに間に合うかどうか判断する判断手段と、
前記画像を形成しなければならないタイミングに合わないと判断した場合、前記中間データ生成時間と前記レンダリング時間とを比較して各ページ間でレンダリングを休止すべき空白時間が存在するかどうかを判別する判別手段と、
前記判別手段により前記空白時間が存在すると判別された場合、前記文書画像データ中の特定のオブジェクトに対する処理をレンダリング時に処理するか、中間データ生成時に処理するかを決定するための最適化レベルを変更する変更手段と、
を備えることを特徴とする印刷装置。 - 前記最適化のレベルは、前記文書画像データに含まれるイメージデータ、グラフィックスデータ、グラデーションデータが所定値以上含まれるかどうかにより決定することを特徴とする請求項1記載のデータ処理装置。
- 前記変更手段が変更する最適化のレベルに応じて、前記文書画像データ中の特定のオブジェクトに対する処理をレンダリング時に処理するか、中間データ生成時に処理するかを制御する制御手段と、
を備えることを特徴とする請求項1記載の印刷装置。 - 前記判別手段により前記空白時間が存在しないと判別された場合、前記文書画像データに含まれるオブジェクトの一部をビットマップイメージへ変換する変換手段を備えることを特徴とする請求項1記載の印刷装置。
- 複数ページからなる文書画像データを解析して生成する画像を搬送する用紙に画像形成する印刷装置におけるデータ処理方法であって、
各ページの文書画像データを解析して中間データを生成するための中間データ生成時間と、生成される中間データをレンダリングするためのレンダリング時間とを加算して各ページの印刷時間を予測する予測工程と、
前記予測工程が予測した各ページの印刷時間から各ページに対して搬送される用紙に対して画像を形成しなければならないタイミングに間に合うかどうか判断する判断工程と、
前記画像を形成しなければならないタイミングに合わないと判断した場合、前記中間データ生成時間と前記レンダリング時間とを比較して各ページ間でレンダリングを休止すべき空白時間が存在するかどうかを判別する判別工程と、
前記判別工程により前記空白時間が存在すると判別された場合、前記文書画像データ中の特定のオブジェクトに対する処理をレンダリング時に処理するか、中間データ生成時に処理するかを決定するための最適化レベルを変更する変更工程と、
を備えることを特徴とするデータ処理方法。 - 請求項5に記載のデータ処理方法をコンピュータに実行させることを特徴とするプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011107010A JP2012236344A (ja) | 2011-05-12 | 2011-05-12 | 印刷装置、印刷装置のデータ処理方法及びプログラム |
US13/466,932 US8705132B2 (en) | 2011-05-12 | 2012-05-08 | Printing apparatus, data processing method for printing apparatus and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011107010A JP2012236344A (ja) | 2011-05-12 | 2011-05-12 | 印刷装置、印刷装置のデータ処理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012236344A true JP2012236344A (ja) | 2012-12-06 |
Family
ID=47141695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011107010A Withdrawn JP2012236344A (ja) | 2011-05-12 | 2011-05-12 | 印刷装置、印刷装置のデータ処理方法及びプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8705132B2 (ja) |
JP (1) | JP2012236344A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017052218A (ja) * | 2015-09-11 | 2017-03-16 | キヤノン株式会社 | 画像処理装置、画像処理方法、プログラム |
CN112015355A (zh) * | 2019-05-29 | 2020-12-01 | 理想科学工业株式会社 | 印刷数据生成装置 |
KR102454774B1 (ko) * | 2021-10-05 | 2022-10-17 | 신우진 | 뉴럴 네트워크를 이용한 장치 가상화 장치 및 방법 |
US11934899B2 (en) | 2020-08-18 | 2024-03-19 | Seiko Epson Corporation | Information processing device, prediction method, and non-transitory computer-readable storage medium storing program |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6218643B2 (ja) * | 2014-03-03 | 2017-10-25 | キヤノン株式会社 | 画像処理装置、画像処理方法及びプログラム |
JP6639198B2 (ja) * | 2015-05-20 | 2020-02-05 | キヤノン株式会社 | 画像形成装置、画像形成装置の制御方法及びプログラム |
JP2018144372A (ja) | 2017-03-07 | 2018-09-20 | キヤノン株式会社 | 画像形成装置、画像形成装置の制御方法、及びプログラム |
JP2018144361A (ja) * | 2017-03-07 | 2018-09-20 | キヤノン株式会社 | 画像形成装置、画像形成装置の制御方法、及びプログラム |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09218861A (ja) | 1996-02-08 | 1997-08-19 | Fuji Xerox Co Ltd | スケジューラ |
JPH10147017A (ja) * | 1996-11-18 | 1998-06-02 | Canon Inc | 印刷装置及びデータ制御方法 |
JP5371392B2 (ja) * | 2008-11-25 | 2013-12-18 | キヤノン株式会社 | 画像形成装置、画像形成装置の制御方法及び制御プログラム |
JP5210913B2 (ja) * | 2009-02-05 | 2013-06-12 | 京セラドキュメントソリューションズ株式会社 | 画像形成装置及び画像形成方法 |
JP2011140186A (ja) * | 2010-01-08 | 2011-07-21 | Canon Inc | 印刷装置、及び印刷方法、並びに印刷方法を実行するプログラム |
-
2011
- 2011-05-12 JP JP2011107010A patent/JP2012236344A/ja not_active Withdrawn
-
2012
- 2012-05-08 US US13/466,932 patent/US8705132B2/en not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017052218A (ja) * | 2015-09-11 | 2017-03-16 | キヤノン株式会社 | 画像処理装置、画像処理方法、プログラム |
CN112015355A (zh) * | 2019-05-29 | 2020-12-01 | 理想科学工业株式会社 | 印刷数据生成装置 |
JP2020192745A (ja) * | 2019-05-29 | 2020-12-03 | 理想科学工業株式会社 | 印刷データ生成装置 |
JP7351641B2 (ja) | 2019-05-29 | 2023-09-27 | 理想科学工業株式会社 | 印刷データ生成装置 |
US11934899B2 (en) | 2020-08-18 | 2024-03-19 | Seiko Epson Corporation | Information processing device, prediction method, and non-transitory computer-readable storage medium storing program |
JP7502718B2 (ja) | 2020-08-18 | 2024-06-19 | セイコーエプソン株式会社 | 情報処理装置、予測方法、プログラム、学習装置 |
KR102454774B1 (ko) * | 2021-10-05 | 2022-10-17 | 신우진 | 뉴럴 네트워크를 이용한 장치 가상화 장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
US20120287476A1 (en) | 2012-11-15 |
US8705132B2 (en) | 2014-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2012236344A (ja) | 印刷装置、印刷装置のデータ処理方法及びプログラム | |
JP5171461B2 (ja) | 情報処理装置および情報処理方法並びに情報処理システム及びプログラム | |
JP3745179B2 (ja) | 情報処理装置及びその制御方法及び記憶媒体 | |
US7973964B2 (en) | Printing program that adjusts annotation location and size | |
JP6904717B2 (ja) | 画像処理装置、その制御方法、およびプログラム | |
US8098385B2 (en) | Spool file modifying device | |
JP2017189968A (ja) | 画像処理装置及び画像処理方法 | |
JP5896610B2 (ja) | 装置、方法およびプログラム | |
JP2011025539A (ja) | プリンタ装置、画像出力システム、レンダリング方法、及びプログラム | |
JP2009269179A (ja) | 印刷装置、プログラム及び記録媒体 | |
JP5424546B2 (ja) | 画像処理装置及び画像形成システム | |
JP2007152898A (ja) | 印刷処理装置 | |
JP4280606B2 (ja) | 画像形成制御装置及びその制御方法とプリンタドライバ及び印刷制御装置および印刷制御方法 | |
JP2010012737A (ja) | 印刷制御装置、印刷処理システム、描画処理方法およびプログラム | |
JP5526863B2 (ja) | プリンタドライバ、及び印刷制御装置 | |
JP3612899B2 (ja) | 印刷処理装置 | |
JP2001239717A (ja) | デジタル印刷制御装置およびデジタル印刷システム | |
JPH10305639A (ja) | 印刷処理装置および印刷処理方法 | |
JPH10151815A (ja) | 印刷処理装置 | |
JP2007081886A (ja) | 描画処理装置 | |
JP2006031086A (ja) | 印刷処理方法 | |
JP5310538B2 (ja) | 印刷制御プログラム、及び情報処理装置 | |
JP2006012059A (ja) | 情報処理装置、情報処理方法、プログラム、及び、記憶媒体 | |
JP2019192087A (ja) | 情報処理装置、プログラム、情報処理方法 | |
JPH11203064A (ja) | 画像処理装置および方法およびプログラム記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20140805 |