JP5171458B2 - 印刷制御装置、印刷制御方法、及びコンピュータプログラム - Google Patents
印刷制御装置、印刷制御方法、及びコンピュータプログラム Download PDFInfo
- Publication number
- JP5171458B2 JP5171458B2 JP2008193992A JP2008193992A JP5171458B2 JP 5171458 B2 JP5171458 B2 JP 5171458B2 JP 2008193992 A JP2008193992 A JP 2008193992A JP 2008193992 A JP2008193992 A JP 2008193992A JP 5171458 B2 JP5171458 B2 JP 5171458B2
- Authority
- JP
- Japan
- Prior art keywords
- print command
- page
- printing
- printer
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1204—Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/125—Page layout or assigning input pages onto output media, e.g. imposition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/126—Job scheduling, e.g. queuing, determine appropriate device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1275—Print workflow management, e.g. defining or changing a workflow, cross publishing
- G06F3/1277—Print workflow management, e.g. defining or changing a workflow, cross publishing using filter pipeline, e.g. outside the driver, adding traps
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1284—Local printer device
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)
Description
また、前述した従来の技術では、記憶領域に保存可能なだけ印刷データを保存した場合、ジョブの前半部分の印刷データを偏って保存することになり、必ずしも印刷データを効率的に保存できるわけではない。例えばジョブの後半部分に複雑なページがあり、当該ジョブの後半部分の印刷データを生成するための負荷が重い場合、当該ジョブの後半部分の印刷データを保存しておいた方が、二部目以降の処理の高速化、簡略化という観点から有効である。
本発明は、このような問題点に鑑みてなされたものであり、複数部数の印刷を行うに際し、二部目以降の処理を従来よりも効率よく行えるようにすることを目的とする。
<第1の実施形態>
図1は、印刷システムのハードウェア構成の一例を示すブロック図である。
図1において、CRT表示装置101は、プリンタドライバが提供する印刷設定ダイアログやプリンタステータス情報等を表示する。CRTC102は、表示装置用のコントローラである。KB103は、キーボード等のデータ入力装置であり、KBC104は、キーボードコントローラである。PD105は、ポインティングデバイス等の座標入力装置であり、PDC106は、ポインティングデバイスコントローラである。CPU107は、ホストコンピュータ装置100全体の制御を司る。
図2において、フィルターパイプライン204は、各ページのXPSデータをレイアウト処理する機能を含むレイアウトフィルター205と、XPSデータをプリンタ115が解釈可能なプリントコマンドに変換する機能を含むレンダーフィルター206を有する。XPSDrvにおいては、スプールファイルは96dpi単位で描画が記載されるXPS文書となる。
ここでフィルターとは、一般的に、入力されたデータをもとに、加工、変換、無変換、生成等の工程を行って、何らかのデータを出力する機能を有するプログラムのことを称する。
アプリケーション200は、文書を作成するものである。アプリケーション200は、作成した任意の文書の印刷にあたり、MXDW201に対して、印刷開始や印刷終了を通知する。また、アプリケーション200は、MXDW201に対して、印刷設定を行うためにユーザインタフェースモジュール202から返却された印刷設定情報を通知したり、文書の各ページの描画開始や描画終了を通知したりする。MXDW201は、アプリケーション200が描画した内容や印刷設定情報をXPSスプールファイル203に変換し、格納する。
尚、アプリケーション200の構成によっては、MXDW201を介さずに、XPSスプールファイル203を直接生成することも可能である。
フィルターパイプライン204に含まれる各フィルターは、スプールされた印刷ジョブをデスプールする際に、フィルターパイプライン204から呼び出される。スプールされたXPSデータは、そのままフィルターパイプライン204の各フィルターを通過して、その内容が編集されたり、プリンタドライバ独自のデータ形式に変換されたりして、最終的にプリンタ115が解釈可能なプリントコマンドに変換される。
印刷ジョブのXPSデータを全て処理し終えた場合、又は、印刷ジョブがキャンセルされた場合、フィルターパイプライン204の各フィルターは動作を終了する。
レイアウトフィルター205は、XPSスプールファイル203として格納されたXPSデータを入力し、印刷設定情報に基づいて、入力したXPSデータ(ページ)のレイアウト処理を行う。そして、レイアウトフィルター205は、レイアウト済みのXPSデータを出力する。
レンダーフィルター206は、レイアウトフィルター205から出力されたXPSデータを入力し、印刷設定情報に従い、入力したXPSデータをプリンタ115が解釈可能なプリントコマンドに変換して出力する。本実施形態においては、レンダーフィルター206は、プリントコマンドを生成する際に、入力したXPSデータを一度イメージデータに変換する。レンダーフィルター206は、色空間の変換や二値化等の画像処理が行われたイメージデータを、プリンタ115が解釈可能なプリントコマンドに変換する。ページプリンタに代表される高機能なプリンタでは、当該プリンタが解釈できるプリントコマンドの種類にXPSが含まれていることがある。このようなプリンタを用いる場合には、レンダーフィルター206の代わりに、入力したXPSデータを編集し、編集したXPSデータを出力するようなフィルターを持つ構成となる。また、XPSデータを編集する必要がなければ、そのようなフィルター自体が不要となる。
出力デバイスであるプリンタ115は、フィルターパイプライン204で生成されたプリントコマンドを解釈し、可視画像を印刷用紙に対して形成する。
このように、XPSDrvにおける印刷システムでは、プリントコマンド207の生成と、プリンタ115への転送とが異なるプロセスで動作する。すなわち、プリントコマンド207の生成と転送は並列で(並行して)動作することが可能である。例えばレンダーフィルター206は、プリンタ115が特定のページを印刷中であっても、そのページのプリントコマンド207の生成が完了していれば、次ページのプリントコマンド207の生成処理を開始することができる。
プリントコマンド207の生成と転送とが並列に動作せず、ページ単位で動作する場合、1ページ目の印刷中に2ページ目の生成処理を行うことができない。その結果、2ページ目の印刷開始と共に2ページ目のプリントコマンド207を生成することになる。そのため、2ページ目のプリントコマンド207の生成時間が、プリンタ115の2ページ目の印刷時間に対し5秒間足りなくなる。一方、プリントコマンド207の生成と転送とが並列に動作する場合、1ページ目の印刷中に2ページ目のプリントコマンド207を生成することが可能である。したがって、2ページ目の印刷処理が半分終了した段階で3ページ目のプリントコマンド207の生成を開始すれば、3ページ目の印刷の終了と共に3ページ目のプリントコマンド207の生成も完了する計算となる。このように、プリントコマンド207の生成と転送とが並列で動作しない場合、全てのページのプリントコマンド207が保存済みであって初めてプリンタ115は全てのページを夫々10秒で印刷することが可能である。それに対し、プリントコマンド207の生成と転送とが並列に動作する場合、3ページに1ページの割合でプリントコマンド207が生成済みであれば、プリンタ115は全てのページを夫々10秒で印刷することが可能である。このように、一部のページのプリントコマンド207が生成済みで、それを利用して高速に印刷処理を行うことを考えた場合、プリントコマンド207の生成と転送とを並列に動作させることで、全体として高速な処理を行うことが可能になる。
以上のように、ジョブ全体に対してできるだけ均等にプリントコマンド207を事前に生成することにより、プリントコマンド207の生成と転送との並列動作時に必要な記憶領域を小さくすることができる。
図3は、部単位の複数部印刷時におけるレイアウトフィルター205及びレンダーフィルター206の動作の概要の一例を説明する図である。
フィルターパイプライン204から呼び出される各フィルターは、少なくとも、XPSスプールファイル203を入力し、プリンタ115が解釈可能なプリントコマンド207を出力することは前述した通りである。ここで、アプリケーション200から、3ページのジョブを二部印刷することが指定された場合を例に挙げて説明する。
図3に示す通り、レイアウトフィルター205では、XPSデータの各ページを複製し、各ページのXPSデータを複数回レンダーフィルター206に渡す。レンダーフィルター206では、複製された各ページのXPSデータを受信部300で受信する。プリントコマンド生成部301は、受信部300で受信されたXPSデータの各ページを参照して、プリントコマンド207を生成する。プリントコマンド転送部304は、プリントコマンド生成部301で生成されたプリントコマンド207を、OSのAPIを用いて出力する。前述した通り、プリントコマンド転送部304から出力されたプリントコマンド207は、記憶領域に外部ファイルとして保存され、プリントコマンド207を生成するプロセスとは異なるプロセスからプリンタ115へ送信される。これにより、プリントコマンド転送部304の処理は、プリンタ115の処理状況に関わらず通常瞬時に完了し、次ページ以降のプリントコマンド207を生成する処理を開始することが可能である。
尚、図3における各フィルターの処理は、主に、部単位の複数部印刷を行う際に必要な処理に限定しているが、各フィルターは、それ以外の処理も行う。例えばレイアウトフィルター205は、印刷要求に従い、ページの割り付け配置等のレイアウト処理も行う。また、図3の構成と異なり、レイアウトフィルター205ではXPSデータの各ページの複製を作成せずに、レンダーフィルター206でプリントコマンド207を保存しなかったページのみ、XPSデータを作成するといった構成にすることも可能である。
まず、レンダーフィルター206は、P(現在のページ数)、Pall(ジョブの総ページ数)、L(プリントコマンド207を保存するページ間隔)を0に初期化する(ステップS400)。これらのパラメータは、例えばRAM109に記憶される。
次に、受信部300は、(P+1)ページのXPSデータを受信した後、現在のページ数であるPに1を加算する(ステップS401)。
次に、プリントコマンド保存判定部302は、プリントコマンド207を保存するページ間隔Lが0であるか否かを判定する(ステップS402)。この判定の結果、プリントコマンド207を保存するページ間隔Lが0であった場合、プリントコマンド生成部301は、現在のページのプリントコマンド207を生成しながら、プリントコマンド保存部303に保存して記憶制御を行う(ステップS403)。また、これと同時に、プリントコマンド転送部304は、生成したプリントコマンド207のプリンタ115への転送を、OSのAPIを用いて依頼する(ステップS403)。プリントコマンド207の保存に際して、プリントコマンド生成部301は、二部目以降の処理で参照できるように、ジョブ毎にランダムに定められたIDとページ番号とを元にファイル名称を決定する。ただし、ファイル名称を決定する方法は、このような方法に限定されない。例えば、ランダムに定めた名前をファイル名称とし、そのファイル名称とページ番号とを対応付けるルックアップテーブルを別途作成してもよい。
次に、プリントコマンド保存判定部302は、プリントコマンド207を保存するページ間隔Lを決定する(ステップS405)。本実施形態では、プリントコマンド207を保存するページ間隔Lを、以下の(1)式に従う計算で決定する。
L=(Pall−P)/(記憶領域の利用可能容量/現在のページのプリントコマンドサイズ) ・・・(1)
このようにしてプリントコマンド転送部304でプリントコマンド207を転送した後、プリントコマンド保存判定部302は、プリントコマンド207を保存するページ間隔Lから1を減算する(ステップS407)。このようにしてプリントコマンド207を保存するページ間隔Lを減算していき、プリントコマンド207を保存するページ間隔Lが0になると、ステップS403以降のプリントコマンド207を保存するフローに入る。
以上のような処理を繰り返し、残りページがなくなると、レンダーフィルター206の処理は、一部目の処理を終了する(ステップS408)。
図3に示した通り、一部目の印刷時に、プリントコマンド207を均等なページ間隔で保存し、保存したプリントコマンド207を二部目以降の印刷時に参照することで、二部目以降の印刷処理の軽量化及び高速化を図るのが本実施形態の目的の一つである。
まず、レンダーフィルター206は、図4のフローチャートと同様に、現在のページ数Pを処理中のページ番号として管理するため、現在のページ数Pを0に初期化する(ステップS500)。
次に、受信部300は、レイアウトフィルター205により複製された“(P+1)ページのXPSデータ”を受信した後、現在のページ数Pに1を加算する(ステップS501)。
次に、受信部300は、Pページ目のプリントコマンド207がプリントコマンド保存部303に存在するか否かを判定する(ステップS502)。ステップ502では、例えば、ステップS403において、現在のページPの値を元に決定されるファイル名称でプリントコマンド207が保存されている場合、現在のページPを元に決定されるファイル名称の外部ファイルが存在するか否かを判定すればよい。また、現在のページPの値を元に外部ファイルのファイル名称を参照することが可能なルックアップテーブルをステップS403で保存している場合には、それを参照することによってステップS502の判定を行えばよい。
一方、プリントコマンド保存部303にPページ目のプリントコマンド207が存在しない場合、プリントコマンド生成部301は、Pページ目のプリントコマンド207を生成する。そして、プリントコマンド転送部304は、生成されたプリントコマンド207をプリンタ115に転送する指示を行う(ステップS503)。Pページ目のXPSデータは、レイアウトフィルター205により部数分複製されている。このため、プリントコマンド生成部301は、ステップS501で受信部300が取得した“Pページ目のXPSデータ”を元に、プリントコマンド207を生成する。
図6に示す例では、印刷ジョブは15ページのジョブであり、記憶領域に保存可能なプリントコマンド207のページ数は5ページであるとする。プリンタ115は、全ページを均一に時間t1(図6の小さな矩形の幅が時間t1に相当し、この値を1とする)で処理できるとする。また、プリントコマンド207は、5ページから9ページまでを時間t2(=2×t1)で、それ以外のページを時間t1で生成することが可能であるとする。また、図6では、図に向かって左から右に向かって時間が経過するものとする。更に、図6の矩形の中の番号はページを示す。
二部目以降の印刷処理では、保存済みのページのプリントコマンド207の生成が不要であるため、そのページ以外のページのプリントコマンド207を生成する。その結果、二部目以降のプリントコマンド207の生成処理時間は、プリンタ115の最高印刷時間よりも短くなり、且つ全てのページにおいて印刷完了までにプリントコマンド207の生成が完了している。結果的に、二部目以降の印刷処理では、プリンタ115の最高速度で印刷することが可能である。
次に、本発明の第2の実施形態について説明する。前述したように第1の実施形態では、各ページのプリントコマンド207の生成処理時間と、プリンタ115の印刷処理時間とが均一である場合に、二部目以降の印刷処理を効率よく処理することができる。ただし、第1の実施形態では、ジョブ中の特定ページが複雑であり、その特定ページのプリントコマンドを生成するのに多大な時間を要する場合であっても、その特定ページのプリントコマンド207を保存するとは限らないため、効率的であるとは言えない。すなわち、特定ページのプリントコマンド207を生成する負荷が極めて重い場合、そのプリントコマンド207については、一部目の印刷処理時に保存しておくことが好ましいが、第1の実施形態では、そのプリントコマンド207が保存されるとは限らない。このように、第1の実施形態では、ジョブ中の各ページの処理負荷に偏りがある場合に効率的に処理可能であるとは言いがたい。
まず、レンダーフィルター206は、P(現在のページ数)、T(プリントコマンド207の生成がどの程度先行しているかを時間単位で示す値)、Psave(プリントコマンド207を保存したページ数)を0に初期化する(ステップS700)。これらのパラメータは、例えばRAM109等に記憶されている。尚、以下の説明では、プリントコマンド207の生成がどの程度先行しているかを時間単位で示す値Tを、必要に応じて、プリントコマンドの生成先行時間Tと称する。
次に、プリントコマンド生成部301は、現在のページのプリントコマンド207を生成する(ステップS702)。本実施形態では、プリントコマンド保存判定部302における保存判定に、プリントコマンド207の生成に要した時間を用いる。そのため、プリントコマンド保存判定部302の判定時に、プリントコマンド生成部301は既にプリントコマンド207を生成済みということになる。プリントコマンド保存判定部302で保存すると判定してから、プリントコマンド生成部301でプリントコマンド207を再度生成するのは無駄がある。このため、ステップS702でプリントコマンド保存部303に一旦全てのプリントコマンド207を保存して記憶制御する。また、これと同時に、プリントコマンド転送部304は、生成したプリントコマンド207のプリンタ115への転送を、OSのAPIを用いて依頼する(ステップS702)。
Tnow=(想定印刷時間−Pページ目のプリントコマンド生成時間) ・・・(2)
プリントコマンド生成時間は、ステップS702でプリントコマンド207の生成を行った時間を測定することによって求めることができる。想定印刷時間は、プリンタ115が、該当するプリントコマンド207を途切れることなく受信できた場合に、そのプリントコマンド207を印刷するのに要する時間を示す。換言するならば、想定印刷時間は、該当するページのプリントコマンド207に対する、プリンタ115の最高(最短)印刷時間を想定したものである。
図8は、ルックアップテーブルの一例を示す図である。
図8では、用紙種、印刷品位、及びグレイスケールの設定の組み合わせで、プリンタ115の印刷時間の目安が求められるようになっている。この印刷時間の目安は、プリンタ115で予め測定され算出された値である。用紙種、印刷品位、及びグレイスケールに、用紙サイズを更に組み合わせて、プリンタ115の印刷時間の目安が求められるようにしてもよい。図8に示すルックアップテーブルに示す印刷時間は、プリンタ115がサポートする最大の用紙サイズの印刷時間の目安を示す。従って、それよりも小さい用紙サイズの印刷時間を参照したい場合、その用紙サイズと、プリンタ115がサポートする最大の用紙サイズとの面積比に従って印刷時間を再計算することで目安の印刷時間を求めることができる。
前述した通り、インクジェットプリンタでは、ページ全体のプリントコマンド207を保存しておく容量を有するRAMを持たないことが一般的である。プリンタ115のRAMの容量が一杯であり、追加のプリントコマンド207を受信することが不可能な場合、ランゲージモニターから送信されたプリントコマンド207は直ぐに受理されず、プリンタ115のRAMの空き容量ができるまで待たされる。このようにして生じた待ち時間の合計を求めることで、プリンタ115がプリントコマンド207の生成時間に対し、どの程度遅れていたかを概算することができる。ただし、この方法では、プリントコマンド207の生成の方がプリンタ115の印刷動作よりも遅れている場合に、その遅延の度合いを知る術がない。よって、ページ全体で、プリントコマンド207の送信に遅延が略発生しなかった場合は、プリンタ115の印刷時間は、プリントコマンド207の生成時間に対し、一定時間高速であるとすること等により、プリンタ115の印刷時間を決定する。
また、2つ目及び3つ目の方法は、基本的にページ単位でプリントコマンド207の送信を見届ける必要がある。ステップS702で行うプリントコマンド207の転送処理は、実際にはOSのAPIにより外部ファイルに一旦格納されるものであり、実際の転送処理は、これとは別のプロセスで実行される。ランゲージモニターを用いた場合や、プリントコマンド207の送信状況をプリンタ115に問い合わせる場合には、プリントコマンド207の実際の転送処理が完了している必要がある。このため、ステップS703で時間Tnowを求める前に、そのページのプリントコマンド207の実際の転送処理の完了を待つ。
次に、プリントコマンド保存判定部302は、後で参照可能なように、プリントコマンド207を保存したページ数Psaveに1を加算する(ステップS708)。
以上のステップS706、S708の処理が終了すると、受信部300は、処理をしていない残りのページがあるか否かを判定する(ステップS709)。この判定の結果、処理をしていない残りのページがある場合には、ステップS701に戻り、全てのページを処理するまで、ステップS701〜S708の処理を繰り返す。そして、残りのページがなくなると、一部目のレンダーフィルター206の処理が終了する。
このように特定ページのプリントコマンド207を保存したことによりプリンタドライバが活用可能な時間をプリントコマンドの生成先行時間Tとして伝播させることが本実施形態の特徴の一つである。このプリントコマンドの生成先行時間Tが伝播するという概念は、前述の通り、プリントコマンド207の生成と転送とが並列に動作することで、はじめて有効なものとなる。
次に、受信部300は、現在のページのXPSデータを受信する(ステップS910)。
次に、受信部300は、一部目の印刷処理で、現在のページのプリントコマンド207を、プリントコマンド保存部303の記憶領域に保存済みであるか否かを判定する(ステップS901)。この判定の結果、プリントコマンド207が存在した場合には、次の処理が行われる。すなわち、プリントコマンド転送部304は、生成済みのプリントコマンド207をプリントコマンド保存部303から読み出し、読み出したプリントコマンド207をプリンタ115に転送する指示を行う(ステップS902)。そして、後述するステップS909に進む。
L=(Pall−Psave−Prest)/(記憶領域の利用可能容量/現在のページのプリントコマンドサイズ) ・・・(3)
(3)式において、Pallは、ジョブの総ページ数を示し、一部目の印刷処理の時点で既知である。Psaveは、一部目の印刷処理(ステップS702)で保存済みのプリントコマンド207のページ数を示す。Prestは、一部目の印刷処理でプリントコマンド207を保存していないページの処理数を示す。よって、(3)式の分子(=Pall−Psave−Prest)は、一部目の印刷処理でプリントコマンド207を保存済みのページを除いた残りのページ数を示す。一方、分母は、プリントコマンド保存部303の記憶領域の利用可能容量を、現在のページのプリントコマンド207のサイズで割った値であり、保存可能なプリントコマンド207のページ数を示す。したがって、(3)式のLは、一部目の印刷処理で保存していないプリントコマンド207のうち、保存可能なプリントコマンド207を、ページ間隔が均等になるように保存する場合のページ間隔となる。以上のようにしてプリントコマンド207を保存するページ間隔Lを算出すると、後述するステップS908に進む。
次に、プリントコマンド保存判定部302は、プリントコマンド207を保存するページ間隔Lから1を減算する(ステップS907)。そして、ステップS908に進む。
以上のステップS905、S907の処理が行われた後、レンダーフィルター206は一部目の印刷処理で保存していないページ数Prestに1を加算する(ステップS908)。そして、ステップS909に進む。
このように二部目の印刷処理でプリントコマンド207を追加で保存した場合の三部目以降の印刷処理は、図5に示す処理と同等である。
図6に示したものと同様に、図10に示す例でも、印刷ジョブは15ページのジョブであり、プリントコマンド保存部303の記憶領域に保存可能なプリントコマンド207のページ数は5ページとする。プリンタ115は、全ページを均一に時間t1(図10の小さな矩形の幅が時間t1に相当し、この値を1とする)で処理できるとする。また、プリントコマンド207は、5ページから9ページまでを時間t2(=2×t1)で、そのページ以外のページを時間t1で生成することが可能であるとする。また、図10では、図に向かって左から右に向かって時間が経過するものとする。更に、図10の矩形の中の番号はページを示す。
6ページ目における時間Tnowは5ページ目と同様に−1であるが、プリントコマンドの生成先行時間Tが1であるため、これらの加算値(=T+Tnow)は0となる。したがって、6ページ目のプリントコマンド207は保存対象外となる(ステップS704)。このように5ページ目から9ページ目では、1ページずつ間隔を開けてプリントコマンド207が保存される。すなわち、5、7、9ページのプリントコマンド207が保存される。
尚、二部目の印刷処理時にプリントコマンド207を保存する処理(図9のフローチャートによる処理)を、第1の実施形態に適用するようにしてもよい。
次に、本発明の第3の実施形態について説明する。本実施形態では、一部目の印刷処理時に、第2の実施形態で説明した2つのプリントコマンド保存方法を同時に実行する。すなわち、プリントコマンド207の生成が印刷に間に合わないページを優先的に保存する手法と、保存可能なページ数のプリントコマンド207をページ間隔が均等になるように保存する手法とを同時に実行する。このように本実施形態と前述した第1、第2の実施形態とは、一部目の印刷処理の一部が主として異なる。したがって、本実施形態の説明において、第1、第2の実施形態と同一の部分については、図1〜図10に付した符号と同一の符号を付すこと等により、詳細な説明を省略する。
まず、レンダーフィルター206は、各種パラメータを初期化する(ステップS1100)。各種パラメータは、P(現在のページ数)、Psave(プリントコマンド207を保存したページ数)、T(プリントコマンドの生成先行時間)、S(プリントコマンド207を保存するペースを調整するためのパラメータ)である。具体的に、現在のページ数P、プリントコマンド207を保存したページ数Psave、プリントコマンドの生成先行時間Tについては0に初期化し、プリントコマンド207を保存するペースを調整するためのパラメータSについては1に初期化する。尚、以下の説明では、プリントコマンド207を保存するペースを調整するためのパラメータSを、必要に応じて、保存ペース調整パラメータSと称する。また、これらのパラメータは、例えば、RAM109に記憶される。
次に、プリントコマンド生成部301は、現在のページのプリントコマンド207を生成しながらプリントコマンド保存部303に保存して記憶制御を行う(ステップS1102)。また、これと同時に、プリントコマンド転送部304は、生成したプリントコマンド207のプリンタ115への転送を、OSのAPIを用いて依頼する(ステップS1102)。
次に、プリントコマンド保存判定部302は、以下の(4)式に従って時間Tnowを計算(導出)する(ステップS1103)。
Tnow=(想定印刷時間−S×Pページ目のプリントコマンド生成時間) ・・・(4)
次に、プリントコマンド保存判定部302は、プリントコマンドの生成先行時間Tに、ステップS1103で計算済みの“現在のページにおける時間Tnow”を加算する(ステップS1106)。そして、後述するステップS1109に進む。
次に、プリントコマンド保存判定部302は、後で参照可能なように、プリントコマンド207を保存したページ数Psaveに1を加算する(ステップS1108)。そして、ステップS1109に進む。
Psaveall=記憶領域の利用可能容量/現在のページのプリントコマンドサイズ+Psave ・・・(5)
(5)式の(記憶領域の利用可能容量/現在ページのプリントコマンドサイズ)は、現在のページのプリントコマンド207と同じサイズのプリントコマンド207をあと何ページ分保存可能であるかを表す。このようにして求めた“保存可能な残りプリントコマンドページ数”に、今までに保存したプリントコマンド207のページ数Psaveを加算して、記憶可能ページ数Psaveallを求める。記憶可能ページ数Psaveallは、プリントコマンド保存部303の利用可能な容量で生成可能なプリントコマンド207の総ページ数になる。記憶可能ページ数Psaveallは、現在のページのプリントコマンド207のサイズを元に概算した値である。実際には、プリントコマンド207のサイズはページ毎に異なるため、記憶可能ページ数Psaveallをページ毎に計算し直す構成をとる。
次に、プリントコマンド保存判定部302は、以下の(6)式を満たすか否かを判定する。
Psave>P×(Psaveall/Pall) ・・・(6)
(6)式において、(Psaveall/Pall)は、ジョブ全体に対する、プリントコマンド207の均等な保存間隔を示す割合である。この値に現在のページ数Pを乗算することで、プリントコマンド207を均等なページ間隔で保存する場合に、現在のページ数の段階で保存できるページ数が得られる。プリントコマンド207を保存したページ数Psaveは、現在のページ数Pまでのページのうち、プリントコマンド207を実際に保存したページを示す。つまり、ステップS1111では、ジョブ全体でページ間隔が均等になるようにプリントコマンド207を保存するとしたときに、プリントコマンド207を保存しているページ数の現在値が過多であるか、それとも不足であるかを判別している。
保存ペース調整パラメータSは、ステップS1103で参照され、プリントコマンド生成時間に掛け合わせることで、プリントコマンド生成時間を偽るためのパラメータである。保存ペース調整パラメータSを小さな値とすることで、プリントコマンド生成時間が小さいものとして時間Tnowが計算され、結果的に時間Tnowが正の値になりやすいように調整する。この結果、プリントコマンド207の保存を押さえることができる。
ここで、プリントコマンド保存判定部302は、保存ペース調整パラメータSに1.1又は0.9を乗算する場合を例に挙げて示しているが、乗算する値は、これ以外の異なる値であってもよい。また、保存ペース調整パラメータSは、ページ間隔が均等になるようにプリントコマンド207を保存するとして現時点で保存しているはずのページ数と、実際に現在までに保存しているページ数との差の大きさに合わせて変化するようなパラメータであってもよい。
本実施形態では、プリントコマンド207の生成が印刷に間に合わないページを優先的に保存する処理と、保存可能なページ数のプリントコマンド207をページ間隔が均等になるように保存する処理とを、一部目の印刷処理時に同時に実行する。第2の実施形態では、例えば、ジョブ中の全ページのプリントコマンド207の生成が極めて高負荷であり、且つプリントコマンド保存部303の空き容量がそれほど無い場合には正しく機能しない虞がある。ジョブの前半部分のプリントコマンド207の保存が偏重してしまうからである。これに対し、本実施形態では、たとえプリントコマンド207の生成が印刷に間に合わない場合でも、ジョブ全体に対してプリントコマンド207を保存するページの間隔がそれなりに均等になるようする。そのため、ジョブの前半部分にプリントコマンド207の生成が偏ってしまうといったことはない。このことは、ステップS1112で、保存ペース調整パラメータSを小さめに調整する処理によって実現している。
そこで、この保存ペース調整パラメータSを活用して、次のようにしてもよい。すなわち、プリントコマンド207を保存する際に、その時点での保存ペース調整パラメータSの値を保存しておく。そして、保存ペース調整パラメータSが閾値よりも小さな値になった場合に、閾値以上の大きな値の保存ペース調整パラメータSに対応する、保存済みのプリントコマンド207を削除する。これにより、ジョブの後半で極端に処理負荷が高くなるようなデータに対しても、柔軟に対応することができる。
図6、図10に示したものと同様に、図12に示す例でも、印刷ジョブは15ページのジョブであり、プリントコマンド保存部303の記憶領域に保存可能なプリントコマンド207のページ数は5ページとする。プリンタ115は、全ページを均一に時間t1(図12の小さな矩形の幅が時間t1に相当し、この値を1とする)で処理できるとする。また、プリントコマンド207は、5ページから9ページまでを時間t2(=2×t1)で、そのページ以外のページを時間t1で生成することが可能であるとする。また、図12では、図に向かって左から右に向かって時間が経過するものとする。更に、図12の矩形の中の番号はページを示す。
次に、本発明の第4の実施形態について説明する。本実施形態では、第3の実施形態と同様に、一部目の印刷処理時に保存すべきプリントコマンド207を最適に決定することを目的とする。第1〜第3の実施形態では、プリントコマンド207をページ毎に保存していく構成であった。これに対し本実施形態では、全てのページのプリントコマンド207を保存していき、不要であると判断したページのみを削除していく構成をとる。このように本実施形態と前述した第1〜第3の実施形態では、プリントコマンド207を保存するが主として異なる。したがって、本実施形態の説明において、第1〜第3の実施形態と同一の部分については、図1〜図12に付した符号と同一の符号を付すこと等により、詳細な説明を省略する。
まず、レンダーフィルター206は、P(現在のページ数)、及びPsave(プリントコマンド207を保存したページ数)を0に初期化する(ステップS1300)。これらのパラメータは、例えばRAM109に記憶される。
次に、受信部300は、(P+1)ページのXPSデータを受信した後、現在のページ数であるPに1を加算する(ステップS1301)。
次に、プリントコマンド保存判定部302は、パラメータTpを以下の(7)式に従う計算を行ってページ毎に求める(ステップS1303)。
Tp=(現在のページの想定印刷時間−現在のページのプリントコマンド生成時間) ・・・(7)
次に、受信部300は、処理をしていない残りのページがあるか否かを判定する(ステップS1305)。この判定の結果、処理をしていない残りのページがない場合には、一部目のレンダーフィルター206の処理が終了する。
一方、処理をしていない残りのページがある場合、プリントコマンド保存判定部302は、次の処理を行う。すなわち、プリントコマンド保存判定部302は、プリントコマンド保存部303の空き容量に基づき、次のページのプリントコマンド207をプリントコマンド保存部303に保存できる否かを判定する(ステップS1306)。このステップS1306では、現在のページのプリントコマンド207のサイズ以上の空き容量があるか否かを判定したり、現在のページのプリントコマンド207のサイズよりも多少大きなサイズ以上の空き容量があるか否かを判定したりすることができる。
一方、次のページのプリントコマンド207をプリントコマンド保存部303に保存できない場合、プリントコマンド保存判定部302は、既に保存済みのプリントコマンド207のうち、不要なものを削除する処理を行った後、次以降のページの処理を行う。この不要なプリントコマンド207を削除する処理は、ステップS1307〜S1310で実行される。尚、この処理を、ステップS1302でプリントコマンド207の保存に失敗したタイミングで呼び出すようにしてもよい。
最後に、プリントコマンド保存判定部302は、プリントコマンド207を1ページ分削除したので、プリントコマンド207を保存したページ数Psaveから1を減算する(ステップS1310)。
以上で、不要なプリントコマンド207を削除する処理は終了である。不要なプリントコマンド207を削除する処理(ステップS1306〜S1310)は、次のページのプリントコマンド207を保存することが可能になるまでを繰り返し行われる。
そして、残りのページが存在しなくなるまで、各ページのプリントコマンド207の保存と、不要なプリントコマンド207の削除とを繰り返す。最終的に削除されずに残ったページのプリントコマンド207が一部目の印刷処理で最終的に保存されるプリントコマンド207となる。
本実施形態では、第3の実施形態と同様に、一部目の印刷処理が終了した段階で、既にプリントコマンド保存部303の利用可能な容量を略使い切る形でプリントコマンド207を保存する形となる。そのため、本実施形態の基本動作の一例の概略は、第3の実施形態と同様に、図12に示したようになる。
また、本実施形態では、プリントコマンド保存部303の記憶領域に保存できないと判断するまで、プリントコマンド207を保存し続ける。これにより、どれだけプリントコマンド207の生成時間に余裕があろうとも、可能な範囲でプリントコマンド207を保存することができる点が特徴の一つである。
前述した本発明の実施形態における印刷制御装置を構成する各手段、並びに印刷制御方法の各ステップは、コンピュータのRAMやROMなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
203 XPSスプールファイル
204 フィルターパイプライン
205 レイアウトフィルター
206 レンダーフィルター
207 プリントコマンド
300 受信部
301 プリントコマンド生成部
302 プリントコマンド保存判定部
303 プリントコマンド保存部
304 プリントコマンド転送部
Claims (21)
- 記憶領域を有し、複数のページ及び複数部を指定する印刷要求に基づくプリンタでの印刷に用いるプリントコマンドを供給する印刷システムにおける印刷制御方法であって、
前記印刷要求に基づきプリントコマンドを生成する生成工程と、
前記プリンタにおけるページ単位の目安の印刷時間である想定印刷時間を取得する取得工程と、
前記生成工程におけるページ単位のプリントコマンドの生成時間を測定する測定工程と、
前記取得工程で取得した想定印刷時間と、前記測定工程で測定した生成時間とを用いて前記記憶領域に記憶すべき前記プリントコマンドをページ単位で決定する第1の決定工程と、
前記第1の決定工程で決定されたページのプリントコマンドとは異なるページのプリントコマンドを、前記記憶領域に記憶すべきページのプリントコマンドとして決定する第2の決定工程と、
前記第1の決定工程及び前記第2の決定工程で決定したページのプリントコマンドを前記記憶領域に記憶する記憶工程と、
前記プリントコマンドを前記プリンタに対して供給する供給工程と、
前記記憶領域の利用可能な容量と当該記憶領域に記憶されているプリントコマンドのサイズと前記印刷要求に含まれるページ数を用いて、プリントコマンドの前記記憶領域への記憶の頻度を調整するための調整パラメータを求める工程とを有し、
前記生成工程におけるプリントコマンドの生成と、前記供給工程におけるプリントコマンドのプリンタに対する供給を並行に処理し、
前記第1の決定工程においては、前記想定印刷時間と、前記求められた調整パラメータにより調整された前記生成時間とを用いて前記記憶領域に記憶すべき前記プリントコマンドをページ単位で決定し、
二部目のプリンタに対するプリントコマンドの供給において、前記記憶工程で記憶したページのプリントコマンドが存在する場合には前記生成工程における当該ページのプリントコマンドの生成を行わず、前記供給工程において当該記憶されたプリントコマンドをプリンタに対して供給することを特徴とする印刷制御方法。 - 前記記憶工程で記憶されるプリントコマンドのサイズの合計が、前記記憶領域においてプリントコマンドを記憶するための記憶容量以内に調整する調整工程を有することを特徴とする請求項1に記載の印刷制御方法。
- 前記調整工程においては、前記第1の決定工程及び前記第2の決定工程で決定されたページのプリントコマンドのサイズの合計が、前記記憶領域においてプリントコマンドを記憶するための記憶容量を越えた場合に、前記第1の決定工程で決定されたページのプリントコマンドを優先的に前記記憶領域に記憶されるように調整することを特徴とする請求項2に記載の印刷制御方法。
- 前記取得工程においては、プリンタでの印刷モードに基づき処理時間を返却するようなルックアップテーブルを参照して前記想定印刷時間を取得することを特徴とする請求項1乃至3のいずれか1項に記載の印刷制御方法。
- 前記取得工程においては、更にプリンタでの印刷における用紙サイズに基づき前記ルックアップテーブルを参照して前記想定印刷時間を取得することを特徴とする請求項4に記載の印刷制御方法。
- 前記取得工程においては、プリンタに対するプリントコマンドの供給の状況を元に前記想定印刷時間を取得することを特徴とする請求項1乃至3のいずれか1項に記載の印刷制御方法。
- 前記取得工程においては、プリンタから取得した情報を元に前記想定印刷時間を計算することを特徴とする請求項1乃至3のいずれか1項に記載の印刷制御方法。
- 前記第1の決定工程は、各ページに対する前記プリントコマンドの生成時間と前記想定印刷時間とに基づき、前記生成工程でのプリントコマンドの生成が間に合わずに前記供給工程におけるプリントコマンドの供給が行なわれないと判断されるページのプリントコマンドを記憶すべきとして決定することを特徴とする請求項1乃至7のいずれか1項に記載の印刷制御方法。
- 前記第2の決定工程は、前記第1の決定工程で決定されたページのプリントコマンドのサイズの合計が、前記記憶領域においてプリントコマンドを記憶するための記憶容量に満たなかった場合に、前記第1の決定工程で決定されたページのプリントコマンドとは異なるページのプリントコマンドを記憶すべきとして決定することを特徴とする請求項1に記載の印刷制御方法。
- 前記第2の決定工程は、前記第1の決定工程で決定されたページ以外のページのプリントコマンドを、予め定められたページ間隔で記憶すべきとして決定することを特徴とする請求項1に記載の印刷制御方法。
- 請求項1乃至10のいずれか1項に記載の印刷制御方法をコンピュータに実行させることを特徴とするコンピュータプログラム。
- 記憶領域を有し、複数のページ及び複数部を指定する印刷要求に基づくプリンタでの印刷に用いるプリントコマンドを供給する印刷制御装置であって、
前記印刷要求に基づきプリントコマンドを生成する生成手段と、
前記プリンタにおけるページ単位の目安の印刷時間である想定印刷時間を取得する取得手段と、
前記生成手段によるページ単位のプリントコマンドの生成時間を測定する測定手段と、
前記取得手段により取得した想定印刷時間と、前記測定手段により測定した生成時間とを用いて前記記憶領域に記憶すべき前記プリントコマンドをページ単位で決定する第1の決定手段と、
前記第1の決定手段により決定されたページのプリントコマンドとは異なるページのプリントコマンドを、前記記憶領域に記憶すべきページのプリントコマンドとして決定する第2の決定手段と、
前記第1の決定手段及び前記第2の決定手段により決定したページのプリントコマンドを前記記憶領域に記憶する記憶手段と、
前記プリントコマンドを前記プリンタに対して供給する供給手段と、
前記記憶領域の利用可能な容量と当該記憶領域に記憶されているプリントコマンドのサイズと前記印刷要求に含まれるページ数を用いて、プリントコマンドの前記記憶領域への記憶の頻度を調整するための調整パラメータを求める手段とを有し、
前記生成手段によるプリントコマンドの生成と、前記供給手段によるプリントコマンドのプリンタに対する供給を並行に処理し、
前記第1の決定手段においては、前記想定印刷時間と、前記求められた調整パラメータにより調整された前記生成時間とを用いて前記記憶領域に記憶すべき前記プリントコマンドをページ単位で決定し、
二部目のプリンタに対するプリントコマンドの供給において、前記記憶手段により記憶したページのプリントコマンドが存在する場合には前記生成手段による当該ページのプリントコマンドの生成を行わず、前記供給手段が当該記憶されたプリントコマンドをプリンタに対して供給することを特徴とする印刷制御装置。 - 前記記憶手段により記憶されるプリントコマンドのサイズの合計が、前記記憶領域においてプリントコマンドを記憶するための記憶容量以内に調整する調整手段を有することを特徴とする請求項12に記載の印刷制御装置。
- 前記調整手段は、前記第1の決定手段及び前記第2の決定手段により決定されたページのプリントコマンドのサイズの合計が、前記記憶領域においてプリントコマンドを記憶するための記憶容量を越えた場合に、前記第1の決定手段により決定されたページのプリントコマンドを優先的に前記記憶領域に記憶されるように調整することを特徴とする請求項13に記載の印刷制御装置。
- 前記取得手段は、プリンタでの印刷モードに基づき処理時間を返却するようなルックアップテーブルを参照して前記想定印刷時間を取得することを特徴とする請求項12乃至14のいずれか1項に記載の印刷制御装置。
- 前記取得手段は、更にプリンタでの印刷における用紙サイズに基づき前記ルックアップテーブルを参照して前記想定印刷時間を取得することを特徴とする請求項15に記載の印刷制御装置。
- 前記取得手段は、プリンタに対するプリントコマンドの供給の状況を元に前記想定印刷時間を取得することを特徴とする請求項12乃至14のいずれか1項に記載の印刷制御装置。
- 前記取得手段は、プリンタから取得した情報を元に前記想定印刷時間を計算することを特徴とする請求項12乃至14のいずれか1項に記載の印刷制御装置。
- 前記第1の決定手段は、各ページに対する前記プリントコマンドの生成時間と前記想定印刷時間とに基づき、前記生成手段でのプリントコマンドの生成が間に合わずに前記供給手段によるプリントコマンドの供給が行なわれないと判断されるページのプリントコマンドを記憶すべきとして決定することを特徴とする請求項12乃至18のいずれか1項に記載の印刷制御装置。
- 前記第2の決定手段は、前記第1の決定手段により決定されたページのプリントコマンドのサイズの合計が、前記記憶領域においてプリントコマンドを記憶するための記憶容量に満たなかった場合に、前記第1の決定手段により決定されたページのプリントコマンドとは異なるページのプリントコマンドを記憶すべきとして決定することを特徴とする請求項12に記載の印刷制御装置。
- 前記第2の決定手段は、前記第1の決定手段により決定されたページ以外のページのプリントコマンドを、予め定められたページ間隔で記憶すべきとして決定することを特徴とする請求項12に記載の印刷制御装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008193992A JP5171458B2 (ja) | 2008-07-28 | 2008-07-28 | 印刷制御装置、印刷制御方法、及びコンピュータプログラム |
US12/505,917 US8564822B2 (en) | 2008-07-28 | 2009-07-20 | Printing control apparatus for determining print commands to be stored when printing plural copies of a document |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008193992A JP5171458B2 (ja) | 2008-07-28 | 2008-07-28 | 印刷制御装置、印刷制御方法、及びコンピュータプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010033284A JP2010033284A (ja) | 2010-02-12 |
JP5171458B2 true JP5171458B2 (ja) | 2013-03-27 |
Family
ID=41568374
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008193992A Expired - Fee Related JP5171458B2 (ja) | 2008-07-28 | 2008-07-28 | 印刷制御装置、印刷制御方法、及びコンピュータプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8564822B2 (ja) |
JP (1) | JP5171458B2 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101432052B1 (ko) * | 2008-11-24 | 2014-08-20 | 삼성전자주식회사 | 인쇄 제어 단말장치, 및 인쇄 제어 방법 |
US8427680B2 (en) * | 2010-03-03 | 2013-04-23 | Xerox Corporation | Delayed printing from a computerized device |
JP2012063951A (ja) | 2010-09-15 | 2012-03-29 | Ricoh Co Ltd | 印刷制御装置、印刷制御方法およびそのプログラム |
US9164715B2 (en) * | 2013-03-15 | 2015-10-20 | Konica Minolta Laboratory U.S.A., Inc. | Method for managing a print job |
JP6164912B2 (ja) * | 2013-04-26 | 2017-07-19 | キヤノン株式会社 | データ処理装置、制御方法およびプログラム |
JP2016016564A (ja) * | 2014-07-07 | 2016-02-01 | キヤノン株式会社 | 情報処理装置、情報処理方法及びプログラム |
JP6365038B2 (ja) * | 2014-07-10 | 2018-08-01 | コニカミノルタ株式会社 | 画像形成装置及び画像形成システム並びに画像形成制御方法 |
DE102014111463B4 (de) * | 2014-08-12 | 2017-02-09 | Océ Printing Systems GmbH & Co. KG | Verfahren und Vorrichtung zum automatischen Einfügen von Andruckbögen in laufende Druckapplikationen bei digitalen Drucksystemen |
WO2021011001A1 (en) | 2019-07-18 | 2021-01-21 | Hewlett-Packard Development Company, L.P. | Adaptive interpage delays |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3110905B2 (ja) | 1992-12-28 | 2000-11-20 | キヤノン株式会社 | データ転送装置及び方法 |
JP3592428B2 (ja) * | 1996-03-08 | 2004-11-24 | 株式会社リコー | 本原稿読み取り装置 |
JPH1044524A (ja) * | 1996-07-30 | 1998-02-17 | Fuji Xerox Co Ltd | データ作成装置 |
JPH11177788A (ja) * | 1997-12-11 | 1999-07-02 | Toshiba Corp | 印刷制御方法および印刷装置 |
US6832187B1 (en) * | 1999-05-10 | 2004-12-14 | Hewlett-Packard Development Company, L.P. | Methods of providing page protection in a digital printing system having multiple output devices |
US7307750B2 (en) * | 2002-02-01 | 2007-12-11 | Ricoh Company, Ltd. | Image forming apparatus, memory control apparatus and memory control method |
US8310713B2 (en) * | 2002-12-24 | 2012-11-13 | Konica Minolta Business Technologies, Inc. | Image forming device, image forming program, computer readable recording medium on which the program is recorded, and image forming method |
US8264710B2 (en) * | 2003-03-10 | 2012-09-11 | Hewlett-Packard Development Company, L.P. | Printing preparation |
US7929160B2 (en) * | 2003-03-10 | 2011-04-19 | Hewlett-Packard Development Company, L.P. | Page processing and print engine management |
JP2004355068A (ja) * | 2003-05-27 | 2004-12-16 | Riso Kagaku Corp | 画像形成システムおよび画像形成装置 |
US7847967B2 (en) * | 2004-10-30 | 2010-12-07 | Sharp Laboratories Of America, Inc. | Adaptive de-spooling system for partial brute force collation |
JP2006172257A (ja) * | 2004-12-17 | 2006-06-29 | Seiko Epson Corp | 分散印刷システム、印刷要求装置、分散印刷制御装置、ネットワークプリンタおよび分散印刷制御プログラム、並びに分散印刷方法 |
JP2006180243A (ja) * | 2004-12-22 | 2006-07-06 | Fuji Photo Film Co Ltd | データ移送システム |
JP4455459B2 (ja) * | 2005-09-02 | 2010-04-21 | キヤノン株式会社 | 印刷システムと印刷装置及び印刷方法 |
JP4476909B2 (ja) * | 2005-09-12 | 2010-06-09 | シャープ株式会社 | 印刷装置、印刷処理方法、印刷処理プログラムおよび記録媒体 |
JP4736761B2 (ja) * | 2005-12-05 | 2011-07-27 | 富士ゼロックス株式会社 | 印刷装置 |
JP4262724B2 (ja) * | 2006-02-06 | 2009-05-13 | 富士フイルム株式会社 | プリンタ・システムおよびその動作制御方法 |
JP4390287B2 (ja) * | 2006-02-08 | 2009-12-24 | キヤノン株式会社 | 印刷システム、及び、印刷装置及びその制御方法 |
JP4379424B2 (ja) * | 2006-02-14 | 2009-12-09 | コニカミノルタビジネステクノロジーズ株式会社 | 印刷方法および印刷装置 |
US8085426B2 (en) * | 2006-11-22 | 2011-12-27 | Sharp Laboratories Of America, Inc. | Intelligent page buffer allocation |
US20080231885A1 (en) * | 2007-03-23 | 2008-09-25 | Konica Minolta Systems Laboratory, Inc. | Direct printing method using ram storage for spooled printer files |
-
2008
- 2008-07-28 JP JP2008193992A patent/JP5171458B2/ja not_active Expired - Fee Related
-
2009
- 2009-07-20 US US12/505,917 patent/US8564822B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20100020356A1 (en) | 2010-01-28 |
US8564822B2 (en) | 2013-10-22 |
JP2010033284A (ja) | 2010-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5171458B2 (ja) | 印刷制御装置、印刷制御方法、及びコンピュータプログラム | |
JP5408904B2 (ja) | 情報処理装置、プレビュー方法、及びプログラム | |
JP5675047B2 (ja) | 文書処理装置およびコンピュータプログラム | |
JP5072676B2 (ja) | 情報処理装置、情報処理方法及び印刷システム | |
US8854638B2 (en) | Variable printing control apparatus and control program | |
JP4857135B2 (ja) | 情報処理装置、情報処理方法、プログラム、及び記憶媒体 | |
JP2004126871A (ja) | 印刷制御方法および装置 | |
JP5100195B2 (ja) | 情報処理装置及びジョブ管理方法 | |
JP3757847B2 (ja) | スプールファイル加工装置、プログラム及び記録媒体 | |
US7961341B2 (en) | Print system, print data supplying device, and method for supplying print data to printer | |
US20160078643A1 (en) | Information processing apparatus, information processing method, and program | |
JP5084649B2 (ja) | 情報処理装置及び情報処理方法及びプログラム | |
US8582135B2 (en) | Image forming apparatus, control method therefor, and computer-readable storage medium | |
US20060294144A1 (en) | Image forming apparatus and image forming method thereof | |
JP2019025801A (ja) | 印刷システム、印刷装置とその制御方法、及びプログラム | |
JP2019086987A (ja) | 画像形成装置、その制御方法、及びプログラム | |
JP6067039B2 (ja) | 印刷に要する時間の予測値を求める画像処理装置、画像処理方法およびそのプログラム | |
KR20100045303A (ko) | 화상형성장치 및 화상형성방법 | |
JP5053908B2 (ja) | 印刷管理装置、印刷管理方法、及びコンピュータプログラム | |
JP5244770B2 (ja) | 画像形成装置 | |
KR20120130068A (ko) | 정보 처리 장치, 제어 방법 및 저장 매체 | |
JP5623029B2 (ja) | 印刷制御装置、印刷制御方法、およびプログラム | |
JP5677550B2 (ja) | 情報処理装置、プレビュー方法、及びプログラム | |
JP2019072986A (ja) | 画像形成装置、その制御方法、及びプログラム | |
CN115586876A (zh) | 印刷***、印刷方法、信息处理装置以及计算机可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110727 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120828 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120829 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121026 |
|
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: 20121127 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121225 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5171458 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160111 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |