JP3619038B2 - 印刷ジョブ生成装置、方法、記憶媒体 - Google Patents

印刷ジョブ生成装置、方法、記憶媒体 Download PDF

Info

Publication number
JP3619038B2
JP3619038B2 JP36476098A JP36476098A JP3619038B2 JP 3619038 B2 JP3619038 B2 JP 3619038B2 JP 36476098 A JP36476098 A JP 36476098A JP 36476098 A JP36476098 A JP 36476098A JP 3619038 B2 JP3619038 B2 JP 3619038B2
Authority
JP
Japan
Prior art keywords
print
printing
print job
sheets
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP36476098A
Other languages
English (en)
Other versions
JP2000187580A (ja
Inventor
康弘 鯨井
安生 森
孝治 中桐
智 西川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP36476098A priority Critical patent/JP3619038B2/ja
Publication of JP2000187580A publication Critical patent/JP2000187580A/ja
Application granted granted Critical
Publication of JP3619038B2 publication Critical patent/JP3619038B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、1ジョブにつき一連の印刷後処理(シート処理)を1回行う印刷後処理装置(シート処理装置)を有する印刷装置に対して、文書処理プログラム等に基づいて図形、イメージ、文字、表(表計算等を含む)等が混在した文書を印刷する複数の印刷命令から成る印刷ジョブを送出する印刷ジョブ生成装置および印刷ジョブ生成方法、記憶媒体に関する。
【0002】
【従来の技術】
ステープル機能を有する複写機、プリンタなどの印刷装置(ハードウェア)において、サドルステッチと呼ばれるシート処理機能を有する印刷装置がある。サドルステッチとは、用紙を2つ折りにした際に、折り目に沿った位置にステープルを打つ方法で、ハードウェア内でページを製本の順序に並べて出力する場合に主に使用されている。
【0003】
また、複写機をプリンタとして利用するために、プリンタ用のボードを搭載することが可能である。これにより、コンピュータからの印刷においても、本体側に製本印刷機能をもつハードウェアに関してサドルステッチを併用することが可能である。
【0004】
印字したシートの量が多いと、シート処理装置の中綴じ及び中折りの能力が不十分であることから、印刷又はコピーが不可能になっていた。
【0005】
そこで、この種の課題を解決するサドルステッチを備えた画像出力装置として、従来下記の技術が知られている。
【0006】
特開平7−157178公報記載の技術では、シート処理装置で中綴じすべきシートの枚数が、そのシート処理装置で一度に処理可能なシート枚数よりも多い場合に、正しい頁配列で中綴じした冊子を作成できるよう、画像出力装置において、出力するシートの枚数とシート処理装置が処理可能なシート枚数とを比較して、処理可能なシート枚数に基づいて頁配列を入れ替えて正しい順序で中綴じした冊子を作成できる画像出力装置について記載されている。
【0007】
【発明が解決しようとする課題】
しかし、サドルステッチをはじめとする印刷後処理が、複写あるいは印刷時1ジョブに対して1回という制限を持つ印刷装置(印刷後処理装置)では、複数冊子に分けて出力することができなかった。複数冊子に分けて出力することができない場合、1度にステープル及び中折りできる用紙枚数は限られており、枚数によっては処理できず、エラーを起こす可能性があった。
【0008】
また、このような印刷装置では、印刷ジョブで複数部数指定された場合、1ジョブに対し1回という制限から、印刷1部ごとにサドルステッチされず、複数部数まとめてサドルステッチされてしまう可能性があった。
【0009】
本発明は上記問題点を鑑みてなされたものであり、ハードウェアの制限を吸収しながら、ユーザの求める印刷後処理機能を提供することを目的とする。
【0010】
【課題を解決するための手段】
上記目的を達成するために、本発明は次のような構成からなる。すなわち、1つの印刷ジョブから画像形成された印刷媒体に対して行える印刷後処理の実行可能な回数が1回と限定されている印刷装置に接続されたホストコンピュータとしての印刷ジョブ生成装置であって、アプリケーションからの描画命令を中間コードデータでスプールするスプール手段と、前記スプール手段によってスプールされた中間コードデータの印刷ページ数を取得する第1取得手段と、前記印刷装置において印刷後処理を行える上限枚数を取得する第2取得手段と、前記第1取得手段で取得された印刷ページ数と前記第2取得手段で取得された上限枚数から前記印刷装置において印刷後処理が行えるか否かを判断する印刷後処理判断手段と、前記印刷後処理判断手段において印刷後処理が行えないと判断された場合、製本印刷の単位である枚数単位を設定する設定手段と、前記スプール手段によってスプールされている中間コードデータから、前記設定手段によって設定された前記枚数単位に配置される中間コードデータを前記印刷後処理可能な印刷ジョブを生成すべく出力する出力手段と前記出力手段によって前記枚数単位に配置される中間コードデータが出力された場合、印刷終了命令を発行する印刷終了命令発行手段と、前記スプール手段によってスプールされている全ての中間コードデータを出力したか否かを判定し、全ての中間コードデータが出力されていないと判定された場合、前記印刷終了命令発行手段の発行に応じて印刷開始命令を発行する印刷開始命令発行手段と、前記印刷開始命令および前記印刷終了命令の間に出力される前記中間コードデータから前記印刷後処理可能な印刷ジョブを生成する印刷ジョブ生成手段を有し、前記印刷ジョブ生成手段は前記アプリケーションからの一連の描画命令に対して複数の前記印刷後処理可能な印刷ジョブを生成することを特徴とする。
【0011】
前記設定手段は、前記第2取得手段によって取得された上限枚数以下の枚数単位を設定することを特徴とする。
【0012】
前記1つの印刷ジョブに対して複数部数の印刷が指定されていた場合、前記印刷終了命令発行手段および前記印刷開始命令発行手段は、指定された前記複数部数および枚数単位に応じて前記印刷終了命令および前記印刷開始命令を複数回発行し、前記印刷ジョブ生成手段は1部の製本印刷結果を構成する複数の印刷ジョブを生成する順序で、前記複数部数に応じて繰り返し前記複数の印刷ジョブを生成することを特徴とする。
【0013】
前記1つの印刷ジョブの製本印刷が終了する前に、前記設定手段によって設定された枚数単位を変更可能であることを特徴とする。
【0014】
前記製本印刷の分冊出力方法を選択する選択手段と、前記選択手段によって選択された分冊出力方法に応じて、前記出力手段によって出力される中間コードデータの出力順序が変更する変更手段を有することを特徴とする。
【0015】
前記印刷後処理可能な印刷ジョブを前記印刷装置に送出する送出手段を有することを特徴とする。
【0016】
1つの印刷ジョブから画像形成された印刷媒体に対して行える印刷後処理の実行可能な回数が1回と限定されている印刷装置に接続されたホストコンピュータとしての印刷ジョブ生成装置の制御方法であって、アプリケーションからの描画命令を中間コードデータでスプールするスプールステップと、前記スプールステップによってスプールされた中間コードデータの印刷ページ数を取得する第1取得ステップと、前記印刷装置において印刷後処理を行える上限枚数を取得する第2取得ステップと、前記第1取得ステップで取得された印刷ページ数と前記第2取得ステップで取得された上限枚数から前記印刷装置において印刷後処理が行えるか否かを判断する印刷後処理判断ステップと、前記印刷後処理判断ステップにおいて印刷後処理が行えないと判断された場合、製本印刷の単位である枚数単位を設定する設定ステップと、前記スプールステップによってスプールされている中間コードデータから、前記設定ステップによって設定された前記枚数単位に配置される中間コードデータを前記印刷後処理可能な印刷ジョブを生成すべく出力する出力ステップと
前記出力ステップによって前記枚数単位に配置される中間コードデータが出力された場合、印刷終了命令を発行する印刷終了命令発行ステップと、前記スプールステップによってスプールされている全ての中間コードデータを出力したか否かを判定し、全ての中間コードデータが出力されていないと判定された場合、前記印刷終了命令発行ステップの発行に応じて印刷開始命令を発行する印刷開始命令発行ステップと、前記印刷開始命令および前記印刷終了命令の間に出力される前記中間コードデータから前記印刷後処理可能な印刷ジョブを生成する印刷ジョブ生成ステップを有し、前記印刷ジョブ生成ステップは前記アプリケーションからの一連の描画命令に対して複数の前記印刷後処理可能な印刷ジョブを生成することを特徴とする。
【0017】
前記設定ステップは、前記第2取得ステップによって取得された上限枚数以下の枚数単位を設定することを特徴とする。
【0018】
前記1つの印刷ジョブに対して複数部数の印刷が指定されていた場合、前記印刷終了命令発行ステップおよび前記印刷開始命令発行ステップは、指定された前記複数部数および枚数単位に応じて前記印刷終了命令および前記印刷開始命令を複数回発行し、前記印刷ジョブ生成ステップは1部の製本印刷結果を構成する複数の印刷ジョブを生成する順序で、前記複数部数に応じて繰り返し前記複数の印刷ジョブを生成することを特徴とする。
【0019】
前記1つの印刷ジョブの製本印刷が終了する前に、前記設定ステップによって設定された枚数単位を変更可能であることを特徴とする。
【0020】
前記製本印刷の分冊出力方法を選択する選択ステップと、前記選択ステップによって選択された分冊出力方法に応じて、前記出力ステップによって出力される中間コードデータの出力順序が変更する変更ステップを有することを特徴とする。
【0021】
前記印刷後処理可能な印刷ジョブを前記印刷装置に送出する送出ステップを有することを特徴とする。
【0022】
1つの印刷ジョブから画像形成された印刷媒体に対して行える印刷後処理の実行可能な回数が1回と限定されている印刷装置に対する印刷ジョブを生成する印刷ジョブ生成プログラムが格納された記憶媒体であって、アプリケーションからの描画命令を中間コードデータでスプールするスプールステップと、前記スプールステップによってスプールされた中間コードデータの印刷ページ数を取得する第1取得ステップと、前記印刷装置において印刷後処理を行える上限枚数を取得する第2取得ステップと、前記第1取得ステップで取得された印刷ページ数と前記第2取得ステップで取得された上限枚数から前記印刷装置において印刷後処理が行えるか否かを判断する印刷後処理判断ステップと、前記印刷後処理判断ステップにおいて印刷後処理が行えないと判断された場合、製本印刷の単位である枚数単位を設定する設定ステップと、前記スプールステップによってスプールされている中間コードデータから、前記設定ステップによって設定された前記枚数単位に配置される中間コードデータを前記印刷後処理可能な印刷ジョブを生成すべく出力する出力ステップと
前記出力ステップによって前記枚数単位に配置される中間コードデータが出力された場合、印刷終了命令を発行する印刷終了命令発行ステップと、前記スプールステップによってスプールされている全ての中間コードデータを出力したか否かを判定し、全ての中間コードデータが出力されていないと判定された場合、前記印刷終了命令発行ステップの発行に応じて印刷開始命令を発行する印刷開始命令発行ステップと、前記印刷開始命令および前記印刷終了命令の間に出力される前記中間コードデータから前記印刷後処理可能な印刷ジョブを生成する印刷ジョブ生成ステップを有し、前記印刷ジョブ生成ステップは前記アプリケーションからの一連の描画命令に対して複数の前記印刷後処理可能な印刷ジョブを生成することを特徴とする。
【0023】
前記設定ステップは、前記第2取得ステップによって取得された上限枚数以下の枚数単位を設定することを特徴とする。
【0024】
前記1つの印刷ジョブに対して複数部数の印刷が指定されていた場合、前記印刷終了命令発行ステップおよび前記印刷開始命令発行ステップは、指定された前記複数部数および枚数単位に応じて前記印刷終了命令および前記印刷開始命令を複数回発行し、前記印刷ジョブ生成ステップは1部の製本印刷結果を構成する複数の印刷ジョブを生成する順序で、前記複数部数に応じて繰り返し前記複数の印刷ジョブを生成することを特徴とする。
【0025】
前記1つの印刷ジョブの製本印刷が終了する前に、前記設定ステップによって設定された枚数単位を変更可能であることを特徴とする。
【0026】
前記製本印刷の分冊出力方法を選択する選択ステップと、前記選択ステップによって選択された分冊出力方法に応じて、前記出力ステップによって出力される中間コードデータの出力順序が変更する変更ステップを有することを特徴とする。
【0027】
前記印刷後処理可能な印刷ジョブを前記印刷装置に送出する送出ステップを有することを特徴とする。
【0038】
【発明の実施の形態】
以下、本発明を適用するのに好適である一実施形態について説明するが、本発明は以下の実施形態に限定されるものではない。
【0039】
図1は、本発明の実施形態の一つであるプリンタ制御システムの構成を説明するブロック図である。なお、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであっても、LAN、WAN等のネットワークを介して接続が為され処理が行われるシステムであっても本発明を適用できる。
【0040】
同図において、ホストコンピュータ3000は、ROM103のプログラム用ROMあるいは外部メモリ111に記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表(表計算等を含む)等が混在した文書処理を実行するCPU101を備え、システムバス104に接続される各デバイスをCPU101が総括的に制御する。また、このROM103のプログラム用ROMあるいは外部メモリ111には、CPU101の制御プログラムであるオペレーティングシステムプログラム(以下OS)等を記憶し、ROM103のフォント用ROMあるいは外部メモリ111には上記文書処理の際に使用するフォントデータ等を記憶し、ROM103のデータ用ROMあるいは外部メモリ111には上記文書処理等を行う際に使用する各種データを記憶する。RAM102は、CPU101の主メモリ、ワークエリア等として機能する。
【0041】
キーボードコントローラ(KBC)105は、キーボード109や不図示のポインティングデバイスからのキー入力を制御する。CRTコントローラ(CRTC)106は、CRTディスプレイ(CRT)110の表示を制御する。107はディスクコントローラ(DKC)で、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタ制御コマンド生成プログラム(以下プリンタドライバ)等を記憶するハードディスク(HD)、フロッピーディスク(FD)等の外部メモリ111とのアクセスを制御する。プリンタコントローラ(PRTC)108は、双方向性インターフェース(インターフェース)121を介してプリンタ1500に接続されて、プリンタ1500との通信制御処理を実行する。
【0042】
なお、CPU101は、例えばRAM102上に設定された表示情報RAMへのアウトラインフォントの展開(ラスタライズ)処理を実行し、CRT110上でのWYSIWYGを可能としている。また、CPU101は、CRT110上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行える。
【0043】
プリンタ1500は、CPU112により制御される。プリンタCPU112は、ROM113のプログラム用ROMに記憶された制御プログラム等あるいは外部メモリ114に記憶された制御プログラム等に基づいてシステムバス115に印刷部インターフェース116を介して接続される印刷部(プリンタエンジン)117へ出力情報としての画像信号を出力し、印刷部から出力されたシートに対しサドルステッチなどのシート処理を行うシート処理部123へ、シート処理部インターフェース122を介してシート処理信号を出力する。また、このROM113のプログラムROMには、CPU112の制御プログラム等を記憶する。ROM113のフォント用ROMには上記出力情報を生成する際に使用するフォントデータ等が記憶され、ROM113のデータ用ROMには、ハードディスク等の外部メモリ114がないプリンタの場合には、ホストコンピュータ上で利用される情報等が記憶されている。
【0044】
CPU112は入力部118を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ3000に通知できる。RAM119は、CPU112の主メモリや、ワークエリア等として機能するRAMで、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。なお、RAM119は、出力情報展開領域、環境データ格納領域、NVRAM等に用いられる。前述したハードディスク(HD)、ICカード等の外部メモリ114は、メモリコントローラ(MC)120によりアクセスを制御される。外部メモリ114は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、124は操作パネルで操作のためのスイッチおよびLED表示器等が配されている。
【0045】
また、前述した外部メモリ114は1個に限らず、複数個備えられ、内蔵フォントに加えてオプションカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。更に、図示しないNVRAMを有し、操作パネル124からのプリンタモード設定情報を記憶するようにしてもよい。
【0046】
図2は、プリンタ等の印刷装置が直接接続されているか、あるいはネットワーク経由で接続されているホストコンピュータにおける典型的な印刷処理の構成図である。
【0047】
アプリケーション201、グラフィックエンジン202、プリンタドライバ203、およびシステムスプーラ204は、外部メモリ111に保存されたファイルとして存在し、実行される場合にOSやそのモジュールを利用するモジュールによってRAM102にロードされ実行されるプログラムモジュールである。また、アプリケーション201およびプリンタドライバ203は、外部メモリ111のFDや不図示のCD−ROM、あるいは不図示のネットワークを経由して外部ディスク111のHDに追加することが可能となっている。外部メモリ111に保存されているアプリケーション201はRAM102にロードされて実行されるが、このアプリケーション201からプリンタ1500に対して印刷を行う際には、同様にRAM102にロードされ実行可能となっているグラフィックエンジン202を利用して出力(描画)を行う。
【0048】
グラフィックエンジン202は、印刷装置ごとに用意されたプリンタドライバ203を同様に外部メモリ111からRAM102にロードし、アプリケーション201の出力をプリンタドライバ203に設定する。そして、アプリケーション201から受け取るGDI(Graphic Device Interface)関数からDDI(Device Driver Interface)関数に変換して、プリンタドライバ203へDDI関数を出力する。プリンタドライバ203は、グラフィックエンジン202から受け取ったDDI関数に基づいて、プリンタが認識可能な制御コマンド、例えばPDL(Page Description Language)に変換する。変換されたプリンタ制御コマンドは、OSによってRAM2にロードされたシステムスプーラ204を経てインタフェース121経由でプリンタ1500へ印刷データとして出力される仕組みとなっている。
【0049】
本発明の一実施形態である印刷システムは、図2で示したプリンタとホストコンピュータからなる印刷システムに加えて、更に図3に示すように、アプリケーションからの印刷データを一旦中間コードデータでスプールする構成を有する。
【0050】
図3は、図2のシステムを拡張したもので、グラフィックエンジン202からプリンタドライバ203へDDI関数を送る際に、一旦中間コードからなるスプールファイル303を生成する構成をとる。図2のシステムでは、アプリケーション201が印刷処理から開放されるのはプリンタドライバ203がグラフィックエンジン202からのすべてのDDI関数をプリンタの制御コマンドへ変換し終った時点である。これに対して、図3のシステムでは、スプーラ302がすべてのDDI関数を中間コードデータに変換し、スプールファイル303に出力した時点である。通常、後者の方が短時間で済む。また、図3で示すシステムにおいては、スプールファイル303の内容に対して加工することができる。これによりアプリケーションからの印刷データに対して、拡大縮小や、複数ページを1ページに縮小して印刷する等、アプリケーションの持たない機能を実現する事ができる。
【0051】
これらの目的のために、図2のシステムに対し、図3の様に中間コードデータでスプールする様、システムの拡張がなされてきている。なお、印刷データの加工を行うためには、通常プリンタドライバ203が提供するウインドウから設定を行い、プリンタドライバ203がその設定内容をRAM102上あるいは外部メモリ111上に保管する。
【0052】
以下、図3の詳細を説明する。図に示す通り、この拡張された処理方式では、グラフィックエンジン202からのDDI関数をディスパッチャ301が受け取る。ディスパッチャ301がグラフィックエンジン202から受け取ったDDI関数が、アプリケーション201からグラフィックエンジン202へ発行されたGDI関数の場合には、ディスパッチャ301は外部メモリ11に格納されているスプーラ302をRAM2にロードし、プリンタドライバ203ではなくスプーラ302へDDI関数を送付する。
【0053】
スプーラ302は受け取ったDDI関数を中間コードに変換してスプールファイル303に出力する。また、スプーラ302は、プリンタドライバ203に対して設定されている印刷データに関する加工設定をプリンタドライバ203から取得してスプールファイル303に保存する。なお、スプールファイル303は外部メモリ111上にファイルとして生成するが、RAM2上に生成されても構わない。更にスプーラ302は、外部メモリ111に格納されているスプールファイルマネージャ304をRAM102にロードし、スプールファイルマネージャ304に対してスプールファイル303の生成状況を通知する。その後、スプールファイルマネージャ304は、スプールファイル303に保存された印刷データに関する加工設定の内容に従って印刷を行えるか判断する。
【0054】
スプールファイルマネージャ304がグラフィックエンジン202を利用して印刷を行えると判断した際には、外部メモリ111に格納されているデスプーラ305をRAM102にロードし、デスプーラ305に対して、スプールファイル303に記述された中間コードの印刷処理を行うように指示する。
【0055】
デスプーラ305はスプールファイル303に含まれる中間コードをスプールファイル303に含まれる加工設定の内容に従って加工し、GDI関数に変換する。そして、グラフィックエンジン202でGDI関数からDDI関数に変換して出力する。
【0056】
ディスパッチャ301がグラフィックエンジン202から受け取ったDDI関数がデスプーラ305からグラフィックエンジン202へ発行されたGDI関数を変換したDDI関数の場合には、ディスパッチャ301はスプーラ302ではなく、プリンタドライバ203にDDI関数を送る。
【0057】
プリンタドライバ203はプリンタ制御コマンド(PDLなど)を生成し、システムスプーラ204経由でプリンタ1500に出力する。
【0058】
このように、図3の印刷処理システムでは、一旦中間コードに変換した印刷ジョブをデスプーラによってGDI関数に変換したのち、再びグラフィックエンジンに戻す構成になっている。したがって、図3の印刷処理システムは、301乃至305の構成をプリンタドライバ毎に変える必要はないという利点もある。
【0059】
図4は、サドルステッチと併用するのに好適な、製本印刷とその実現結果について説明した一例である。
【0060】
製本印刷とは、紙の両面に出力された印刷結果を2つ折りにしたときに、ページ順序があうように印刷ページを並べ替えて印刷された401もしくは402のようなものである。
【0061】
この製本印刷された401、402は、何らかの方法で403、404のように2つ折りすれば正しいページ順になるようになっている。製本印刷の設定は、例えば図18に示すようなダイアログで「製本印刷」をチェックすることによって指定可能である。
【0062】
製本印刷には、大きく分けて以下に述べる2つの方法、「印刷される全ページから製本の枚数単位を求めて印刷する方法」と「任意の指定された枚数を製本の枚数単位として印刷する方法」とがある。
【0063】
ただし、ここでいう製本の枚数単位とは、製本印刷で出力された用紙を何枚単位でまとめて2つ折りにすればよいかをあらわす。
【0064】
印刷される全ページから製本の枚数単位を求めて印刷する方法の場合は、図4の印刷物401のような出力を得て、それをまとめて2つ折りにして本とする。
【0065】
任意の指定された枚数を製本の枚数単位として印刷する方法の場合は、図4の印刷物402のような出力を得て、それを枚数単位ごとに2つ折りにし、更にそれを並べて本とする。
【0066】
また、図5に示すように、製本印刷によって出力される製本の体裁には以下の場合がある。
「左から昇順にページ配置(左開き)」の場合
「右から昇順にページ配置(右開き)」の場合
【0067】
また、印刷されるページが横向きの場合も、ページの回転を行うだけで、ページの順序は変わらない。
【0068】
これらの設定は、例えば図19に示すようなダイアログ「開き方向」から設定可能である。
【0069】
本実施形態の印刷システムでは、以上のような製本印刷の種々のやり方に加えて適切なサドルステッチ(シート処理)を行いながら印刷出力を行う。
【0070】
本発明におけるサドルステッチは、例えば図18の「中とじ」のチェックボックスをONにすることによって実現可能である。
【0071】
以下、通常のサドルステッチ(シート処理)を行わない製本印刷の処理について詳しく述べた後、シート処理が1ジョブに対し1回という制限をもつ印刷装置に対し、サドルステッチ(シート処理)する場合について、本発明の一実施形態について述べる。
【0072】
図6は、製本印刷の方法として、「印刷される全ページから製本の枚数単位を求めて印刷する方法」と「任意の指定された枚数を製本の枚数単位として印刷する方法」のどちらで行うかを決定するのを示すフローチャートである。
【0073】
ステップ601において、ユーザが製本印刷の設定をしていればステップ602へ進み、していなければ通常の印刷を行うとしてステップ607へ進む。
【0074】
ステップ602において、製本印刷の枚数単位に関する設定と印刷体裁に関する設定を取得する。
【0075】
印刷枚数単位の設定には以下の選択肢がある。
「印刷される全ページから製本の枚数単位を求めて製本印刷」
「任意の指定された枚数を製本の枚数単位として製本印刷」
【0076】
また、印刷体裁の設定には以下の選択肢がある。
「左開き」
「右開き」
【0077】
ステップ603において、製本印刷の枚数単位に全ページが選択されていればステップ604へ進み、選択されていなければステップ605へ進む。
【0078】
ステップ604において、印刷ページ全体から製本の枚数単位を求めて製本印刷を行う。この処理の詳細については後述する。
【0079】
ステップ605において、製本印刷の枚数単位に特定の枚数が選択されていればステップ606へ進み、選択されていなければステップ607へ進む。
【0080】
ステップ606において、指定された枚数単位で製本印刷を行う。この処理の詳細については後述する。
【0081】
ステップ607において、通常の印刷処理を行う。
【0082】
なお、製本印刷の設定や枚数単位の設定は、ホストコンピュータ3000からのオペレータ入力などで行われる。
【0083】
以下に図6におけるステップ604に関する処理(印刷される全ページから製本の枚数単位を求めて製本印刷)を図7、図8を用いて詳しく説明する。
【0084】
ステップ701において、印刷体裁を取得する。
【0085】
ステップ702において、印刷ページ数を取得する。この印刷ページはアプリケーションからの印刷データがすべてスプール終了した時点で取得可能である。
【0086】
ステップ703において、製本印刷の進捗カウンタを0にセットする。このカウンタが偶数のときに印刷されるページは織り込まれたときに内側になるように印刷され、奇数のときに印刷されるページは織り込まれたときに外側になるように印刷される。(最初の印刷面は、進捗カウンタが0なので内側になる。)
【0087】
ステップ704において、使用する紙の枚数を以下の式によって計算する。
【0088】
用紙枚数 = ページ数 ÷ 4 (小数点以下切り上げ)
【0089】
ステップ705において、2つ折りにしたとき一番内側になる用紙の内側に印刷されるページ2ページ分を以下の式を用いて計算する。この2ページを基に以降印刷されるページを算出する。
【0090】
基本ページ1=用紙枚数×2+1
基本ページ2=用紙枚数×2
【0091】
例えば、アプリケーションから50ページの印刷データが送られてきた場合は、製本印刷の結果使用する枚数は50÷4=13枚(小数点以下切り上げ)となり、2つ折りにした時に織り込まれる用紙に印刷される基本ページは基本ページ1=13×2+1=27ページと、基本ページ2=13×2=26ページとなる。図4の例では、印刷物401の最も内側に折り込まれる面である第11ページと第10ページとがこれらに相当する。
【0092】
ステップ706において、製本印刷処理が終了したなら処理を終え、終わっていなかったらステップ707へ進む。具体的には、進捗カウンタが用紙枚数×2に等しければ処理終了とする。
【0093】
ステップ707において、印刷要求を行う2ページを以下の式で計算する。
【0094】
印刷ページ1=基本ページ1+進捗カウンタ
印刷ページ2=基本ページ2−進捗カウンタ
例えば上の50ページ製本印刷の場合は、2回目の印刷面に含まれるのは、27+1=28ページと26−1=25ページとなる。
【0095】
以降進捗カウンタが増加するたびに29ページと24ページ、30ページと23ページ・・となっていく。
【0096】
また、始めは進捗カウンタが0なので基本ページが最初の印刷ページとなる。
【0097】
ステップ708において、計算された印刷ページ1がアプリケーションからの印刷ページ数より大きいかどうか判定し、大きくなった場合は余白扱いとなり、ステップ709へ進む。大きくなければステップ710へスキップする。
【0098】
ステップ709において、印刷ページ1は余白が配置されるので、例えば余白をあらわすページ番号0を代入する。
【0099】
ステップ710およびステップ711において、印刷体裁(左開きか右開きか)および進捗カウンタから(折り込んだ際に内側にくるか外側にくるか)から計算された2ページの配置を決定する。
【0100】
具体的には、内側/外側の判定は、進捗カウンタ(それまでに出された印刷要求回数)が偶数の場合内側、奇数の場合外側となる。一番最初の印刷面は、それまでに出された印刷要求回数が0回(進捗カウンタが0)なので内側になる。以降、外、内、外・・と続く。
ステップ710およびステップ711による判定の結果、次のように処理が進む。
【0101】
左開きで折り込み内側になるページの場合ステップ713へ進む。
【0102】
左開きで折り込み外側になるページの場合ステップ712へ進む。
【0103】
右開きで折り込み外側になるページの場合ステップ713へ進む。
【0104】
右開きで折り込み内側になるページの場合ステップ712へ進む。
【0105】
ステップ712において、印刷ページ1を左側に、印刷ページ2を右側に配置する。
【0106】
ステップ713において、印刷ページ1を右側に、印刷ページ2を左側に配置する。
【0107】
ステップ710からステップ713の処理は、例えば26ページの裏面には25ページを、27ページの裏面には28ページを印刷するための処理である。
【0108】
ステップ714において、印刷進捗カウンタを1増加させる。
【0109】
ステップ715において、デスプーラ305に対して次の印刷要求が可能かどうかを判定し、可能ならばステップ716へ進み、不可能なら次の印刷要求が可能になるまで待つ。
【0110】
ステップ716において、配置完了した印刷ページに対して記録用紙1面分の印刷要求を行う。
【0111】
ステップ717において、次のページの出力要求が可能かどうか判定し、可能ならばステップ706へ進み、可能でないならば可能になるまで待つ。
【0112】
以上のようにして印刷出力された印刷物は、重ねた状態にして2つ折りにするだけで製本することができる。
【0113】
次に、図6におけるステップ606に関する処理(任意の指定された枚数を製本の枚数単位として製本印刷)を図9、図10を用いて詳しく説明する。
【0114】
ここでいう枚数単位とは何枚毎に織り込んで製本印刷を行うかを表している。この単位をブロックと称する。例えば、アプリケーションからの40ページの印刷データを2枚単位で製本印刷する場合、2つ折りされた2枚の用紙を1つのブロックとして、1つのブロックには8ページ分のデータが配置されることになる。よって、印刷データ全体を5ブロックに分けて製本印刷することになる。
【0115】
ステップ801において、印刷体裁および枚数単位を取得する。
【0116】
ステップ802において、印刷終了ページを0にセットする。
【0117】
ステップ803において、製本印刷処理が終わりかどうか判定し、終了ならば処理を終え、終了でなければステップ804へ進む。
【0118】
ステップ804において、製本印刷処理可能になる印刷ページ(製本印刷可能判定ページ)を取得する。ステップ804で求められる製本印刷可能判定ページは、ブロック内の最後のページとなる。
【0119】
初めのブロックにおける製本印刷可能判定ページは以下によって求められる。
【0120】
製本印刷可能判定ページ=枚数単位×4
第2ブロック以降については、製本印刷可能判定ページは以下によって求められる。
【0121】
製本印刷可能判定ページ=前のブロックの製本印刷可能判定ページ+枚数単位×4
例えば、40ページ2枚単位の製本印刷の場合、最初のブロックにおける製本印刷可能判定ページは2×4=8ページとなり、次のブロックは8+2×4=16ページとなる。以降24ページ、32ページ、40ページとなっていく。
【0122】
ステップ805において、スプーラ303において、スプールが終了しているページ数を取得する。
【0123】
ステップ806において、製本印刷処理可能になる印刷ページ(製本印刷可能判定ページ)までスプール終了しているかあるいは全ページのスプールが終了しているかどうかを判定し、処理可能ならばステップ807へ進み、可能でなければステップ805へ戻る。
【0124】
ステップ807において、進捗カウンタを0にセットする。
【0125】
ステップ808において、2つ折りにしたとき一番内側になる用紙の内側に印刷されるページ2ページ分を以下の式を用いて計算する。この2ページを元に以降印刷されるページを算出する。
【0126】
基本ページ1=製本印刷可能判定ページ−枚数単位×2+1
基本ページ2=製本印刷可能判定ページ−枚数単位×2
【0127】
ステップ809において、現在のブロックの印刷要求が終了したか判定し、終了ならばステップ803へすすみ、終了していなければステップ810へ進む。具体的には、進捗カウンタが枚数単位×2に等しくなった場合にブロックの印刷要求が終了したと判定する。
【0128】
ステップ810において、印刷要求を行う2ページを以下の式で計算する。
【0129】
印刷ページ1=基本ページ1+進捗カウンタ
印刷ページ2=基本ページ2−進捗カウンタ
始めは進捗カウンタが0なので基本ページが最初の印刷ページとなる。
【0130】
ステップ811において、計算された印刷ページ1または印刷ページ2がアプリケーションからの印刷ページ数より大きいかどうか判定し、大きくなった印刷ページ1又は印刷ページ2は余白扱いとなり、ステップ812へ進む。大きくなければステップ813へスキップする。
【0131】
ステップ812において、印刷ページは余白が配置されるので、例えば余白をあらわすページ番号0を代入する。
【0132】
ステップ813およびステップ814において、印刷体裁(左開きか右開きか)および進捗カウンタから(折り込んだ際に内側にくるか外側にくるか)から計算された2ページの配置を決定する。
【0133】
具体的には、内側外側の判定は、進捗カウンタ(印刷要求回数)が偶数の場合内側、奇数の場合外側となる。
【0134】
左開きで折り込み内側になるページの場合ステップ816へ進む。
【0135】
左開きで折り込み外側になるページの場合ステップ815へ進む。
【0136】
右開きで折り込み外側になるページの場合ステップ816へ進む。
【0137】
右開きで折り込み内側になるページの場合ステップ815へ進む。
【0138】
ステップ815において、印刷ページ1を左側に、印刷ページ2を右側に配置する。
【0139】
ステップ816において、印刷ページ1を右側に、印刷ページ2を左側に配置する。
【0140】
ステップ817において、印刷進捗カウンタを1増加させる。
【0141】
ステップ818において、次の印刷要求が可能かどうかを判定し、可能ならばステップ819へ進み、不可能なら次の印刷要求が可能になるまで待つ。
【0142】
ステップ819において、配置完了した印刷ページに対して記録用紙1面分の印刷要求を行う。
【0143】
ステップ820において、次のページの出力要求が可能かどうか判定し、可能ならばステップ809へ進み、可能でないならば可能になるまで待つ。
【0144】
以上の手順により発行された印刷要求に対して、プリンタ1500により両面印刷を行えば、印刷出力された用紙を所望の枚数単位ごとに二つ折りにして並べるだけで、製本された印刷物を作成することができる。
【0145】
また、アプリケーションからの全ページをスプール終了してから任意枚数単位の製本印刷処理を行う場合において、その最終ブロックに印刷されるページ数が少ない場合、最終ブロックに限り指定枚数より少ない枚数単位で製本印刷を行うことによって、使用する用紙を少なくすることが可能である。
【0146】
例えば、残りページ数が3ページに対して枚数単位が2の場合、5ページ分が余白になってしまうが、これを1枚単位に変更した場合、余白は1ページ分ですみ、用紙の枚数が1枚少なくてすむ。
【0147】
図11を用い、最終ブロックの枚数調整処理について詳しく説明する。
【0148】
図11に示した処理は図9におけるステップ806とステップ807の間において、ステップ806での判定がYESとなった場合に処理することによって上述の用紙の枚数の削減が達成される。
【0149】
ステップ901において、全ページのスプールが終了したかどうか(印刷ジョブの最終ページのスプールが完了したかどうか)判定し、終了していれば902に進み、進んでいなければ処理を抜ける。
【0150】
ステップ902において、残りページ数を以下の式で計算する。
【0151】
残りページ=アプリケーションからの印刷ページ−現在の製本印刷可能判定ページ
【0152】
ステップ903において、現在設定されている枚数単位におけるブロックに収まるページ数と、残りページ数を比較して、残りページが少なければステップ904へすすみ、そうでなければ調整処理は必要ないとして処理を抜ける。
【0153】
ステップ904において、残りページがおさまるもっとも小さい製本の枚数単位を以下の式によって求める。
【0154】
新しい製本枚数単位=残りページ÷4(小数点以下切り上げ)
【0155】
こうして得られた新しい製本枚数単位を用いて、ステップ807以降で最後のブロックを印刷すれば、白紙のページは多くても3ページで済み、記録用紙を無駄にせず、また、記録面数も減るため、印刷出力に要する時間も短くなる。
【0156】
これは、印刷ページに対して必要以上に大きい枚数単位が指定された場合にも適用される。例えば、アプリケーションからの30ページの印刷データに対して10枚単位での製本印刷が指定された場合、実際に必要な用紙枚数は8枚なので、枚数単位は10枚から8枚へ調整される。これはページ全体で製本印刷した場合と同じ出力結果になる。
【0157】
次に、上記に述べたような3通りの製本印刷において、サドルステッチ機能を付加した場合の処理について説明する。
【0158】
サドルステッチ処理において、サドルステッチ可能なシート処理装置の制限以上の印刷枚数があるときや、任意の枚数単位で分冊したときのサドルステッチ処理など、分冊してサドルステッチ処理する必要がある。
【0159】
図12のように、分冊の方法は、分冊方法1として、全ページをまとめて製本印刷して内側のものから所定の枚数ずつ(上限枚数又は任意の枚数)分冊する方法(1204)と、分冊方法2として、任意の指定された枚数を製本の枚数単位として製本印刷したものをそのままサドルステッチ処理して分冊する方法(1205)の、大きく分けて2つの方法がある。具体的な方法については、図14乃至17に示されるフローチャートの様なものになる。図14乃至17の説明は後述する。
【0160】
サドルステッチ処理方法の選択には、製本印刷処理を示す図6のステップ604において、図14のステップ1401以下の処理を行い、ステップ606において図16のステップ1601以下の処理を行うことによって、サドルステッチの方法が選択される。
【0161】
図13は印刷設定情報の一例で、製本印刷の方法、開き方向、最終ブロックの用紙節約を行うかどうかのフラグ、サドルステッチ(中とじ)をするかしないかのフラグ、ジョブ分割をするかしないかのフラグ、サドルステッチ可能な上限用紙枚数、その他の印刷設定が格納されている。これらの設定はスプールファイル303に格納されている。
【0162】
また、指定枚数毎に製本印刷を行う印刷方法においては、サドルステッチの上限枚数と比較を行い、指定された製本枚数単位がサドルステッチの上限枚数を超えないように数値を変更してもよいし、プリンタドライバ203において上限枚数以上の設定を許さないようにしておいてもよい。
【0163】
さらに、ジョブ分割についても、プリンタドライバ203において内部的に定数値を格納してもよいし、必要ならば図18などのようなダイアログにチェックボックスを設けることによってユーザの選択を要求してもよい。
【0164】
図14は、全ページをまとめて製本印刷する場合(ステップ604)においてサドルステッチ処理を付加した場合のフローチャートである。
【0165】
ステップ1401において、印刷体裁を取得する。
【0166】
ステップ1402において、サドルステッチを行うならば、ステップ1403へ進み、サドルステッチを行わないならば、ステップ1404の前述したサドルステッチを行わない通常の製本印刷を行う。
【0167】
ステップ1403において、接続されている印刷装置が1ジョブに対して1回のサドルステッチ処理しか行えないという制限を持つ場合など、ジョブ分割が必要ならば、ステップ1405へ進み、ジョブ分割を行わないならば、ステップ1404へ進み、サドルステッチ処理において、用紙枚数が制限枚数を超えた場合の処理はハードウェアの仕様にゆだねることとし、処理を抜ける。
【0168】
ステップ1405において、印刷ジョブの印刷部数を、部数カウンタIに代入する。この部数カウンタは、複数部数の印刷指定があるとき分冊処理を繰返すために用いられる。また、後述するが、分冊処理時において、通常デスプーラによってGDI関数に変換された中間コードは順次スプーラファイルから消去されるが、この部数カウンタが1より大きいときは、中間コードは消去しない。ただし部数カウンタが1のときはGDI関数に変換されたものから順次消去する。
【0169】
ステップ1406において、印刷ページ数を取得する。
【0170】
ステップ1407において、印刷装置でシート処理可能な上限枚数を取得する。
【0171】
ステップ1408において、印刷ページ数が、上限枚数×4より大きければステップ1411に進み、上限枚数×4以下ならばステップ1409に進む。
【0172】
ステップ1409において、印刷ジョブの処理するシートは上限枚数以下であるので、全ページまとめてサドルステッチするかユーザの設定により選択する。全ページまとめてサドルステッチするならステップ1410に進み、通常の製本印刷を行い、まとめてサドルステッチを行う。全ページまとめてサドルステッチしないならば、ステップ1411に進む。
【0173】
ステップ1411において、分冊出力方法を選択し、ステップ1412で枚数単位を設定(上限枚数を使用してもよいし、上限枚数以下の任意の枚数単位を設定できるようにしてもよい)し、ステップ1413の分冊方法1にするか、もしくは、ステップ1414で枚数単位を設定(上限枚数を使用してもよいし、上限枚数以下の任意の枚数単位としてもよい)し、ステップ1415の分冊方法2に変更する。なお、図示しないが、通常の製本印刷を行うという方法を選択できるようにしてもよい。
【0174】
この処理方法の選択については、内部的に決定しておいても良いし、必要ならば図18などのようなダイアログにチェックボックスを設けることによってユーザの選択を要求してもよい。
【0175】
ステップ1416において、部数カウンタIを1減らす。
【0176】
ステップ1417において、部数カウンタが0であるかどうか調べ、0ならば印刷を終了し、0でないならば、ステップ1411に戻り同じ分冊処理を繰り返す。
【0177】
次にステップ1413の分冊方法1について、図15、図8を参照しながら説明する。
【0178】
ステップ1501において、進捗カウンタを0にする。
【0179】
ステップ1502において、使用する紙の枚数を以下の式によって計算する。
【0180】
用紙枚数 = ページ数 ÷ 4 (小数点以下切り上げ)
【0181】
ステップ1503において、2つ折りにしたとき一番内側になる用紙の内側に印刷されるページ2ページ分を以下の式を用いて計算する。この2ページを基に以降印刷されるページを算出する。
【0182】
基本ページ1=用紙枚数×2+1
基本ページ2=用紙枚数×2
【0183】
ステップ1504においてブロックが終了していれば、ステップ1505に進み、終了していなければ、ステップ1507に進む。具体的には、進捗カウンタが(枚数単位×2)の整数倍に等しい、もしくは印刷するページがなくなれば、ブロック終了とする。
【0184】
ステップ1505において印刷ジョブを切る。印刷ジョブの分割を行うことで、印刷装置においてサドルステッチ処理を行うことができる。具体的には、ジョブの分割はデスプーラ305によって、システムスプーラ204に印刷終了命令が発行され、直後に印刷開始命令を発行することによって行われる。
【0185】
ステップ1506において、印刷処理が終了したなら処理を終え、終わっていなかったらステップ1507に進む。
【0186】
ステップ1507において、印刷要求を行う2ページを以下の式で計算し、図8のステップ708以降に進む。
【0187】
印刷ページ1=基本ページ1+進捗カウンタ
印刷ページ2=基本ページ2−進捗カウンタ
【0188】
ステップ708以降の説明は、前述の製本印刷処理での図8の説明とほぼ同様であるので、処理が異なる部分だけ説明する。通常の製本印刷処理では、ステップ716において、印刷要求を行った際(中間コードをGDI関数に変換した際)に、スプールファイル303の中間コードを消去していくが、部数カウンタIが1より大きいときは中間コードを消去しない。ただし、部数カウンタIが1のときは、中間コードを消去していく。
【0189】
ステップ1415の分冊方法2は、次に述べる任意の指定された枚数を製本の枚数単位として製本印刷のステップ1611分冊方法2と同じであるので、分冊方法2については後述する。
【0190】
図16は、最終ブロックの用紙節約のON/OFFにかかわらず、任意の指定枚数単位の製本印刷におけるサドルステッチ処理(ステップ606)について示したフローチャートである。
【0191】
ステップ1601において、印刷体裁及び枚数単位を取得する。
【0192】
ステップ1602において、サドルステッチを行うならば、ステップ1603へ進み、サドルステッチを行わないならば、通常の製本印刷であるとして以降の処理を行わずに1604に進む。
【0193】
ステップ1603において、接続されている印刷装置が1ジョブに対して1回のサドルステッチ処理しか行えないという制限を持つ場合など、ジョブ分割が必要ならば、ステップ1605へ進み、ジョブ分割を行わないならば、ステップ1604へ進み、サドルステッチ処理において、用紙枚数が制限枚数を超えた場合の処理はハードウェアの仕様にゆだねることとし、処理を抜ける。
【0194】
ステップ1605において、印刷ジョブの印刷部数を、部数カウンタIに代入する。この部数カウンタは、分冊処理を繰返すために用いられる。また、後述するが、分冊処理時において、通常デスプーラによってGDI関数に変換された中間コードは順次スプーラファイルから消去されるが、この部数カウンタが1より大きいときは、中間コードは消去しない。部数カウンタが1のときはGDI関数に変換されたものから順次消去する。
【0195】
ステップ1606において、サドルステッチ処理可能な上限枚数を取得する。
【0196】
ステップ1607において、枚数単位が上限枚数より大きければステップ1608に進み、枚数単位が上限枚数以下ならばステップ1610の分冊方法2に進む。
【0197】
ステップ1608において、枚数単位を上限枚数以下に変更するかどうか決定する。変更するならばステップ1610に進み、変更しないならばステップ1609にて通常の製本印刷を行う。
【0198】
なお、あらかじめ枚数単位が上限枚数を超えないよう設定範囲に制限を設けておけば、ステップ1607乃至1609は必要ないことは言うまでもない。
【0199】
ステップ1610において、分冊方法2の処理を行う。
【0200】
ステップ1611において、部数カウンタIを1減らす。
【0201】
ステップ1612において、部数カウンタが0であるかどうか調べ、0ならば印刷を終了し、0でないならば、ステップ1610に戻り同じ分冊処理を繰り返す。
【0202】
次に、ステップ1610および、ステップ1415における分冊方法2について、図17、図10、図11を参照しながら説明する。
【0203】
ステップ1701において、製本印刷処理が終わりかどうか判定し、終了ならば処理を終え、終了でなければステップ1702に進む。
【0204】
ステップ1702において、製本印刷処理可能になる印刷ページ(製本印刷可能判定ページ)を取得する。ステップ1702で求められる製本印刷可能判定ページは、ブロック内の最後のページとなる。
【0205】
初めのブロックにおける製本印刷可能判定ページは以下によって求められる。
【0206】
製本印刷可能判定ページ=枚数単位×4
【0207】
第2ブロック以降については、製本印刷可能判定ページは以下によって求められる。
【0208】
製本印刷可能判定ページ=前のブロックの製本印刷可能判定ページ+枚数単位×4
【0209】
ステップ1703において、スプーラ303において、スプールが終了しているページ数を取得する。
【0210】
ステップ1704において、製本印刷処理可能になる印刷ページ(製本印刷可能判定ページ)までスプール終了しているかあるいは全ページのスプールが終了しているかどうかを判定し、処理可能ならばステップ1705へ進み、可能でなければステップ1703へ戻る。
【0211】
ステップ1705において、進捗カウンタを0にセットする。
【0212】
ステップ1706において、2つ折りにしたとき一番内側になる用紙の内側に印刷されるページ2ページ分を以下の式を用いて計算する。この2ページを元に以降印刷されるページを算出する。
【0213】
基本ページ1=製本印刷可能判定ページ−枚数単位×2+1
基本ページ2=製本印刷可能判定ページ−枚数単位×2
【0214】
ステップ1707において、現在のブロックの印刷要求が終了したか判定し、終了ならばステップ1708へすすみ、終了していなければステップ1709へ進む。具体的には、進捗カウンタが枚数単位×2に等しくなった場合にブロックの印刷要求が終了したと判定する。
【0215】
ステップ1708において印刷ジョブを切る。印刷ジョブの分割を行うことで、印刷装置においてサドルステッチ処理を行うことができる。具体的には、ジョブの分割はデスプーラ305によって、システムスプーラ204に印刷終了命令が発行され、直後に印刷開始命令を発行することによって行われる。
【0216】
ステップ1709において、印刷要求を行う2ページを以下の式で計算し、図10のステップ811以降に進む。
【0217】
印刷ページ1=基本ページ1+進捗カウンタ
印刷ページ2=基本ページ2−進捗カウンタ
【0218】
ステップ811以降の説明は、前述の製本印刷処理での図10の説明とほぼ同様であるので、処理が異なる部分だけ説明する。通常の製本印刷処理では、ステップ819において、印刷要求を行った際(中間コードをGDI関数に変換した際)に、スプールファイル303の中間コードを消去していくが、部数カウンタIが1より大きいときは中間コードを消去しない。ただし、部数カウンタIが1のときは、中間コードを消去していく。
【0219】
また、最終ブロックで用紙節約をする場合は、前述の製本印刷の場合の説明と同様に、図11のステップ901乃至ステップ904の処理を、図17のステップ1704とステップ1705の間で行うことにより、用紙節約をすることができる。
【0220】
なお、本実施形態では、ブロックの処理が終わってステップ1708にて印刷ジョブを分割したが、ステップ1704で処理可能な枚数(分冊するページ分)スプールした時点であらかじめジョブを分割する構成にしてもよい。その場合、ステップ1708は不必要となる。
【0221】
以上の処理により、最終ブロックの用紙節約のON/OFFにかかわらず、指定枚数単位の製本印刷において、ハードウェアの制限を考慮に入れながらサドルステッチ処理を行うことが可能となり、ユーザの求めるステープル機能を提供可能となる。
【0222】
さらに、印刷設定に対して複数部数印刷が指定されていた場合、サドルステッチ処理を部数に対応した回数行うことになる。その際、部の終わり毎にジョブ分割要求を行うことによって、複数部の製本印刷においても正しくサドルステッチを行うことができる。
【0223】
〔実施形態2〕
前述した実施形態では、印刷ジョブに複数部数の印刷指定がしてある場合、図14、図16に示したように、中間コードからGDI関数に変換する処理(分冊処理)を複数回繰返し行うことにより、複数部数に対する印刷ジョブの分割を行った。
【0224】
しかし、前述の実施形態では、複数部数印刷に対する印刷ジョブの分割を行う際、中間コードからGDI関数に変換する処理を複数回行うので、処理の時間が余分にかかってしまうという問題がある。また、この変換処理を行っている時間があるため、分割した印刷ジョブ間に、プリンタに対して他のホストコンピュータなどからの印刷ジョブが割り込む可能性が高くなるという問題点もある。
【0225】
複数部数の印刷指定により、印刷ジョブの分割を行う他の実施形態を次に示す。
【0226】
図23は、図3の印刷システムに加えて、306に示したGDI関数スプールファイルを有する印刷システムの構成図である。
【0227】
図24及び図25は、図23の印刷システムにおける複数部数指定がある場合の印刷処理のフローチャートを示したものである。
【0228】
図24は、印刷される全ページから製本の枚数単位を求めてサドルステッチ処理する方法である。図24において、ステップ2401乃至ステップ2415は、図14のステップ1401乃至ステップ1415とほぼ同様であり詳しい説明は省略する。図14と異なる部分について説明すると、分冊方法1又は分冊方法2において、印刷要求先はGDI関数スプールファイルであり、中間コードからGDI関数に変換された印刷ジョブは、一旦GDI関数スプールファイルに保存される。また、分冊方法1又は分冊方法2において、ジョブの分割はデスプーラ305によって、GDI関数スプールファイル306に印刷終了命令が発行され、直後に印刷開始命令を発行することによって行われる。
【0229】
ステップ2416において、部数カウンタIが1以上ならばステップ2417へ進み、部数カウンタが0ならばステップ2419に進む。
【0230】
ステップ2417において、GDI関数スプールファイルからGDI関数を読み出しグラフィックエンジンに出力する。
【0231】
ステップ2418において、部数カウンタIを1減らす。
【0232】
ステップ2419において、GDI関数スプールファイルに一旦保存されていたGDI関数を消去し、処理を終了する。
【0233】
図25は、任意の指定された枚数を製本の枚数単位としてサドルステッチ処理する方法である。図25において、ステップ2501乃至ステップ2510は、図16のステップ1601乃至ステップ1610とほぼ同様であり詳しい説明は省略する。図16と異なる部分について説明すると、分冊方法2において、印刷要求先はGDI関数スプールファイルであり、中間コードからGDI関数に変換された印刷ジョブは、一旦GDI関数スプールファイルに保存される。また、分冊方法2において、ジョブの分割はデスプーラ305によって、GDI関数スプールファイル306に印刷終了命令が発行され、直後に印刷開始命令を発行することによって行われる。
【0234】
ステップ2511において、部数カウンタIが1以上ならばステップ2512へ進み、部数カウンタが0ならばステップ2514に進む。
【0235】
ステップ2512において、GDI関数スプールファイルからGDI関数を読み出しグラフィックエンジンに出力する。
【0236】
ステップ2513において、部数カウンタIを1減らす。
【0237】
ステップ2514において、GDI関数スプールファイルに一旦保存されていたGDI関数を消去し、処理を終了する。
【0238】
実施形態2では、図24及び図25に示したように、印刷部数に複数部数の印刷指定がしてある場合、中間コードから変換されたGDI関数を一旦保存し、そのGDI関数を複数回出力することによって、印刷ジョブの分割を行う他の実施形態を示した。実施形態2では、ジョブの分割はデスプーラ305によって、GDI関数スプールファイル306に印刷終了命令が発行され、直後に印刷開始命令を発行することによって行われる。
【0239】
以上のように、実施形態2においては、GDI関数スプールファイル306を用いることで、複数部数印刷の場合、2部め以降の中間コードからGDI関数への変換の処理時間が不要になるので、印刷の処理時間の短縮が可能になる。また、複数部数もしくは分冊で、分割した印刷ジョブを一旦GDI関数スプールファイルに保存してから、プリンタに送信するので、分割した印刷ジョブ間に、他のホストコンピュータなどからの印刷ジョブが割り込むという可能性を低減することが出来る。また、印刷部数が1部数のときもGDI関数スプールファイルに一旦保存することで、分冊処理で分割された印刷ジョブに対しても、他のホストコンピュータからの印刷ジョブが割り込む可能性を低減することが出来る。
【0240】
また、実施形態2では、中間コードから変換されたGDI関数は、全て一旦GDI関数スプールファイルに保存したが、他のホストコンピュータからの印刷ジョブが割り込む可能性が高くなってもよければ、印刷部数が1部のときはGDI関数スプールファイルに保存しない構成にしてもよい。
【0241】
図22は、プリンタ、複写機などの画像形成装置が備えるシート処理装置の一例を示すサドルステッチ装置の断面図である。
【0242】
シート処理装置2は、図22に示すように入り口フラッパ3を備えており、この入り口フラッパ3は、中心軸3aを中心に揺動可能に構成されており、入口ソレノイドの電源ON、OFFによる作動によって製本モード/スタックモードの切換えを行っている。
【0243】
一方、図22において、4は排紙ガイドであり、この排紙ガイド4の下流にはスタッカ排出ローラ5とスタッカ排出コロ6とが配置されている。7はスタッカトレイであり、スタッカ排出ローラ5から排出されたシートを積載するものである。そして、シート処理の際、スタックモードが選択された時、画像形成装置(プリンタ、複写機など)1により画像が形成され、排出されたシートはフラッパ3により排紙ガイド4に導かれ、スタッカ排出ローラ5及びスタッカ排出コロ6によりスタッカトレイ7上に排出され、積載されるようになっている。
【0244】
また、図22において、11,12はガイド、13は第1の搬送ローラであり、この第1の搬送ローラ13の対向面には搬送ローラ13に押圧されている搬送コロ14が配置されている。15,16は上部及び下部切換フラッパであり、これら上部及び下部切換フラッパ15,16には、上部及び下部切換ソレノイドが係合しており、これら上部及び下部切換ソレノイドを電気的信号でON、OFFすることにより、上部及び下部切換フラッパ15,16は図22に示す1点鎖線と実線の2つの位置を取るように構成されている。この上部及び下部切換えフラッパ15,16は、本シート後処理装置2で処理される紙サイズによって切換えられ、本装置内で積載整合されているシート束が重ねられる順序が常に一定になるよう、つまり、後から積載される紙は常に束の左上方に重なるようになっている。
【0245】
また、図22において、17a、22aは、第2及び第3の搬送ローラであり、これら第2及び第3の搬送ローラ17a,22aの対向面には、シートを搬送ローラ17a,22aに当接させる弾性部材17d,22dが配設されている。なお、これら弾性部材17d,22dは弾性ローラ17a、22aに弾性的に付勢された状態で当接している。また、この搬送ローラ17a,22aは同期して回転するようになっている。
【0246】
ここで、これら第2及び第3の搬送ローラ17a,22aは、第1の搬送ローラ13により送られて来るシートを受けて、さらに搬送し、シート先端が先端ストッパ23に達したことが、センサ33によって検知されると停止するようになっている。
【0247】
18は、後で説明するステイプラユニットであり、シート束を針綴じするものである。このステイプラユニット18は、回転軸18aを中心に揺動可能に支持された上側の針打ち込み手段としての針打ち込み部(フォーミング部)と、駆動ユニット及びアンビル部(折り曲げ部)とで構成されており、フレームに固定された支持板により幅よせ部材24a,24bで整合されたシート束のセンターに対し左右対称位置に配置されている。
【0248】
20,21はステイプラユニット18の下流側に配置されたガイドである。
【0249】
24a,24bは、幅よせ部材(整合手段)であって、シートを両サイドから押えてシートを整合するためのものである。24dはステッピングモータで構成されたる幅よせモータであって、その出力軸上には、ピニオンギヤ24cが固着している。なお、24eはフォトインタラプタで構成された幅よせホームセンサであり、この幅よせホームセンサ24eは、幅よせ部材24a,24bが整合しうる最大シート束の幅よりも所定量外側に待避した時に、幅よせ部材24aの一部に形成された図示しないフラグを検知する位置に配置されている。そして、この幅よせ部材24a,24bは、幅寄せモータ24dにより駆動されて、ストッパ23に搬入されたシートを整合するようになっている。
【0250】
また、23は先端ストッパ(位置決め手段)であり、ガイド20,21間に進入してきたシート束の先端を受ける部材である。先端ストッパ23には、コロ23aが回転自在に取り付けられており、ガイド20,21に沿って矢印A方向に移動してシートの、ステイプラユニット18で針打ちするときの位置決めと、折りの位置決めを行う位置に移動するように構成されている。また、このストッパ23の両端にはラック23eが構成されており、このラック23eはストッパモータの駆動を伝達するピニオンギヤ23bと係合している。なお、この先端ストッパ23には、シート束先端を検知する先端ストッパセンサ33が配設されている。また、33はストッパ部先端のシート束の有無を検知するストッパセンサであり、既述したようにこのストッパセンサ33により、シート先端が先端ストッパ23に達したことが検知されると第2及び第3の搬送ローラ17a,22aは、停止するようになっている。
【0251】
25はシート束の折りに使用される突き出しユニットであり、折りを行う前はガイド12,21に沿って先端ストッパ23に向かうシートに触れることのないようガイド12,21より離れた退避位置に移動している。26,27は圧接している一対の折り手段である折りローラ、28は排出ガイドである。ここで、この排出ガイド28は、折りローラ26,27から排出されるシート束を排出手段を形成する排出ローラ30、排出コロ31のニップ間に案内するためのものである。
【0252】
29は排出センサであり、折りローラ26,27により、折られながら搬送されるシート束の先端、後端を検知するものである。32は積載トレイであり、排出ローラ30、排出コロ31により排出されたシート束を略水平方向の積載面に積載するようになっている。
【0253】
図22では、サドルステッチ装置の一例を示したが、プリンタ・複写機などの印刷装置内部にこのサドルステッチ装置と同様の機構を備えている場合も同様であることは言うまでもない。
【0254】
また、本実施形態では、1つの印刷ジョブに対し、1回のサドルステッチ処理を行う印刷装置について述べたが、本発明は、サドルステッチ以外にも、中折り機能だけを有する印刷装置や、ステープル機能を有する印刷装置や、パンチ穴(穴あけ)機能を有する印刷装置などで、1つのジョブに対し、一連のシート処理が1回(サドルステッチ、中折り、ステープル、穴あけなどの少なくとも一つの処理を行う一連の印刷後処理を1ジョブに対し1回)のみ実行可能な印刷装置に、印刷ジョブを送出する印刷ジョブ生成装置に適用できることは言うまでもない。
【0255】
なお、本発明は、複数の機器(例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(ワープロ、複写機、プリンタ、ファクシミリ装置など)に適用してもよい。
【0256】
また、前記説明した本発明に係る印刷ジョブ生成プログラムは、外部からインストールされるプログラムによって、印刷ジョブ生成プログラムが稼動可能なPCの構成を示すブロック図である図1におけるホストコンピュータ3000と同等の構成を持つPCによって遂行されてもよい。その場合、図20のように、前記実施形態の機能を実現するソフトウェアのプログラムコードを記録した2002のような記憶媒体をシステムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【0257】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0258】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、DVD−RAM、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
【0259】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0260】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0261】
図21は、CD−ROMなどの記憶媒体のメモリマップの一例を示す図である。2101はディレクトリ情報を記憶している領域で、インストールプログラムを記憶している領域2102及び印刷ジョブ生成プログラム2103を記憶している領域の位置を示している。本発明を構成する印刷ジョブ生成プログラムが図1に示したホストコンピュータ3000と同等の構成を持つPCにインストールされる際には、まず領域2102に記憶しているインストールプログラムがシステムにロードされ、CPU101によって実行される。次に、CPU101によって実行されるインストールプログラムが、印刷ジョブ生成プログラムを記憶している領域2103からネットワークデバイス管理プログラムを読み出して、ハードディスク111に格納する。
【0262】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードを格納することになるが、簡単に説明すると、図3のモジュール構成例に示す様な各モジュールを記憶媒体に格納することになる。
【0263】
また、本発明の目的は、前述した実施形態における様々な機能を実現するソフトウェアのプログラムコードを、図20に示すように、送出装置2004、例えばHTTPサーバやFTPサーバなどから送出してもらい、それを2005に示されるネットワーク又は公衆回線又は無線などを介して受け取り、そのシステム或は装置のコンピュータ(又はCPU,MPU)がそのプログラムコードを実行することによっても達成されることは言うまでもない。
【0264】
この場合、送出装置から送出されたプログラムコード自体が、前述した実施形態における機能を実現することになり、よって、そのプログラムコードを送出する送出装置は本発明を構成することになる。
【0265】
【発明の効果】
本発明の請求項1に記載のホストコンピュータとしての印刷ジョブ生成装置によれば、アプリケーションからの一連の描画命令から複数の印刷後処理可能な印刷ジョブを生成することが可能になるので、1つの印刷ジョブに対して印刷後処理の実行可能な回数が1回と限定されている印刷装置であっても、ユーザが所望とする印刷後処理を行うことができる。
なお、請求項7に記載の印刷ジョブ生成方法、および請求項13に記載の記憶媒体においても同様の効果を得ることができる。
【0266】
本発明の請求項2に記載のホストコンピュータとしての印刷ジョブ装置によれば、枚数単位を印刷装置において印刷後処理可能な上限枚数以下に設定されるので、枚数単位に基づいて生成された印刷ジョブは印刷後処理を実行することが可能となる。なお、請求項8に記載の印刷ジョブ生成方法、および請求項14に記載の記憶媒体においても同様の効果を得ることができる。
【0267】
本発明の請求項3に記載のホストコンピュータとしての印刷ジョブ装置によれば、複数部数の印刷が指定されていた場合であっても、1部の製本印刷を行う際に印刷ジョブを生成する順序で、指定された印刷部数に応じて繰り返し印刷ジョブの生成を行うので、印刷結果が生成される順番にならべるだけで本を作成することが可能となる。なお、請求項9に記載の記載の印刷ジョブ生成方法、および請求項15に記載の記憶媒体においても同様の効果を得ることができる。
【0268】
本発明の請求項4に記載のホストコンピュータとしての印刷ジョブ装置によれば、枚数単位を印刷が終了する前に変更することができるので、無駄な白紙を節約することが可能になる。なお、請求項10に記載の印刷ジョブ生成方法、および請求項16に記載の記憶媒体においても同様の効果を得ることができる。
【0269】
本発明の請求項5に記載のホストコンピュータとしての印刷ジョブ装置によれば、分冊出力方法を選択することが可能なので、ユーザーが所望とする編集方法で本を作成することが可能となる。なお、請求項11に記載の印刷ジョブ方法、および請求項17に記載の記憶媒体においても同様の効果を得ることができる。
【0270】
本発明の請求項6に記載のホストコンピュータとしての印刷ジョブ装置によれば、送出手段を備えることにより、印刷装置に対し、印刷後処理可能な印刷ジョブを送出することが可能となる。なお、請求項12に記載の印刷ジョブ方法、および請求項18に記載の記憶媒体においても同様の効果を得ることができる。
【図面の簡単な説明】
【図1】本発明の一実施形態を示すホストコンピュータ(印刷ジョブ生成装置)とシート処理部を備えたプリンタの構成を説明するブロック図である。
【図2】プリンタが接続されたホストコンピュータの典型的なプリントシステムの構成を示すブロック図である。
【図3】アプリケーションからの印刷ジョブをプリンタ制御コマンドに変換する前に、一旦中間コードに変換してスプールするプリントシステムの構成を示すブロック図である。
【図4】製本印刷の体裁を示す図である。
【図5】製本の開き方向を示す図である。
【図6】製本印刷の処理手順を示すフローチャートである。
【図7】全ページ単位の製本印刷の処理手順を示すフローチャートである。
【図8】全ページ単位の製本印刷の処理手順を示すフローチャートである。
【図9】指定枚数単位の製本印刷の処理手順を示すフローチャートである。
【図10】指定枚数単位の製本印刷の処理手順を示すフローチャートである。
【図11】指定枚数単位の製本印刷における、最終ブロックの用紙節約における処理手順を示すフローチャートである。
【図12】サドルステッチを行った製本印刷の体裁を示す図である。
【図13】印刷設定情報の一例を示した図である。
【図14】本発明を実施する全ページ枚数単位のサドルステッチ処理を行う製本印刷を示すフローチャートである。
【図15】サドルステッチを行うときの分冊方法1のフローチャートである。
【図16】本発明を実施する指定枚数単位のサドルステッチ処理を行う製本印刷を示すフローチャートである。
【図17】サドルステッチを行うときの分冊方法2のフローチャートである。
【図18】製本印刷およびサドルステッチの設定画面の一例である。
【図19】製本印刷の詳細を設定する画面の一例である。
【図20】プログラムコードを記憶した記憶媒体、及びプログラムコードを送出する送出装置の一例を示す図である。
【図21】本発明における印刷ジョブ生成プログラムが記憶された記憶媒体のメモリマップを示すイメージ図である。
【図22】プリンタ、複写機などの画像形成装置が備えるシート処理装置の一例を示すサドルステッチ装置の断面図である。
【図23】GDI関数スプールファイルを備えた本発明の実施形態2のプリントシステムの構成を示すブロック図である。
【図24】実施形態2として本発明を実施する全ページ枚数単位のサドルステッチ処理を行う製本印刷を示すフローチャートである。
【図25】実施形態2として本発明を実施する指定枚数単位のサドルステッチ処理を行う製本印刷を示すフローチャートである。
【符号の説明】
101 CPU
102 RAM
103 ROM
104 システムバス
105 キーボードコントローラ(KBC)
106 CRTコントローラ(CRTC)
107 ディスクコントローラ(DKC)
108 プリンタコントローラ(PRTC)
109 キーボード
110 CRTディスプレイ(CRT)
111 ハードディスク(HD)、フロッピーディスク(FD)等の外部メモリ
112 CPU
113 ROM
114 外部メモリ
115 システムバス
116 印刷部インターフェース
117 印刷部(プリンタエンジン)
118 入力部
119 RAM
120 メモリコントローラ(MC)
121 双方向性インターフェース(インターフェース)
122 シート処理部インターフェース
123 シート処理部
124 操作部
3000 ホストコンピュータ
1500 プリンタ
201 アプリケーション
202 グラフィックエンジン
203 プリンタドライバ
204 システムスプーラ
301 ディスパッチャ
302 スプーラ
303 スプールファイル
304 スプールファイルマネージャ
305 デスプーラ
306 GDI関数スプールファイル

Claims (18)

  1. 1つの印刷ジョブから画像形成された印刷媒体に対して行える印刷後処理実行可能な回数が1回と限定されている印刷装置に接続されたホストコンピュータとしての印刷ジョブ生成装置であって、
    アプリケーションからの描画命令を中間コードデータでスプールするスプール手段と、
    前記スプール手段によってスプールされた中間コードデータの印刷ページ数を取得する第1取得手段と、
    前記印刷装置において印刷後処理を行える上限枚数を取得する第2取得手段と、
    前記第1取得手段で取得された印刷ページ数と前記第2取得手段で取得された上限枚数から前記印刷装置において印刷後処理が行えるか否かを判断する印刷後処理判断手段と、
    前記印刷後処理判断手段において印刷後処理が行えないと判断された場合、製本印刷の単位である枚数単位を設定する設定手段と、
    前記スプール手段によってスプールされている中間コードデータから、前記設定手段によって設定された前記枚数単位に配置される中間コードデータを前記印刷後処理可能な印刷ジョブを生成すべく出力する出力手段と
    前記出力手段によって前記枚数単位に配置される中間コードデータが出力された場合、印刷終了命令を発行する印刷終了命令発行手段と、
    前記スプール手段によってスプールされている全ての中間コードデータを出力したか否かを判定し、全ての中間コードデータが出力されていないと判定された場合、前記印刷終了命令発行手段の発行に応じて印刷開始命令を発行する印刷開始命令発行手段と、
    前記印刷開始命令および前記印刷終了命令の間に出力される前記中間コードデータから前記印刷後処理可能な印刷ジョブを生成する印刷ジョブ生成手段を有し、
    前記印刷ジョブ生成手段は前記アプリケーションからの一連の描画命令に対して複数の前記印刷後処理可能な印刷ジョブを生成することを特徴とする印刷ジョブ生成装置。
  2. 前記設定手段は、前記第2取得手段によって取得された上限枚数以下の枚数単位を設定することを特徴とする請求項1に記載の印刷ジョブ生成装置。
  3. 前記1つの印刷ジョブに対して複数部数の印刷が指定されていた場合、前記印刷終了命令発行手段および前記印刷開始命令発行手段は、指定された前記複数部数および枚数単位に応じて前記印刷終了命令および前記印刷開始命令を複数回発行し、
    前記印刷ジョブ生成手段は1部の製本印刷結果を構成する複数の印刷ジョブを生成する順序で、前記複数部数に応じて繰り返し前記複数の印刷ジョブを生成することを特徴とする請求項1または2に記載の印刷ジョブ生成装置。
  4. 前記1つの印刷ジョブの製本印刷が終了する前に、前記設定手段によって設定された枚数単位を変更可能であることを特徴とする請求項1乃至3のいずれかに記載の印刷ジョブ生成装置。
  5. 前記製本印刷の分冊出力方法を選択する選択手段と、
    前記選択手段によって選択された分冊出力方法に応じて、前記出力手段によって出力される中間コードデータの出力順序が変更する変更手段を有することを特徴とする請求項1乃至4のいずれかに記載の印刷ジョブ生成装置。
  6. 前記印刷後処理可能な印刷ジョブを前記印刷装置に送出する送出手段を有することを特徴とする請求項1乃至5のいずれかに記載の印刷ジョブ生成装置。
  7. 1つの印刷ジョブから画像形成された印刷媒体に対して行える印刷後処理実行可能な回数が1回と限定されている印刷装置に接続されたホストコンピュータとしての印刷ジョブ生成装置の制御方法であって、
    アプリケーションからの描画命令を中間コードデータでスプールするスプールステップと、
    前記スプールステップによってスプールされた中間コードデータの印刷ページ数を取得する第1取得ステップと、
    前記印刷装置において印刷後処理を行える上限枚数を取得する第2取得ステップと、
    前記第1取得ステップで取得された印刷ページ数と前記第2取得ステップで取得された 上限枚数から前記印刷装置において印刷後処理が行えるか否かを判断する印刷後処理判断ステップと、
    前記印刷後処理判断ステップにおいて印刷後処理が行えないと判断された場合、製本印刷の単位である枚数単位を設定する設定ステップと、
    前記スプールステップによってスプールされている中間コードデータから、前記設定ステップによって設定された前記枚数単位に配置される中間コードデータを前記印刷後処理可能な印刷ジョブを生成すべく出力する出力ステップと
    前記出力ステップによって前記枚数単位に配置される中間コードデータが出力された場合、印刷終了命令を発行する印刷終了命令発行ステップと、
    前記スプールステップによってスプールされている全ての中間コードデータを出力したか否かを判定し、全ての中間コードデータが出力されていないと判定された場合、前記印刷終了命令発行ステップの発行に応じて印刷開始命令を発行する印刷開始命令発行ステップと、
    前記印刷開始命令および前記印刷終了命令の間に出力される前記中間コードデータから前記印刷後処理可能な印刷ジョブを生成する印刷ジョブ生成ステップを有し、
    前記印刷ジョブ生成ステップは前記アプリケーションからの一連の描画命令に対して複数の前記印刷後処理可能な印刷ジョブを生成することを特徴とする印刷ジョブ生成方法。
  8. 前記設定ステップは、前記第2取得ステップによって取得された上限枚数以下の枚数単位を設定することを特徴とする請求項7に記載の印刷ジョブ生成方法。
  9. 前記1つの印刷ジョブに対して複数部数の印刷が指定されていた場合、前記印刷終了命令発行ステップおよび前記印刷開始命令発行ステップは、指定された前記複数部数および枚数単位に応じて前記印刷終了命令および前記印刷開始命令を複数回発行し、
    前記印刷ジョブ生成ステップは1部の製本印刷結果を構成する複数の印刷ジョブを生成する順序で、前記複数部数に応じて繰り返し前記複数の印刷ジョブを生成することを特徴とする請求項7または8に記載の印刷ジョブ生成方法。
  10. 前記1つの印刷ジョブの製本印刷が終了する前に、前記設定ステップによって設定された枚数単位を変更可能であることを特徴とする請求項7乃至9のいずれかに記載の印刷ジョブ生成方法。
  11. 前記製本印刷の分冊出力方法を選択する選択ステップと、
    前記選択ステップによって選択された分冊出力方法に応じて、前記出力ステップによって出力される中間コードデータの出力順序が変更する変更ステップを有することを特徴とする請求項7乃至10のいずれかに記載の印刷ジョブ生成方法。
  12. 前記印刷後処理可能な印刷ジョブを前記印刷装置に送出する送出ステップを有することを特徴とする請求項7乃至11のいずれかに記載の印刷ジョブ生成方法。
  13. 1つの印刷ジョブから画像形成された印刷媒体に対して行える印刷後処理実行可能な回数が1回と限定されている印刷装置に対する印刷ジョブを生成する印刷ジョブ生成プログラムが格納された記憶媒体であって、
    アプリケーションからの描画命令を中間コードデータでスプールするスプールステップと、
    前記スプールステップによってスプールされた中間コードデータの印刷ページ数を取得する第1取得ステップと、
    前記印刷装置において印刷後処理を行える上限枚数を取得する第2取得ステップと、
    前記第1取得ステップで取得された印刷ページ数と前記第2取得ステップで取得された上限枚数から前記印刷装置において印刷後処理が行えるか否かを判断する印刷後処理判断ステップと、
    前記印刷後処理判断ステップにおいて印刷後処理が行えないと判断された場合、製本印刷の単位である枚数単位を設定する設定ステップと、
    前記スプールステップによってスプールされている中間コードデータから、前記設定ス テップによって設定された前記枚数単位に配置される中間コードデータを前記印刷後処理可能な印刷ジョブを生成すべく出力する出力ステップと
    前記出力ステップによって前記枚数単位に配置される中間コードデータが出力された場合、印刷終了命令を発行する印刷終了命令発行ステップと、
    前記スプールステップによってスプールされている全ての中間コードデータを出力したか否かを判定し、全ての中間コードデータが出力されていないと判定された場合、前記印刷終了命令発行ステップの発行に応じて印刷開始命令を発行する印刷開始命令発行ステップと、
    前記印刷開始命令および前記印刷終了命令の間に出力される前記中間コードデータから前記印刷後処理可能な印刷ジョブを生成する印刷ジョブ生成ステップを有し、
    前記印刷ジョブ生成ステップは前記アプリケーションからの一連の描画命令に対して複数の前記印刷後処理可能な印刷ジョブを生成することを特徴とするコンピュータが読み取り可能なプログラムが格納された記憶媒体。
  14. 前記設定ステップは、前記第2取得ステップによって取得された上限枚数以下の枚数単位を設定することを特徴とするプログラムを記録した請求項13に記載の記憶媒体。
  15. 前記1つの印刷ジョブに対して複数部数の印刷が指定されていた場合、前記印刷終了命令発行ステップおよび前記印刷開始命令発行ステップは、指定された前記複数部数および枚数単位に応じて前記印刷終了命令および前記印刷開始命令を複数回発行し、
    前記印刷ジョブ生成ステップは1部の製本印刷結果を構成する複数の印刷ジョブを生成する順序で、前記複数部数に応じて繰り返し前記複数の印刷ジョブを生成することを特徴とするプログラムを記録した請求項13または14に記載の記憶媒体。
  16. 前記1つの印刷ジョブの製本印刷が終了する前に、前記設定ステップによって設定された枚数単位を変更可能であることを特徴とするプログラムを記録した請求項13乃至15のいずれかに記載の記憶媒体。
  17. 前記製本印刷の分冊出力方法を選択する選択ステップと、
    前記選択ステップによって選択された分冊出力方法に応じて、前記出力ステップによって出力される中間コードデータの出力順序が変更する変更ステップを有することを特徴とするプログラムを記録した請求項13乃至16のいずれかに記載の記憶媒体。
  18. 前記印刷後処理可能な印刷ジョブを前記印刷装置に送出する送出ステップを有することを特徴とするプログラムを記録した請求項13乃至17のいずれかに記載の記憶媒体。
JP36476098A 1998-12-22 1998-12-22 印刷ジョブ生成装置、方法、記憶媒体 Expired - Fee Related JP3619038B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP36476098A JP3619038B2 (ja) 1998-12-22 1998-12-22 印刷ジョブ生成装置、方法、記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP36476098A JP3619038B2 (ja) 1998-12-22 1998-12-22 印刷ジョブ生成装置、方法、記憶媒体

Publications (2)

Publication Number Publication Date
JP2000187580A JP2000187580A (ja) 2000-07-04
JP3619038B2 true JP3619038B2 (ja) 2005-02-09

Family

ID=18482606

Family Applications (1)

Application Number Title Priority Date Filing Date
JP36476098A Expired - Fee Related JP3619038B2 (ja) 1998-12-22 1998-12-22 印刷ジョブ生成装置、方法、記憶媒体

Country Status (1)

Country Link
JP (1) JP3619038B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002214973A (ja) * 2001-01-22 2002-07-31 Canon Inc 画像形成装置及び後処理装置及び画像処理制御プログラムを記録した記録媒体
JP4603717B2 (ja) * 2001-04-26 2010-12-22 キヤノン株式会社 情報処理装置、分散印刷システム、分散印刷制御方法、コンピュータプログラム、及びコンピュータ読み取り可能な記憶媒体
JP4663151B2 (ja) * 2001-05-10 2011-03-30 キヤノン株式会社 画像処理装置および画像処理装置の制御方法およびプログラムおよび記憶媒体
JP2003091386A (ja) * 2001-09-14 2003-03-28 Canon Inc 情報処理装置及び方法
JP4859161B2 (ja) * 2001-09-14 2012-01-25 キヤノン株式会社 情報処理装置及びその処理方法
JP2006040214A (ja) 2004-07-30 2006-02-09 Canon Inc 情報処理装置、印刷処理方法、及びコンピュータプログラム
JP4618788B2 (ja) * 2005-02-18 2011-01-26 キヤノン株式会社 印刷工程管理装置、プログラム、記録媒体、印刷工程管理装置の工程を管理するための印刷工程管理方法
JP5305930B2 (ja) * 2009-01-13 2013-10-02 キヤノン株式会社 画像形成装置、ジョブ処理方法、プログラム及び記憶媒体

Also Published As

Publication number Publication date
JP2000187580A (ja) 2000-07-04

Similar Documents

Publication Publication Date Title
JP3854741B2 (ja) 印刷制御システム及び印刷制御方法、記憶媒体
JP4143426B2 (ja) 文書処理装置及び方法
US8830491B2 (en) Document processing apparatus, document processing method, and document processing program
JP4235472B2 (ja) 情報処理装置、情報処理装置の制御方法、プログラム及び記憶媒体
US8144345B2 (en) Information-processing apparatus and method
US8305594B2 (en) Print control apparatus and method for managing print settings
US7643172B2 (en) Information processing apparatus, control method thereof, and program
JP5791402B2 (ja) 印刷装置、情報処理装置、印刷方法、情報処理装置の制御方法、及びプログラム
JP5159484B2 (ja) 情報処理装置、画像形成装置と後処理装置の制御方法、コンピュータプログラム
JP5328337B2 (ja) 画像形成装置、画像形成システム、画像形成装置の制御方法、及びプログラム
US7477409B2 (en) Information processing apparatus, control method thereof, and computer-readable medium
US20110141506A1 (en) Information processing apparatus, information processing method, and storage medium
JP3619038B2 (ja) 印刷ジョブ生成装置、方法、記憶媒体
US9283796B2 (en) Sheet processing apparatus, control method of sheet processing apparatus, and storage medium
JP2006268358A (ja) 情報処理装置及びその制御方法
JP2001030584A (ja) プリンタの制御装置及び制御方法、または、プリンタ
JP2003162406A (ja) データ処理装置
JP2001038978A (ja) 印刷制御装置及び印刷制御方法
JP4817563B2 (ja) 情報処理装置および該装置のデータ処理方法およびデータ処理プログラムおよび該プログラムを格納した記憶媒体
JP5734020B2 (ja) 印刷制御装置、印刷制御装置の印刷制御方法及びプログラム
US8400669B2 (en) Information processing apparatus and staple attribute setting method
JPH0789256A (ja) 画像記録装置
JP2002079716A (ja) 印刷制御システム、印刷制御方法、記憶媒体
JP2016530121A (ja) 複写ジョブを処理するための装置及び方法
JP2001125757A (ja) プリンタ、プリントシステム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040608

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040615

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040816

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041111

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071119

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081119

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081119

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091119

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101119

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101119

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111119

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121119

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131119

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees