JP5259003B2 - Image forming apparatus, control method in image control method, and program - Google Patents
Image forming apparatus, control method in image control method, and program Download PDFInfo
- Publication number
- JP5259003B2 JP5259003B2 JP2012193141A JP2012193141A JP5259003B2 JP 5259003 B2 JP5259003 B2 JP 5259003B2 JP 2012193141 A JP2012193141 A JP 2012193141A JP 2012193141 A JP2012193141 A JP 2012193141A JP 5259003 B2 JP5259003 B2 JP 5259003B2
- Authority
- JP
- Japan
- Prior art keywords
- print data
- job
- received
- printing
- host
- 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
本発明は、ホストから受信した印刷ジョブの印刷データ(PDL(page description language)データ)に基づき様々な機能を実現する画像形成装置、画像制御方法における制御方法、及びプログラムに関するものである。 The present invention relates to an image forming apparatus that implements various functions based on print data (PDL (page description language) data) received from a host, a control method in the image control method, and a program.
従来、ホストから受信した印刷ジョブの印刷データ(PDLデータ)を画像形成出力する装置において、受信した印刷ジョブの印刷データ(PDLデータ)を保持しておくことにより様々な機能を実現している。 Conventionally, various functions are realized by holding print data (PDL data) of a received print job in an apparatus that forms and outputs print data (PDL data) of a print job received from a host.
例えば、実行中の印刷ジョブに割り込んで印刷する割り込み印刷を可能とした装置が考案されている(例えば、特許文献2参照)。 For example, an apparatus has been devised that enables interrupt printing that interrupts and prints an ongoing print job (see, for example, Patent Document 2).
また、例えば、ジョブ単位で仕分けして印刷するコレート印刷を可能とした装置が考案されている(例えば、特許文献1参照)。 Further, for example, an apparatus that enables collate printing for sorting and printing in units of jobs has been devised (see, for example, Patent Document 1).
また、例えば、パスワードが入力されるまで印刷を留め置いておく、留め置き印刷を可能とした装置が考案されている(例えば、特許文献3参照)。 In addition, for example, an apparatus has been devised in which printing can be reserved until a password is input, which enables reservation printing (see, for example, Patent Document 3).
ところで、PDLによっては、ホストとプリンタとの間で、対話型で印刷処理を進める、対話型の印刷モードをサポートしている言語がある。 By the way, depending on PDL, there is a language that supports an interactive print mode in which print processing is interactively performed between a host and a printer.
例えば、PostScript(アドビ社の商標登録)では、ホストから送信されたPostScriptデータ(コマンド)に対して、プリンタがその実行結果を返送するという対話型のやり取りをサポートしている。 For example, PostScript (registered trademark of Adobe Corporation) supports interactive exchange in which the printer returns the execution result to PostScript data (command) transmitted from the host.
図2は、その一例を示した図で、ホストから送信された/Times−Romanフォントが実装されているか?という問い合わせ(コマンド)に対して、プリンタがその結果(true=実装されている)を返している。 FIG. 2 is a diagram showing an example of this. Is the / Times-Roman font transmitted from the host implemented? The printer returns the result (true = implemented).
ここで、従来の画像形成装置において、受信した印刷データを保持しておくことにより実現している機能(割り込み印刷、コレート印刷、留め置き印刷など)と、ホストと対話型の印刷モードとを同時に実行した場合、それぞれ、以下のような問題が発生する。 Here, the functions (interrupt printing, collate printing, reservation printing, etc.) realized by retaining the received print data in the conventional image forming apparatus and the interactive print mode with the host are executed simultaneously. In such cases, the following problems occur.
図3は、課題の説明で使用する印刷データ(PDLデータ)の例を示す。 FIG. 3 shows an example of print data (PDL data) used in the description of the problem.
PDLデータ301は、コマンド1〜4で構成されていて、コマンド1、コマンド3を実行すると、それぞれ、ホストへの応答データ1、応答データ2が発生する。
The
また、コマンド1〜2の実行によりページ1が、コマンド3から4の実行によりページ2が生成される。
Further,
プリンタは、ホストから受信したPDLデータ301を保持しておくことにより、割り込み印刷、コレート印刷、留め置き印刷を実現する。
The printer realizes interrupt printing, collate printing, and reserved printing by holding the
<割り込み印刷の場合>
図4は、プリンタが、PDLデータ301の処理途中で、割り込みジョブを受信したときの例を示す。
<In case of interrupt printing>
FIG. 4 shows an example when the printer receives an interrupt job in the middle of processing the
図示した通り、割り込みジョブが発生した時点で、プリンタのPDLインタプリタの処理は中断されるので、未実行のコマンドに対する応答データがホストに返信されず、ホスト側はプリンタからの応答データ待ちのままとなってしまう。 As shown in the figure, the processing of the PDL interpreter of the printer is interrupted when an interrupt job occurs, so that response data for an unexecuted command is not returned to the host, and the host side remains waiting for response data from the printer. turn into.
また、割り込みジョブの処理が終了し、割り込まれたジョブの処理を再開(割り込み復帰)する場合、PDLインタプリタは、プリンタに保持しているPDLデータ301を先頭から解釈する。
When the interrupt job processing is completed and the interrupted job processing is resumed (interrupt return), the PDL interpreter interprets the
これは、PDLによっては(例えば、PostScriptの場合)、データが再帰的に記述されているため、一度解釈を中断したデータに対して、データの途中から解釈を再開することはできないからである。 This is because, depending on the PDL (for example, in the case of PostScript), since the data is recursively described, it is not possible to resume the interpretation from the middle of the data once the interpretation is interrupted.
PDLインタプリタが、再びPDLデータ301の先頭から解釈していくと、コマンド1を実行した時点で、応答データ1が発生し、これを再びホストに返信する。
When the PDL interpreter interprets again from the top of the
これに対し、ホスト側は、コマンド3に対する応答データ2を待っている状態なので、応答データ1が返信されると不整合が生じてしまう。
On the other hand, since the host side is waiting for the
なお、割り込み発生時に、印刷済みページ数を記憶しておき、割り込み復帰時に印刷済みページの画像を印刷しないようにすることは容易に実現できる。 Note that it is easy to store the number of printed pages when an interrupt occurs and not print an image of the printed page when the interrupt is restored.
しかし、印刷済みページ数と、割り込み前のコマンドの実行状況とは、必ずしも対応が取れないので(先述の通り、PDLによってはデータが再帰的に記述されているため)、応答データをホストに返送しないようにすることは困難である。 However, since the number of printed pages and the execution status of the command before interruption cannot always be matched (as described above, data is recursively described depending on PDL), response data is returned to the host. It is difficult to avoid.
このように、対話型の印刷ジョブを処理中に割り込みジョブを受信した場合、割り込み発生時、割り込み復帰時、それぞれで問題が生じる。 As described above, when an interrupt job is received while an interactive print job is being processed, problems occur when an interrupt occurs and when the interrupt is restored.
<コレート印刷の場合>
図5は、プリンタが、PDLデータ301を、コレート印刷で2部以上印刷したときの例を示す。
<For collate printing>
FIG. 5 shows an example when the printer prints two or more copies of the
図示した通り、2部目以降の印刷時にも、PDLインタプリタが、プリンタに保持しているPDLデータ301を再び先頭から解釈することにより実現しているので、解釈を複数回行う度に、応答データ1、2をホストに返信してしまう。
As shown in the figure, since the PDL interpreter interprets the
これに対し、ホスト側は、PDLデータ301を1回しか送信していないにも関わらず、複数回応答データが返信されると不整合が生じてしまう。
On the other hand, if the host side transmits the
このように、対話型の印刷ジョブをコレート印刷で2部以上印刷した場合に、問題が生じる。 Thus, a problem arises when two or more copies of an interactive print job are printed by collate printing.
<留め置き印刷の場合>
留め置き印刷の場合、プリンタに保持されたPDLデータは、ユーザが印刷開始を指示するまで解釈されない。
<For deferred printing>
In the case of reservation printing, the PDL data held in the printer is not interpreted until the user instructs to start printing.
したがって、対話型の印刷ジョブにも関わらず、ユーザが印刷開始を指示するまで、ホストには応答データが一切返信されず、ホスト側はプリンタからの応答データ待ちのままとなってしまう、という問題が生じる。 Therefore, despite the interactive print job, no response data is sent back to the host until the user gives an instruction to start printing, and the host side remains waiting for response data from the printer. Occurs.
上述した課題を解決するために、本発明の画像形成装置は、
ホストから受信した印刷データを記憶する記憶手段と、
前記記憶手段に記憶された印刷データを読み出して中間コードを生成する生成手段と、
前記生成手段により生成された中間コードに基づき画像を形成する画像形成手段と、
受信した印刷データがPostScriptの印刷データでない場合、ホストから受信した印刷データの保持動作を利用した特定の印刷機能の実行を制限せず、受信した印刷データがPostScriptの印刷データの場合、ホストから受信した印刷データの保持動作を利用した特定の印刷機能の実行を制限する制限手段とを有することを特徴とする。
In order to solve the above-described problems, an image forming apparatus according to the present invention includes:
Storage means for storing print data received from the host;
Generating means for reading the print data stored in the storage means and generating an intermediate code;
Image forming means for forming an image based on the intermediate code generated by the generating means;
If the received print data is not PostScript print data, execution of a specific print function using the print data holding operation received from the host is not restricted, and if the received print data is PostScript print data, it is received from the host. And a restricting means for restricting execution of a specific print function using the print data holding operation .
また、本発明によれば、ホストと対話型で印刷を行う印刷データを受信した場合に、特定の印刷機能を問題なく実現することができる。 Further, according to the present invention, when print data for interactive printing with a host is received, a specific print function can be realized without any problem.
(実施例1)
<ハード構成>
図6は、本発明が適用される画像形成装置のハード構成の概要を示すブロック図である。
Example 1
<Hardware configuration>
FIG. 6 is a block diagram showing an outline of a hardware configuration of an image forming apparatus to which the present invention is applied.
画像形成装置1は、全体の制御を司るプリンタ・コントローラ(コントローラ)10を有する。さらにユーザからの指示を受け付けたり表示を行うパネル20、ホスト2から受信した印刷ジョブの印刷データ等を記憶しておく記憶装置(HDDなど)30、印刷を行うプリンタ・エンジン40を有する。
The
次にコントローラ10を説明する。CPU101のCPUバス102に、パネル・インターフェース(パネルI/F)103、ネットワーク・インターフェース(Network I/F)104、画像生成器105、プリンタ・エンジン・インターフェース(プリンタI/F)106が接続されている。さらにCPU101のCPUバス102には、記憶装置インターフェース107、RAM108、ROM109が接続されている。
Next, the
パネルI/F103は、パネル20に接続し、パネル20より入力されたユーザの指示をCPU101に通知したり、ROM109、RAM108に格納されている画面情報や設定情報をパネル20に表示する。
The panel I / F 103 is connected to the
Network I/F104は、ネットワークに接続するホスト2との間でデータの送受信を行う。
The network I /
画像生成器105は、ホスト2から受信したデータを解釈して得られたDisplayListからビットマップ画像を生成する。
The
プリンタI/F106は、CPU101の指示の基、画像生成器105で生成されたビットマップ画像をプリンタ・エンジン40に出力する。
The printer I /
記憶装置I/F107は、記憶装置30との間でデータの送受信を行う。
The storage device I /
RAM108は、CPU101の作業領域として使用されるメモリである。
The
ROM109は、制御プログラムやパネル20に表示する画面情報が格納されたメモリである。
The ROM 109 is a memory that stores a control program and screen information to be displayed on the
CPU101は、ROM109に格納された制御プログラムに従って、コントローラ10の各部を制御する。
The
<ソフト構成>
図1は、本実施例におけるコントローラ10の機能ブロック図である。
<Software configuration>
FIG. 1 is a functional block diagram of the
論理チャネル制御部201は、Network I/F104で受信した印刷ジョブのジョブパケットと管理パケットを、それぞれ異なるチャネルに割り振り、OSI7階層におけるトランスポート層の多重化を行う。
The logical
また、論理チャネル制御部201は、PDLインタプリタ206で発生したホストへの応答データ208を、Network I/F104を介してホスト2に送信する。
Further, the logical
ジョブ識別部202は、受信したジョブパケットを解析し、ジョブ設定情報をジョブ制御部211に、印刷データ(PDLデータ)をPDLスプーラ203に渡す。
PDLスプーラ203は、受信したPDLデータ205を、PDLインタプリタ206に送信したり、RAM108や記憶装置30に記憶する。
The job identification unit 202 analyzes the received job packet, and passes job setting information to the job control unit 211 and print data (PDL data) to the PDL spooler 203.
The PDL spooler 203 transmits the received PDL data 205 to the PDL interpreter 206 or stores it in the
受信データ管理テーブル204は、PDLスプーラ203が、受信したPDLデータ205をジョブ毎に管理するためのテーブルである。 The reception data management table 204 is a table for the PDL spooler 203 to manage the received PDL data 205 for each job.
PDLインタプリタ206は、PDLスプーラ203から読み出したPDLデータ205を解釈し、Display List(中間コード)207を生成して、RAM108に格納する。
The PDL interpreter 206 interprets the PDL data 205 read from the PDL spooler 203, generates a display list (intermediate code) 207, and stores it in the
また、PDLデータ205を解釈した結果、ホストへの応答データ208が発生した場合、これをRAM108に格納し、論理チャネル制御部201に通知する。
If the response data 208 to the host is generated as a result of interpreting the PDL data 205, the data is stored in the
なお、PDLインタプリタ206は、複数搭載可能であって(図1では、206a、206b)、PDLデータ205の種別に応じて、該当のPDLインタプリタが処理する。 A plurality of PDL interpreters 206 can be mounted (206a and 206b in FIG. 1), and the corresponding PDL interpreter processes according to the type of the PDL data 205.
画像形成出力部209は、Display List(中間コード)207を画像生成器105でページ画像210に展開し、展開したページ画像210をプリンタI/F106を介してプリンタ・エンジン40に出力する。プリンタエンジン40はページ画像に基づき用紙に印刷を行う。
The image forming output unit 209 expands the display list (intermediate code) 207 to the page image 210 by the
機器管理部214は、パネル20から入力した操作指示や、ホスト2から管理パケットで入力した操作指示をジョブ制御部211に通知したり、機器の状態をパネル20に表示したりする。
The device management unit 214 notifies the job control unit 211 of an operation instruction input from the
ジョブ制御部211は、ジョブ識別部202、PDLスプーラ203、PDLインタプリタ206、画像形成出力部209、機器管理部213と接続し、これらの機能部とやり取りして、印刷ジョブを実行する。 The job control unit 211 is connected to the job identification unit 202, the PDL spooler 203, the PDL interpreter 206, the image formation output unit 209, and the device management unit 213, and communicates with these functional units to execute a print job.
ジョブ管理テーブル212は、ジョブ制御部211が、ジョブを管理するためのテーブルで、ジョブ毎に、ジョブ識別202から入力したジョブ設定情報や、ジョブの制御情報が格納される。 The job management table 212 is a table for the job control unit 211 to manage jobs, and stores job setting information input from the job identification 202 and job control information for each job.
ジョブ実行キュー213は、ジョブ制御部211が、ジョブの実行順を制御するためのテーブルで、実行順にジョブ管理テーブル212へのポインタが格納されている。 The job execution queue 213 is a table for the job control unit 211 to control the job execution order, and stores a pointer to the job management table 212 in the execution order.
次に、本発明に係る、コントローラ10の主な機能部(ジョブ識別部202、PDLスプーラ203、PDLインタプリタ206、ジョブ制御部211)の処理について、詳細に説明する。
Next, processing of main functional units (job identification unit 202, PDL spooler 203, PDL interpreter 206, job control unit 211) of the
<ジョブ識別部の処理>
図7は、ジョブ識別部202において、Network I/F104から新たなジョブを受信した時の処理プログラムを示すフローチャートである。
<Processing of job identification unit>
FIG. 7 is a flowchart illustrating a processing program when the job identification unit 202 receives a new job from the network I /
ジョブ識別部202は、新たなジョブを受信すると、まず、当該ジョブを識別するためのジョブ識別子(JobID)を付与する(S701)。 When receiving a new job, the job identification unit 202 first assigns a job identifier (JobID) for identifying the job (S701).
続いて、ジョブ識別部202は、付与したJobIDと、当該ジョブに設定されたジョブ設定情報とともに、ジョブ制御部211に新たなジョブを受信したことを通知する(S702)。 Subsequently, the job identification unit 202 notifies the job control unit 211 that a new job has been received together with the assigned JobID and the job setting information set for the job (S702).
次に、ジョブ識別部202は、PDLスプーラ203に、新たなジョブを受信したことを通知する(S703)。 Next, the job identification unit 202 notifies the PDL spooler 203 that a new job has been received (S703).
次に、ジョブ識別部202は、PDLスプーラ203に、受信したジョブに含まれる一連の受信データを転送する(S704)。 Next, the job identification unit 202 transfers a series of received data included in the received job to the PDL spooler 203 (S704).
ジョブ識別部202は、ジョブの終端を検知すると(S705)、PDLスプーラ203に受信データの転送終了を通知して(S706)、一連の処理を終える。 When the job identification unit 202 detects the end of the job (S705), the job identification unit 202 notifies the PDL spooler 203 of the end of transfer of received data (S706), and the series of processing ends.
<PDLスプーラの受信データ格納処理>
図8は、PDLスプーラ203において、ジョブ識別部202から受信したデータを格納する処理プログラムを示すフローチャートである。
<PDL spooler received data storage processing>
FIG. 8 is a flowchart illustrating a processing program for storing data received from the job identification unit 202 in the PDL spooler 203.
PDLスプーラ203は、ジョブ識別部202から各種通知を受信すると、まず、その通知種別を判別する(S801)。 Upon receiving various notifications from the job identification unit 202, the PDL spooler 203 first determines the notification type (S801).
通知種別が、ジョブ受信通知の場合、PDLスプーラ203は、新たな受信データ管理テーブル204を生成し、受信データの格納領域をRAM108または、記憶装置30上に確保する(S802)。
When the notification type is job reception notification, the PDL spooler 203 generates a new reception data management table 204 and secures a storage area for reception data on the
<受信データ管理テーブル>
図9は、受信データ管理テーブル204の構成を示す。
<Received data management table>
FIG. 9 shows the configuration of the reception data management table 204.
受信データ管理テーブル204は、ジョブ毎に生成され、「JobID」「書き込みポインタ」「読み出しポインタ」「読み出しモード」から構成される。 The reception data management table 204 is generated for each job and includes “JobID”, “write pointer”, “read pointer”, and “read mode”.
「JobID」は、ジョブ識別子を示し、ジョブ識別部202から通知されたJobIDがセットされる。 “JobID” indicates a job identifier, and the JobID notified from the job identification unit 202 is set.
「書き込みポインタ」は、受信データ205の格納先を示し、PDLスプーラ203が確保した受信データ格納先のアドレスがセットされる。 The “write pointer” indicates the storage destination of the reception data 205, and the reception data storage destination address secured by the PDL spooler 203 is set.
「読み出しポインタ」は、受信データ205の読み出し先を示し、テーブルが生成された時点では、「書き込みポインタ」と同じアドレスがセットされる。 The “read pointer” indicates the read destination of the received data 205, and the same address as the “write pointer” is set when the table is generated.
「読み出しモード」は、受信データ205が読み出された後の処理を示し、「バックアップ」は、受信データ205が読み出された後も保持しておくことを示し、「読み捨て」は、受信データ205が読み出された時点で削除することを示す。 “Read mode” indicates processing after the received data 205 is read, “backup” indicates that the received data 205 is retained after it is read, and “read discard” indicates received data. When 205 is read, it is deleted.
なお、「読み出しモード」は、PDLインタプリタ206からの読み出し開始時に指定されるので、テーブルが生成された時点ではセットされない。 The “read mode” is specified when reading from the PDL interpreter 206 is started, and is not set when the table is generated.
再び、図8のフローチャートに戻って説明する。 Again, returning to the flowchart of FIG.
通知種別が、受信データの転送通知の場合、PDLスプーラ203は、ジョブ識別部202から受信したデータを、当該ジョブの受信データ格納領域に書き込み(S803)、「書き込みポインタ」を更新する(S804)。 When the notification type is a reception data transfer notification, the PDL spooler 203 writes the data received from the job identification unit 202 in the received data storage area of the job (S803), and updates the “write pointer” (S804). .
通知種別が、受信データの転送終了通知の場合、PDLスプーラ203は、当該ジョブの受信データ205の最後に、データの終端であることを示す「EOF」を追加して、一連の処理を終える(S805)。 When the notification type is a reception data transfer end notification, the PDL spooler 203 adds “EOF” indicating the end of data to the end of the reception data 205 of the job, and ends the series of processing ( S805).
<PDLスプーラの受信データ読み出し処理>
図10は、PDLスプーラ203において、PDLインタプリタ206に受信データ205を転送する処理プログラムを示すフローチャートである。
<Received data read processing of PDL spooler>
FIG. 10 is a flowchart showing a processing program for transferring received data 205 to the PDL interpreter 206 in the PDL spooler 203.
PDLスプーラ203は、PDLインタプリタ206から各種通知を受信すると、まず、その通知種別を判別する(S1001)。 Upon receiving various notifications from the PDL interpreter 206, the PDL spooler 203 first determines the notification type (S1001).
通知種別が、受信データの読み出し開始通知の場合、PDLスプーラ203は、PDLインタプリタ206から指定された「読み出しモード」を、当該ジョブの受信管理テーブル204にセットする(S1002)。 When the notification type is reception data read start notification, the PDL spooler 203 sets the “read mode” designated by the PDL interpreter 206 in the reception management table 204 of the job (S1002).
通知種別が、受信データの読み出し通知の場合、PDLスプーラ203は、当該ジョブの「読み出しポインタ」から受信データ205を読み出して、PDLインタプリタ206に送信する(S1003)。 When the notification type is a reception data read notification, the PDL spooler 203 reads the reception data 205 from the “read pointer” of the job and transmits it to the PDL interpreter 206 (S1003).
続いて、PDLインタプリタ206に送信したデータサイズ分「読み出しポインタ」を更新する(S1004)。 Subsequently, the “read pointer” is updated by the data size transmitted to the PDL interpreter 206 (S1004).
また、「読み出しモード」が「読み捨て」の場合は(S1005)、この時点でPDLインタプリタ206に送信した受信データ205を、受信データ格納領域から削除する(S1006)。 When the “read mode” is “discard” (S1005), the received data 205 transmitted to the PDL interpreter 206 at this time is deleted from the received data storage area (S1006).
通知種別が、受信データの読み出し終了通知の場合、「読み出しモード」によって処理が異なる(S1007)。 When the notification type is a reception end notification of received data, the process differs depending on the “read mode” (S1007).
「読み出しモード」が「読み捨て」の場合、PDLスプーラ203は、この時点で、当該ジョブの受信データ管理テーブル204を削除する(S1008)。 When the “reading mode” is “reading abandoned”, the PDL spooler 203 deletes the received data management table 204 of the job at this time (S1008).
「読み出しモード」が「バックアップ」の場合、PDLスプーラ203は、受信データ管理テーブル204は削除せず、当該ジョブの「読み出しポインタ」を、受信データ格納領域の先頭に戻す(S1009)。 When the “read mode” is “backup”, the PDL spooler 203 does not delete the received data management table 204 and returns the “read pointer” of the job to the head of the received data storage area (S1009).
これにより、PDLインタプリタ206が、受信データ205を再読み出しする際、受信データ205の先頭から解釈を開始することができる。 Thereby, when the PDL interpreter 206 re-reads the received data 205, interpretation can be started from the head of the received data 205.
図11は、PDLスプーラ203において、ジョブ制御部211から、受信データ205の削除通知を受信した時の処理プログラムを示すフローチャートである。 FIG. 11 is a flowchart illustrating a processing program when the PDL spooler 203 receives a deletion notification of the received data 205 from the job control unit 211.
PDLスプーラ203は、ジョブ制御部211から指定されたジョブの受信データ205を、受信データ格納領域から削除し、当該ジョブの受信管理テーブル204を削除する(S1101)。 The PDL spooler 203 deletes the received data 205 of the job specified from the job control unit 211 from the received data storage area, and deletes the received management table 204 of the job (S1101).
<PDLインタプリタの起動時の処理>
図12は、PDLインタプリタ206(206a、206b)において、ジョブ制御部211から処理の開始が指示された時の処理プログラムを示すフローチャートである。
<Processing at startup of PDL interpreter>
FIG. 12 is a flowchart showing a processing program when the PDL interpreter 206 (206a, 206b) is instructed to start processing by the job control unit 211.
処理開始を指示されたPDLインタプリタ206(206aまたは206b)は、まず、PDLスプーラ203に、受信データ205の読み出し開始を通知する(S1201)。 The PDL interpreter 206 (206a or 206b) instructed to start processing first notifies the PDL spooler 203 of the start of reading the received data 205 (S1201).
なお、読み出し開始通知では、ジョブ制御部211から指定された「読み出しモード」を指定する。 In the reading start notification, the “reading mode” specified by the job control unit 211 is specified.
続いて、PDLスプーラ203から、順次受信データ205を読み出し(S1202)、読み出した受信データ205を解釈してDisplay List207を生成し、RAM108に格納する(S1203)。 Subsequently, the received data 205 is sequentially read from the PDL spooler 203 (S1202), the read received data 205 is interpreted to generate a display list 207, and stored in the RAM 108 (S1203).
また、受信データ205を解釈して、ホストへの応答データ208が発生した場合は(S1204)、これをRAM108に格納するとともに、論理チャネル制御部201に通知する(S1205)。
When the received data 205 is interpreted and response data 208 to the host is generated (S1204), this is stored in the
受信データ205の終端(EOF)を検知するまで、ステップS1202〜S1205の処理を繰り返す。 The processes in steps S1202 to S1205 are repeated until the end of reception data 205 (EOF) is detected.
PDLインタプリタ206は、受信データ205の終端(EOF)を検知すると(S1206)、PDLスプーラ203に、受信データ205の読み出し終了を通知(S1207)する。 When detecting the end (EOF) of the received data 205 (S1206), the PDL interpreter 206 notifies the PDL spooler 203 of the completion of reading the received data 205 (S1207).
続いて、PDLインタプリタ206は、ジョブ制御部211に、受信データ205の解釈終了を通知する(S1208)。 Subsequently, the PDL interpreter 206 notifies the job control unit 211 of the completion of interpretation of the received data 205 (S1208).
なお、ジョブ制御部211への解釈終了通知には、ジョブの総ページ数が含まれていて、この通知を受け取ったジョブ制御部211は、当該ジョブのジョブ管理テーブル212の「総ページ数(TP)」にこの値をセットする。 The interpretation completion notification to the job control unit 211 includes the total page number of the job. Upon receiving this notification, the job control unit 211 receives the “total page number (TP)” in the job management table 212 of the job. ) ”Is set to this value.
<PDLインタプリタの停止時の処理>
図13は、PDLインタプリタ206(206a、206b)において、ジョブ制御部211から処理停止が指示された時の処理プログラムを示すフローチャートである。
<Process when PDL interpreter is stopped>
FIG. 13 is a flowchart showing a processing program when the job control unit 211 instructs the PDL interpreter 206 (206a, 206b) to stop processing.
処理停止を指示されたPDLインタプリタ206(206aまたは206b)は、まず、現在処理中の受信データ205の解釈を停止する(S1301)。 The PDL interpreter 206 (206a or 206b) instructed to stop processing first stops interpretation of the received data 205 currently being processed (S1301).
続いて、PDLスプーラ206から読み出して一時的に保持している受信データ、および、生成途中のDisplay List207を削除する(S1302)。 Subsequently, the received data read from the PDL spooler 206 and temporarily held, and the display list 207 being generated are deleted (S1302).
また、受信データ205の読み出しを終えていない場合は(S1303)、PDLスプーラ203に、受信データ205の読み出し終了を通知して(S1304)処理を終える。 If the reading of the received data 205 has not been completed (S1303), the PDL spooler 203 is notified of the end of reading of the received data 205 (S1304), and the process ends.
<ジョブ制御部のジョブ受信時の処理>
図14は、ジョブ制御部211において、ジョブ識別部202からジョブ受信通知を受けた時の処理プログラムを示すフローチャートである。
<Processing when the job control unit receives a job>
FIG. 14 is a flowchart illustrating a processing program when the job control unit 211 receives a job reception notification from the job identification unit 202.
ジョブ制御部211は、まず、ジョブ管理テーブル212を生成する(S1401)。 First, the job control unit 211 generates a job management table 212 (S1401).
<ジョブ管理テーブル>
ここで、ジョブ管理テーブル212について説明する。
<Job management table>
Here, the job management table 212 will be described.
図15は、実施例1におけるジョブ管理テーブル212の構成を示す。 FIG. 15 shows the configuration of the job management table 212 in the first embodiment.
ジョブ管理テーブル212は、「JobID」「ジョブ設定情報」「ジョブ制御情報」から構成される。 The job management table 212 includes “JobID”, “job setting information”, and “job control information”.
「JobID」は、ジョブ識別子を示し、ジョブ識別部202から通知されたJobIDがセットされる。 “JobID” indicates a job identifier, and the JobID notified from the job identification unit 202 is set.
「ジョブ設定情報」は、ジョブ識別部202が、ホスト2から受信したジョブパケットを解釈して得られたジョブに関する設定情報で、ジョブ識別部202が、ジョブ受信通知に含めてジョブ制御部211に通知する。
“Job setting information” is setting information related to a job obtained by the job identification unit 202 interpreting a job packet received from the
「ジョブ設定情報」には、例えば、「ジョブ実行モード」「PDL種別」「部数」「コレート印刷」などが含まれる。 “Job setting information” includes, for example, “job execution mode”, “PDL type”, “number of copies”, and “collate printing”.
「ジョブ実行モード」は、ジョブの実行タイミングを示し、「通常」は、受付け順に処理することを示し、「割り込み」は、現在実行中のジョブに割り込んで実行することを示し、「留め置き」は、ユーザが実行指示を与えるまで実行を待機することを示す。 “Job execution mode” indicates job execution timing, “Normal” indicates processing in the order of acceptance, “Interrupt” indicates that the job currently being executed is interrupted, and “Reserved” indicates , Indicates that the execution is waited until the user gives an execution instruction.
「PDL種別」は、ジョブに含まれるPDLデータの種別を示し、例えば、LIPSやPostScriptといったPDL名称がセットされる。 “PDL type” indicates the type of PDL data included in the job. For example, a PDL name such as LIPS or PostScript is set.
「部数」は、ジョブの印刷部数を指定する。 “Number of copies” designates the number of copies of the job.
「コレート印刷」は、ジョブをコレートで印刷するか否かを指定する。 “Collate printing” designates whether or not to print the job in collate.
「ジョブ制御情報」は、ジョブ制御部211が、ジョブを制御する際に用いる情報で、ジョブ制御部211によりセットされる。 “Job control information” is information used when the job control unit 211 controls a job, and is set by the job control unit 211.
「ジョブ制御情報」は、「ステータス」「読み出しモード」「総ページ数(TP)」「生成済ページ数(RP)」「印刷済みページ数(OP)」から構成される。 The “job control information” includes “status”, “read mode”, “total number of pages (TP)”, “number of generated pages (RP)”, and “number of printed pages (OP)”.
「ステータス」は、ジョブの実行状況を示し、状況に応じて「実行待ち」「実行中」「割り込み要求」「停止待ち」「停止中」の何れかの値がセットされる。 “Status” indicates the job execution status, and is set to any value of “waiting execution”, “running”, “interrupt request”, “waiting for stop”, and “stopping” according to the status.
「読み出しモード」は、受信データ管理テーブル204の「読み出しモード」と同じである。 The “read mode” is the same as the “read mode” in the received data management table 204.
「総ページ数(TP)」は、1ジョブの総ページ数を示す。 “Total number of pages (TP)” indicates the total number of pages of one job.
「生成済みページ数(RP)」は、画像形成出力部209でページ画像210の生成を終えたページ数を示す。 “Number of generated pages (RP)” indicates the number of pages for which the image forming output unit 209 has finished generating the page image 210.
「印刷済みページ数(OP)」は、プリンタ・エンジン40で印刷を終えたページ数を示す。
“Number of printed pages (OP)” indicates the number of pages that have been printed by the
各メンバーの使われ方や更新については、後述の処理で説明する。 How each member is used and how it is updated will be described later.
<ジョブ管理テーブルの生成処理>
図16は、従来の画像形成装置における、ジョブ管理テーブル212の生成処理プログラムを示すフローチャートである。
<Job management table generation processing>
FIG. 16 is a flowchart showing a generation processing program of the job management table 212 in the conventional image forming apparatus.
ジョブ制御部211は、まず、「ジョブ設定情報」の各メンバーに、それぞれ、ジョブ識別202から通知された値をセットする(S1601)。 First, the job control unit 211 sets the value notified from the job identification 202 to each member of the “job setting information” (S1601).
次に、「ステータス」に「実行待ち」を、「総ページ数(TP)」に「未確定」を、「生成済みページ数(RP)」「印刷済みページ数(OP)」に0をセットする(S1602)。 Next, set “Status” to “Waiting for execution”, “Total number of pages (TP)” to “Undetermined”, and “Number of generated pages (RP)” and “Number of printed pages (OP)” to 0 (S1602).
次に、ジョブ制御部211は、記憶装置(HDD)30の装着状況を判別し(S1603)、記憶装置(HDD)30が装着されている場合は、「読み出しモード」に「バックアップ」をセットする(S1606)。 Next, the job control unit 211 determines the mounting status of the storage device (HDD) 30 (S1603), and when the storage device (HDD) 30 is mounted, sets “backup” in the “read mode”. (S1606).
記憶装置(HDD)30が装着されていない場合は、「ジョブ実行モード」を「通常」に、「コレート印刷」を「OFF」に上書きし(S1604)、「読み出しモード」に「読み捨て」をセットする(S1605)。 If the storage device (HDD) 30 is not installed, the “job execution mode” is overwritten with “normal”, the “collate printing” is overwritten with “OFF” (S1604), and the “read mode” is set to “discard”. (S1605).
これは、記憶装置(HDD)30が装着されていない場合、受信データ205の格納領域が十分確保できないため、受信データ205を保持しておく動作や、これにより実現している機能(割り込み印刷、コレート印刷、留め置き印刷)を制限するためである。 This is because when the storage device (HDD) 30 is not installed, a sufficient storage area for the received data 205 cannot be secured, so the operation for holding the received data 205 and the functions realized thereby (interrupt printing, This is to limit collate printing and reserving printing.
図17は、本実施例における、ジョブ管理テーブル212の生成処理プログラムを示すフローチャートである。 FIG. 17 is a flowchart showing a generation processing program of the job management table 212 in this embodiment.
従来の画像形成装置との違いは、ステップS1703で、記憶装置(HDD)30の装着状況に加え、搭載しているPDLインタプリタ206の種別を判別するようにした点である。 The difference from the conventional image forming apparatus is that in step S1703, in addition to the mounting status of the storage device (HDD) 30, the type of the installed PDL interpreter 206 is determined.
本実施例では、PDLインタプリタの種別として、PostScriptを搭載しているか否かを判別している。 In this embodiment, it is determined whether PostScript is installed as the type of PDL interpreter.
これは、PDLによっては、ホストと対話型の印刷モードをサポートしているので、この場合、受信データ205を保持しておく動作や、これにより実現している機能(割り込み印刷、コレート印刷、留め置き印刷)を制限するためである。 This is because some PDLs support an interactive print mode with the host. In this case, the operation of holding the received data 205 and the functions realized thereby (interrupt printing, collate printing, reservation) This is for limiting printing.
再び、図14のフローチャートに戻って、ジョブ制御部211におけるジョブ受信時の処理を説明する。 Returning to the flowchart of FIG. 14 again, the processing at the time of job reception in the job control unit 211 will be described.
ステップS1401で、ジョブ管理テーブル212の生成を終えると、ジョブ制御部211は、当該ジョブの「ジョブ実行モード」に応じて、ジョブ実行キュー213への追加を判断する(S1402)。 When the generation of the job management table 212 is completed in step S1401, the job control unit 211 determines whether to add the job to the job execution queue 213 according to the “job execution mode” of the job (S1402).
「ジョブ実行モード」が「留め置き」の場合は、ユーザの指示があるまで実行しないので、この時点ではジョブ実行キュー213には追加せずに処理を終える。 When the “job execution mode” is “retained”, the process is not executed until the user gives an instruction, and at this point, the process is finished without being added to the job execution queue 213.
「ジョブ実行モード」が「通常」の場合は、当該ジョブをジョブ実行キュー213の末尾に追加する(S1403)。 If the “job execution mode” is “normal”, the job is added to the end of the job execution queue 213 (S1403).
「ジョブ実行モード」が「割り込み」の場合は、まず、ジョブ実行キュー213にジョブがあるか否かを判別し(S1404)、無い場合は、ジョブ実行キュー213の末尾(=先頭)に追加する(S1403)。 When the “job execution mode” is “interrupt”, first, it is determined whether or not there is a job in the job execution queue 213 (S1404), and when there is no job, it is added to the end (= start) of the job execution queue 213. (S1403).
ジョブ実行キュー213にジョブがある場合、次に、ジョブ実行キュー213の先頭ジョブの「ジョブ実行モード」を確認し、「割り込み」か否かを判別する(S1405)。 If there is a job in the job execution queue 213, the “job execution mode” of the first job in the job execution queue 213 is checked to determine whether it is “interrupt” (S1405).
先頭ジョブが割り込みジョブの場合、当該ジョブをジョブ実行キュー213の2番目に追加する(S1410)。 If the first job is an interrupt job, the job is added to the second job execution queue 213 (S1410).
これは、割り込みジョブに対する割り込みは、禁止するためである。 This is because interruption to an interruption job is prohibited.
先頭ジョブが割り込みジョブでない場合、次に、先頭ジョブの「ステータス」を確認し、「実行中」か否かを判別する(S1406)。 If the first job is not an interrupt job, the “status” of the first job is checked, and it is determined whether it is “being executed” (S1406).
先頭ジョブが実行中でない場合、当該ジョブをジョブ実行キュー213の先頭に追加する(S1409)。 If the head job is not being executed, the job is added to the head of the job execution queue 213 (S1409).
先頭ジョブが実行中の場合、まずこれを中断する必要があるので、先頭ジョブの「ステータス」を「割り込み要求」に変更し(S1407)、当該ジョブの「ステータス」を「停止待ち」に変更する(S1408)。 If the first job is being executed, it must first be interrupted, so the “status” of the first job is changed to “interrupt request” (S1407), and the “status” of the job is changed to “waiting for stop”. (S1408).
続いて、当該ジョブをジョブ実行キュー213の先頭に追加する(S1409)。 Subsequently, the job is added to the head of the job execution queue 213 (S1409).
<ジョブ制御部のジョブ実行処理>
図18は、ジョブ制御部211におけるジョブ実行処理プログラムのフローチャートを示す。
<Job execution processing of job control unit>
FIG. 18 shows a flowchart of a job execution processing program in the job control unit 211.
ジョブ制御部211は、まず、ジョブ実行キュー213にジョブがあるか否かを判別し(S1801)、ジョブが無ければ、ジョブが発生するまで待機する。 First, the job control unit 211 determines whether there is a job in the job execution queue 213 (S1801). If there is no job, the job control unit 211 waits until a job is generated.
ジョブがある場合は、当該ジョブのジョブ管理テーブル212の「ステータス」を確認する(S1802)。 If there is a job, the “status” in the job management table 212 of the job is confirmed (S1802).
「ステータス」が「停止待ち」の場合、ジョブ制御部211は、「ステータス」が「実行待ち」に遷移するまで待機する。 When “Status” is “Waiting for stop”, the job control unit 211 waits until “Status” shifts to “Waiting for execution”.
「ステータス」が「実行待ち」の場合、ジョブ制御部211は、当該ジョブの「ステータス」を「実行中」に変更する(S1803)。 If the “status” is “waiting for execution”, the job control unit 211 changes the “status” of the job to “being executed” (S1803).
続いて、ジョブ制御部211は、ジョブ管理テーブル212の「PDL種別」で示されるPDLインタプリタ206(206aまたは206b)、および、画像形成出力部209に処理開始を通知する(S1804)。 Subsequently, the job control unit 211 notifies the PDL interpreter 206 (206a or 206b) indicated by “PDL type” in the job management table 212 and the image formation output unit 209 of the start of processing (S1804).
なお、PDLインタプリタ206に対しては、ジョブ管理テーブル212の「読み出しモード」を指定して、処理開始を通知する。 The PDL interpreter 206 is notified of the start of processing by specifying the “read mode” in the job management table 212.
PDLインタプリタ206(206または206b)、および、画像形成出力部209の処理が開始されると、実際の印刷シーケンスに入る。 When processing of the PDL interpreter 206 (206 or 206b) and the image forming output unit 209 is started, an actual printing sequence is started.
印刷シーケンスに入ると、ジョブ制御部211は、まず、画像形成出力部209に、生成済みのページ画像210があるか否かを問い合わせる(S1805)。 In the print sequence, the job control unit 211 first inquires of the image forming output unit 209 whether there is a generated page image 210 (S1805).
生成済みのページ画像210があれば、ジョブ制御部211は、続いて、ページ画像出力処理を行う(S1806)。 If there is a generated page image 210, the job control unit 211 subsequently performs page image output processing (S1806).
<ページ画像出力処理>
図19は、ステップS1806のページ画像出力処理プログラムを示すフローチャートである。
<Page image output processing>
FIG. 19 is a flowchart showing the page image output processing program in step S1806.
ジョブ制御部211は、まず、ジョブ管理テーブル212の「生成済みページ数(RP)」をインクリメントし(S1901)、これを「印刷済みページ数(OP)」と比較して、当該ページが未印刷のページであるか否かを判別する(S1902)。 First, the job control unit 211 increments the “number of generated pages (RP)” of the job management table 212 (S1901), compares this with the “number of printed pages (OP)”, and the page is not printed. It is determined whether or not the current page is a current page (S1902).
未印刷のページの場合、ジョブ制御部211は、画像形成出力部209に、当該ページ画像210の出力を指示して、プリンタ・エンジン40で印刷を行う(S1903)。 In the case of an unprinted page, the job control unit 211 instructs the image formation output unit 209 to output the page image 210 and prints it with the printer engine 40 (S1903).
印刷済みのページの場合、ジョブ制御部211は、画像形成出力部209に、当該ページ画像210の破棄を指示して(S1907)処理を終える。 In the case of a printed page, the job control unit 211 instructs the image forming output unit 209 to discard the page image 210 (S1907) and ends the process.
これは、被割り込みジョブの再開時(割り込み復帰時)には、割り込み発生前に既に印刷したページは、重複して印刷しないようにするためである。 This is to prevent duplicate pages from being printed when the interrupted job is resumed (when interrupt is restored).
ステップS1903で1ページの印刷を終えると、ジョブ制御部211は、ジョブ管理テーブル212の「コレート印刷」を参照し、当該ジョブの設定が、コレート印刷であるか否かを判別する(S1904)。 When the printing of one page is completed in step S1903, the job control unit 211 refers to “collate printing” in the job management table 212, and determines whether the setting of the job is collate printing (S1904).
「コレート印刷」が「OFF」の場合は、ページ単位で複数部の印刷を行うので、部数で指定された回数、当該ページの印刷を行う(S1905)。 When “collate printing” is “OFF”, printing of a plurality of copies is performed in units of pages, and the page is printed the number of times specified by the number of copies (S1905).
当該ページの印刷が完了すると、ジョブ制御部211は、ジョブ管理テーブル212の「印刷済みページ数(OP)」をインクリメントし(S1906)、画像形成出力部209に、当該ページ画像210の破棄を指示して(S1907)処理を終える。 When the printing of the page is completed, the job control unit 211 increments the “number of printed pages (OP)” in the job management table 212 (S1906), and instructs the image formation output unit 209 to discard the page image 210. (S1907) and the process ends.
再び、図18のフローチャートに戻って説明する。 Returning again to the flowchart of FIG.
ステップS1805で、生成済みのページ画像210がない場合、続いて、当該ジョブのジョブ管理テーブル212を参照し、「総ページ数(TP)」が確定していて、且つ、全ページ印刷完了したか(OPとTP等しいか)を判別する(S1807)。 If there is no generated page image 210 in step S1805, the job management table 212 of the job is referred to, whether the “total number of pages (TP)” has been determined and all pages have been printed. Whether OP and TP are equal is determined (S1807).
全ページの印刷が完了していた場合、ジョブ制御部211は、ジョブ管理テーブル212の「コレート印刷」を参照し、当該ジョブの設定が、コレート印刷か否かを判別する(S1808)。 If printing of all pages has been completed, the job control unit 211 refers to “collate printing” in the job management table 212 and determines whether the setting of the job is collate printing (S1808).
「コレート印刷」が「ON」の場合は、ジョブ単位で複数部の印刷を行うので、続いて、全部数の印刷完了したか否かを判別する(S1809)。 If “collate printing” is “ON”, a plurality of copies are printed for each job, and it is subsequently determined whether or not printing of all the prints has been completed (S1809).
判別の結果、未だ印刷する部数が残っている場合は、ステップS1804に戻って、次の部数の印刷を継続する。 If it is determined that there are still copies to be printed, the process returns to step S1804 to continue printing the next number of copies.
この通知を受けたPDLインタプリタ206(206aまたは206b)が、PDLスプーラ203で保持しているジョブの受信データ205を再び先頭から読み出して解釈することにより、複数部の印刷が行われる。 Upon receiving this notification, the PDL interpreter 206 (206a or 206b) reads the job received data 205 held by the PDL spooler 203 again from the top and interprets it, thereby printing a plurality of copies.
ステップS1808で「コレート印刷」が「OFF」の場合、また、ステップS1809で全部数の印刷完了した場合、続いて、ジョブ終了処理に移行する(S1812)。 If “collate printing” is “OFF” in step S1808, or if all the prints have been completed in step S1809, the process proceeds to job end processing (S1812).
<ジョブ終了処理>
図20は、ステップS1812のジョブ終了処理プログラムのフローチャートを示す。
<Job end processing>
FIG. 20 shows a flowchart of the job end processing program in step S1812.
ジョブ制御部211は、まず、ジョブ管理テーブル212の「読み出しモード」を確認し(S2001)、「バックアップ」の場合、PDLスプーラ203にジョブ終了を通知する(S2002)。 The job control unit 211 first checks the “read mode” of the job management table 212 (S2001), and if “backup”, notifies the PDL spooler 203 of the end of the job (S2002).
この通知を受けたPDLスプーラ203は、図11のステップS1101で、当該ジョブの受信データ205、および、受信データ管理テーブル204を削除する。 Upon receiving this notification, the PDL spooler 203 deletes the received data 205 and the received data management table 204 of the job in step S1101 of FIG.
続いて、ジョブ制御部211は、ジョブ管理テーブル212の「ジョブ実行モード」を確認して、当該ジョブが割り込みジョブであるか否かを判別する(S2003)。 Subsequently, the job control unit 211 checks the “job execution mode” in the job management table 212 and determines whether or not the job is an interrupt job (S2003).
当該ジョブが割り込みジョブだった場合、ジョブ制御部211は、被割り込みジョブ(「ステータス」=「停止中」のジョブ)の「ステータス」を「実行待ち」に変更する(S2004)。 If the job is an interrupt job, the job control unit 211 changes the “status” of the interrupted job (“status” = “stopped” job) to “waiting for execution” (S2004).
最後に、ジョブ制御部211は、ジョブ実行キュー213から当該ジョブを削除して(S2005)、一連の処理を終える。 Finally, the job control unit 211 deletes the job from the job execution queue 213 (S2005), and ends a series of processing.
再び図18のフローチャートに戻って説明する。 Returning to the flowchart of FIG.
ステップS1807で、全ページの印刷が完了していなかった場合、ジョブ制御部211は、続いて、ジョブ管理テーブル212の「ステータス」を参照し、「割り込み要求」に変更されていないか確認する(S1811)。 If the printing of all pages has not been completed in step S1807, the job control unit 211 subsequently refers to the “status” in the job management table 212 and confirms whether or not it has been changed to “interrupt request” ( S1811).
「ステータス」が「割り込み要求」の場合、割り込みジョブが発生したことを示しているので、続いて、ジョブ割り込み処理へと移行する(S1812)。 If the “status” is “interrupt request”, it indicates that an interrupt job has occurred, and the process proceeds to job interrupt processing (S1812).
なお、「ステータス」が「割り込み要求」でない場合は、ステップS1805に戻って、次ページの印刷を継続する。 If the “status” is not “interrupt request”, the process returns to step S1805 to continue printing the next page.
<ジョブ割り込み処理>
図21は、ステップS1812のジョブ割り込み処理プログラムを示すフローチャートである。
<Job interrupt processing>
FIG. 21 is a flowchart showing the job interrupt processing program in step S1812.
ジョブ制御部211は、まず、当該ジョブを処理しているPDLインタプリタ206(206または206b)、および、画像形成出力部209に、処理の停止を通知する(S2101)。 First, the job control unit 211 notifies the PDL interpreter 206 (206 or 206b) that processes the job and the image formation output unit 209 that processing is stopped (S2101).
この通知を受けたPDLインタプリタ206、画像形成出力部209は、それぞれ処理中のデータ(Display List207、ページ画像210)を削除する。 Receiving this notification, the PDL interpreter 206 and the image forming output unit 209 delete the data (Display List 207, page image 210) being processed.
続いて、ジョブ制御部211は、当該ジョブのジョブ管理テーブル212の「生成済みページ数(RP)」をクリアし、「ステータス」を「停止中」に変更する。 Subsequently, the job control unit 211 clears “number of generated pages (RP)” in the job management table 212 of the job, and changes “status” to “stopped”.
最後に、ジョブ制御部211は、割り込みジョブ(「ステータス」=「停止待ち」のジョブ)の「ステータス」を「実行待ち」に変更して(S2103)、処理を終える。 Finally, the job control unit 211 changes the “status” of the interrupt job (“status” = “waiting for stop”) to “execution waiting” (S2103), and ends the process.
<留め置き印刷実行処理>
図22は、ジョブ制御部211において、留め置き印刷の開始が指示された時の処理プログラムを示すフローチャートである。
<Reserved printing execution processing>
FIG. 22 is a flowchart illustrating a processing program when the job control unit 211 is instructed to start reserved printing.
なお、この指示は、ユーザが、パネル20、または、ホスト2から、画像形成装置1に留め置かれているジョブ(JobID)を指定して、印刷開始を指示することにより発生し、機器管理部214を介してジョブ制御部211に入力される。
This instruction is generated when the user designates a job (JobID) held in the
ジョブ制御部211は、まず、指定されたJobIDに該当するジョブ管理テーブル212が存在するか否かを判別し(S2201)、存在しない場合は、何もせず処理を終える。 First, the job control unit 211 determines whether or not the job management table 212 corresponding to the designated JobID exists (S2201). If there is no job management table 212, the process ends without doing anything.
該当するジョブ管理テーブル212が存在する場合、続いて、ジョブ制御部211は、ジョブ実行キュー213にジョブがあるか否かを判別し(S2202)、ジョブがない場合は、当該ジョブをジョブ実行キュー213の先頭に追加する(S2203)。 If the corresponding job management table 212 exists, the job control unit 211 determines whether there is a job in the job execution queue 213 (S2202). If there is no job, the job control unit 211 places the job in the job execution queue. It adds to the head of 213 (S2203).
ジョブがある場合、続いて、ジョブ制御部211は、先頭ジョブのジョブ管理テーブル212を参照し、先頭ジョブが割り込みジョブ、または、「ステータス」が「実行中」であるか否かを判別する(S2204)。 If there is a job, then the job control unit 211 refers to the job management table 212 of the first job, and determines whether the first job is an interrupt job or whether the “status” is “running” ( S2204).
先頭ジョブが割り込みジョブや「ステータス」が「実行中」の場合は、当該ジョブをジョブ実行キューの2番目に追加する(S2205)。それ以外の場合は、ジョブ実行キューの先頭に追加して(S2203)処理を終える。 If the first job is an interrupt job or the “status” is “executing”, the job is added to the second job execution queue (S2205). In other cases, the job is added to the head of the job execution queue (S2203) and the process is terminated.
以上説明したように、搭載しているPDLインタプリタの種別によっては、特定の印刷機能(ホスト2から受信したPDLデータをPDLスプーラ203に保持し、割り込み印刷、コレート印刷、留め置き印刷)の動作を制限するようにした。
As described above, depending on the type of installed PDL interpreter, the operation of a specific printing function (PDL data received from the
したがって、例えば、PostScriptのように、ホストと対話型の印刷モードをサポートしているPDLインタプリタを搭載している場合、上述の動作を制限することにより、対話型の印刷モードを問題なく実行することができる。 Therefore, for example, when a PDL interpreter that supports the interactive print mode with the host is installed, such as PostScript, the interactive print mode can be executed without any problem by restricting the above-described operation. Can do.
(実施例2)
実施例1では、画像形成装置1に搭載しているPDLインタプリタの種別によって、動作を制限するようにしたが、受信したジョブ毎に動作を制限するようにしても良い。
(Example 2)
In the first embodiment, the operation is limited depending on the type of the PDL interpreter installed in the
例えば、PostScriptデータを、AppleTalkのPAP(Printer Access Protocol) Directモードで受信した場合、画像形成装置1は、ホストと対話型の印刷モードをサポートする。
For example, when PostScript data is received in AppleTalk's PAP (Printer Access Protocol) Direct mode, the
この際、画像形成装置1は、データを受信したネットワークのソケットにより、受信したジョブがPAP Directジョブであるか否かを識別できるので、これを基に、ジョブ毎に動作を制限することができる。
At this time, the
図23は、実施例2における、ジョブ管理テーブル212の構成を示す。 FIG. 23 shows the configuration of the job management table 212 in the second embodiment.
実施例1のジョブ管理テーブル(図15)との違いは、ジョブ設定情報に、当該ジョブがPAP Directジョブであるか否かを示す「PAP Direct」という情報を追加している。 The difference from the job management table (FIG. 15) of the first embodiment is that information “PAP Direct” indicating whether or not the job is a PAP Direct job is added to the job setting information.
この「PAP Direct」の情報は、以下のようにして、ジョブ管理テーブル212にセットされる。 This “PAP Direct” information is set in the job management table 212 as follows.
まず、Network I/F104が、データを受信したネットワークのソケット情報を論理チャネル制御部201に通知する。
First, the network I /
次に、論理チャネル制御部201が、ジョブ識別部202にジョブパケットを送信する際に、PAP Directで受信したジョブの場合、これを明示する。
Next, when the logical
そして、ジョブ識別部202が、ジョブ制御部211に通知するジョブ受信通知で、ジョブ設定情報に「PAP Direct」情報を付加することにより、ジョブ管理テーブル212にセットされる。 Then, the job identification unit 202 adds the “PAP Direct” information to the job setting information in the job reception notification notified to the job control unit 211, and is set in the job management table 212.
<ジョブ管理テーブルの生成処理>
図24は、実施例2における、ジョブ制御部211のジョブ管理テーブル212の生成処理プログラムを示すフローチャートである。
<Job management table generation processing>
FIG. 24 is a flowchart illustrating a generation processing program of the job management table 212 of the job control unit 211 according to the second embodiment.
ステップS2401、S2402は、それぞれ、実施例1のステップS1701、S1702と同じであるため、説明を割愛する。 Steps S2401 and S2402 are the same as steps S1701 and S1702 of the first embodiment, respectively, and thus description thereof is omitted.
ジョブ制御部211は、ステップS2403で、記憶装置(HDD)30の装着状況を確認する。 In step S2403, the job control unit 211 confirms the mounting status of the storage device (HDD) 30.
記憶装置(HDD)30が装着されている場合は、次に、ジョブ管理テーブル212の「PAP Direct」を参照し、当該ジョブがPAP Directジョブであるか否かを判別する(S2406)。 If the storage device (HDD) 30 is mounted, next, “PAP Direct” in the job management table 212 is referred to, and it is determined whether or not the job is a PAP Direct job (S2406).
当該ジョブがPAP Directジョブでない場合は、特に動作を制限する必要はないので、「読み出しモード」に「バックアップ」をセットして(S2410)処理を終える。 If the job is not a PAP Direct job, there is no particular need to limit the operation, so “backup” is set in the “read mode” (S2410), and the process ends.
当該ジョブがPAP Directジョブの場合、ジョブ制御部211は、ジョブ管理テーブル212の「コレート印刷」を「OFF」に上書きする(S2407)。
また、「ジョブ実行モード」が「留め置き」の場合は(S2408)、これを「通常」に上書きする(S2409)。
When the job is a PAP Direct job, the job control unit 211 overwrites “OFF” with “Collate printing” in the job management table 212 (S2407).
If the “job execution mode” is “retained” (S2408), it is overwritten with “normal” (S2409).
なお、PAP Directジョブを割り込みジョブとして実行する分には、特に問題ないので(割り込みジョブに対する割り込みは禁止しているので)、「ジョブ実行モード」が「割り込み」であっても、「通常」に上書きはしない。 It should be noted that there is no particular problem as long as the PAP Direct job is executed as an interrupt job (since interrupts for an interrupt job are prohibited), even if the “job execution mode” is “interrupt”, “normal” is set. Do not overwrite.
記憶装置(HDD)30が装着されていない場合や、当該ジョブがPAP Directジョブの場合、ジョブ制御部211は、「読み出しモード」に「読み捨て」をセットして(S2405)処理を終える。 If the storage device (HDD) 30 is not attached or if the job is a PAP Direct job, the job control unit 211 sets “reading mode” to “reading mode” (S2405) and ends the process.
以上の処理により、PAP Directジョブの場合、コレート印刷や留め置き印刷が指定されていても、これらの動作を制限するので、ホストとの対話型の印刷処理を問題なく実行することができる。 With the above processing, in the case of a PAP Direct job, even if collate printing or reservation printing is specified, these operations are restricted, and interactive printing processing with the host can be executed without any problem.
<ジョブ制御部のジョブ受信時の処理>
図25は、実施例2におけるジョブ制御部211のジョブ受信時の処理プログラムを示すフローチャートである。
<Processing when the job control unit receives a job>
FIG. 25 is a flowchart illustrating a processing program when a job is received by the job control unit 211 according to the second embodiment.
実施例1との違いは、ステップS2505で、受信したジョブが割り込みジョブであって、且つ、ジョブ実行キュー213にジョブがあった場合に、実施例1では、先頭ジョブが割り込みジョブの場合のみ、当該ジョブに対する割り込みを禁止している。 The difference from the first embodiment is that in step S2505, when the received job is an interrupt job and there is a job in the job execution queue 213, in the first embodiment, only when the first job is an interrupt job, Interrupting the job is prohibited.
これに対し、実施例2では、上記に加え、先頭ジョブがPAP Directジョブの場合も、当該ジョブに対する割り込みを禁止している点である。 On the other hand, in the second embodiment, in addition to the above, even when the top job is a PAP Direct job, interruption to the job is prohibited.
これにより、PAP Directジョブに対する割り込みは禁止されるので、PAPDirectジョブは、ホストとの対話型の印刷処理を問題なく実行することができる。 As a result, since an interrupt to the PAP Direct job is prohibited, the PAPDirect job can execute an interactive print process with the host without any problem.
以上説明したように、割り込み印刷、コレート印刷、留め置き印刷を行う際、受信したジョブがホストと対話型の印刷モードをサポートするジョブの場合に、これらの特定の印刷機能の動作を制限した。 As described above, when interrupt printing, collate printing, and reserve printing are performed, if the received job is a job that supports the interactive print mode with the host, the operation of these specific printing functions is limited.
したがって、AppleTalkのPAP Directモードで投入されたジョブのように、ホストと対話型の印刷モードをサポートするジョブの場合、上述の動作を制限することにより、対話型の印刷モードを問題なく実行することができる。 Therefore, in the case of a job that supports the interactive print mode with the host, such as a job submitted in the PAP Direct mode of AppleTalk, the interactive print mode can be executed without any problem by restricting the above-described operation. Can do.
なお、実施例1、2において、画像形成装置がPostScriptを搭載している場合や、PAP Directジョブの場合、「コレート印刷」を行わないようにしたが、以下のような方法を取ることもできる。 In the first and second embodiments, “collate printing” is not performed in the case where the image forming apparatus is equipped with PostScript or in the case of a PAP Direct job, but the following method may be used. .
画像形成装置1が、コレート印刷の実現方法として、本実施例で説明した受信データ205を保持しておく方法以外に、Display List207やページ画像210を保持しておく方法もサポートしていた場合、後者の方法を選択するようにすれば良い。
When the
後者の方法では、コレート印刷でも受信データ205を再度読み出すことはないので、ホストと対話型の印刷モードも問題なく実行することができる。 In the latter method, since the received data 205 is not read again even in collate printing, the interactive print mode with the host can be executed without any problem.
1 画像形成装置
2 ホスト
10 プリンタ・コントローラ
20 パネル
30 記憶装置
40 プリンタ・エンジン
101 CPU
102 CPUバス
103 パネルI/F
104 Network I/F
105 画像生成器
106 プリンタI/F
107 記憶装置I/F
108 RAM
109 ROM
201 論理チャネル制御部
202 ジョブ識別部
203 PDLスプーラ
204 受信データ管理テーブル
205 受信データ
206、206a、206b PDLインタプリタ
207 Display List
209 画像形成出力部
208 応答データ
210 ページ画像
211 ジョブ制御部
212 ジョブ管理テーブル
213 ジョブ実行キュー
214 機器管理部
DESCRIPTION OF
102 CPU bus 103 Panel I / F
104 Network I / F
105
107 Storage device I / F
108 RAM
109 ROM
201 Logical Channel Control Unit 202 Job Identification Unit 203 PDL Spooler 204 Received Data Management Table 205 Received Data 206, 206a, 206b PDL Interpreter 207 Display List
209 Image formation output unit 208 Response data 210 Page image 211 Job control unit 212 Job management table 213 Job execution queue 214 Device management unit
Claims (16)
前記記憶手段に記憶された印刷データを読み出して中間コードを生成する生成手段と、前記生成手段により生成された中間コードに基づき画像を形成する画像形成手段と、
受信した印刷データがPostScriptの印刷データでない場合、ホストから受信した印刷データの保持動作を利用した特定の印刷機能の実行を制限せず、受信した印刷データがPostScriptの印刷データの場合、ホストから受信した印刷データの保持動作を利用した特定の印刷機能の実行を制限する制限手段とを有することを特徴とする画像形成装置。 Storage means for storing print data received from the host;
Generation means for reading out print data stored in the storage means and generating an intermediate code; and image forming means for forming an image based on the intermediate code generated by the generation means;
If the received print data is not PostScript print data , execution of a specific print function using the print data holding operation received from the host is not restricted, and if the received print data is PostScript print data, it is received from the host. An image forming apparatus comprising: a restricting unit that restricts execution of a specific print function using the held print data operation.
前記生成手段は、割り込み印刷が終了した後、割り込まれたジョブの印刷データに基づき中間コードを生成することを特徴とする請求項1記載の画像形成装置。 The specific printing function using the operation of holding the print data received from the host includes interrupt printing that interrupts the job being executed and executes printing,
The image forming apparatus according to claim 1, wherein the generation unit generates an intermediate code based on print data of the interrupted job after interrupt printing is completed.
前記生成手段は、印刷データから中間コードを生成することを指定された部数に応じて複数回行うことを特徴とする請求項1記載の画像形成装置。 The specific printing function that uses the holding operation of the print data received from the host includes collate printing that performs printing of a specified number of copies in units of jobs,
The image forming apparatus according to claim 1, wherein the generation unit performs generation of an intermediate code from print data a plurality of times according to a designated number of copies.
受信した印刷データがPostScriptの印刷データでない場合、ホストから受信した印刷データの保持動作を利用した特定の印刷機能の実行を制限せず、受信した印刷データがPostScriptの印刷データの場合、ホストから受信した印刷データの保持動作を利用した特定の印刷機能の実行を制限することを特徴とする画像形成装置における制御方法。 Storage means for storing print data received from the host, generation means for reading the print data stored in the storage means to generate an intermediate code, and an image for forming an image based on the intermediate code generated by the generation means A control method in an image forming apparatus having a forming unit,
If the received print data is not PostScript print data, execution of a specific print function using the print data holding operation received from the host is not restricted, and if the received print data is PostScript print data, it is received from the host. A control method in an image forming apparatus, which restricts execution of a specific print function using a print data holding operation.
前記生成手段は、割り込み印刷が終了した後、割り込まれたジョブの印刷データに基づき中間コードを生成することを特徴とする請求項6記載の画像形成装置における制御方法。 The specific printing function using the operation of holding the print data received from the host includes interrupt printing that interrupts the job being executed and executes printing,
7. The control method for an image forming apparatus according to claim 6, wherein the generation unit generates the intermediate code based on the print data of the interrupted job after the interrupt printing is completed.
前記生成手段は、印刷データから中間コードを生成することを指定された部数に応じて複数回行うことを特徴とする請求項6記載の画像形成装置における制御方法。 The specific printing function that uses the holding operation of the print data received from the host includes collate printing that performs printing of a specified number of copies in units of jobs,
7. The control method for an image forming apparatus according to claim 6, wherein the generation unit generates the intermediate code from the print data a plurality of times according to the designated number of copies.
受信した印刷データがPostScriptの印刷データでない場合、ホストから受信した印刷データの保持動作を利用した特定の印刷機能の実行を制限せず、受信した印刷データがPostScriptの印刷データの場合、ホストから受信した印刷データの保持動作を利用した特定の印刷機能の実行を制限する工程を画像形成装置に実行させるプログラム。 Storage means for storing print data received from the host, generation means for reading the print data stored in the storage means to generate an intermediate code, and an image for forming an image based on the intermediate code generated by the generation means A program executed by an image forming apparatus having a forming unit,
If the received print data is not PostScript print data, execution of a specific print function using the print data holding operation received from the host is not restricted, and if the received print data is PostScript print data, it is received from the host. A program for causing an image forming apparatus to execute a process of restricting execution of a specific printing function using a print data holding operation.
前記生成手段は、割り込み印刷が終了した後、割り込まれたジョブの印刷データに基づき中間コードを生成することを特徴とする請求項11記載のプログラム。 The specific printing function using the operation of holding the print data received from the host includes interrupt printing that interrupts the job being executed and executes printing,
12. The program according to claim 11, wherein the generation unit generates the intermediate code based on the print data of the interrupted job after the interrupt printing is completed.
前記生成手段は、印刷データから中間コードを生成することを指定された部数に応じて複数回行うことを特徴とする請求項11記載のプログラム。 The specific printing function that uses the holding operation of the print data received from the host includes collate printing that performs printing of a specified number of copies in units of jobs,
12. The program according to claim 11, wherein the generation unit performs generation of an intermediate code from print data a plurality of times according to a designated number of copies.
前記記憶手段に記憶された印刷データを読み出して中間コードを生成する生成手段と、前記生成手段により生成された中間コードに基づき画像を形成する画像形成手段と、
受信した印刷データがホストと対話して処理を行う印刷データでない場合、ホストから受信した印刷データの保持動作を利用した特定の印刷機能の実行を制限せず、受信した印刷データがホストと対話して処理を行う印刷データの場合、ホストから受信した印刷データの保持動作を利用した特定の印刷機能の実行を制限する制限手段とを有することを特徴とする画像形成装置。 Storage means for storing print data received from the host;
Generation means for reading out print data stored in the storage means and generating an intermediate code; and image forming means for forming an image based on the intermediate code generated by the generation means;
If the received print data is not print data that is processed by interacting with the host, execution of a specific print function using the hold operation of the print data received from the host is not restricted, and the received print data interacts with the host In the case of print data to be processed, an image forming apparatus comprising: a restricting unit that restricts execution of a specific print function using a print data holding operation received from a host.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012193141A JP5259003B2 (en) | 2012-09-03 | 2012-09-03 | Image forming apparatus, control method in image control method, and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012193141A JP5259003B2 (en) | 2012-09-03 | 2012-09-03 | Image forming apparatus, control method in image control method, and program |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2008014461A Division JP5159335B2 (en) | 2008-01-25 | 2008-01-25 | Image forming apparatus, control method in image control method, and program |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2013092252A Division JP5669879B2 (en) | 2013-04-25 | 2013-04-25 | Printing apparatus, printing apparatus control method, and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2012254640A JP2012254640A (en) | 2012-12-27 |
| JP5259003B2 true JP5259003B2 (en) | 2013-08-07 |
Family
ID=47526664
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2012193141A Expired - Fee Related JP5259003B2 (en) | 2012-09-03 | 2012-09-03 | Image forming apparatus, control method in image control method, and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5259003B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6938877B2 (en) * | 2016-09-21 | 2021-09-22 | 富士フイルムビジネスイノベーション株式会社 | Image forming device and program |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11198488A (en) * | 1998-01-09 | 1999-07-27 | Fuji Xerox Co Ltd | Printer and control thereof |
| JP2003072160A (en) * | 2001-08-30 | 2003-03-12 | Kyocera Corp | Image processing apparatus, data defect detection system, and data defect detection program |
| JP2005174045A (en) * | 2003-12-12 | 2005-06-30 | Sharp Corp | Source program conversion device, source program conversion method, source program conversion program, and program recording medium |
| JP5031223B2 (en) * | 2005-10-26 | 2012-09-19 | キヤノン株式会社 | Information processing apparatus, print control method, program, and storage medium |
| JP2007130887A (en) * | 2005-11-10 | 2007-05-31 | Canon Inc | Printing apparatus and control method thereof |
| GB2435976A (en) * | 2006-03-09 | 2007-09-12 | Medicsight Plc | Digital medical image processing for CAD detection of abnormalities |
-
2012
- 2012-09-03 JP JP2012193141A patent/JP5259003B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2012254640A (en) | 2012-12-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3720740B2 (en) | Distributed printing system, distributed printing control method, storage medium, and program | |
| JP3265573B2 (en) | Printing system and printer | |
| JP5159335B2 (en) | Image forming apparatus, control method in image control method, and program | |
| JP3344268B2 (en) | Printing control device | |
| JP4947231B1 (en) | Print control apparatus and program | |
| JP5259003B2 (en) | Image forming apparatus, control method in image control method, and program | |
| US8934121B2 (en) | Coordinated, distributed, reusable document component respository | |
| EP2546783B1 (en) | Recovery from an out-of-storage condition at a raster data spool. | |
| JP5669879B2 (en) | Printing apparatus, printing apparatus control method, and program | |
| JP4227394B2 (en) | Printing system | |
| JP3743184B2 (en) | Printing system, printer and print server | |
| JP4164479B2 (en) | Print control program, processing method, storage medium, information processing apparatus, and printing system | |
| JP2006209309A (en) | Printing system | |
| JP5799968B2 (en) | Printing system | |
| JP4011044B2 (en) | PRINT CONTROL DEVICE, PRINT CONTROL METHOD, PROGRAM, AND RECORDING MEDIUM | |
| JP3962720B2 (en) | Information processing apparatus, information processing method, computer program, and computer-readable storage medium | |
| JP6180255B2 (en) | Job history processing system and job history processing method | |
| JP2006178767A (en) | Printing reservation system and its control method | |
| JP7067112B2 (en) | Information processing equipment, information processing methods, programs and image processing equipment | |
| JP4143598B2 (en) | Management method in information processing apparatus, information processing apparatus, program, and storage medium | |
| JPH08267877A (en) | Printer device and control method thereof | |
| JP5105011B1 (en) | Print control apparatus, image forming system, and program | |
| JP2004341891A (en) | Printing system | |
| JP2016007848A (en) | Control device, processing method, and program | |
| JP2006056072A (en) | Printing system and print job control method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130205 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130307 |
|
| 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: 20130326 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130423 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160502 Year of fee payment: 3 |
|
| R151 | Written notification of patent or utility model registration |
Ref document number: 5259003 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
| LAPS | Cancellation because of no payment of annual fees |