JP5284076B2 - Printing apparatus, control method therefor, and program - Google Patents
Printing apparatus, control method therefor, and program Download PDFInfo
- Publication number
- JP5284076B2 JP5284076B2 JP2008331184A JP2008331184A JP5284076B2 JP 5284076 B2 JP5284076 B2 JP 5284076B2 JP 2008331184 A JP2008331184 A JP 2008331184A JP 2008331184 A JP2008331184 A JP 2008331184A JP 5284076 B2 JP5284076 B2 JP 5284076B2
- Authority
- JP
- Japan
- Prior art keywords
- print data
- data processing
- printing
- control means
- processing
- 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
Landscapes
- Record Information Processing For Printing (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
Description
本発明は、並列の制御手段を用いた並列処理に関するものである。 The present invention relates to parallel processing using parallel control means.
従来から、複数のプロセッサを用いて処理を行うことにより、処理完了時間を短縮するシステムが多数存在している。複数の印刷装置で1つの印刷ジョブを印刷する分散印刷がその1例である。 Conventionally, there are many systems that shorten processing completion time by performing processing using a plurality of processors. One example is distributed printing in which one printing job is printed by a plurality of printing apparatuses.
例えば入力データを等分して分散処理する場合や、或いは入力データの論理的な区切りで入力データを分け、各装置に分散して処理する場合がある。上述の分散印刷では、印刷用紙単位で処理を分散し、それぞれの印刷装置で印刷用データ処理を行う技術が知られている(例えば特許文献1)。 For example, there are cases where the input data is equally divided and distributed, or the input data is divided at logical divisions of the input data and distributed to each device. In the above-described distributed printing, a technique is known in which processing is distributed in units of printing paper and printing data processing is performed by each printing apparatus (for example, Patent Document 1).
一方、一つの印刷装置にプロセッサを複数搭載することで、高速に印刷用データ処理を行う技術も多数知られている(例えば特許文献2)。
しかしながら、従来の技術ではそれぞれの処理を高速に行うことを目的としているため、1つの印刷装置の中で複数の処理を同時に実行して、全体として高速化することを考慮したものはなかった。 However, since the conventional technique aims to perform each process at high speed, there has been no consideration of speeding up the entire process by simultaneously executing a plurality of processes in one printing apparatus.
従って、例えば、印刷用データ処理とネットワーク処理、ユーザインタフェースの処理等を、印刷装置に搭載されている複数の制御手段で並列して実行する場合、次のような課題が発生する。 Therefore, for example, when printing data processing, network processing, user interface processing, and the like are executed in parallel by a plurality of control units installed in the printing apparatus, the following problems occur.
まず、印刷用データ処理を行う制御手段と、その他の処理を行う制御手段とが固定されている場合、印刷装置におけるネットワークの処理やユーザインタフェースの処理は、頻繁に発生するものではないため、効率的に複数の制御手段を利用しているとはいえない。 First, when the control means for performing printing data processing and the control means for performing other processing are fixed, network processing and user interface processing in the printing apparatus do not occur frequently. In other words, it cannot be said that a plurality of control means are used.
一方、タイムシェアリング方式等で印刷用データ処理とネットワーク処理とユーザインタフェース処理を複数の制御手段で時分割して実行する場合、各処理の優先度を設定することが可能である。ここで、一つの印刷用データ処理に対して制御手段の数と等しい数のスレッドを生成し、生成した全てのスレッドがその他の処理よりも優先されるように設定すると、印刷用データ処理中はネットワーク処理などが行なわれず、著しくそれらの処理速度が低下する。逆に印刷用データ処理が他の処理よりも優先されないように設定すると、ネットワーク処理などが複数のスレッドで実行される場合には、何れの制御手段でも印刷用データ処理が実行されないような期間が発生し、印刷用データ処理が高速化されない可能性がある。 On the other hand, when printing data processing, network processing, and user interface processing are executed in a time-sharing manner by a plurality of control means by the time sharing method or the like, the priority of each processing can be set. Here, if a number of threads equal to the number of control means is generated for one print data process, and all the generated threads are set to have priority over the other processes, during the print data process, Network processing or the like is not performed, and the processing speed is remarkably reduced. Conversely, if the print data processing is set not to have priority over other processing, when the network processing or the like is executed by a plurality of threads, there is a period in which the print data processing is not executed by any control means. May occur, and printing data processing may not be accelerated.
これに対し、印刷用データ処理のスレッドの一部を、他の処理よりも優先されるように設定し、残りのスレッドを、他の処理よりも優先されないように設定すれば、上述の問題は解決する。しかしながら、どの印刷用データ処理を優先的に設定し、どの印刷用データ処理を優先的に設定しないのか、といった割り振り方が重要になる。 On the other hand, if some of the print data processing threads are set to have priority over other processes, and the remaining threads are set so as not to have priority over other processes, the above-mentioned problem will occur. Solve. However, it is important to assign which print data processing is preferentially set and which print data processing is not preferentially set.
最終的に用紙上に印刷を行う順番は通常ページ順になるため、印刷用データ処理は通常ページの先頭から処理を行うのが好ましい。しかし、先頭ページから順番に複数の制御手段に割り振ると、各ページでの印刷用データ処理時間が異なる場合には、印刷用データ処理が終了するページの順番がばらばらになる可能性が高い。 Since the order in which printing is finally performed on the paper is the normal page order, it is preferable that the print data processing is performed from the top of the normal page. However, if the print data processing time on each page is different when the pages are assigned to a plurality of control units in order from the first page, the order of pages on which the print data processing ends is likely to vary.
予め印刷用データ処理の処理時間を予測することにより印刷用データ処理を終了するページの順番が、実際に紙面に印刷を行う順番になるようにページの割り振りを行うことも考えられるが、処理時間を正確に予測するのは困難な場合が多い。ユーザインタフェースとネットワークの処理が関係する場合、処理時間を正確に予測するのは更に困難である。 Although it is conceivable to allocate pages so that the order of pages for which printing data processing is finished by predicting the processing time of printing data processing in advance is the order in which printing is actually performed on paper, the processing time It is often difficult to predict accurately. When user interface and network processing are involved, it is more difficult to accurately predict processing time.
実際に印刷するページ順に印刷用データ処理を行うため、一つの印刷用データ処理スレッドで連続したページを処理するように、予め各印刷用データ処理スレッドで処理するページ群を決定するのが望ましい。 In order to perform print data processing in the order of pages to be actually printed, it is desirable to determine in advance a group of pages to be processed by each print data processing thread so that continuous pages are processed by one print data processing thread.
しかしながら、それぞれのページの処理時間が一定ではない場合、搭載されている制御手段が効率的に利用されない場合がある。 However, if the processing time of each page is not constant, the mounted control means may not be used efficiently.
例えば、第1制御手段と第2制御手段が搭載された印刷装置で、1からJ(Jは1以上の整数)のページを第1制御手段で、J+1から最後のページを第2制御手段で処理するようにスケジューリングする場合を考える。この場合、ネットワーク処理等よりも高い優先順位の第1印刷用データ処理スレッドで1からJまでのページを処理し、ネットワーク処理等よりも低い優先順位の第2印刷用データ処理スレッドでJ+1から最後のページを処理すればよい。
For example, in a printing apparatus equipped with first control means and second control means,
しかしながら、1からJまでのページの処理がJ+1から最後のページの処理よりも早く終わると、1からJまでのページの処理が終了してから、実質上一つの制御手段でしか印刷用データ処理が行われないことになる。
However, if the processing of
本発明は問題点を解決するためになされたものであり、複数の印刷用データ処理を並列に実行する場合に、全体として効率的に処理することを目的とする。 The present invention has been made in order to solve the problem, and an object of the present invention is to efficiently process a plurality of print data processes as a whole when they are executed in parallel.
上記目的を達成するため、本発明に係る方法は、
印刷用データを用いた印刷用データ処理及びその他の処理を並列に実行できる複数の制御手段を備えた印刷装置の制御方法であって、
前記印刷用データを入力する入力ステップと、
前記印刷用データ処理を複数の部分に分割して前記複数の制御手段に割り当てる割当ステップと、
前記複数の制御手段の何れかにおいて、前記印刷用データ処理の割り当てられた部分の前記印刷用データ処理を終了した場合に、終了した部分以外の前記印刷用データ処理を、再度、前記複数の制御手段に割り当てる再割当ステップと、
前記再割当ステップにおける再割り当てに従って前記複数の制御手段のそれぞれに前記印刷用データ処理を実行させるとともに、前記再割り当ての結果、前記印刷用データ処理の複数の部分のうちで最も優先順位が高い部分が割り当てられた制御手段以外の制御手段に、前記印刷用データ処理より優先して前記その他の処理を実行させる実行ステップと、
前記複数の制御手段により前記印刷用データ処理が実行された前記印刷用データに基づいて、印刷を実行する印刷ステップと、
を含むことを特徴とする。
In order to achieve the above object, the method according to the present invention comprises:
A printing apparatus control method comprising a plurality of control means capable of executing printing data processing using printing data and other processing in parallel,
An input step for inputting the printing data;
An allocation step of assigning to said plurality of control means by dividing the print data processing into a plurality of portions,
Wherein in any of the plurality of control means, when it is completed to the print data processing assignment is part of the print data processing, the print data processing other than termination portion, again, a plurality and re-allocation step of allocating to the control means,
According to the reassignment in the reassignment step, each of the plurality of control means executes the print data processing, and as a result of the reassignment, a portion having the highest priority among the plurality of portions of the print data processing An execution step of causing the control means other than the control means assigned to execute the other processing in preference to the print data processing ;
A printing step for executing printing based on the printing data for which the printing data processing has been executed by the plurality of control means;
It is characterized by including.
上記目的を達成するため、本発明に係る装置は、
印刷用データを入力する入力手段と、
前記入力手段により入力された前記印刷用データを用いた印刷用データ処理及びその他の処理を並列に実行できる複数の制御手段と、
前記印刷用データ処理を複数の部分に分割して前記複数の制御手段に割り当てる割当手段と、
前記複数の制御手段の何れかにおいて、前記印刷用データ処理の割り当てられた部分の前記印刷用データ処理を終了した場合に、終了した部分以外の前記印刷用データ処理を、再度、前記複数の制御手段に割り当てる再割当手段と、
前記再割当手段による再割り当てに従って前記複数の制御手段のそれぞれに前記印刷用データ処理を実行させるとともに、前記再割り当ての結果、前記印刷用データ処理の複数の部分のうちで最も優先順位が高い部分が割り当てられた制御手段以外の制御手段に、前記印刷用データ処理より優先して前記その他の処理を実行させる実行手段と、
前記複数の制御手段により前記印刷用データ処理が実行された前記印刷用データに基づいて、印刷を実行する印刷手段と、
を含むことを特徴とする。
In order to achieve the above object, an apparatus according to the present invention provides:
An input means for inputting print data;
A plurality of control means capable of executing print data processing using the print data input by the input means and other processes in parallel;
And assigning means for assigning to said plurality of control means by dividing the print data processing into a plurality of portions,
Wherein in any of the plurality of control means, when it is completed to the print data processing assignment is part of the print data processing, the print data processing other than termination portion, again, a plurality and re-allocation means for allocating the control means,
According to the reallocation by the reallocation unit, each of the plurality of control units executes the print data processing, and as a result of the reallocation , the highest priority portion among the plurality of portions of the print data processing Execution means for causing the control means other than the control means assigned to execute the other processing in preference to the print data processing ;
Printing means for executing printing based on the printing data for which the printing data processing has been executed by the plurality of control means;
It is characterized by including.
本発明によれば、複数の印刷用データ処理を並列に実行する場合に、全体として効率的に処理することができる。 According to the present invention, when a plurality of print data processes are executed in parallel, the overall process can be efficiently performed.
以下に、図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。ただし、この実施の形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。なお、ここで印刷用データ処理とは、印刷装置に画像データが伝送されてから実際に用紙紙面上に印刷を行う前までの処理を示す。印刷用データ処理の結果は印刷装置が備える記憶部に保持され、実際に用紙紙面上に印刷を行った後に記憶部から削除される。 Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the drawings. However, the constituent elements described in this embodiment are merely examples, and are not intended to limit the scope of the present invention only to them. Here, the printing data processing refers to processing from when image data is transmitted to the printing apparatus until before printing is actually performed on the paper surface. The result of the printing data processing is held in a storage unit provided in the printing apparatus, and is actually deleted from the storage unit after printing on the paper surface.
<システム構成>
図1は、本発明の実施形態を示す画像処理システムとしての印刷システムの全体構成を説明するシステム構成図である。プリンタコントローラ1000は、ネットワークI/F1001と、制御手段としてのCPU1002及びCPU1003と、RAM1004とHDD1005と操作部I/F1006とデバイスI/F1007とRIP1008とを含む。そして、それらは内部バス1009で接続されている。PC1100はパーソナルコンピュータに代表されるホストコンピュータである。操作部1200はユーザインタフェースであり、図示しない各種ボタンやタッチパネル等を備える。操作部1200は操作部I/F1006と接続される。プリンタ部1300はプリンタコントローラで形成した画像データを紙面上に印刷を行う画像出力装置である。プリンタ部1300はデバイスI/F1007と接続される。スキャナ部1400は、図示しない原稿台に置かれた原稿を光学的に走査して画像を読み取る画像入力装置である。スキャナ部1400も、プリンタ部1300と同様、デバイスI/F1007と接続される。
<System configuration>
FIG. 1 is a system configuration diagram illustrating an overall configuration of a printing system as an image processing system according to an embodiment of the present invention. The
ネットワークI/F1001は、LAN1101と接続される、PC1100と各種通信を行うためのインタフェースである。CPU1002及びCPU1003は、RAM1004に格納されている各種プログラムを実行する。RAM1004は、各種プログラム以外に、それぞれのCPUが動作するために必要なワークメモリとして利用される。またRAM1004には各種データを一時的に記憶することができる。HDD1005は、RAMにロードする前のプログラムや各種データを保存することができる。操作部I/F1006は操作部1200と接続されるインタフェースであり、ユーザが操作部1200を操作すると、その情報がプリンタコントローラ1000へと伝えられる。また、操作部1200はプリンタコントローラ1000が出力する各種ステイタスを表示する機能も有する。RIP1008は、特定フォーマットの文書データをビットマップデータに変換するためのハードウェアである。
A network I /
続いて図1の印刷システムのプリント動作について図2のフローチャートを用いて説明する。まず印刷する文書データをPC1100から伝送する(S2001)。この文書データは例えばPDL(Page Discription Language)であり、PC1100に搭載されるプリンタドライバで生成される。PC1100から伝送(入力)された文書データは、ネットワークI/Fを経由してRAM1004に格納される。
Next, the printing operation of the printing system of FIG. 1 will be described using the flowchart of FIG. First, document data to be printed is transmitted from the PC 1100 (S2001). This document data is, for example, PDL (Page Description Language), and is generated by a printer driver installed in the
RAM1004に格納された文書データは、RAM1004にロードされている文書データ解析プログラムによって、ページ単位で並列処理可能な第1中間データに変換される(S2002)。文書データ解析プログラムは、CPU1002、1003の何れか、若しくは時分割で両方のCPU1002、1003で動作する。上述のように生成されたデータはHDD1005若しくはRAM1004に格納される。
The document data stored in the
続いてRAM1004若しくはHDD1005に格納された第1中間データを、RAM1004にロードされている中間データ解析プログラムによって、RIP1008が解釈可能な第2中間データに変換する(S2003)。中間データ解析プログラムは、CPU1002とCPU1003それぞれで実行されるように、2つのスレッドを作成する。それぞれの中間データ解析スレッドには、処理するページ範囲がそれぞれ重複しないように指示する。それぞれの中間データ解析スレッドで生成された第2中間データは、RAM1004若しくはHDD1005に格納される。第2中間データの生成後、該当する第1中間データを削除してもよい。
Subsequently, the first intermediate data stored in the
続いてRAM1004若しくはHDD1005に格納された第2中間データを、RIP1008を用いてビットマップに変換する(S2004)。ビットマップに変換されたページに対応する第1中間データ及び第2中間データはビットマップ形成後に削除してもよい。S2004で生成されたビットマップは、デバイスI/F1007を経由してプリンタ部1300に伝送され、そこで紙等の媒体上に印刷される(S2005)。
Subsequently, the second intermediate data stored in the
なお、S2001で受信した印刷データは、全ページの第2中間データを生成した後に削除してもよいし、該当する第2中間データの生成後に、ページ単位で印刷データを削除してもよい。 Note that the print data received in S2001 may be deleted after generating the second intermediate data of all pages, or the print data may be deleted in units of pages after the corresponding second intermediate data is generated.
また、S2003の処理は、全ページ分の第1中間データを生成した後に実行しても構わない。或いは、一ページ分の第1中間データが生成された時点で、上述のように決定したそれぞれのスレッドで処理するページ範囲にしたがって中間データ解析プログラムに解析処理を依頼してもよい。また、この場合、中間データ解析プログラムはFIFOキューを備えるのが望ましい。 Further, the process of S2003 may be executed after generating the first intermediate data for all pages. Alternatively, when the first intermediate data for one page is generated, the intermediate data analysis program may be requested to perform analysis processing according to the page range to be processed by each thread determined as described above. In this case, the intermediate data analysis program preferably includes a FIFO queue.
続いて、第1中間データについて図3を用いて説明する。文書データ(PDL)には様々なフォーマットがあり、ページ単位で並列処理することができないフォーマットも存在する。例えば、これから描画するラインの線幅を指定する等の印刷設定コマンドと、ラインを描画する等の描画コマンドから構成される文書データがある。ページ毎に印刷設定コマンドを設定する必要のない文書データでは、前ページの印刷設定を次のページでも引き継ぐことが一般的である。この場合、ページ1の描画コマンドが終了するまでに指定された印刷設定は、上書きされない限り、ページ2でも有効にしなければならない。
Next, the first intermediate data will be described with reference to FIG. There are various formats for document data (PDL), and there are also formats that cannot be processed in parallel in page units. For example, there is document data including a print setting command for designating a line width of a line to be drawn and a drawing command for drawing a line. For document data that does not require a print setting command to be set for each page, the print setting for the previous page is generally inherited by the next page. In this case, the print settings specified until the drawing command for
図3の3000は、ページ単位で並列処理することができないフォーマットの印刷データを表す。3001はページ1の終了までに設定される印刷設定コマンドであり、3002はページ1の描画コマンドである。ページ2では印刷設定はないので、3001の印刷設定にしたがってページ2の描画処理を実行する。ページ3には3004に示す印刷設定があるので、この印刷設定にしたがってページ3の描画コマンド3005の処理を行う。
3000 in FIG. 3 represents print data in a format that cannot be processed in parallel in page units.
このような仕様の文書データで、ページ単位で並列処理を行えるようにするためには、前ページの終了までに行なわれた印刷設定コマンドを、次のページの開始部にコピーすればよい。即ち図3の3100に示すように、ページ毎に前ページの印刷設定をコピーする。3101はページ1の第1中間データであり、印刷設定3001と描画コマンド3002で構成される。3102はページ2の第1中間データであり、印刷設定3001と描画コマンド3003で構成される。3103はページ3の第1中間データであり、印刷設定3004と描画コマンド3005で構成される。このような変換処理を行うことで、並列処理可能な第1中間データに変換することが可能になる。つまり、印刷用データとしての第1中間データ3100は、複数の印刷用データ部分(ページ1の第1中間データ、ページ2の第1中間データ、ページ3の第1中間データ)を含むものである。なお、3000と3100の印刷設定と描画コマンドはそれぞれ同じフォーマットである必要はない。3100の印刷設定や描画コマンドは、印刷装置独自の印刷設定コマンドと描画コマンドとしても構わない。
In order to enable parallel processing in units of pages with document data having such a specification, the print setting command executed up to the end of the previous page may be copied to the start of the next page. That is, as shown by 3100 in FIG. 3, the print settings of the previous page are copied for each page.
続いて図1のプリンタコントローラ1000で実行されるソフトウェアの構成について図4を用いて説明する。
Next, the configuration of software executed by the
オペレーティングシステム4000は、各種ソフトウェアに各種API(アプリケーションインタフェース)を公開し、また各ソフトウェアの実行を制御するソフトウェアである。本実施の形態のおいて、オペレーティングシステム4000上で動作するソフトウェアは、ネットワーク制御部4100、ユーザI/F制御部4200、コピー動作制御部4300、印刷動作制御部4400及びその他のソフトウェアである。それぞれのソフトウェアは少なくとも一つ以上のスレッドを保有する。オペレーティングシステム4000は、これらのソフトウェアのスレッドに対してCPU1002若しくはCPU1003を適切なタイミングで割り当てて、各スレッドを実行する。オペレーティングシステム4000の各アプリケーションスレッドへのCPUの割り当ては、各スレッドに対してAPIを用いて設定されるスレッドの優先順位等に従う。優先順位は起動時だけではなく、ソフトウェアの動作中にも動的に設定することが可能である。
The
ネットワーク制御部4100は、図1のネットワークI/F1001を介して伝送された各種プロトコル解析を行うソフトウェアである。プリンタコントローラ1000は、文書データの伝送に利用するLPRやRAWといったプロトコルだけではなく、プリンタコントローラ1000やプリンタ部1300のステイタスを表示するHTTPや、通信機器を監視するためのSNMP等もサポートする。ネットワーク制御部で解析された受診データは、適切なソフトウェアに引渡される。例えばLPRやRAWで伝送されたデータは印刷動作制御部4400に引渡され、HTTPデータは、図示しないWWWサーバソフトウェアに引渡されて各種処理を行う。
The network control unit 4100 is software that analyzes various protocols transmitted via the network I /
ユーザI/F制御部4200は、図1の操作部1200から入力されたユーザの操作情報にしたがって処理を行い、また、操作部1200に備え付けられた表示装置にプリンタコントローラ1000やプリンタ部1300のステイタスを表示する。
The user I /
また図1のプリンタコントローラ1000でコピー機能を利用する際には、利用者は操作部1200を操作する。例えば操作部に備え付けられたコピー開始ボタンを押下する。このとき、ユーザI/F制御部4200は、コピー動作制御部4300に処理の開始を指示する。するとコピー動作制御部4300は、図1のスキャナ部を操作して原稿を読み取り、読み取られた画像をプリンタ部1300によって印刷する動作を制御する。
When using the copy function with the
続いて、印刷動作制御部4400について詳細に説明する。印刷動作制御部4400は図2のフローチャートを用いて説明したプリント動作を実行するソフトウェアである。印刷制御部4400は、複数のソフトウェアモジュール4401及至4406で構成される。なお、文書データは上述したネットワーク制御部4100から伝送されるが、その際に文書データをRAM1004やHDD1005にバッファリングしても構わない。
Next, the printing
第1中間データ生成部4401は、図2のフローチャートのS2002における文書データを第1中間データに変換するソフトウェアモジュールである。
The first intermediate
並列処理スケジューラ4402は、第1中間データ生成部4401が生成する第1中間データを、第2中間データ生成部4403a及び第2中間データ生成部4403bに割り振る役割を担う。それぞれの第2中間データ生成部はひとつのスレッドを保有する。また、並列処理スケジューラ4402は、各第2中間データ生成部4403a、bに割り振った処理が終了すると、処理が終了していないページの第2中間データ生成処理の再割り振りを行う。また、並列処理スケジューラ4402は、各第2中間データ生成部4403a、bが保有するスレッドの優先順位の再設定を行う。
The
第2中間データ生成部4403a及び第2中間データ生成部4403bは、図2のフローチャートのS2003における、第1中間データを第2中間データに変換するソフトウェアモジュールである。各第2中間データ生成部は予め指定されたページ範囲の第1中間データを、ページ単位に逐次的に第2中間データに変換する。或いは、各第2中間データ生成部4403a、bに設けられたFIFOキューに蓄えられる、ページ単位の第1中間データ変換命令を逐次的に第2中間データに変換する。
The second intermediate
図5に示すように、第2中間データ生成部4403a、bは、FIFOキュー5001に格納された第1中間データを逐次的に処理して第2中間データに変換して出力する。或いは、並列処理スケジューラ4402がFIFOキュー5002に第1中間データを格納する。
As shown in FIG. 5, the second intermediate
RIPスケジューラ4404は、第2中間データ生成部4403a、bで生成された第2中間データを、図1のプリンタ部1300で出力する順番で、レンダリング制御部4404に送信する。
The
レンダリング処理部4405は、図2のフローチャートのステップS2004における第2中間データからビットマップを生成する処理を担うソフトウェアモジュールである。実際には、レンダリング処理部4405は、図1のRIP1008を制御することによりレンダリング処理を実行する。
The
印刷処理部4406は、図2のフローチャートのS2005における、レンダリング処理部4405で生成されたビットマップを、図1のプリンタ部1300で紙面上に印刷する処理を行うソフトウェアモジュールである。
The
<並列処理スケジューリング>
並列処理スケジューラ4402の動作の流れについて、図6のフローチャートを用いて説明する。まず、S6001で、各第2中間データ生成部の優先度を設定する。続いてS6002で、各第2中間データ生成部に割り振るページの境界ページ数Nを決定する。
<Parallel processing scheduling>
The operation flow of the
続いてS6003で、第2中間データ生成処理を行う。続いてS6004で何れかの第2中間データ生成部の処理の終了を待つ。続いてS6005で、全ページの第2中間データ生成が終了しているかを判断する。全ページの第2中間データの生成が終了していない場合には、第2中間データが生成されていないページを各第2中間データ生成部に割り振るページ境界Jを決定する(S6006)。更に各第2中間データ生成部は、スレッドの優先順位を変更して第2中間データ生成処理を続行する。 In step S6003, a second intermediate data generation process is performed. In step S6004, the process waits for the end of any second intermediate data generation unit. In step S6005, it is determined whether the second intermediate data generation for all pages has been completed. If the generation of the second intermediate data for all pages has not been completed, a page boundary J for allocating a page for which the second intermediate data has not been generated to each second intermediate data generation unit is determined (S6006). Further, each second intermediate data generation unit changes the priority order of the threads and continues the second intermediate data generation process.
最終的に全てのページについての第2中間データが生成されるまでステップS6003からS6007の処理を繰り返す。 The processes of steps S6003 to S6007 are repeated until the second intermediate data for all pages is finally generated.
生成された第2中間データは、図1のRAM1004に格納されるが、各第2中間データ生成部は、ある程度連続したページを処理することになるため、効率よくメモリを利用することが可能である。即ち、各第2中間データ生成部は、処理が割り振られるタイミングで、RAM1004の連続領域から割り振られたページ全ての中間データを格納する領域を予約する。各第2中間データ生成部は逐次的に第2中間データを生成するので、前ページの第2中間データの終端直後に次ページの第2中間データを配置することが可能になる。
The generated second intermediate data is stored in the
次に、図6のステップS6001とS6002の処理の内部について説明する。これらの処理は、各第2中間データ生成部の優先順位を設定し、並列処理スケジューラ4402が、第1中間データを割り振る処理である。なお、ここでは説明を簡単にする為に、全ページの第1中間データを作成してから第2中間データを作成する場合について説明する。
Next, the inside of the processing of steps S6001 and S6002 of FIG. 6 will be described. These processes are processes in which the priority order of each second intermediate data generation unit is set, and the
図7は、一つの第2中間データ生成部で第2中間データを生成する従来技術について説明する図である。生成された第2中間データ7000と、レンダリング済データ7100と、印刷処理済データ7200のタイムチャートである。レンダリング処理は、実質上、図1のRIP1008によって行なわれるので、第2中間データの生成とレンダリング処理は並列して実行される。レンダリング処理を行うページに対応する第2中間データが生成されなければレンダリング処理は行えない。印刷処理は、図1のプリンタ部1300を操作して紙面上に印刷する処理であり、物理的な用紙の搬送時間等の時間がかかる。特にプリンタ部1300が停止している状態から最初の用紙が出力されるまでの時間はFCOTと呼ばれ、プリンタ部の性能を示す一つの指標となっている。
FIG. 7 is a diagram for explaining a conventional technique for generating the second intermediate data by one second intermediate data generation unit. 10 is a time chart of generated second
なお、プリンタ部に転送するビットマップを生成してからプリンタ部の停止状態を解除することが一般的であるが、RIPに渡す第2中間データが生成されてから解除する場合や、第2中間データが生成されていない段階で解除するような場合もある。本実施の形態では、印刷するビットマップが生成されてからプリンタ部の待ちを解除するものとする。本実施の形態におけるFCOTは、図7に示しているように一ページ目のビットマップデータが生成されてから、1ページ目の用紙が出力されるまでの時間となる。 In general, the stop state of the printer unit is canceled after the bitmap to be transferred to the printer unit is generated. However, when the second intermediate data to be transferred to the RIP is generated, the second intermediate data is released. In some cases, it is canceled when data is not generated. In this embodiment, it is assumed that the printer unit waits after a bitmap to be printed is generated. The FCOT in the present embodiment is the time from when the first page bitmap data is generated to when the first page paper is output, as shown in FIG.
図7によると、印刷処理7200は4ページまで遅延無く行っているが、5ページ目以降は遅延7202が発生しているため、効率的に処理が行えていない。これを、図8に示すように2つの第2中間データ生成部、即ち2つのスレッドで第2中間データの生成を行うと、効率的に印刷用データ処理を行うことが可能となる。
According to FIG. 7, the
例えば、図8のように1ページから4ページまでの第2中間データの生成処理を一つの第2中間データ生成部4403aで行い、5ページ以降の処理を他方の第2中間データ生成部4403bで行う。なお、1ページから4ページまでの第2中間データ8000は、ネットワーク制御部4100やユーザI/F制御部4200のスレッドより優先して実行されるように設定する。また、5ページ以降の第2中間データ8100は、第2中間データ生成部4403bによりネットワーク制御部4100やユーザI/F制御部4200のスレッドより優先して実行されないように制御する。
For example, as shown in FIG. 8, the second intermediate data generation process from
処理を分断する境目(本実施形態では5ページ)は、一般的に表すと、以下の数式を満たす最大のNとなる。
ここでf(i)はページiの第2中間データの生成予測時間である。FCOTは上述したプリンタ部が停止している状態から最初の用紙が出力されるまでの時間である。tはプリンタ部で連続して印刷処理を行える場合の、連続するページの出力完了の間隔である。r(i)はページiのビットマップ生成に必要な時間である。 Here, f (i) is the predicted generation time of the second intermediate data of page i. FCOT is the time from when the printer unit is stopped until the first sheet is output. t is an interval between completions of continuous page output when the printer unit can continuously perform print processing. r (i) is the time required to generate a bitmap for page i.
いずれかの第2中間データ生成部に割り当てられた処理が終了すると、並列処理スケジューラ4402は第2中間データの生成が終了していないページの再割り振りを行う。
When the process assigned to any of the second intermediate data generation units is completed, the
<再割当て処理と優先順位の変更>
次に図9、図10を用いて、再割当て処理と優先順位の変更処理について具体的に説明する。
処理を終了した第2中間データ生成部で最後に処理していたページをM、同時点でもう一方の第2中間データ生成部の処理対象となっているページをP、同時点でレンダリングしているページをQ、同時点で印刷処理を行っているページをRとする。
<Reassignment and priority change>
Next, the reallocation process and the priority order change process will be specifically described with reference to FIGS. 9 and 10.
The page that was last processed by the second intermediate data generation unit that has completed the processing is M, the page that is the processing target of the other second intermediate data generation unit at the same time is P, and the page is rendered at the same time. Let Q be the current page and R be the page that is printing at the same time.
(MがPよりも小さい場合)
図9(a)に示す例では、Mページ(図では4ページ)が終了した時点で、ページP+1(図では9ページ)から最終ページ(図では20ページ)までの第2中間データ生成処理が終了していない。この場合、図9(b)に示すように、並列処理スケジューラ4402は、ページP+1からページJ(ここでは13ページ)までを、ページPを処理していた第2中間データ生成部(図中下側)で行う。そして、ページJ+1(図では14ページ)から最終ページまでを、処理が終了した第2中間データ生成部(図中上側)で処理するようにスケジューリングを行う(図9(b))。即ち、前回割り当てられた処理が終了していない第2中間データ生成部(図中下側)において、優先的な印刷用データ処理を行なう。つまり、終了した部分以外の印刷用データ処理を、複数の制御手段に割り当てる。
(When M is smaller than P)
In the example shown in FIG. 9A, when the M page (4 pages in the figure) is completed, the second intermediate data generation processing from the page P + 1 (9 pages in the figure) to the last page (20 pages in the figure) is performed. Not finished. In this case, as shown in FIG. 9B, the
また並列処理スケジューラ4402は、ページP+1が割り振られた第2中間データ生成部(図中下側)を、上述のネットワーク制御部4100やユーザI/F制御部4200のスレッドより優先して実行されるように設定する。また、J+1ページ(14ページ)が割り振られた第2中間データ生成部(図中上側)を、上述のネットワーク制御部4100やユーザI/F制御部4200のスレッドより優先して実行されないように設定する。実質上、各第2中間データ生成部の優先順位は互いに入れ替えられることになる。
The
Jは以下の数式を満たすもっとも大きい整数に設定する。なお、以下の数式では、レンダリングにかかる時間は第2中間データ生成時間よりも小さいとして無視している。
次にJページ(図では13ページ)までの第2中間データ生成処理が終了した時点で、他方の第2中間データ生成処理が終了していなければ、その時点で、図6のステップS6006に進み、再割当て処理及び優先順位の変更を行なう。図9の例では、1番目に上式でJとして求められたJ1ページ(図では13ページ)が終了した時点で、上側の第2中間データ生成部での第2中間データ生成処理が終了しておらず、19ページの途中までしか終了していない。従って、再度Jの値を求め、2度目のJの値J2=19だとすると、20ページについては再割当ての対象となり、下側の第2中間データ生成部で20ページの第2中間データを生成する。この際、優先順位が変更になり、下側の第2中間データ生成部の優先順位が下がり、ネットワーク制御部4100やユーザI/F制御部4200の割り込み処理を下側の第2中間データ生成部で実行するように設定が変わる。
Next, when the second intermediate data generation process up to page J (
(MがPよりも大きい場合)
処理を終了した第2中間データ生成部で最後に処理していたページMが、同時点でもう一方の第2中間データ生成部の処理対象となっているページPよりも大きい場合について説明する、
図10に示す例では、1度目の再割当て処理では、図9と同様の処理を行ない、図10(a)から図10(b)に進む。その後、最終ページM(ここでは20ページ)が終了した時点で、他方の第2中間データ生成部でページP(ここでは12ページ)が処理中である場合、M>Pとなる。この場合、再度、Jの値を求め、J2=14だとすると、図10(c)に示すようにページP+1(ここでは13ページ)からページJ2(ここでは14ページ)までを、ページPを処理していた図中下側の第2中間データ生成部で行う。ページJ2+1(ここでは15ページ)から、J1ページまでを、図10(b)で処理が終了した図中上側の第2中間データ生成部で処理するようにスケジューリングを行う。この再割当てでは、少ない数字のページを処理する下側の第2中間データ生成部が、優先的に処理すべき第2中間データ生成部であるので、上側の第2中間データ生成部が、引き続き割り込み対象となる。つまり、実質上、各第2中間データ生成部の優先順位は変更されない。つまり、再割当て手段は、その他の処理を過去にどの制御手段が実行したかを考慮して、最も優先順位が高い部分が割り当てられた制御手段以外の制御手段に、その他の処理を実行させる。
(When M is larger than P)
A case will be described in which the page M that was last processed by the second intermediate data generation unit that has finished processing is larger than the page P that is the processing target of the other second intermediate data generation unit at the same time.
In the example shown in FIG. 10, in the first reassignment process, the same process as in FIG. 9 is performed, and the process proceeds from FIG. 10 (a) to FIG. 10 (b). After that, when the last page M (here, 20 pages) is completed, if page P (here, 12 pages) is being processed in the other second intermediate data generation unit, M> P. In this case, if the value of J is obtained again and J2 = 14, page P is processed from page P + 1 (
<メモリの使用状況>
ページ1からページLまでの処理を一つのスレッドで行い、L+1からMまでを別のスレッドで処理したときの第2中間データのメモリ出力状況を図11に示す。この図に示されるように、処理を割り振ったページの境目以外では、メモリを連続的に使用することが可能になる。
<Memory usage status>
FIG. 11 shows the memory output status of the second intermediate data when processing from
<本実施形態の効果>
以上で説明した方法によれば、f(i)の予測に誤差がある場合や、第2中間データ生成に直接関係が無いような処理が割り込んだ場合においても、第2中間データの生成処理の順番を、ある程度印刷する順番通りに行うことができる。これにより、高速に第2中間データ生成を行うことができ、ある程度同じスレッドで連続するページを処理することになるので、メモリ使用効率を向上させることができる。
<Effect of this embodiment>
According to the method described above, even when there is an error in the prediction of f (i) or when a process that is not directly related to the generation of the second intermediate data is interrupted, the second intermediate data generation process is performed. The order can be performed in the order of printing to some extent. As a result, the second intermediate data can be generated at high speed, and successive pages are processed to some extent by the same thread, so that the memory usage efficiency can be improved.
また、並列処理スケジューラ4402は、オペレーティングシステム4000が公開するAPIを利用して取得できる、本システム上で動作するスレッドのCPU占有率にしたがって、上述したNやLの値を決定してもよい。
Further, the
つまり、本実施の形態を適用する別のシステムでは、第2中間データ生成よりも優先順位が高い処理が実行されてもよい。この場合、ネットワークやUI処理によって第2中間データ生成処理は阻害されないが、その他の処理で上述のf(i)の予測値に誤差が生じる恐れがある。そのため第2中間データ生成処理スレッドの占有率を計測して、f(i)にその値を乗ずることでNやLの値を算出すれば、より効率的に処理を行うことができる。 That is, in another system to which this exemplary embodiment is applied, processing having a higher priority than the second intermediate data generation may be executed. In this case, the second intermediate data generation process is not hindered by the network or the UI process, but an error may occur in the predicted value of f (i) described above in other processes. Therefore, if the occupancy rate of the second intermediate data generation processing thread is measured and the value of N or L is calculated by multiplying the value by f (i), the processing can be performed more efficiently.
また、並列処理スケジューラ4402が、上述したNやLの値を算出している間、動作中の第2中間データ生成部は、既に割り振られている処理を実行するようにしてもよい。即ち、並列処理スケジューラ4402がNやLの値を算出するのに時間がかかる場合においても、第2中間データ生成部は前回割り当てられた処理を続行することができるので、更に効率的に処理が行うことができる。この場合、NやLの値を算出している間に生成された第2中間データ以外のページを、第2中間データ生成部で処理するように制御すればよい。
In addition, while the
(他の実施形態)
以上の実施形態について、2つの制御手段(ここではCPU)を用いた情報処理方法について説明したが、本発明はこれに限定されるものではなく、3つ以上のCPUを用いた情報処理方法にも適用できる。また、さらには、CPUやメモリを複数のスレッドで共有する並列処理や、CPUやメモリを複数のプロセスで共有する並列処理においても、適用できる。
(Other embodiments)
In the above embodiment, the information processing method using two control means (here, the CPU) has been described. However, the present invention is not limited to this, and the information processing method using three or more CPUs is used. Is also applicable. Furthermore, the present invention can also be applied to parallel processing in which a CPU and a memory are shared by a plurality of threads, and parallel processing in which a CPU and a memory are shared by a plurality of processes.
なお、本発明は、前述した実施形態の機能を実現するプログラムを、システム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置が、供給されたプログラムコードを読み出して実行することによっても達成される。したがって、本発明の機能処理をコンピュータで実現するために、コンピュータにインストールされるプログラムコード自体も本発明の技術的範囲に含まれる。 The present invention can also be achieved by supplying a program that realizes the functions of the above-described embodiments directly or remotely to a system or apparatus, and the system or apparatus reads and executes the supplied program code. The Accordingly, the program code itself installed in the computer in order to realize the functional processing of the present invention by the computer is also included in the technical scope of the present invention.
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。 In this case, the program may be in any form as long as it has a program function, such as an object code, a program executed by an interpreter, or script data supplied to the OS.
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスクがある。また、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。 Examples of the recording medium for supplying the program include a floppy (registered trademark) disk, a hard disk, an optical disk, and a magneto-optical disk. Further, there are MO, CD-ROM, CD-R, CD-RW, magnetic tape, nonvolatile memory card, ROM, DVD (DVD-ROM, DVD-R) and the like.
その他、クライアントPCのブラウザを用いてインターネットサイトに接続し、本発明に係るプログラムそのもの、若しくは更に自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードするという利用方法もある。また、本発明に係るプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムを複数のユーザに対してダウンロードさせるWWWサーバも、本発明の範疇に含まれる。 また、本発明に係るプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布してもよい。所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。 In addition, there is a usage method in which a browser of a client PC is used to connect to an Internet site and a program according to the present invention itself or a file including an automatic installation function is downloaded to a recording medium such as a hard disk. It can also be realized by dividing the program code constituting the program according to the present invention into a plurality of files and downloading each file from a different homepage. That is, a WWW server that allows a plurality of users to download a program for realizing the functional processing of the present invention on a computer is also included in the scope of the present invention. Further, the program according to the present invention may be encrypted and stored in a storage medium such as a CD-ROM and distributed to users. This is realized by having a user who has cleared a predetermined condition download key information to be decrypted from a homepage via the Internet, execute the encrypted program by using the key information, and install it on a computer. It is also possible.
また、プログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部又は全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。 Further, the functions of the above-described embodiments can be realized by an OS or the like running on the computer based on an instruction of the program and performing part or all of the actual processing.
さらに、PCの機能拡張ユニットに備わるメモリに本発明に係るプログラムが書き込まれ、そのプログラムに基づき、その機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行なう場合も、本発明の範疇に含まれる。 Furthermore, when the program according to the present invention is written in the memory provided in the function expansion unit of the PC and the CPU or the like provided in the function expansion unit performs part or all of the actual processing based on the program, Included in the category.
Claims (7)
前記入力手段により入力された前記印刷用データを用いた印刷用データ処理及びその他の処理を並列に実行できる複数の制御手段と、
前記印刷用データ処理を複数の部分に分割して前記複数の制御手段に割り当てる割当手段と、
前記複数の制御手段の何れかにおいて、前記印刷用データ処理の割り当てられた部分の前記印刷用データ処理を終了した場合に、終了した部分以外の前記印刷用データ処理を、再度、前記複数の制御手段に割り当てる再割当手段と、
前記再割当手段による再割り当てに従って前記複数の制御手段のそれぞれに前記印刷用データ処理を実行させるとともに、前記再割り当ての結果、前記印刷用データ処理の複数の部分のうちで最も優先順位が高い部分が割り当てられた制御手段以外の制御手段に、前記印刷用データ処理より優先して前記その他の処理を実行させる実行手段と、
前記複数の制御手段により前記印刷用データ処理が実行された前記印刷用データに基づいて、印刷を実行する印刷手段と、
を含むことを特徴とする印刷装置。 An input means for inputting print data;
A plurality of control means capable of executing print data processing using the print data input by the input means and other processes in parallel;
And assigning means for assigning to said plurality of control means by dividing the print data processing into a plurality of portions,
Wherein in any of the plurality of control means, when it is completed to the print data processing assignment is part of the print data processing, the print data processing other than termination portion, again, a plurality and re-allocation means for allocating the control means,
According to the reallocation by the reallocation unit, each of the plurality of control units executes the print data processing, and as a result of the reallocation , the highest priority portion among the plurality of portions of the print data processing Execution means for causing the control means other than the control means assigned to execute the other processing in preference to the print data processing ;
Printing means for executing printing based on the printing data for which the printing data processing has been executed by the plurality of control means;
A printing apparatus comprising:
前記印刷手段は、前記複数の印刷用データ部分に前記印刷用データ処理が実行されることにより生成されたページ単位の画像データに基づいて印刷を実行し、
前記印刷手段により先に印刷されるページに対応する前記印刷用データ部分の前記印刷用データ処理の優先順位が高いことを特徴とする請求項1又は2に記載の印刷装置。 The print data includes a plurality of print data portions in page units,
The printing unit performs printing based on page-unit image data generated by executing the print data processing on the plurality of print data portions;
3. The printing apparatus according to claim 1, wherein a priority of the print data processing of the print data portion corresponding to a page printed earlier by the printing unit is high.
前記印刷用データを入力する入力ステップと、
前記印刷用データ処理を複数の部分に分割して前記複数の制御手段に割り当てる割当ステップと、
前記複数の制御手段の何れかにおいて、前記印刷用データ処理の割り当てられた部分の前記印刷用データ処理を終了した場合に、終了した部分以外の前記印刷用データ処理を、再度、前記複数の制御手段に割り当てる再割当ステップと、
前記再割当ステップにおける再割り当てに従って前記複数の制御手段のそれぞれに前記印刷用データ処理を実行させるとともに、前記再割り当ての結果、前記印刷用データ処理の複数の部分のうちで最も優先順位が高い部分が割り当てられた制御手段以外の制御手段に、前記印刷用データ処理より優先して前記その他の処理を実行させる実行ステップと、
前記複数の制御手段により前記印刷用データ処理が実行された前記印刷用データに基づいて、印刷を実行する印刷ステップと、
を含むことを特徴とする印刷装置の制御方法。 A printing apparatus control method comprising a plurality of control means capable of executing printing data processing using printing data and other processing in parallel,
An input step for inputting the printing data;
An allocation step of assigning to said plurality of control means by dividing the print data processing into a plurality of portions,
Wherein in any of the plurality of control means, when it is completed to the print data processing assignment is part of the print data processing, the print data processing other than termination portion, again, a plurality and re-allocation step of allocating to the control means,
According to the reassignment in the reassignment step, each of the plurality of control means executes the print data processing, and as a result of the reassignment, a portion having the highest priority among the plurality of portions of the print data processing An execution step of causing the control means other than the control means assigned to execute the other processing in preference to the print data processing ;
A printing step for executing printing based on the printing data for which the printing data processing has been executed by the plurality of control means;
A control method for a printing apparatus .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008331184A JP5284076B2 (en) | 2008-12-25 | 2008-12-25 | Printing apparatus, control method therefor, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008331184A JP5284076B2 (en) | 2008-12-25 | 2008-12-25 | Printing apparatus, control method therefor, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010149422A JP2010149422A (en) | 2010-07-08 |
JP5284076B2 true JP5284076B2 (en) | 2013-09-11 |
Family
ID=42569053
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008331184A Expired - Fee Related JP5284076B2 (en) | 2008-12-25 | 2008-12-25 | Printing apparatus, control method therefor, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5284076B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5594470B2 (en) * | 2010-09-10 | 2014-09-24 | 富士ゼロックス株式会社 | Printing control apparatus, printing system, and program |
JP5766059B2 (en) * | 2011-07-25 | 2015-08-19 | キヤノン株式会社 | Image forming apparatus, image forming apparatus control method, and program |
JP6746326B2 (en) | 2016-02-19 | 2020-08-26 | キヤノン株式会社 | Printing device, printing method, and program for interpreting print data by a plurality of interpreting means |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3553985B2 (en) * | 1991-08-06 | 2004-08-11 | 株式会社日立製作所 | Print control method and print control device |
JPH11301046A (en) * | 1998-04-20 | 1999-11-02 | Nec Software Hokuriku Ltd | Printing drawing system |
JP2000330800A (en) * | 1999-05-20 | 2000-11-30 | Canon Inc | Unit and method for output control |
JP2001217971A (en) * | 2000-02-03 | 2001-08-10 | Ricoh Co Ltd | Facsimile controller |
JP4060233B2 (en) * | 2003-05-19 | 2008-03-12 | 大日本スクリーン製造株式会社 | Task control for print processing |
JP4481041B2 (en) * | 2004-03-09 | 2010-06-16 | 理想科学工業株式会社 | Printing device |
CN100351857C (en) * | 2005-01-07 | 2007-11-28 | 北京北大方正电子有限公司 | Printing control method capable of reducing print memory requirement |
JP2007156613A (en) * | 2005-12-01 | 2007-06-21 | Canon Inc | Drawing controller, drawing control method, storage medium and program |
-
2008
- 2008-12-25 JP JP2008331184A patent/JP5284076B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010149422A (en) | 2010-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7295336B2 (en) | Document-management printing system having a displaying unit, and its control method | |
US6888641B2 (en) | Designating an image processing apparatus based on limited selection conditions | |
US20040196470A1 (en) | Raster image processing (RIP) manager for enhanced print shop operation | |
US8625133B2 (en) | Print data processing apparatus, print data processing method, and storage medium | |
US9678697B2 (en) | Systems and methods of displaying a printer driver user interface | |
JP4482525B2 (en) | Image forming apparatus | |
JP2008146434A (en) | Printing control apparatus, printing control method, printing control program, printing apparatus, printing method, printing program, and recording medium | |
JP5284076B2 (en) | Printing apparatus, control method therefor, and program | |
JP4818389B2 (en) | Printing apparatus and control method for data processing by parallel processing | |
JP6206451B2 (en) | Distributed printing control program, distributed printing control apparatus, and distributed printing control method | |
JP5268427B2 (en) | Image forming apparatus and image forming system | |
JP4303732B2 (en) | Image forming apparatus | |
JPH11194911A (en) | Method and system for optical distribution printing and record medium for recording and programming the same method | |
JP5740913B2 (en) | Image forming apparatus and control method thereof | |
JP5799968B2 (en) | Printing system | |
JP2010250393A (en) | Information processing apparatus and information processing method | |
JP5407520B2 (en) | Print control apparatus and print control system | |
US20020101603A1 (en) | Method and apparatus for embodying documents | |
JP4412718B2 (en) | Information processing apparatus and control method thereof | |
JP2009211523A (en) | Information processor and program | |
JP3833090B2 (en) | Control method, control device, program, and storage medium | |
JP5231926B2 (en) | Information processing apparatus, control method therefor, and computer program | |
JP5907609B2 (en) | Information processing apparatus, printing apparatus, printing system, printing control method, and program | |
JP2012008838A (en) | Print document conversion device and program | |
JP2018010640A (en) | Distributed printing control program, distributed printing control device, and distributed printing control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111222 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130208 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130409 |
|
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: 20130430 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130529 |
|
LAPS | Cancellation because of no payment of annual fees |