JP5641711B2 - 画像形成装置、制御方法、及びプログラム - Google Patents

画像形成装置、制御方法、及びプログラム Download PDF

Info

Publication number
JP5641711B2
JP5641711B2 JP2009120395A JP2009120395A JP5641711B2 JP 5641711 B2 JP5641711 B2 JP 5641711B2 JP 2009120395 A JP2009120395 A JP 2009120395A JP 2009120395 A JP2009120395 A JP 2009120395A JP 5641711 B2 JP5641711 B2 JP 5641711B2
Authority
JP
Japan
Prior art keywords
processing
command
drawing command
pdl
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.)
Expired - Fee Related
Application number
JP2009120395A
Other languages
English (en)
Other versions
JP2010264731A5 (ja
JP2010264731A (ja
Inventor
大樹 武石
大樹 武石
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2009120395A priority Critical patent/JP5641711B2/ja
Priority to US12/756,468 priority patent/US8526022B2/en
Publication of JP2010264731A publication Critical patent/JP2010264731A/ja
Publication of JP2010264731A5 publication Critical patent/JP2010264731A5/ja
Application granted granted Critical
Publication of JP5641711B2 publication Critical patent/JP5641711B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1211Improving printing performance
    • G06F3/1212Improving printing performance achieving reduced delay between job submission and print start
    • G06F3/1214Improving printing performance achieving reduced delay between job submission and print start at the submitting node
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1245Job translation or job parsing, e.g. page banding by conversion to intermediate or common format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Record Information Processing For Printing (AREA)
  • Facsimiles In General (AREA)

Description

本特許は、画像形成のためのPDL処理やレンダリング処理と呼ばれる画像形成装置、制御方法、及びプログラム処理に関する。特に、複数の処理装置を持つプリンタや複合機に代表される画像形成装置において、必要なPDL処理、中間データ生成処理、及びレンダリング処理の高速化に関する。
従来、画像形成装置内で行われるレンダリングに関する処理は、複数の処理装置が各々画像形成にかかる処理を分担することで、画像形成を可能たらしめている。
また、従来から画像形成処理に係る高速化手法として、異なるデバイス間における処理の分担による高速化が行われてきた。例えば非特許文献2では、情報処理装置(PC)と、画像形成装置(複合機)との間の処理にかかる高速化手法が示されている。この技術による画像形成処理の特徴は、情報処理装置と画像形成装置とで、画像形成に係る処理の負荷分散を行っている点にある。すなわち、ページレイアウト処理や、グラフィック処理、画像処理などの処理を情報処理装置と画像形成装置との間で処理コストの最適化を行い、情報処理装置からの印刷処理開始から印刷エンジンによって行われる印刷までにかかる時間を短縮している。
また、上記のような画像形成処理を高速化する別の手法として、画像形成装置内の処理装置を複数にすることで高速化が行われてきた。例えば特許文献1では、二つのCPUとレンダリングを行う「レンダリングエンジン」の三つの処理装置で処理を分担し、大量のデータに対し並行処理を行うことで高速に処理する手法が示されている。この技術による画像形成処理は、異なる処理が可能な処理装置を複数接続し、画像形成に係る処理を分割して、各々の処理装置内で画像形成にかかる処理を行うことで高速に画像生成を行っている。
特開平10−307924号公報
キヤノン株式会社、"Canon technology コントローラアーキテクチャ"、[online]、平成21年、キヤノン株式会社、[平成21年3月26日検索]、 インターネット<URL:http://web.canon.jp/technology/canon_tech/explanation/ir_controller.html> キヤノン株式会社、"Canon technology UFR/LIPS V"、[online]、平成21年、キヤノン株式会社、[平成21年3月26日検索]、 インターネット 、<URL:http://web.canon.jp/technology/canon_tech/explanation/hspeed_processing.html>
上述したように、従来技術では、複数の異なる処理を、複数の異なる処理装置を用いて実行することで、画像形成に係る処理の高速化を実現している。
しかし、従来手法では、画像形成処理に係る、PDL解析処理(すなわち、PDLインタプリタ)は、PDLデータに基づきPDLデータ解析し中間データを生成する。そして、レンダリング処理(すなわち、レンダラー)は、生成した中間データに基づき、レンダリング処理を行い、ラスタイメージデータを生成する。上記、各々の処理ステップにおいて、その実行中の処理が次のステップの処理速度を低下せしめるか否かに関係なく処理を続行した結果、処理速度を低下せしめるという問題があった。より具体的には、従来技術に基づくレンダリング処理は、大量に重なった描画命令や、大量の奥行き情報を持つ描画命令を持つ中間データを受け取ると、その中間データが持つ奥行き情報や重なり情報の煩雑さによって処理速度が著しく低下する。従来技術では、このレンダラーの処理速度を著しく低下せしめるかどうかに関係なくPDL解析処理を行う。つまり、PDLインタプリタはたとえすでに生成された中間データに、解析中のPDLデータの解析に因る中間データの追加がレンダリング処理の速度を著しく低下させるとしても、PDL解析処理を続行する。
よって、従来技術には、画像形成に係る処理中に、すでに生成された中間データに対する解析中のPDLデータに基づく中間データ追加が、その両者の特徴に依存してレンダリング処理の速度を著しく低下せしめるか否かを判断していない。上記判断をしていないことによって、画像形成に係る処理中に、レンダリング処理が高速になるように前もってPDL解析中に最適化処理を行うことができないという問題があった。
本発明は、上記の従来技術の課題を鑑み、以下の構成を備える。すなわち、PDLで記述された複数の描画命令を含む、PDLデータを受信する受信手段と、前記PDLデータに含まれる前記複数の描画命令に対して決定処理を描画命令ごとに行い、当該決定処理の結果に基づいて描画命令ごとの中間データを生成する生成手段と、前記生成された中間データに基づいた描画を行うことでラスターイメージデータを生成する描画手段とを有し、前記決定処理は、当該決定処理の対象の描画命令に対応するパラメータと、当該描画命令の種類によって決定される閾値とを比較することで、当該描画命令とは別の描画命令が生成されることになる所定の処理が、当該描画命令に適用されるか否かを決定する処理である。
本発明では、予めPDLデータ解析中において、レンダリング処理の最適化を行うことにより、画像形成に係る処理中にレンダリング処理が高速になる。
本実施形態における情報処理装置と画像形成装置とを説明する図。 本実施形態におけるPDLデータ、及び、中間データを説明する図。 本実施形態における画像形成に係る処理の流れを説明する図。 本実施形態における画像形成装置を説明する図。 本実施形態におけるPDL解析処理からレンダリング処理までの流れを説明する図。 本実施形態におけるPDLインタプリタによる高速化処理の流れを説明する図。 本実施形態におけるソフトウェアモジュールの関係を示す図。 線形、及び放射シェーディングを説明するための図。 パターンを説明するための図。 文字描画命令の例を説明するための図。 PDLデータによるオブジェクト描画を説明するための図。 セルをタイル状に描画することを説明するための図。 本実施形態における中間データ生成コストを求める処理のフローチャートを示す図。 本実施形態における描画命令それぞれの中間データ生成コストを示す図。 本実施形態に係る各処理の処理時間の経過を説明するための図。
<第一の実施形態>
以下、本発明を実施するための形態について図面を用いて説明する。なお、本明細書では、PDLインタプリタがPDLデータを得てPDLデータを解析する処理をPDL解析処理、もしくはPDL処理と呼ぶ。また、本明細書では、中間データ生成部が上記PDLデータの解析に基づき中間データを生成し、レンダラーがこの中間データからラスタイメージデータを得る処理をレンダリング処理と呼ぶ。
[画像形成に係る処理]
図1は本発明の第一の実施形態に係る画像形成装置12と画像形成装置12に接続された情報処理装置11の構成を示すブロック図である。情報処理装置11は、PCやパーソナルコンピュータ、ワークステーションなどが該当する。情報処理装置11は同装置上でPDLデータ100を生成することが出来る。さらに情報処理装置11はネットワークやUSBに代表されるインタフェースを経由してPDLデータ100を含むデータを情報処理装置11の外部の装置に転送することが出来る。画像形成装置12は、プリンタや複合機などと呼ばれる画像形成装置12であり、PDLデータ100に代表されるデータをもとに、紙に代表されるような媒体に可視像を形成することが出来る。
図2において、図2(a)はPDLデータ100、図2(b)は印刷データ102を説明する図である。PDLデータ100は描画データ100−1と印刷制御データ100−2を含む。描画データ100−1は画像形成装置が形成する0以上の可視情報を持つ。印刷制御データ100−2は紙サイズや面付け処理、色変換処理などに係る情報を持つ。
次に、画像形成装置12の上述した紙などの媒体に可視像を形成するための、画像形成に係る処理を説明する。図3は、画像形成装置12が行う画像形成に係る処理のフロー図である。先ず、s10でネットワーク装置12−1が情報処理装置11からPDLデータを得る。ネットワーク装置12−1はIEEE802.3に代表される手法で他装置と通信を行うことで、上記PDLデータ含むデータを得ることが出来る。また、このs10の処理はUSB装置12−2を用いて他装置と通信を行い、上記PDLデータ含むデータを得ても本発明を実施できる。このUSB装置は、USB2.0に代表される手法で他装置と通信可能である。このほかにも画像形成装置12をIEEE1394aやRS−232Cまたは、IEEE1284に準拠したインタフェースを介して他装置と接続することで、上記PDLデータ含むデータを得ても本発明は実施可能である。上述したような手法で、画像形成装置12が情報処理装置11に代表される他装置から得たPDLデータは、次に画像形成装置12内の画像形成処理装置12−3が受け取る(s11)。画像形成処理装置12−3は、このPDLデータに基づいて印刷データを生成する。
次に、s11で画像形成処理装置12−3がPDLデータ100を得る。画像形成処理装置12−3は得たPDLデータに基づいてs12で印刷データ102を生成する。次にs14で、印刷エンジン12−4がこの印刷データ102を得る。印刷データ102は図2(b)が示すように、ラスタイメージデータと、印刷エンジン制御データを持つ。印刷エンジンは得た印刷データ102をもとに画像形成を行い、紙などの媒体上に可視像を形成する。
[画像形成処理装置内の処理]
次に画像形成の中でも、上述した画像形成処理装置12−3内で行われる図3のs12で示した処理についてより詳細に説明する。図4は画像形成装置12が有する画像形成処理装置12−3の構成の例を図示している。画像形成処理装置12−3は、CPUに代表される汎用プロセッサであるレンダラー装置12−3−1を備える。レンダラー装置12−3−1は中間データを得て、ラスタイメージデータを生成する。処理装置12−3−2及び12−3−3は、PDL解析処理や、中間データの生成処理を行う。処理部としての機能を有し、CPUなどがこれに該当する。なお、本実施形態では、画像形成処理装置12−3は処理装置12−3−2、12−3−3を二つ有するが、これに限定するわけではなく、二つ以上の複数個であれば本発明を実施することができる。また、本実施形態では画像形成処理装置12−3はレンダラー装置12−3−1を一つのみ有するが、これに限定するわけではなく、1つ以上であれば本発明を実施できる。また、本実施形態ではレンダラー装置12−3−1が中間データを得てラスタイメージデータを生成するが、処理装置(12−3−2、または12−3−3)がどのように分担等をして処理を行っても、本発明を実施できる。また、レンダラー装置12−3−1は、中間データを得てラスターデータを生成するASICやDSP、DRPなどCPU以外の情報処理装置を用いても本発明を実施できる。
メモリコントローラ12−3−5は、メインメモリ12−3−6及びROM12−3−9へのインタフェースである。即ち、メモリコントローラ12−3−5はメインメモリ12−3−6へのデータの読み込み及び書き込みを可能たらしめる。また、メモリコントローラ12−3−5はROM12−3−9へのデータの読み込みを可能たらしめる。IOコントローラ12−3−8は画像形成処理装置(12−3)外の装置とのインタフェースである。即ち、IOコントローラ12−3−8は画像形成処理装置(12−3)外の装置とのデータの交換を可能たらしめる。ローカルバス12−3−7はレンダラー装置12−3−1、処理装置(12−3−2及び12−3−3)、メモリコントローラ12−3−5、IOコントローラ12−3−8を接続する。即ち、ローカルバス12−3−7はこれら接続した装置間でデータの交換を可能たらしめる。以上、本実施形態では説明した構成にて画像形成処理装置12−3は、PDLデータ100に基づいて印刷データを生成する。
次にこの印刷データ生成に係る処理ステップを、図5を用いながら説明する。先ず、画像生成処理装置12−3の処理装置(12−3−2、または12−3−3)はPDLデータ100の解析処理を行う(s120)。次いで処理装置(12−3−2、または12−3−3)は上記PDLデータ100の解析から中間データを生成する(s121)。ついで、この中間データをもとにレンダラー装置12−3−1がラスタイメージデータ13−5を生成する。
なお、このPDLデータ100は複数の種類がある。例えばAdobe Systems、IncorporatedのAdobe PDFやPostScript、Canon Inc.のLIPSなどが知られている。処理装置(12−3−2、または12−3−3)上で動作するPDLインタプリタ13−1及び中間データ生成部13−2は、これら異なるデータフォーマットが存在するPDLデータ100から、レンダラーが解析可能な共通のデータ形式である中間データ102を生成する。この中間データ102に基づき、レンダラー13−3はレンダラー装置12−3−1を使いラスターデータ13−5を生成している。
図7に上記の流れの概要を示した本発明の実施形態におけるソフトウェアモジュールの関係を示す。また、
[PDLデータ解析処理における高速化処理]
次に、図5にて示した上記PDLデータの解析の処理(s120)について、図6を用いながら説明する。まず、PDLインタプリタは入力可能なPDLデータ100の少なくとも一部があるか否かを判定する(s120−1)。もしPDLデータ100がなければ、PDL処理を終了する。次にPDLインタプリタは、もしPDLデータ100の少なくとも一部があれば、PDLデータを入力する(s120−2)。次にPDLインタプリタは、入力したPDLデータは、PDLインタプリタが高速化処理可能な処理か否かを判定する(s120−3)。これにより高速化処理判定を実施する。本実施形態において、高速化処理が可能な処理は以下のものがある。
・圧縮データにかかる処理
・シェーディング描画命令処理
・タイル描画命令処理
・パス描画命令処理
・色変換処理
・フォント描画命令処理
・ビットマップ描画命令処理
・エッジ描画命令処理
しかし、これらの処理に限定するわけではなく、本発明が適用可能な処理は、その他PDLインタプリタが実行する処理などにも適用可能である。なお、本実施形態において、便宜上、各種処理に対し、高速化処理を施し、中間データを生成するためのコストを高速化処理コストと称し、高速化処理を施さず、中間データを生成するコストを中間データ生成コストと称する。また、本実施形態では、高速化処理を施した場合と施さない場合とのコストを比較し、その差異により、適用を判定する。この処理コスト判定手段について、以下詳細に説明する。
もし、PDLデータが高速化可能な命令であったならば、s120−4に進む。もしPDLが高速化不可能な命令であったならば、s120−11に進む。次に、PDLインタプリタは、注目PDLデータ群の高速化処理計算コストを計算する(s120−4)。各処理のより詳細なコスト計算方法は、次の項にて述べる。
次に、PDLインタプリタは、注目PDLデータ群の中間データ生成コストを求める(s120−5)。次に、PDLインタプリタは上記高速化処理コストと中間データ生成コストとを比較する(s120−6)。この比較の結果、中間データ生成コストが大きければ、s120−7に進む。逆に中間データ生成コストが高速化処理コスト以下であればs120−11に進む。なお、高速化処理コストが大きい場合は、当該注目PDLデータの処理を、高速化処理を適用せず継続した方が、適していることを示しており、中間データ生成コストが大きい場合は、当該注目PDLデータの処理を高速化処理を適用して行う方が適していることを示している。
次に、PDLインタプリタ13−1は各処理装置(12−3−2及び12−3−3)の空き状況(占有率)を問い合わせる(s120−7)。次に、PDLインタプリタは上記取得した各処理装置の空き状況と予め定義している閾値との比較を行う(s120−8)。もし、空き状況が、上記閾値を超えていればs120−9に進む。もし上記閾値を越えていなければs120−11に進む。次にPDLインタプリタは高速化処理のためのスレッドを生成する(s120−9)。次にPDLインタプリタは生成したスレッドの中で高速化するために注目したPDLデータに対して高速化処理を行う(s120−10)。その後、PDLインタプリタは中間データ生成部にPDLインタプリタの処理結果を送る(s120−11)。そして、s120−1へ戻り、上記の処理を繰り返す。
[注目PDLデータ群の高速化処理コストを求める手法]
次に、PDLインタプリタ13−1が、s120−6において、上記中間データ生成コストと比較するための、高速化処理コストを求める手法を述べる。PDLインタプリタ13−1が、注目PDLデータ群の高速化処理コストを求める手法(s120−4)の実施形態を説明する。すなわち、高速化処理コスト決定手段の機能を実現する。
PDLインタプリタ13−1は、PDLデータ100中の高速化処理可能な命令があると(s120−3)、高速化処理コストを計算する(s120−4)。本実施形態では以下の命令が高速化処理の対象となる。
・圧縮データにかかる処理
・シェーディング描画命令処理
・タイル描画命令処理
・パス描画命令処理
・色変換処理
・フォント描画命令処理
・ビットマップ描画命令処理
・エッジ描画命令処理
本実施形態では、上記それぞれの処理に対して、以下の手法(算出式)にて計算することで高速化処理コストを計算する。
<圧縮データにかかる処理>
圧縮データの高速化処理にかかるコストをCcmp、圧縮データのサイズをcmp_size、圧縮データの圧縮方式cmp_typeに対応したコストの重み付けパラメータ(負荷パラメータ)をweight[cmp_type]、圧縮データ処理の高速化処理にかかる初期コストをcmp_initとすると、以下の式から圧縮データの高速化処理コストを求めることができる。
Figure 0005641711
なお、圧縮データの圧縮方式cmp_typeに対応する重み付けパラメータは、予め定義しておくものとする。
<シェーディング描画命令処理>
シェーディング描画命令の高速化処理にかかるコストをCshading、シェーディングのサイズをshiding_size、シェーディングタイプshading_typeに対応したコストの重みづけパラメータをweight[shading_type]、シェーディング描画命令高速化処理にかかる初期コストをshading_initとすると、PDLインタプリタ13−1は以下の式から圧縮データの高速化処理コストを求めることができる。
Figure 0005641711
ここで、シェーディング描画命令のシェーディングタイプとは、シェーディング命令の種類を指し、例えば、以下のようなものがある。シェーディングタイプの一つに線形シェーディングがある。線形シェーディングによる描画結果の例を図8(a)に示す。図8(a)にあるように、線形シェーディングによる描画領域は、二つ以上の制御点間を線形な数式で表わされる色変化に基づき描画する。
また、他のシェーディングタイプの一つに放射シェーディングがある。放射シェーディングによる描画結果の例を図8(b)に示す。この図にあるように、放射シェーディングによる描画領域は、二つ以上の円、または楕円間を線形な数式で表わされる色変化に基づき描画する。
<タイル描画命令処理>
タイル描画命令の高速化処理にかかるコストをCtile、タイル描画命令の処理コストの重み付けパラメータをtile_weight、タイル描画命令で描画する領域のサイズをtile_area_size、タイル描画命令中のセルのサイズをtile_cell_size、タイル描画命令高速化処理にかかる初期コストをtile_initとすると、PDLインタプリタ13−1は以下の式からタイル描画命令の高速化処理コストを求めることができる。
Figure 0005641711
タイル描画命令で描画する領域とタイルのセルを、図9を使って説明する。タイル描画命令は、ある描画命令を一定の描画領域内で繰り返し描画する描画命令である。この繰り返すべき描画命令をセル300−1と呼ぶ(図9(a)参照)。そして、レンダラー13−3は、タイル描画命令中に示されるタイル描画命令で描画する領域300−2に上記タイルのセルを繰り返し描画することで、図9(b)に示されるタイル描画結果を生成する。
<パス描画命令処理>
パス描画命令の高速化処理にかかるコストをCpath、パス描画命令の処理コストの重み付けパラメータをpath_weight、パス描画命令で描画するパス点列数をpath_size、パス描画命令高速化処理にかかる初期コストをpath_initとすると、PDLインタプリタ13−1は以下の式からパス描画命令の高速化処理コストを求めることができる。
Figure 0005641711
<色変換処理>
色変換処理の高速化にかかるコストをCcms、色変換処理の処理コストの重み付けパラメータをcms_weight、必要な色変換数をcms_size、必要な色変換処理の種類をcms_type、必要な色変換処理の種類cms_typeに対応した処理の重みづけパラメータの配列をcms_weight[cms_type]、色変換処理高速化処理にかかる初期コストをcms_initとすると、PDLインタプリタ13−1は以下の式から色変換処理の高速化にかかるコストを求めることができる。
Figure 0005641711
なお、PDLインタプリタ13−1は、上記必要な色変換数以下の方法から求めることができる。例えば、ビットマップイメージに対しては、PDLインタプリタ13−1は画素数から求めることができる。また、例えば、パス点列で表現される閉空間に内を一色に塗る描画命令に対しては、PDLインタプリタ13−1は必要な色変換数は1であると定めることができる。
<フォント描画命令処理>
フォント描画命令処理の高速化にかかるコストをCfont、フォント描画命令の処理コストの重み付けパラメータをfont_weight、フォント描画命令中にあるフォントサイズの種類数をfont_max、このフォントサイズ種類数に対応した描画が必要なフォントの文字サイズの配列をfont_size[i]、フォントサイズの種類数に対応したフォントの文字数の配列をfont_num[i]、フォント描画命令高速化処理にかかる初期コストをfont_initとすると、PDLインタプリタ13−1は以下の式からフォント描画命令処理にかかるコストを求めることができる。
Figure 0005641711
なお、上記フォント描画命令と上述したfont_max, font_size, font_numが有する値については図10を使い例示しながら説明する。フォント描画命令中には同図に示されるような複数の描画すべき文字列200−0が含まれる。この例においては、フォント描画命令は三つに分類されるフォント描画単位200−1、200−2、200−3を含んでいる。そして、フォント描画命令はそれぞれのフォントサイズごとに描画すべき複数の文字を有する。例えば、フォントサイズが20の文字の集合200−1は5つの文字を有する。また、フォントサイズが30の文字の集合200−2は4つの文字を有する。また、フォントサイズが19の文字の集合200−3は4つの文字を有する。すなわち、図10の場合は、フォントサイズの種類数font_maxは以下の数値が与えられる。
font_max=3
また同図の場合は、フォントサイズの種類数に対応した描画が必要なフォントの文字サイズの配列font_sizeは以下の三つの数値を持つ。
font_size[0]=20
font_size[1]=30
font_size[2]=19
また同図の場合は、フォントサイズの種類数に対応したフォントの文字数の配列font_numは以下の三つの数値を持つ。
font_num[0]=5
font_num[1]=4
font_num[2]=4
以上の値に基づいて、高速化処理コストを求めることが可能である。
<ビットマップ描画命令処理>
ビットマップ描画命令処理の高速化にかかるコストをCbitmap、ビットマップ描画命令の処理コストの重み付けパラメータをbitmap_weight、ビットマップ描画命令中にあるビットマップのサイズをbitmap_size、ビットマップ描画命令中のビットマップの色数(色チャネル数)をbitmap_channel、ビットマップ描画命令加速処理にかかる初期コストをbitmap_initとすると、PDLインタプリタ13−1は以下の式からビットマップ描画命令処理にかかるコストを求めることができる。
Figure 0005641711
<エッジ描画命令処理>
エッジ描画命令処理の高速化にかかるコストをCedge、エッジ描画命令処理が描画すべき領域サイズをedge_size、エッジ描画命令処理中の色数をedge_channel、エッジ描画命令処理中の色数(色チャネル数)edge_channelと処理コストの重み付けパラメータを対応付ける配列をedge_weight[edge_channel]、エッジ描画命令加速処理にかかる初期コストをedge_initとすると、PDLインタプリタ13−1は以下の式からエッジ描画命令処理にかかるコストを求めることができる。
Figure 0005641711
以上、本実施形態において対象となるそれぞれの処理における、中間データ生成コストを求めることが可能である。
[注目PDLデータ群の中間データ生成コストを求める手法1]
PDLインタプリタ13−1は、s120−6にて上記高速化処理コストとの比較対照である中間データ生成コストを求める。本実施形態における、PDLインタプリタ13−1が、注目PDLデータ群の中間データ生成処理コストを求める手法(s120−5)を説明する。すなわち、これにより中間データ生成コスト決定手段を実現する。
図13は注目PDLデータ群の中間データ生成コストを求める手法(s120−5)の処理フローを説明する図である。s120−5−1でまず、PDLインタプリタ13−1は既にPDLインタプリタ13−1及び中間データ生成部13−2によって生成された中間データのサイズを取得する。
次に、PDLインタプリタ13−1はs120−5−2で、求めた中間データのサイズが予め定義した閾値以上であるかを判定する。この判定に用いられる閾値は、予め当該画像形成処理装置の処理能力に依存して定められる。例えば、メインメモリ12−3−6の容量によって閾値を定める。また、処理装置(12−3−2、12−3−3)の処理速度によって定めても、本実施形態を実施できる。また、メインメモリ12−3−6の容量と処理装置(12−3−2、12−3−3)の処理速度との両方の性能を鑑みて定義しても、本実施形態を実施できる。
次に、中間データのサイズが閾値以上であるかの判定が真であれば、PDLインタプリタ13−1はs120−5−3に進む。また、中間データのサイズが閾値以上であるかの判定が偽であれば、PDLインタプリタ13−1はs120−5−4に進む。PDLインタプリタ13−1は、上記判定結果に基づき、s120−5−3で中間データ生成にかかるコストに設定可能な最大値を設定する。ここでいう最大値とは例えば以下の通りである。すなわち、32bitのデータを扱える処理装置(12−3−2、12−3−3)である場合には、PDLインタプリタ13−1は中間データ生成にかかるコストに対する変数に32bitの大きさのメモリを割り当てる。よって、PDLインタプリタ13−1は最大値として2147483647を設定する。
また、PDLインタプリタ13−1は、上記判定に基づき、s120−5−4で中間データ生成にかかるコストに設定できる最小値を設定する。ここでいう最小値とは例えば以下の通りである。すなわち、32bitのデータを扱える処理装置(12−3−2、12−3−3)である場合には、PDLインタプリタ13−1は中間データ生成にかかるコストに対する変数に32bitの大きさのメモリを割り当てる。よって、PDLインタプリタ13−1は最小値として−2147483648を設定する。
[高速化処理コストと中間データ生成コストの比較処理]
次に、高速化処理コストと中間データ生成コストとの比較処理(s120−6)について、例を用いて説明する。図11はタイル描画命令とビットマップ描画命令とを有するPDLデータ100によって描画されるべき画像を例示している。すなわち、PDLデータ中のビットマップ描画命令に基づき、PDLインタプリタ13−1とPDL最適化モジュール13−6と中間データ生成部13−2とレンダラー13−4とによって描画される(ビットマップ300−3が描画される)。次に、PDLデータ中のセル300−1を領域300−2にしきつめるタイル描画命令に基づきPDLインタプリタ13−1とPDL最適化モジュール13−6と中間データ生成部13−2とレンダラー13−4とによって描画される(セル300−1が領域300−2に描画される)。次に、PDLデータ中のパス描画命令に基づきPDLインタプリタ13−1とPDL最適化モジュール13−6と中間データ生成部13−2とレンダラー13−4とによって描画される(パス300−4が描画される)。この結果、図11に示される描画結果は得られる。
次に、このPDLデータ100の例における、中間データ生成コストの比較処理(s120−6)を示す。PDLインタプリタ13−1は、最初に描画されるビットマップ描画命令においては、先に行われるs120−5でメモリに最小値が設定されるので、s120−6では、偽と判定する。すなわち、PDL最適化モジュール13−6による高速化処理を行うことなく、中間データ生成部13−2が中間データ102を生成することとなる。
また、PDLインタプリタ13−1は、次に描画されるタイル描画命令においては、先に行われるs14−0−5でメモリに最大値が設定されるので、s120−6では真と判定する。上記判定によって、次にPDLインタプリタ13−1は、s120−7に進む。
ここでPDLインタプリタ13−1は、各処理装置12−3−2、12−3−3の空き状況を取得する。この空き状況は、例えば、OS13−7の機能を使うことによって得られる処理装置の占有率から求めることができる。これにより占有率取得手段を実現する。すなわち、処理装置が、既に他の処理によって高負荷にある場合には、高速化処理を行うための新しい処理を開始するだけの処理装置の余裕がない。よって、処理装置によって実行される高速化処理を行うべきではないと判定できる。そして、PDLインタプリタ13−1は、s120−8にて、予め定められた閾値と上記処理装置の占有率とを比較する。この比較によって、PDLインタプリタ13−1は、高速化処理を行うべきか判定できる。もしこの判定が真である場合には、PDLインタプリタ13−1は高速化処理のためのスレッドの生成あるいは初期化をOS13−7の機能を使うことによって実行する(s120−9)。この処理によって、処理装置に割り当てるべき高速化処理の処理単位を生成することができる。つまり、この処理により、処理単位生成判定手段を実現する。
もちろん、本実施形態においては、処理単位をスレッドとして説明したが、この新しく割り当てる処理単位がスレッドではなくプロセスであっても本実施形態を実施できる。また、この新しく割り当てる処理単位がスレッドではなくタスクであっても本実施形態を実施できる。さらには、この新しく割り当てる処理単位がスレッドではなくその他並行して動作することができるルーチンや関数の集合であっても本実施形態を実施できる。
次に、PDLインタプリタ13−1は上記割り当てた処理単位に注目しているPDLデータ中の命令群の処理を割り当て、高速化処理を行う(s120−10)。すなわち、PDLインタプリタ13−1は、上記生成した処理単位にタイル描画命令にかかる処理を割り当てる。そして、この新しく割り当てられた処理単位は、PDLインタプリタ13−1によって割り当てられた高速化処理が実行される。なお、高速化処理に関する説明は次の項に記載する。そして、PDLインタプリタ13−1は、新しい処理単位によって行われた処理に基づき中間データ生成部13−2にデータを送り、中間データ生成部13−3によって、中間データ102を生成する(s120−11)。次に、PDLインタプリタ13−1は、次のPDLデータ中の命令群を読み込み、処理を続行する(s120−1)。
[新しい処理単位によって行われる高速化処理]
次に、PDLインタプリタ13−1が、生成する新しい処理単位による高速化処理について以下に説明する(図6におけるs120−10)。なお、本実施形態における高速化処理の対象となる処理は先に述べた高速化処理コストを求めたものと同様である。これにより高速化処理実行手段を実現する。なお、高速化処理の内容は、負荷分散や、処理対象データの削減などPDLデータに含まれる処理ごとに異なるため、個別に説明する。
<圧縮データにかかる処理>
本実施形態における圧縮データにかかる処理に対する高速化処理は、例えば以下の通りである。即ち、上記新しい処理単位において、圧縮データの伸張ないし、その一部の処理を行う。これによって、PDLインタプリタ13−1で行われる圧縮データにかかる処理の負荷を低減せしめる。
<シェーディング描画命令処理>
本実施形態におけるシェーディング描画命令処理に対する高速化処理は以下の通りである。即ち、レンダラー装置12−3−1で行われるべきシェーディング処理を、処理装置(12−3−2、または12−3−3)上で行う。これによって、シェーディング描画命令処理の中間データ生成処理を分担し、その負荷を低減せしめる。
<タイル描画命令処理>
本実施形態におけるタイル描画命令処理に対する高速化処理は、例えば以下の通りである。即ち、レンダラー装置12−3−1で行われるべきタイル描画命令に係るセル内部のラスターデータ生成処理を処理装置(12−3−2、または12−3−3)上で行う。これによってタイル描画命令処理の中間データ生成処理を分担し、その負荷を低減せしめる。
<パス描画命令処理>
本実施形態におけるパス描画命令処理に対する高速化処理は、例えば以下の通りである。即ち、パス点列中の描画に不要な重複する点を削除する。また、パス点列中の三点が直線状に並んでいる場合には、描画に不要な中間点を削除する。これによってパス描画命令処理の中間データ生成処理の負荷を低減せしめる。
<色変換処理>
本実施形態における色変換処理に対する高速化処理は、例えば以下の通りである。即ち、PDLインタプリタ13−1は、中間データ生成部13−2で行われるべき色変換処理を行う。これによって色変換処理に係る中間データ生成処理の負荷を低減せしめる。
<フォント描画命令処理>
本実施形態におけるフォント描画命令処理に対する高速化処理は、例えば以下の通りである。即ち、連続する文字列からなる描画命令をひとつのエッジ描画命令にまとめる。これによってフォント描画命令処理に係る中間データ生成処理の負荷を低減せしめる。
<ビットマップ描画命令処理>
本実施形態におけるビットマップ描画命令処理に対する高速化処理は、例えば以下の通りである。即ち、画像形成に必要な解像度以上の情報を持つビットマップ描画命令処理の解像度変換をする。ここでの解像度変換とは、本実施形態ではバイキュービック法による画像解像度変換によって行われる。もちろん、上記解像度変換は最近傍法によって実装されても、本実施形態を実施できる。また、これに限定されず、解像度変換は線形補完法やその他の方法によって実装されても、本実施形態を実施できる。これによってビットマップ描画命令処理に係る中間データ生成処理の負荷を低減せしめる。
<エッジ描画命令処理>
本実施形態におけるエッジ描画命令処理に対する高速化処理は、例えば以下の通りである。エッジ描画命令から両端の点のみを扱い、それ以外の点の処理を省略する。これによってエッジ描画命令処理に係る中間データ生成処理の負荷を低減せしめる。
以上により、各処理ごとに高速化処理の手法を適用し、中間データ生成を行う。なお、ここで挙げた各処理への高速化の手法は一例であり、例えば、ビットマップ描画命令処理などで述べたように、他の方法にて実施しても良い。
[第一の実施形態の効果]
以上、本発明によって以下のような効果がある。すなわち、一般に計算機は、既に多くの処理が行われメモリなどのリソースを多く消費している場合には、処理速度が著しく低下するか、処理を継続することが困難となる。よって、本発明では、PDLデータに定義された各種処理の独特な処理特性に注目し、予め異なる処理単位で高速化処理を行い、中間データ生成にかかる処理の負荷を低減する。これによって、より高速な画像形成処理を可能とする。具体的には本実施形態では、PDLインタプリタ13−1は適用する処理に必要なコストを比較する(s120−6)。すなわち、高速化処理を行わずに中間データを生成する場合のコストと、高速化処理を行って中間データを生成した場合のコストとを比較する。すなわち、PDLインタプリタ13−1、及び、中間データ生成部13−2が現状のままPDLデータに対し中間データ生成処理を続けた場合に、画像形成処理装置の制限によって処理速度が低下せしめるかどうかを判定する。
ここでいう、制限とは上述したように、例えばメモリの容量による制限がある。もし、PDLデータの処理に対し高速化処理を行った方が、中間データ生成のコストが小さいと判定できた場合には、中間データを生成する前に、一旦新しい処理単位を生成すべきかを判定する(s120−7、120−8)。ここでは、PDLインタプリタ13−1は、新しく処理単位による処理を行う余地が処理装置あるかどうかを判定している(120−8)。もし、上記判定が真であるならば、PDLインタプリタ13−1は、新しい処理単位を処理装置に割り当てて、PDLデータ中の注目した命令群に係る処理を行う(s120−9、s120−10)。
上述したこれらの処理によって、PDLインタプリタ13−1は、PDLデータに独特な処理特性に注目し、実行中の処理が次のステップの処理速度を低下するか否かを判定し、その上で処理速度を向上させている。つまり、図15に示すように、処理速度が向上することが実験的に明らかとなっている。すなわち、従来手法でタイル描画処理のみを行った時と異なり、先行する描画命令処理によって中間データが生成されていると、次に処理すべき描画命令による処理速度が著しく低下することとなっていた。これに対して本実施形態の手法では、上記PDLデータに独特な処理特性に注目し、著しい速度低下を防ぐことによって、処理速度を向上させる。
以上、本発明では、大量に重なった描画命令や、大量の奥行き情報を持つ描画命令を持つ中間データを受け取ると、その中間データが有する奥行き情報や重なり情報の煩雑さによって処理速度が著しく低下するという問題に対して、レンダラーの処理速度を著しく低下させるか否かを判定しながらPDL解析処理を行う。つまり、PDLインタプリタはすでに生成された中間データの特徴と、解析中のPDLデータの特徴と、複数ある処理装置の占有率情報とを使い、新しく上記処理単位を上記処理装置が実行する処理として生成するか否かを判定する。上記判定に基づき、処理速度が著しく低下する条件を検知し、最適化をすることで、画像形成の処理全体に係る時間を短縮する。
<第二の実施形態>
第一の実施形態において、注目PDLデータ群の中間データ生成コストを求めたが、第二の実施形態として、異なる中間データ生成コストを求める手法を説明する。
[注目PDLデータ群の中間データ生成コストを求める手法2]
PDLインタプリタ13−1は、s120−6にて上記高速化処理コストと比較対照となる中間データ生成コストを求める。本実施形態において説明する手法は、PDLインタプリタ13−1が、注目PDLデータ群の中間データ生成コストを求める手法において第一の実施形態とは異なる手段である。
中間データ生成コストをCdl、中間データ生成部13−2が生成する中間データ102に蓄積された描画命令数(処理数)をdl_op_num、中間データ生成コストの重み付けパラメータをdl_weightとすると、PDLインタプリタ13−1は、以下の式により中間データ生成コストを求め、決定することができる。
Figure 0005641711
以上により、本実施形態においても、第一の実施形態と同様の効果を得ることが可能となる。
<第三の実施形態>
第一の実施形態において、注目PDLデータ群の中間データ生成コストを求めたが、第三の実施形態として、異なる中間データ生成コストを求める手法を説明する。
[注目PDLデータ群の中間データ生成コストを求める手法3]
PDLインタプリタ13−1は、s120−6にて、上記高速化処理コストと比較対照となる中間データ生成コストを求める。本実施形態において説明する手法は、PDLインタプリタ13−1が、注目PDLデータ群の中間データ生成コストを求める手法において第一の実施形態とは異なる手段である。
中間データ生成コストをCdl、中間データ生成部13−2が生成する中間データ102に蓄積された描画命令数をdl_op_num、中間データ生成コストの重み付けパラメータをdl_weightとすると、PDLインタプリタ13−1は、以下の式により中間データ生成コストを求めることができる。
Figure 0005641711
以上により、本実施形態においても、第一の実施形態、及び第二の実施形態と同様の効果を得ることが可能となる。
<第四の実施形態>
第一の実施形態において、注目PDLデータ群の中間データ生成コストを求めたが、第四の実施形態として、異なる中間データ生成コストを求める手法を説明する。
[注目PDLデータ群の中間データ生成コストを求める手法4]
PDLインタプリタ13−1は、s120−6にて、上記高速化処理コストと比較対照となる中間データ生成コストを求める。本実施形態において説明する手法は、PDLインタプリタ13−1が、注目PDLデータ群の中間データ生成コストを求める手法において第一の実施形態とは異なる手段である。
中間データ生成コストをCdl、中間データ生成部13−2が生成する中間データ102に蓄積された描画命令数をdl_op_num、中間データ生成コストの重み付けパラメータをdl_weightとすると、PDLインタプリタ13−1は、以下の式により中間データ生成コストを求めることができる。
Figure 0005641711
以上により、本実施形態においても、第一乃至第三の実施形態と同様の効果を得ることが可能となる。
<第五の実施形態>
第一の実施形態において、注目PDLデータ群の中間データ生成コストを求めたが、第五の実施形態として、異なる中間データ生成コストを求める手法を説明する。
[注目PDLデータ群の中間データ生成コストを求める手法5]
PDLインタプリタ13−1は、s120−6にて、上記高速化処理コストと比較対照となる中間データ生成コストを求める。本実施形態において説明する手法は、PDLインタプリタ13−1が、注目PDLデータ群の中間データ生成コストを求める手法において第一の実施形態とは異なる手段である。
中間データ生成コストをCdl、中間データ生成コストの重み付けパラメータをdl_weightおよびdl_weight2、比較対象となる描画命令の種類を表す値をobject_type、上記オブジェクト種類とDL生成処理のコストを対応付ける配列をobject_type_2_cost、既に生成した描画命令数をgenerated_dl_ sizeとすると、PDLインタプリタ13−1は中間データ生成コストを求めることができる。なお、比較対象の描画命令とすでに生成した描画命令との種類は同一のものである。
Figure 0005641711
次に、比較対象となる描画命令の種類を表す値object_type、及び、オブジェクト種類とDL生成処理のコストを対応付ける配列object_type_2_costについて説明する。図14は描画命令の種類と描画命令の種類を表す値object_typeとの対応を表す。また、図14は描画命令の種類を表す値object_typeとDL生成処理のコストを対応付ける配列object_type_2_costとの対応を表す。画像形成装置12はあらかじめ、この表(図14)によって定義される情報に対応した配列等を有する。これによりコスト情報保持手段を実現する。
この図14における予め定義された情報によって、例えば、圧縮データにかかる描画命令であれば、PDLインタプリタ13−1はDL生成処理コストが4であることが得られる。
同様に、定義された情報により、第一の実施形態にて挙げた処理それぞれのDL生成処理コストは、シェーディング描画命令処理は10、タイル描画命令処理は10、タイル描画命令処理は1、パス描画命令処理は1、色変換命令処理は2、フォント描画命令処理は2、ビットマップ描画命令処理は7、エッジ描画命令処理は3であることを取得できる。
以上により、本実施形態においても、第一乃至第四の実施形態と同様の効果を得ることが可能となる。
<その他の実施形態>
なお、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムをコンピュータ(またはCPUやMPU)が読出し実行することによっても、達成される。この場合、プログラムは図示したフローの手順を実現するためのものを含むこととなる。

Claims (13)

  1. PDLで記述された複数の描画命令を含む、PDLデータを受信する受信手段と、
    前記PDLデータに含まれる前記複数の描画命令に対して決定処理を描画命令ごとに行い、当該決定処理の結果に基づいて描画命令ごとの中間データを生成する生成手段と、
    前記生成された中間データに基づいた描画を行うことでラスターイメージデータを生成する描画手段と
    を有し、
    前記決定処理は、当該決定処理の対象の描画命令に対応するパラメータと、当該描画命令の種類によって決定される閾値とを比較することで、当該描画命令とは別の描画命令が生成されることになる所定の処理が、当該描画命令に適用されるか否かを決定する処理であることを特徴とする画像処理装置。
  2. PDLで記述された複数の描画命令を含む、PDLデータを受信する受信手段と、
    前記PDLデータに含まれる前記複数の描画命令に対して決定処理を描画命令ごとに行い、当該決定処理の結果に基づいて描画命令ごとの中間データを生成する生成手段と、
    前記生成された中間データに基づいた描画を行うことでラスターイメージデータを生成する描画手段と
    を有し、
    前記決定処理は、当該決定処理の対象の描画命令に含まれるパラメータによって決定される値と、当該描画命令の種類によって決定される閾値とを比較することで、当該描画命令の種類に応じた所定の処理が当該描画命令に適用されるか否かを決定する処理であることを特徴とする画像処理装置。
  3. 前記生成手段は、
    前記決定処理の結果が前記所定の処理が適用される旨を示す場合に、当該決定処理の対象の描画命令に前記所定の処理を適用することで別の描画命令を生成して、当該生成された描画命令から中間データを生成し、
    前記決定処理の結果が前記所定の処理が適用されない旨を示す場合に、当該決定処理の対象の描画命令に前記所定の処理を適用せずに、当該描画命令から中間データを生成することを特徴とする請求項1または2に記載の画像処理装置。
  4. 前記パラメータは、描画命令によって描画される領域の面積を表すパラメータであることを特徴とする請求項1乃至3の何れか1項に記載の画像処理装置。
  5. 前記描画命令の種類によって決定される閾値は、前記描画命令の種類によって異なることを特徴とする請求項1乃至4の何れか1項に記載の画像処理装置。
  6. 前記描画命令の種類によって決定される閾値は、前記描画命令の種類によって異なる値を記憶するテーブルを用いて決定されることを特徴とする請求項5に記載の画像処理装置。
  7. 前記描画命令は、シェーディング描画命令、タイル描画命令、パス描画命令を含むことを特徴とする請求項1乃至6の何れか1項に記載の画像処理装置。
  8. 前記シェーディング描画命令に対応する前記所定の処理は、前記シェーディング描画命令によって描画されるシェーディングのラスターイメージデータを描画する処理であることを特徴とする請求項7に記載の画像処理装置。
  9. 前記タイル描画命令に対応する前記所定の処理は、前記タイル描画命令によって描画されるタイルのライスターイメージデータを描画する処理である請求項7または8に記載の画像処理装置。
  10. 前記パス描画命令に対応する前記所定の処理は、前記パス描画命令に含まれる複数のパス点列中の点を削除する処理である請求項7乃至9の何れか1項に記載の画像処理装置。
  11. PDLで記述された複数の描画命令を含む、PDLデータを受信する受信工程と、
    前記PDLデータに含まれる前記複数の描画命令に対して決定処理を描画命令ごとに行い、当該決定処理の結果に基づいて描画命令ごとの中間データを生成する生成工程と、
    前記生成された中間データに基づいた描画を行うことでラスターイメージデータを生成する描画工程と
    を有し、
    前記決定処理は、当該決定処理の対象の描画命令に対応するパラメータと、当該描画命令の種類によって決定される閾値とを比較することで、当該描画命令とは別の描画命令が生成されることになる所定の処理が、当該描画命令に適用されるか否かを決定する処理であることを特徴とする画像処理装置の制御方法。
  12. PDLで記述された複数の描画命令を含む、PDLデータを受信する受信工程と、
    前記PDLデータに含まれる前記複数の描画命令に対して決定処理を描画命令ごとに行い、当該決定処理の結果に基づいて描画命令ごとの中間データを生成する生成工程と、
    前記生成された中間データに基づいた描画を行うことでラスターイメージデータを生成する描画工程と
    を有し、
    前記決定処理は、当該決定処理の対象の描画命令に含まれるパラメータによって決定される値と、当該描画命令の種類によって決定される閾値とを比較することで、当該描画命令の種類に応じた所定の処理が当該描画命令に適用されるか否かを決定する処理であることを特徴とする画像処理装置の制御方法。
  13. 請求項1乃至10の何れか1項に記載の各手段として、コンピュータを機能させるためのプログラム。
JP2009120395A 2009-05-18 2009-05-18 画像形成装置、制御方法、及びプログラム Expired - Fee Related JP5641711B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009120395A JP5641711B2 (ja) 2009-05-18 2009-05-18 画像形成装置、制御方法、及びプログラム
US12/756,468 US8526022B2 (en) 2009-05-18 2010-04-08 Image forming apparatus, control method and computer-readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009120395A JP5641711B2 (ja) 2009-05-18 2009-05-18 画像形成装置、制御方法、及びプログラム

Publications (3)

Publication Number Publication Date
JP2010264731A JP2010264731A (ja) 2010-11-25
JP2010264731A5 JP2010264731A5 (ja) 2012-07-05
JP5641711B2 true JP5641711B2 (ja) 2014-12-17

Family

ID=43068268

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009120395A Expired - Fee Related JP5641711B2 (ja) 2009-05-18 2009-05-18 画像形成装置、制御方法、及びプログラム

Country Status (2)

Country Link
US (1) US8526022B2 (ja)
JP (1) JP5641711B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5596938B2 (ja) * 2009-06-02 2014-09-24 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP5594204B2 (ja) * 2011-03-24 2014-09-24 富士ゼロックス株式会社 画像処理システム
JP5901209B2 (ja) * 2011-10-06 2016-04-06 キヤノン株式会社 画像形成装置、情報処理方法及びプログラム
US9489709B2 (en) * 2015-03-27 2016-11-08 Kyocera Document Solutions Inc. Real-time state-machine implemented with micro-controller
JP6746326B2 (ja) * 2016-02-19 2020-08-26 キヤノン株式会社 印刷データの解釈を複数の解釈手段で行う印刷装置、印刷方法、プログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3474078B2 (ja) 1997-05-02 2003-12-08 富士ゼロックス株式会社 描画処理装置
JP2000089622A (ja) * 1998-09-08 2000-03-31 Canon Inc カウント装置及びコンピュータ読み取り可能な記憶媒体
JP2008149543A (ja) * 2006-12-15 2008-07-03 Canon Inc 印刷装置及びその制御方法、処理装置及びその制御方法、並びに制御プログラム

Also Published As

Publication number Publication date
US8526022B2 (en) 2013-09-03
JP2010264731A (ja) 2010-11-25
US20100290070A1 (en) 2010-11-18

Similar Documents

Publication Publication Date Title
JP6029344B2 (ja) 画像処理装置、画像処理方法、プログラム
JP5641711B2 (ja) 画像形成装置、制御方法、及びプログラム
JP2910649B2 (ja) 画像形成装置および画像形成方法
US9218554B2 (en) Image processing apparatus, image processing method, and storage medium
US8830506B2 (en) Image processing system utilizing plural parallel processors and image processing method utilizing plural parallel processors
JP5051327B1 (ja) 画像処理装置及びプログラム
US8334989B2 (en) Printing device and method for parallel processing of data
US20100177342A1 (en) Image forming apparatus and control method thereof
JP2003051019A (ja) 画像処理装置、画像処理方法、画像処理プログラム及び記憶媒体
JP2007087137A (ja) 印刷制御装置、画像形成方法および記憶媒体
JP6120824B2 (ja) 画像処理装置、画像処理方法、及びプログラム
US10593030B2 (en) Image forming apparatus capable of changing thickness of character, control method therefor, and storage medium storing control program therefor
JP6330481B2 (ja) 画像処理装置、印刷情報生成装置、画像形成装置、画像形成システムおよびプログラム
JP5245713B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP6598546B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP2006159738A (ja) 印刷制御装置およびそのデータ処理方法並びに記憶媒体。
JP5936363B2 (ja) 画像処理装置及び画像処理方法
JP3754975B2 (ja) 情報処理装置及び情報処理方法
JP3885282B2 (ja) 印刷データ処理装置および印刷データ処理方法
JP6283980B2 (ja) 画像処理装置及び画像処理方法
JP2015141561A (ja) データ処理装置及びプログラム、制御方法
JP5968497B2 (ja) 制御方法、システム及びプログラム
US9305249B2 (en) Image forming apparatus, image forming method, and computer-readable medium for rasterizing scan line using intermediate data
JP6376876B2 (ja) 情報処理装置、プログラム及び制御方法
KR20100046583A (ko) 병렬 프로세싱을 위한 pdl 데이터를 생성하는 방법 및 이를 위한 장치

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120518

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130405

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130509

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140306

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: 20140929

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141028

R151 Written notification of patent or utility model registration

Ref document number: 5641711

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees