JP5281265B2 - 印刷処理方法およびそれを実現する情報処理装置 - Google Patents

印刷処理方法およびそれを実現する情報処理装置 Download PDF

Info

Publication number
JP5281265B2
JP5281265B2 JP2007259238A JP2007259238A JP5281265B2 JP 5281265 B2 JP5281265 B2 JP 5281265B2 JP 2007259238 A JP2007259238 A JP 2007259238A JP 2007259238 A JP2007259238 A JP 2007259238A JP 5281265 B2 JP5281265 B2 JP 5281265B2
Authority
JP
Japan
Prior art keywords
drawing command
combined
intermediate data
received
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.)
Active
Application number
JP2007259238A
Other languages
English (en)
Other versions
JP2009087266A5 (ja
JP2009087266A (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 JP2007259238A priority Critical patent/JP5281265B2/ja
Priority to US12/237,374 priority patent/US8625125B2/en
Publication of JP2009087266A publication Critical patent/JP2009087266A/ja
Publication of JP2009087266A5 publication Critical patent/JP2009087266A5/ja
Application granted granted Critical
Publication of JP5281265B2 publication Critical patent/JP5281265B2/ja
Priority to US14/099,280 priority patent/US8922832B2/en
Active 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/1297Printer code translation, conversion, emulation, compression; Configuration of printer parameters
    • G06F3/1298Printer language recognition, e.g. programme control language, page description language
    • 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/1215Improving printing performance achieving increased printing speed, i.e. reducing the time between printing start and printing end
    • 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/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/122Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
    • 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
    • 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/1284Local printer device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1867Post-processing of the composed and rasterized print image

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Record Information Processing For Printing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

本発明は、画像データを出力する画像出力装置に送信するための印刷データを生成する印刷処理方法およびそれを実現する情報処理装置に関するものである。
従来、高機能プリンタに対するプリンタドライバの印刷処理は、OSから描画命令が渡されるとそれに対応するプリンタ記述言語の描画コマンドに置き換えてプリンタにデータの転送を行っている。かかるプリンタ記述言語(Page Description Language)を、以下PDLと略し、その方法をPDLモードと言う。PDLモードは、PDLを持たずに入力はビットマップのみ(ダムプリンタ方式、ビデオプリンタ方式)という低機能プリンタと比較すると、通常はデータ量が少なくなり、高速に処理が行えるという特徴を持つ。
しかしながら、近年のパーソナルコンピュータの高速化、アプリケーションの高機能化などにより、豊かな表現がなされたプレゼンテーション資料などが作成される機会が増えている。これに伴い、PDLモードではデータ量が莫大になり、高機能プリンタでありながら、低機能プリンタと比較して却って遅くなるといった例が増えてきている。
遅くなる具体的な例としては、OSから渡される描画命令で指定されるオブジェクトのデータサイズが極小で、数が膨大だった場合等がある。このようなケースでは、PDL描画コマンドを生成してネットワークを介してプリンタに送って処理するよりも、CPUパワーやメモリ資源が潤沢なPC上でビットマップに展開した方が全体のスループットが上がることがある。
そこで、プリンタドライバではページ全体をビットマップに展開してプリンタに転送するモード(以下、ラスタモード)を用意して、PDLモードかラスタモードかを手動または自動で切り替えている。また、特許文献1では、OSから渡された描画命令を一旦保存し、隣接している描画命令を集めてイメージデータ形式のPDLコマンドにすることで、PDLコマンドの数を削減する。これにより、PDLモードとイメージモードのよい所を取り入れて、パフォーマンスの低下を防いできた。
特開2004-030386号公報
しかしながら、上記ラスターモードを用意してユーザにプリンタドライバで設定してもらうという対応において、ユーザからはPDL描画コマンドによるデータ量が莫大になるかどうかは認識出来ない。結果的に、低速なPDLモードで印刷処理してしまうことが常である。プリンタドライバでページ毎にどちらのモードで処理した方が高速なのかを予測した場合も、1ページ分の印刷データを保存する必要があり、その間プリンタに印刷データが送付されずファーストプリント時間が遅延する。さらに、多量のPCリソースを要するという問題も残る。
一方、特許文献1の方法は、隣接する描画命令部分だけをイメージデータに変換し、それ以外は従来のPDLコマンドを利用することで、上記問題を解決している。ところが、近年のアプリケーションの中には、各描画命令で、破線に見えても細かなイメージで個々の実線部分だけを描画してきたり(図4参照)、大きなイメージの黒色ピクセル部だけを微細なイメージで描画指定してくるもの(図6参照)が存在する。こうした細切れイメージは互いに隣接していないため、特許文献1の方法では合成することは出来ず、依然としてパフォーマンスの劣化の原因になっている。
本発明は、細切れイメージのように互いに隣接していないイメージを含むデータにおいて最適かつ高速に処理を行うことが出来る印刷処理方法およびそれを実現する情報処理装置を提供する。
上記目的を達成するために、本発明の印刷処理方法は、
描画命令を受け取ってプリンタに対する印刷ジョブデータを生成するためのプリンタドライバの印刷処理方法であって、描画命令を受け取る受信工程と、変換手段が、前記受け取った描画命令を第1の中間データに変換する変換工程と、判断手段が、前記第1の中間データを、既に受け取り保存している他の描画命令の第2の中間データと合成が可能か否かを合成条件に基づいて判断する判断工程と、前記判断手段が、合成が可能と判断した場合に、前記第1の中間データを保存手段に保存する保存工程と、前記判断手段が、合成が可能で無いと判断した場合に、合成手段が、前記第2の中間データを1つの印刷ジョブデータに合成してプリンタに出力する出力工程とを有し、前記判断工程は、下地を使う描画命令であるか否かに応じて、前記受け取った描画命令が他の描画命令との合成が可能か否かを判断することを特徴とする。
また、本発明の情報処理装置は、
描画命令を受け取ってプリンタに対する印刷ジョブデータを生成するためのプリンタドライバを有する情報処理装置であって、描画命令を受け取る受信手段と、前記受け取った描画命令を第1の中間データに変換する変換手段と、前記第1の中間データを、既に受け取り保存手段に保存している他の描画命令の第2の中間データと合成が可能か否かを合成条件に基づいて判断する判断手段と、前記判断手段が合成が可能で無いと判断した場合に、前記第2の中間データを1つの印刷ジョブデータに合成してプリンタに出力する出力手段とを有し、前記判断手段が合成が可能と判断した場合に、前記保存手段は、前記第1の中間データを保存し、前記判断手段は、下地を使う描画命令であるか否かに応じて、前記受け取った描画命令が他の描画命令との合成が可能か否かを判断することを特徴とする。
本発明により、細切れイメージのように互いに隣接していないイメージを含むデータにおいて最適かつ高速に処理を行うことが出来る印刷処理方法およびそれを実現する情報処理装置を提供できる。
本発明では、PDLモードでありながら、局所的にデータ量が莫大になってしまう個所の描画命令を逐次ビットマップに展開してプリンタに送出する。それ以外は、PDL描画コマンドとしてプリンタに転送する。
従って、隣接しない細切れイメージ(重なっていても、離れていても)を合成することで、PDLコマンドのサイズを削減(ヘッダ数削減、データ連続性を生かした圧縮率向上)が可能となり、トータル印刷時間を短縮できる。
また、逐次イメージを合成&送出することで、プリンタとの並列演算処理が可能となり、全てのデータを蓄積してイメージとして一括送信するイメージモードよりパフォーマンスが向上する。
以下、添付図面を参照して本発明に係る一実施形態を詳細に説明する。
<本実施形態の情報処理装置を含む印刷処理システムの構成例>
図1は、本発明の印刷処理方法が適用される印刷処理システムの構成の一例を示すブロック図である。
図1において、101は中央処理装置であり、情報処理装置および印刷処理システムを制御する。中央処理装置101は、システムに接続された媒体読取装置106を介して、FD,CD−ROM,ICメモリカード等の記憶媒体からプログラムおよび関連データを、補助記憶装置103に読み込む。補助記憶装置103から主記憶装置102にロードされたシステムプログラム、アプリケーションプログラムによって、中央処理装置101は、入力装置104から入力される情報を処理して、出力装置5やプリンタ7に出力する。
なお、本実施形態では、出力装置5はディスプレイなどの表示装置とし、本来出力装置に含まれるプリンタ7と区別している。また、入力装置4はキーボード、ポインティングデバイス等で構成されているものとする。さらに、上記補助記憶装置3は、ハードディスク、光磁気ディスクで構成されるものであってもいいし、これらの組み合わせで構成されるものであってもよい。また、それぞれの装置がバスで接続されていてもネットワークを介して接続されていても、本発明を制約するものではない。
図2は、本発明の印刷処理方法を実現する制御プログラムと関連するデータの流れとを示す概念図である。
主記憶装置102に読み込まれたOS301による中央処理装置101の制御下で、アプリケーション302、ドライバ303ともに機能する。印刷処理においては、入力装置から印刷命令が入力されて、プリンタへ印刷ジョブデータを送り印刷が行われる。
なお、図2には明示していないが、主記憶装置102には、受信した描画命令、変換された中間データ、生成されたPDLコマンドなどの一時記憶や、以下示すメモリバッフア306、合成用メモリ308、あるいは図13から図15のフローチャートにおける分岐の判断のためのフラグ、合成で高速化可能かを判断するための演算式などを記憶する領域が確保される。
図3は、図2の概念図のプリンタドライバ303の部分のデータ処理の流れを詳しく記した図である。
OS301から受け取った描画命令を、プリンタドライバ303は、中間データ変換モジュール304で中間データに変換する。同時に、以下で詳説するように、描画命令が合成条件に当てはまるか否かが判定される。合成条件に当てはまる中間データについては、メモリバッファ306に描画に必要な情報を保存する。合成条件に当てはまらない中間データは、PDLコマンド生成モジュール305でPDLコマンドに変換して、プリンタ307に送出する。
メモリバッファ306に中間データが保存されてしている状態時に、次の状態が発生した場合は、メモリバッファ306の中間データを合成モジュール307で合成用メモリ308を使ってイメージデータに変換する。その状態とは、合成不可の描画命令を受けた時、メモリバッファ306が一杯になった時、1ページ分の描画命令が終了した時である。合成モジュール307で生成したイメージデータは、PDLコマンド生成モジュール305でPDLコマンドに変換して、プリンタ307に送出する。
このようにして、次々とOS301からの描画命令を中間データを経由して、一部の中間データはイメージデータに合成して、PDLコマンドに変換してプリンタへ転送し、再度OS301からの描画命令に対する処理を続ける。OS301からの描画命令に対する処理がすべて完了すると、メモリバッファ306内の中間データを上記と同様の処理でPDLコマンドに変換してプリンタへ転送し、プリンタドライバ303の印刷処理が完了する。
<本実施形態の印刷処理システムでの印刷処理方法の概念>
まず、本発明における印刷処理方法の理解を助けるために、従来技術の印刷処理方法と本発明の印刷処理方法との相違を、2つの例で説明する。なお、本発明は、以下の2つの例のみを改善した技術ではなく、本発明の印刷処理方法の実行により細切れイメージのように互いに隣接していないイメージを有効に処理できることは、当業者には明らかであろう。
(水平の点線の従来の処理例)
図4は、細切れイメージの1例である水平の点線を印刷する従来の例を示す図である。図4には、PDL描画コマンド展開とビットマップ展開したデータとを比較して、PDL描画コマンドの方がデータ量が大きくなる例を示したものである。
一般的なアプリケーションで点線を描画する際、プリンタドライバには点線を描画する命令がひとつの関数で渡ってくる。
この際に、点線指定が可能な高級なPDL描画コマンドを持つ場合には、線描画命令に点線属性をつけることで、サイズの小さいPDL描画コマンドで点線の描画指示が可能である。
ところが、アプリケーションによっては、点線のライン実線部分(図4では高さ1、幅3ピクセル)の細切れイメージ401を多量に使って表現するものが存在する。OSから渡されたイメージデータをプリンタドライバがPDL描画コマンドにすると、数ピクセル単位の細切れのイメージ描画命令402が大量にプリンタに送信されることになる。
大量の小さなイメージ描画命令402をプリンタに送信すると、(1)PDLコマンド中のヘッダサイズの比率が大きくなる、(2)PackBits圧縮のような連続性を使った圧縮が利き難くなる、などにより、データ転送速度が劣化する。また、情報処理装置であるPCに比べて、非力なCPUやメモリ空間しか持たないプリンタで、大量の細切れイメージを処理するとコマンド解析時間などがかかり、印刷時間が増大してしまう。
(水平の点線の本発明の処理例)
図5は、細切れイメージの1例である水平の点線を印刷する本発明の例を示す図である。図5では、図4と同様な水平の点線を本発明の処理によれば、PDL描画コマンド展開とビットマップ展開したデータとを比較して、PDL描画コマンドの方がデータ量を少なくできる例を示したものである。
本発明では、図5の601ように描画命令同士でイメージが隣接していなくても、全体処理時間が短くなると判断した時は、602のようにイメージとマスクとに合成変換することで、印刷時間全体のパフォーマンスを上げるものである。本発明では、合成後のデータ量が制限を越えない限り1つのPDLコマンドに合成されて、プリンタに送られる。
(斜めの点線の処理例)
図6は、細切れイメージの1例である斜めの点線を印刷する例を示す図である。図6には、図5のようなイメージとマスクとに合成変換を斜めの点線の処理にそのまま拡大すると、PDL描画コマンド展開とビットマップ展開したデータとを比較して、結果的にPDL描画コマンドの方がデータ量が大きくなってしまう例を示したものである。
上記図5のような合成処理をそのままにして合成するイメージの範囲を広げると、図6のようなイメージ501を合成すると、502のように、ソースイメージを合計したよりも大きくなる可能性が高くなる(図11も参照)。これでは、PC−プリンタ間のデータ転送時間が増大するため合成をするメリットがない。
そこで、本発明では、図5の処理に特殊な合成条件を加えることによって、図6の問題点を解決する。
(斜めの点線の本発明の処理例)
図7は、細切れイメージの1例である斜めの点線を印刷する本発明の例を示す図である。図7には、特殊な合成条件を加えることで、図5の処理を行なうと共に図6の問題点をも解決し、PDL描画コマンド展開とビットマップ展開したデータとを比較して、PDL描画コマンドの方がデータ量が小さくなる例を示したものである。
図7では、最適な描画命令同士だけを合成してPDL描画コマンド702を生成することを可能とするものである。図7では、特殊な合成条件により点線中の同一の点用に渡されたイメージ同士は合成しているが、離れたイメージは合成しない結果を示している。
なお、マスクパターンを作成する理由は、ビットマップは矩形で表され、そのうちのどの部分をプリンタで処理する必要があるかを示すためである。
<本実施形態における描画命令および合成テーブルデータの構成例>
以下、本実施形態の合成条件を説明するために、図8および図9を使ってウインドウズ(以下、Windows:登録商標)を例にしたプリンタドライバ内のイメージ描画処理の説明を行う。
(描画命令の構成例)
図8は、アプリケーション上で作成された点線描画を、Windows系プリンタドライバのDDI関数であるDrvStretchBlt関数801に対して、数ピクセルのイメージの描画命令として渡してきた様子を示すものである。
図8の例は、"psoSrc"が示すビットマップメモリ空間802内の"prclSrc"領域804を、"psoDest"が示すビットマップメモリ空間805内の、"prclDest"領域803に描画することを指示するものである。なお、"prclDest"領域804,"prclDest"領域803の構造体RECTLは、以下の通り四角い領域の位置を表すことが出来る。
typedef struct _RECTL {
LONG left;
LONG top;
LONG right;
LONG bottom;
} RECTL, *PRECTL;
その他にも、マスク領域をビットマップのオンピクセルで示す"psoMask"や、クリップ領域を示す"pco"なども存在するが、ここでは説明を省略する。なお、描画用ビットマップとマスクパターンによって作成される描画命令は、描画用ビットマップに対し、マスクパターンのマスクされている個所を描画するというコマンドである。あるいは、マスクパターンのマスクされている個所をクリアするというコマンドと、マスクパターンのマスクされていない個所をクリアされたビットマップをOR処理で描画するというコマンドの複数である。
ここで、left, rightは、左右方向の最左をゼロとした描画位置を示し、top, bottomは、上下方向の最上をゼロとした描画位置を示す。
(合成テーブルデータの構成例)
続けて、図9を使って、メモリバッファ306に保存する中間データの、合成テーブルデータ形式のイメージデータの保存形式の説明を行う。
"rclUniImgArea"901は、それまでにメモリバッファ306に保存した中間データをイメージに合成した時の、最外接矩形領域を格納するものである。
"UniImgAreaSize"902は、"rclUniImgArea"901のイメージを生成した場合のデータサイズを求めたものである。
"TotalSrcImageSize"903は、保存した個々のイメージ本体のサイズの合計値であり、以下の式で求める。
ImageW=rclDest.right - rclDest.left;
ImageH=rclDest.bottom - rclDest.top;
TotalSrcImageSize=Σ(ImageW*ImageH);
"rop"904は、それまでに保存したイメージ描画命令に指定された論理演算値を格納してある。メモリバッファ306に保存されている細切れイメージがある時は、格納済みrop値と異なるrop値を持つイメージは合成不可と判定する。
"ImgCnt"907は、保存したイメージの個数を示す。
"p1stimgtable"908は、保存したイメージデータ構造体の先頭アドレスを格納する。"plastimgtable"909は、最後に保存したイメージデータ構造体のポインタを示す。
上記901〜908は、保存イメージ全体を管理する全体管理テーブル910である。
保存するイメージデータ構造体911は、以下のデータで構成される。
OSから渡されたソースイメージの領域情報"rclSrc"905と、展開領域情報"rclDst"909と、イメージデータ本体のサイズ"ImageSize"906の描画先領域である。"ImageData"にはイメージデータ本体が保存されている。
図9のように、1つの管理テーブル910に複数のイメージデータ構造体911(図9には、第一イメージ情報と第二イメージ情報が示されている)を連続して保存することが可能である。
<本実施形態の合成可否の判断基準例>
本実施形態では、合成した方が高速に処理できるか否かを高速に判定するために、イメージデータをOSから受け取り次第、以下のA式を実施し、論理TRUEであれば合成と判断し、論理FALSEであれば非合成と判断する。
(ImageW×ImageH×bitspixel<maxSize) &
(TotalSrcImageSize/UniImgAreaSize×100>MinimamOcupationRasio)
...(A式)
ここで、"bitspixel"は1画素を表現するビット数であり、"maxSize"は、細切れイメージだけを合成するための第1の閾値(定数)である。本実施形態では、縮小イメージはプリンタドライバでイメージを出力解像度に縮小し、拡大イメージはプリンタで拡大するので、rclDest領域から求めたビットマップサイズが閾値より小さい場合を細切れイメージとして処理する。かかる第1の閾値は、印刷処理システム毎に値は異なる。
また、"MinimamOcupationRasio"は、合成イメージ内の無駄領域が増えないように、合成イメージ中に占めるイメージ本体の領域の割合(比)を一定値より大きくするための第2の閾値(定数)である。かかる第2の閾値も、印刷処理システム毎に値は異なる。
なお、上記判断式のA式、あるいはその閾値などは、限定されず本発明の範囲内で変更可能である。
<本実施形態の印刷処理方法による処理例>
以下、図10〜図12で、本実施形態の細切れイメージ合成をシュミレーションする。なお、本実施形態では、maxSize=80 byte, MinimamOcupationRasio=20%として説明するが、これらの値は、印刷処理システムによって変化する。
(水平の点線の処理例)
図10は、本実施形態の印刷処理方法による水平の点線の処理例を示す図である。
イメージ1(1001)(ImageW=3、ImageH=1、bitspixel=1、描画位置:X=1, y=2)は、A式の合成条件を満たすので、合成イメージとしてメモリバッファに保存される。まだ1つしか格納されていないので、ImgOcupation=100%である。1002は、メモリバッファに保存されたイメージ1をビットマップ展開した場合の状態を示す図である。
続けてOSから渡されたイメージ2(1003)(ImageW=2、ImageH=1、bitspixel=1、描画位置:X=8, y=2)も、サイズはA式の合成条件を満たす。イメージ1とイメージ2とは重ならないが、同時にImgOcupation=55%で条件を満たすので合成イメージとしてメモリバッファに保存する。1004は、メモリバッファに保存された合成イメージ(イメージ1,2)をビットマップ展開した場合の状態を示す図である。
同様に、イメージ3もImgOcupation=50%なので合成可能と判断し、メモリバッファに保存をし続ける。1006は、メモリバッファに保存された合成イメージ(イメージ1,2,3)をビットマップ展開した場合の状態を示す図である。
(斜めの点線の処理例)
図11は、本実施形態の印刷処理方法による斜めの点線の処理例を示す図である。。
図11の場合は、イメージ1(1101)、イメージ2(1103)、イメージ3(1105)までは、ImgOcupation=50%のため合成可能と判定される。その合成イメージをビットマップ展開した場合の状態が1102、1104、1106にそれぞれ示されている。
ところが、イメージ4(1107)を合成すると、合成イメージは1108に示すようになり、ImgOcupation=17%となる。このため、閾値の20%を下まわって式Aを満足しないので、イメージ4(1107)は合成しない。イメージ1(1101)からイメージ3(1105)までを合成し(1106)、PDL描画コマンドを生成することを示している。
合成イメージのPDLコマンド発行後、メモリバッファ306はクリアし、イメージ4(1107)を次の合成のためにイメージバッファ306に格納する。
このような処理を続けることで、先に図7に示した処理が実現する。
(他の互いに隣接していないイメージへの適用例)
図12は、水平の点線(図10)、斜めの点線(図11)とは異なる互いに隣接していないイメージへの本実施形態の適用例を示す図である。
図12の場合は、イメージ3(1205)までは図11と同じである。従って、1202〜1206は図11の1102〜1106と同様である。
図12では、次のイメージ4(1207)の描画領域が、イメージ3(1205)までの最外郭矩形rclUniImgAreaと重なっている。
この場合の条件として、イメージ1〜イメージ3の描画命令が下地を使わない上書き描画である場合は、合成可能であると判断する。更に、イメージ4(1207)を合成してもImgOcupationは58%のため合成可能と判断して、イメージ4を合成してメモリバッファ306に保存する。1208は、メモリバッファに保存された合成イメージ(イメージ1,2,3)をビットマップ展開した場合の状態を示す図である。
<本実施形態の印刷処理方法の処理手順例>
図13、図14、図15は、以上の処理の流れを示すドライバ303が実行するフローチャートの例である。
(全体の処理手順例)
図13のフローチャートを参照しながら本発明に係るドライバの印刷処理方法の全体の処理について説明する。
ドライバへの初期化メッセージに先立って、以下の処理を行われる。
まず、図1の入力装置104から印刷を実行するように命令が入力される。入力された命令を受けて、補助記憶装置103から主記憶装置102上に読み込まれたOS、ドライバやアプリケーション(図2)のうち、OS301がそのメッセージを受け取る。OS301は、現在アクティブであるアプリケーション302に印刷実行メッセージを送る。
アプリケーション302は、そのメッセージをOS301が認識できるコマンドに変換して、印刷するデータやコマンドのメッセージをOS301に送る。OS301は、ドライバ303の認識できるコマンドに変換して、ドライバ303にメッセージを送る。
ドライバに初期化用のメッセージが送られてきたら、図13のフローチャートが始まる。まず、初期化として、合成テーブルデータを格納するメモリバッファ306、イメージを合成するための合成用メモリ308をアロケートして、内容をクリアしておく(ステップS1301)。
ドライバは、OSから送られてくるコマンドを取得して解析する(ステップS1302)。ステップS1303で、解析結果からページ終了コマンド検出し、ページ終了の場合はステップS1308に進み、それ以外のコマンドならステップS1304へ進む。
ステップS1304では、コマンドを中間データに変換し、ステップS1305で合成条件を確認する(図15で詳細に説明する)。ステップS1306では、ステップS1305の確認結果から合成可能データか否かが判定される。合成可能データであればステップS1307へ処理を回す。ステップS1307では、メモリバッファ306の合成テーブルデータにイメージ情報をイメージ本体と共に保存し、ステップS1302に戻って次の命令を取得する。
一方、ステップS1306で合成不可能と判断したデータは、ステップS1309に進む。ステップS1309では、フラッシュ処理(図14で詳細に説明する)を行い、ステップS1302に戻って次の命令を取得する。
ステップS1303の判断でページ終了の場合は、ステップS1308で、合成テーブルデータのフラッシュ処理(同じく図14で詳細を説明する)を行う。ステップS1310では、ステップS1301で確保したメモリを開放して処理を終了する。
(合成テーブルデータのフラッシュ処理の手順例)
図14は、図13のステップS1308およびS1309で行なう合成テーブルデータのフラッシュ処理のフローチャートである。
ステップS1401では、メモリバッファ306中の合成テーブルデータのrclUniImgAreaの値を使って、合成に必要なビットマップ領域を合成用メモリ308に確保する。ステップS1302で、合成用メモリ308に確保したビットマップに、合成テーブルデータに登録されているイメージ情報911を登録順に描画する。ステップS1403で、合成用メモリ308上で合成したビットマップデータからPDLコマンドを作成して、プリンタに送出する。
ステップS1405では、現在処理中の中間データが合成で高速化すると判断されたイメージデータの場合はステップS1407へ進み、高速化しないと判断されたデータならステップS1406へ進む、
ステップS1406では、現在処理中の中間データをPDLコマンドに変換して、プリンタに送出する。一方、ステップS1407では、中間データをメモリバッファ306に保存する。
そして、合成テーブルデータのフラッシュ処理を終了してリターンする。
(合成条件確認処理の手順例)
図15は、図13のステップS1305で行なう合成条件確認処理のフローフローチャートである。
ステップS1501では、A式により、イメージに合成することで高速化が可能か否かを判断する。イメージに合成することで高速化が可能と判断された時は、ステップS1502へ進み、高速化できないと判断された時はステップS1507へ進む。
ステップS1502では、メモリバッファ306中の合成テーブルデータに保存済みイメージデータがあるか否かを判断する。保存済みイメージデータがある場合はステップS1503へ進み、保存済みイメージデータがない場合は、ステップS1506へ進む。
ステップS1503では描画属性を確認し、下地を使う描画命令か否かを判断する。下地を使う描画命令の場合はステップS1504へ進み、下地を使う描画命令でなければステップS1505に進む。、
ステップS1504では、処理中の描画命令が保存済みイメージと重なるかどうかの確認を行い、重ならない場合はステップS1505へ進み、重なる場合は合成不可能なのでステップS1507へ進む。
ステップS1505では、保存済みイメージと描画属性(rop値やCLIP値など)が同じであるかを確認し、同一種類であればステップS1506へ進み、異なっている場合はステップS1507へ進む。
ステップS1506で合成可能であることを決定する。一方、ステップS1507で合成不可能であることを決定する。例えば、フラグとして主記憶装置102内に確保された領域に記憶する。
上記処理をまとめると、合成可能の条件は、(1)保存済みイメージが無い場合、(2)保存済みイメージが有る場合で下地を使わず属性が同じ場合、(3)保存済みイメージが有る場合で下地を使うが重なりが無く属性が同じ場合、である。この3つの条件以外であれば、合成不可能と判断される。
以上の通り、プリンタドライバは、OSから受け取った描画命令を逐次合成するかどうかを判断して中間データ保存する。合成条件に合わない描画命令を受け取った時は、それまで保存した中間データをビットマップ空間に描画合成する。描画合成したビットマップから印刷命令を作成し、即座にプリンタに送出するため、プリンタとの並列処理も可能である。
なお、プリンタドライバで、OSから渡される描画命令や中間データから変換されるプリンタへの送信コマンドを、PDL描画コマンドとしたが、必ずしもPDL描画コマンドである必要はない。例えば、デバイス非依存の描画コマンド、あるいは変換せずにOSから渡される描画命令としても、本発明は成立し同様の効果を奏する。
また、本発明は、複数の機器(例えばホストコンピュータ、インターフェース機器、プリンタなど)から構成されるシステムあるいは統合装置に適用しても、ひとつの機器からなる装置に適用してもよい。
又、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体(または記録媒体)を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはu CPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
又、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行う。このような処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
本実施形態の印刷処理方法が適用される印刷処理システムの構成の一例を示すブロック図である。 本実施形態の印刷処理方法で、入力装置から印刷命令が入力されてプリンタへデータを送り印刷するまでのデータの流れを示す概念図である。 図2のドライバ部分の処理内容を中心に詳しく示した図である。 従来のイメージ合成方法の課題を示した概念図である。 図4の従来のイメージ合成方法の課題を解決する本発明の処理を示した概念図である。 従来のイメージ合成方法の第2の課題を示した概念図である。 図6の従来のイメージ合成方法の第2の課題をを解決する本発明の処理を示した概念図である。 本実施形態でWindowsのプリンタドライバがOSから受け取るイメージの情報を説明する図である。 本実施形態の合成テーブルデータの構成例を示す図である。 本実施形態で水平の点線を合成する時のイメージデータの流れを説明する図である。 本実施形態で斜めの点線を合成する時のイメージデータの流れを説明する図である。 本実施形態で他の細切れイメージを合成する時のイメージデータの流れを説明する図である。 本実施形態の情報処理装置のドライバによる印刷処理方法の手順例を示すフローチャートである。 図13の合成テーブルデータのフラッシュ処理の手順例を示すフローチャートである。 図13の合成条件確認処理の手順例を示すフローチャートである。

Claims (24)

  1. 描画命令を受け取ってプリンタに対する印刷ジョブデータを生成するためのプリンタドライバの印刷処理方法であって、
    描画命令を受け取る受信工程と、
    変換手段が、前記受け取った描画命令を第1の中間データに変換する変換工程と、
    判断手段が、前記第1の中間データを、既に受け取り保存している他の描画命令の第2の中間データと合成が可能か否かを合成条件に基づいて判断する判断工程と、
    前記判断手段が、合成が可能と判断した場合に、前記第1の中間データを保存手段に保存する保存工程と、
    前記判断手段が、合成が可能で無いと判断した場合に、合成手段が、前記第2の中間データを1つの印刷ジョブデータに合成してプリンタに出力する出力工程とを有し、
    前記判断工程は、下地を使う描画命令であるか否かに応じて、前記受け取った描画命令が他の描画命令との合成が可能か否かを判断することを特徴とする印刷処理方法。
  2. 前記判断手段が、前記合成が可能で無いと判断した場合であって、前記第1の中間データのデータ量が第1の閾値より小さい場合には、前記出力工程で前記第2の中間データの印刷ジョブデータを出力した後で、前記第1の中間データを保存し、そうでない場合には、前記出力工程で前記第2の中間データの印刷ジョブデータを出力した後に、前記受け取った描画命令を1つの印刷ジョブデータとしてプリンタに出力する工程をさらに有することを特徴とする請求項1に記載の印刷処理方法。
  3. 描画命令を受け取ってプリンタに対する印刷ジョブデータを生成するためのプリンタドライバの印刷処理方法であって、
    描画命令を受け取る受信工程と、
    変換手段が、前記受け取った描画命令を第1の中間データに変換する変換工程と、
    判断手段が、前記第1の中間データを、既に受け取り保存している他の描画命令の第2の中間データと合成が可能か否かを合成条件に基づいて判断する判断工程と、
    前記判断手段が、合成が可能と判断した場合に、前記第1の中間データを保存手段に保存する保存工程と、
    前記判断手段が、合成が可能で無いと判断した場合に、合成手段が、前記第2の中間データを1つの印刷ジョブデータに合成してプリンタに出力する出力工程とを有し、
    前記判断手段が、前記合成が可能と判断する条件は、
    前記第1の中間データを前記第2の中間データと合成した場合と合成しない場合の印刷時間を予測し、合成したほうが印刷時間が短くなることと、
    前記第1及び第2の中間データが同一種類の描画属性であることと、
    下地を使わない描画処理、または、下地を使うが前記第1の中間データと前記第2の中間データのイメージが重ならないこととの、全ての条件を満たす条件であることを特徴とする印刷処理方法。
  4. 前記合成したほうが印刷時間が短くなるとは、前記第1の中間データのデータ量が第1の閾値より小さく、且つ、合成されたイメージの範囲内における描画領域の割合が第2の閾値よりも大きい場合であることを特徴とする請求項3に記載の印刷処理方法。
  5. 前記印刷ジョブデータは、PDL描画コマンドであることを特徴とする請求項1から4のいずれか1項に記載の印刷処理方法。
  6. 描画命令を受け取ってプリンタに対する印刷ジョブデータを生成するための印刷処理方法であって、
    描画命令を受け取る受信工程と、
    判断手段が、受け取った第1の描画命令と、既に受け取り保存している第2の描画命令とを合成すべきか否かを判断する判断工程と、
    前記判断手段が、合成すべきと判断した場合に、前記第1の描画命令を保存手段に保存する保存工程と、
    前記判断手段が、合成すべきでないと判断した場合に、合成手段が、前記第2の描画命令を合成し、合成した描画命令を印刷ジョブデータとしてプリンタに出力する出力工程とを有し、
    前記判断工程では、前記第1の描画命令と前記第2の描画命令の合成後のイメージの描画領域の割合が第1の閾値を下まわる場合、合成すべきでないと判断することを特徴とする印刷処理方法。
  7. 前記判断工程では、前記第1の描画命令のイメージの大きさが第2の閾値より大きい場合にも、合成すべきでないと判断することを特徴とする請求項6に記載の印刷処理方法。
  8. 前記判断工程では、前記第1の描画命令が下地を使う描画命令であり、前記第2の描画命令と重なるイメージの領域を有する場合、合成すべきでないと判断することを特徴とする請求項6または7記載の印刷処理方法。
  9. 前記出力工程では、前記第2の描画命令を合成し、合成した描画命令及び合成した描画命令のマスクパターンをプリンタに出力することを特徴とする請求項6から8のいずれか1項に記載の印刷処理方法。
  10. 描画命令を受け取ってプリンタに出力する印刷ジョブデータを生成するためのプログラムであって、
    描画命令を受け取る受信手段と、
    受け取った描画命令が他の描画命令と合成が可能か否かを受け取った描画命令が下地を使う描画命令であるか否かに応じて判断する判断手段と、
    前記判断手段により受け取った描画命令が他の描画命令と合成が可能であると判断した場合に、描画命令が合成された印刷ジョブデータを生成する生成手段としてコンピュータを機能させるプログラム。
  11. 請求項10に記載のプログラムを記憶したコンピュータで読取り可能な記憶媒体。
  12. 描画命令を受け取ってプリンタに対する印刷ジョブデータを生成するためのプリンタドライバを有する情報処理装置であって、
    描画命令を受け取る受信手段と、
    前記受け取った描画命令を第1の中間データに変換する変換手段と、
    前記第1の中間データを、既に受け取り保存手段に保存している他の描画命令の第2の中間データと合成が可能か否かを合成条件に基づいて判断する判断手段と、
    前記判断手段が合成が可能で無いと判断した場合に、前記第2の中間データを1つの印刷ジョブデータに合成してプリンタに出力する出力手段とを有し、
    前記判断手段が合成が可能と判断した場合に、前記保存手段は、前記第1の中間データを保存し、
    前記判断手段は、下地を使う描画命令であるか否かに応じて、前記受け取った描画命令が他の描画命令との合成が可能か否かを判断することを特徴とする情報処理装置。
  13. 前記判断手段が合成が可能で無いと判断した場合であって、前記第1の中間データのデータ量が第1の閾値より小さい場合には、前記出力手段が、前記第2の中間データの印刷ジョブデータを出力した後で、前記第1の中間データを保存手段に保存し、そうでない場合には、前記出力手段が、前記第2の中間データの印刷ジョブデータを出力した後に、前記受け取った描画命令を1つの印刷ジョブデータとしてプリンタに出力することを特徴とする請求項12に記載の情報処理装置。
  14. 描画命令を受け取ってプリンタに対する印刷ジョブデータを生成するためのプリンタドライバを有する情報処理装置であって、
    描画命令を受け取る受信手段と、
    前記受け取った描画命令を第1の中間データに変換する変換手段と、
    前記第1の中間データを、既に受け取り保存手段に保存している他の描画命令の第2の中間データと合成が可能か否かを合成条件に基づいて判断する判断手段と、
    前記判断手段が合成が可能で無いと判断した場合に、前記第2の中間データを1つの印刷ジョブデータに合成してプリンタに出力する出力手段とを有し、
    前記判断手段が合成が可能と判断した場合に、前記保存手段は、前記第1の中間データを保存し、
    前記合成が可能と判断する条件は、
    前記第1の中間データを前記第2の中間データと合成した場合と合成しない場合の印刷時間を予測し、合成したほうが印刷時間が短くなることと、
    前記第1及び第2の中間データが同一種類の描画属性であることと、
    下地を使わない描画処理、または、下地を使うが前記第1の中間データと前記第2の中間データのイメージが重ならないこととの、全ての条件を満たす条件であることを特徴とする情報処理装置。
  15. 前記合成したほうが印刷時間が短くなるとは、前記第1の中間データのデータ量が第1の閾値より小さく、且つ、合成されたイメージの範囲内における描画領域の割合が第2の閾値よりも大きい場合であることを特徴とする請求項14に記載の情報処理装置。



  16. 前記印刷ジョブデータは、PDL描画コマンドであることを特徴とする請求項12から15のいずれか1項に記載の情報処理装置。
  17. 描画命令を受け取ってプリンタに対する印刷ジョブデータを生成するための情報処理装置であって、
    描画命令を受け取る受信手段と、
    受け取った第1の描画命令と、既に受け取り保存手段に保存している第2の描画命令とを合成すべきか否かを判断する判断手段と、
    合成すべきでないと判断した場合に、前記第2の描画命令を合成し、合成した描画命令を印刷ジョブデータとしてプリンタに出力する出力手段とを有し、
    合成すべきと判断した場合に、前記保存手段は、前記第1の描画命令を保存し、
    前記判断手段は、前記第1の描画命令と前記第2の描画命令の合成後のイメージの描画領域の割合が第1の閾値を下まわる場合、合成すべきでないと判断することを特徴とする情報処理装置。
  18. 前記判断手段は、前記第1の描画命令のイメージの大きさが第2の閾値より大きい場合にも、合成すべきでないと判断することを特徴とする請求項17記載の情報処理装置。
  19. 前記判断手段は、前記第1の描画命令が下地を使う描画命令であり、前記第2の描画命令と重なるイメージの領域を有する場合、合成すべきでないと判断することを特徴とする請求項17または18記載の情報処理装置。
  20. 前記出力手段は、合成すべきでないと判断した場合に、前記第2の描画命令を合成し、合成した描画命令及び合成した描画命令のマスクパターンをプリンタに出力することを特徴とする請求項17から19のいずれか1項に記載の情報処理装置。
  21. 前記判断工程は、下地を使う描画命令でなく、保存済みの他の描画命令と属性が同じ場合、前記受け取った描画命令が他の描画命令との合成が可能であると判断し、
    下地を使う描画命令であり、保存済みの描画命令と重ならず、保存済みの他の描画命令と属性が同じ場合、前記受け取った描画命令が他の描画命令との合成が可能であると判断し、
    下地を使う描画命令であり、保存済みの描画命令と重なる場合、前記受け取った描画命令が他の描画命令との合成が不可能であると判断し、
    下地を使う描画命令であり、保存済みの描画命令と重ならず、保存済みの他の描画命令と属性が同じでない場合、前記受け取った描画命令が他の描画命令との合成が不可能であると判断することを特徴とする請求項1に記載の情報処理方法。
  22. 前記判断手段は、下地を使う描画命令でなく、保存済みの他の描画命令と属性が同じ場合、前記受け取った描画命令が他の描画命令との合成が可能であると判断し、
    下地を使う描画命令であり、保存済みの描画命令と重ならず、保存済みの他の描画命令と属性が同じ場合、前記受け取った描画命令が他の描画命令との合成が可能であると判断し、
    下地を使う描画命令であり、保存済みの描画命令と重なる場合、前記受け取った描画命令が他の描画命令との合成が不可能であると判断し、
    下地を使う描画命令であり、保存済みの描画命令と重ならず、保存済みの他の描画命令と属性が同じでない場合、前記受け取った描画命令が他の描画命令との合成が不可能であると判断することを特徴とする請求項10に記載のプログラム。
  23. 前記判断手段は、下地を使う描画命令でなく、保存済みの他の描画命令と属性が同じ場合、前記受け取った描画命令が他の描画命令との合成が可能であると判断し、
    下地を使う描画命令であり、保存済みの描画命令と重ならず、保存済みの他の描画命令と属性が同じ場合、前記受け取った描画命令が他の描画命令との合成が可能であると判断し、
    下地を使う描画命令であり、保存済みの描画命令と重なる場合、前記受け取った描画命令が他の描画命令との合成が不可能であると判断し、
    下地を使う描画命令であり、保存済みの描画命令と重ならず、保存済みの他の描画命令と属性が同じでない場合、前記受け取った描画命令が他の描画命令との合成が不可能であると判断することを特徴とする請求項12に記載の情報処理装置。
  24. 描画命令を受け取ってプリンタに出力する印刷ジョブデータを生成する情報処理装置であって、
    描画命令を受け取る受信手段と、
    受け取った描画命令が他の描画命令と合成が可能か否かを受け取った描画命令が下地を使う描画命令であるか否かに応じて判断する判断手段と、
    前記判断手段により受け取った描画命令が他の描画命令と合成が可能であると判断した場合に、描画命令が合成された印刷ジョブデータを生成する生成手段とを有することを特徴とする情報処理装置。
JP2007259238A 2007-10-02 2007-10-02 印刷処理方法およびそれを実現する情報処理装置 Active JP5281265B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2007259238A JP5281265B2 (ja) 2007-10-02 2007-10-02 印刷処理方法およびそれを実現する情報処理装置
US12/237,374 US8625125B2 (en) 2007-10-02 2008-09-24 Print processing method and information processing apparatus implementing the method
US14/099,280 US8922832B2 (en) 2007-10-02 2013-12-06 Print processing method and information processing apparatus implementing the method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007259238A JP5281265B2 (ja) 2007-10-02 2007-10-02 印刷処理方法およびそれを実現する情報処理装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2013111299A Division JP5759511B2 (ja) 2013-05-27 2013-05-27 描画命令を処理する装置、方法及びプログラム

Publications (3)

Publication Number Publication Date
JP2009087266A JP2009087266A (ja) 2009-04-23
JP2009087266A5 JP2009087266A5 (ja) 2010-11-18
JP5281265B2 true JP5281265B2 (ja) 2013-09-04

Family

ID=40507921

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007259238A Active JP5281265B2 (ja) 2007-10-02 2007-10-02 印刷処理方法およびそれを実現する情報処理装置

Country Status (2)

Country Link
US (2) US8625125B2 (ja)
JP (1) JP5281265B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5763293B2 (ja) * 2009-10-06 2015-08-12 富士ゼロックス株式会社 画像配置支援装置
US8854385B1 (en) * 2013-10-03 2014-10-07 Google Inc. Merging rendering operations for graphics processing unit (GPU) performance
US9292903B2 (en) 2013-10-03 2016-03-22 Google Inc. Overlap aware reordering of rendering operations for efficiency
JP6129127B2 (ja) * 2014-08-08 2017-05-17 キヤノン株式会社 画像処理装置、画像処理方法、プログラム
JP6281528B2 (ja) * 2015-06-11 2018-02-21 京セラドキュメントソリューションズ株式会社 情報処理装置および情報処理プログラム
WO2018013138A1 (en) * 2016-07-15 2018-01-18 Hewlett-Packard Development Company, L.P. Fast page first print optimization
JP6939342B2 (ja) 2017-09-28 2021-09-22 ブラザー工業株式会社 プリンタドライバおよび、情報処理装置
JP6881194B2 (ja) * 2017-09-28 2021-06-02 ブラザー工業株式会社 プリンタドライバおよび、情報処理装置
CN112015474B (zh) * 2020-08-28 2024-01-26 格兰菲智能科技有限公司 电子装置及其命令数量减少方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE68918886T2 (de) * 1988-04-08 1995-06-01 Dainippon Screen Mfg. Co., Ltd., Kyoto Verfahren zur Gewinnung der Aussenlinie eines Objektes in einem Bild.
JPH07282272A (ja) * 1994-04-13 1995-10-27 Hitachi Ltd 描画処理システム
US6832002B2 (en) * 1997-02-10 2004-12-14 Definiens Ag Method of iterative segmentation of a digital picture
JP3800280B2 (ja) * 1998-10-08 2006-07-26 株式会社リコー 破線生成装置
JP2000215010A (ja) * 1999-01-21 2000-08-04 Fuji Xerox Co Ltd 画像処理装置、画像形成装置、画像処理形成システム、画像処理方法、画像形成方法および画像処理形成方法
JP2001222395A (ja) * 2000-02-10 2001-08-17 Canon Inc 情報処理装置および情報処理方法およびプリンタドライバプログラムが格納された記憶媒体
JP2001293936A (ja) 2000-04-17 2001-10-23 Fuji Xerox Co Ltd 描画情報処理装置および描画情報処理方法
JP2003228477A (ja) * 2002-02-01 2003-08-15 Canon Inc 画像データ処理装置、データ変換方法、プログラム、及び記憶媒体
JP2004030386A (ja) 2002-06-27 2004-01-29 Canon Inc 画像処理方法および画像処理装置
JP4280656B2 (ja) * 2003-06-20 2009-06-17 キヤノン株式会社 画像表示装置およびその画像表示方法
JP2005141447A (ja) * 2003-11-06 2005-06-02 Canon Inc 印刷システム
JP4600648B2 (ja) 2004-08-30 2010-12-15 富士ゼロックス株式会社 描画命令処理装置及び描画命令処理方法、画像描画装置及び画像描画方法、描画命令生成装置及び描画命令生成方法
JP4246690B2 (ja) * 2004-11-30 2009-04-02 本田技研工業株式会社 画像情報処理システム、画像情報処理方法、画像情報処理プログラムおよび自動車

Also Published As

Publication number Publication date
US8625125B2 (en) 2014-01-07
US20140098388A1 (en) 2014-04-10
US8922832B2 (en) 2014-12-30
US20090086265A1 (en) 2009-04-02
JP2009087266A (ja) 2009-04-23

Similar Documents

Publication Publication Date Title
JP5281265B2 (ja) 印刷処理方法およびそれを実現する情報処理装置
JPH09284509A (ja) 画像処理装置
JP2007249856A (ja) 情報処理装置および情報処理装置における印刷設定反映方法とプログラム
US8502830B2 (en) Image processing apparatus, image processing method, and storage medium
US9886778B2 (en) Information processing apparatus, information processing method, and program
JP5759511B2 (ja) 描画命令を処理する装置、方法及びプログラム
JP2011230399A (ja) 画像処理装置および画像形成装置
JPH09261457A (ja) 印刷制御装置並びに印刷制御装置のデータ処理方法およびコンピュータで読み出し可能なプログラムを格納した記憶媒体
JP4461361B2 (ja) 描画処理方法およびプログラム並びに描画命令出力装置および画像形成装置
CN109218556B (zh) 进行绘制处理的图像处理装置、绘制处理方法和存储介质
US20110205591A1 (en) Image processing device and image processing method
JPH11203071A (ja) 画像処理装置
JP4335852B2 (ja) 印刷制御装置および印刷制御方法およびプログラム
JPH11203070A (ja) プリンタ制御装置
JP2016206934A (ja) 画像処理装置、画像処理方法及びプログラム
JP2004030386A (ja) 画像処理方法および画像処理装置
JPH11191055A (ja) 印刷システムおよび印刷システムのデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
US20180307953A1 (en) Image forming apparatus, and method of controlling the same
JP2003050683A (ja) 画像処理装置、画像処理方法、並びにプログラム及び記憶媒体
JP3495877B2 (ja) プリンタ制御システム、プリンタ制御装置およびそれらの方法
JPH09309234A (ja) 情報処理装置並びに印刷装置並びに印刷システム並びに情報処理装置のデータ処理方法並びに印刷装置のデータ処理方法およびコンピュータで読出し可能なプログラムを格納した記憶媒体
JP2006168051A (ja) 印刷装置
JP2003216364A (ja) 情報処理装置、その制御方法、プログラム及び記憶媒体
JP2006031086A (ja) 印刷処理方法
JPH09218762A (ja) 印刷処理システム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101001

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101001

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120511

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120710

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130408

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130524

R151 Written notification of patent or utility model registration

Ref document number: 5281265

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151