(57)【要約】【課題】タブ紙の両面印刷を印刷装置を利用して行う場合、ハードウエア制限により、ユーザーは表面と裏面に印刷されるタブ情報を合わせるために、表面用のタブレイアウトと、裏面用のタブレイアウトの２種類を用意しなければならないという問題がある。【解決手段】印刷装置において、タブ紙印刷の設定がされているかを判定し、タブ紙印刷の設定がされていると判定された場合に、印刷しようとする面が表面か裏面かを判定し、印刷しようとする面が表面であると判定された場合には第１の描画データを生成し、裏面であると判定された場合には第１の描画データを調整することにより第２の描画データを生成する。【選択図】図１６
2004152003.tif 000002
【特許請求の範囲】
【請求項１】
タブ紙印刷の設定がされているかを判定するための印刷設定判定工程と、
前記タブ紙印刷の設定がされていると判定された場合に、印刷しようとする面が表面か裏面かを判定するための印刷面判定工程と、
前記印刷しようとする面が前記表面であると判定された場合には第１の描画データを生成し、前記裏面であると判定された場合には前記第１の描画データを調整することにより第２の描画データを生成する描画データ生成工程と
を備えるタブ紙両面印刷方法。
【請求項２】
前記描画データ生成工程では、前記第１の描画データ及び第２の描画データを同一の入力データから生成することを特徴とする請求項１に記載のタブ紙両面印刷方法。
【請求項３】
前記描画データ生成工程では、前記第１の描画データの座標値を調整することにより前記第２の描画データを生成することを特徴とする請求項１又は請求項２に記載のタブ紙両面印刷方法。
【請求項４】
前記描画データ生成工程では、前記第１の描画データの座標値を前記タブ紙の物理サイズに基づいて決定することを特徴とする請求項３に記載のタブ紙両面印刷方法。
【請求項５】
請求項１乃至請求項４に記載のタブ紙両面印刷方法をコンピュータに実行させるためのタブ紙両面印刷プログラム。
【請求項６】
請求項５に記載のタブ紙両面印刷プログラムを格納したコンピュータで読取り可能な記憶媒体。
【請求項７】
タブ紙印刷の設定がされているかを判定するための印刷設定判定手段と、
前記タブ紙印刷の設定がされていると判定された場合に、印刷しようとする面が表面か裏面かを判定するための印刷面判定手段と、
前記印刷しようとする面が前記表面であると判定された場合には第１の描画データを生成し、前記裏面であると判定された場合には前記第１の描画データを調整して第２の描画データを生成する描画データ生成手段と
を備える印刷制御装置。
【請求項８】
前記描画データ生成手段は、前記第１の描画データ及び第２の描画データを同一の入力データから生成することを特徴とする請求項７に記載の印刷制御装置。
【請求項９】
前記描画データ生成手段は、前記第１の描画データの座標値を調整することにより前記第２の描画データを生成することを特徴とする請求項７又は請求項８に記載の印刷制御装置。
【請求項１０】
前記描画データ生成手段は、前記第１の描画データの座標値を前記タブ紙の物理サイズに基づいて決定することを特徴とする請求項９に記載の印刷制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、印刷制御装置及びタブ紙両面印刷方法、プログラム及び記憶媒体に関するもので、特にパーソナルコンピュータ等の情報処理装置と、プリンタからなるシステムにおけるタブの生成、および印刷制御に関するものである。
【０００２】
【従来の技術】
タブ紙とは、Ａ４、もしくはレター用紙に、項目やタイトルを示す’タブ’がついたもので、タブが１０個設けられた１０タブ用紙やタブが５個設けられた５タブ用紙と呼ばれるものが、代表的なタブ紙である。タブの部分は、レターの場合で１／２インチが標準であるが、これ以外の大きさのタブを有するタブ用紙も存在する。普通の用紙に比べタブがついていること、また、タブ紙には通常厚紙が使用されており従来の印刷装置では搬送系で紙詰まりを起こすという問題から、タブ紙への印字をサポートしていないものがほとんどである。しかしながら、近年では紙の搬送系の技術向上により、印刷装置でのタブ紙印刷が行えるようになっている（下記の特許文献１参照）。また、これに伴い、マルチファンクション機と呼ばれるプリンタ機能等を備えた印刷装置では、コンピュータ上で作成したタブを、プリンタドライバを介して、印字を行うということも可能である。
【０００３】
【特許文献１】
特開平１０−６７４５８号公報
【０００４】
【発明が解決しようとする課題】
しかしながら、タブ紙の印刷を印刷装置で行えるようになったといっても、これは片面印刷の場合だけで、両面印刷は、印刷装置の搬送系の問題から、行えないのが通常である。これは、タブ紙が厚紙であるためで、両面印刷時に行う紙の裏返しが、技術的に非常に難しいからである。
【０００５】
しかしながら、タブ紙のタブに印刷する項目やタイトルは、その中に含まれている原稿の内容を表すものなので、裏から見てわかること、つまり、裏面にも印刷されていることが、非常に重要である。
【０００６】
厚紙の裏返しが出来ないという印刷装置の物理的な制限を克服するために、タブの片面だけが印刷されたタブ紙を、排紙トレイに出力されている印刷物から取り除き、これを裏返して給紙トレイや手差しトレイにセットして再度タブ紙の裏面だけの印刷を行うという方法をとることが考えられるが、その場合は、印刷装置の機構上、用紙搬送方向に対するタブの向きを一定にする必要がある。
【０００７】
図４は、用紙搬送方向と、タブ原稿向きの関係を示す図である。図中の矢印は搬送方向を示し、図中の丸点は、原稿向きの上側を示している。
【０００８】
図４（ａ）は、表面に対するタブ紙の用紙の状態と、印刷されるデータの一例であり、図４（ｂ）は、裏面に対するタブ紙の用紙の状態と、印刷されるデータの一例である。
【０００９】
図４（ａ）に示すように、タブが原稿向きに対して上から並ぶように用紙をセットした場合、タブ原稿は「ＴＡＢ１」、「ＴＡＢ２」、「ＴＡＢ３」、「ＴＡＢ４」、「ＴＡＢ５」の順で５ページ用意することになる。
【００１０】
一方、図４（ｂ）に示すように、タブ紙裏面の印刷に対して、タブが原稿向きに対して上から並ぶように用紙をセットした場合、タブ原稿は表面とは逆、すなわち、「ＴＡＢ５」、「ＴＡＢ４」、「ＴＡＢ３」、「ＴＡＢ２」、「ＴＡＢ１」の順で５ページ用意することになる。こうした方法は非常に不便な上、ユーザーが用紙のセット順を間違え易いという問題が生じてしまう。
【００１１】
また、ユーザーは表面と裏面に印刷されるタブ情報を合わせるために、表面用のタブレイアウトと、裏面用のタブレイアウトの２種類の原稿を用意しなければならないという問題もある。
【００１２】
【課題を解決するための手段】
本発明は、このような問題を解決し、１種類のタブ紙用原稿を用意するだけで、現在の印刷装置では対応していないタブ紙の両面印刷を行うことを可能とするものである。
【００１３】
具体的には、本発明はタブ紙両面印刷方法であって、タブ紙印刷の設定がされているかを判定するための印刷設定判定工程と、前記タブ紙印刷の設定がされていると判定された場合に、印刷しようとする面が表面か裏面かを判定するための印刷面判定工程と、前記印刷しようとする面が前記表面であると判定された場合には第１の描画データを生成し、前記裏面であると判定された場合には前記第１の描画データを調整することにより第２の描画データを生成する描画データ生成工程とを備える。
【００１４】
上記の本発明においては、前記描画データ生成工程では、前記第１の描画データ及び第２の描画データを同一の入力データから生成することが好ましい。
【００１５】
また、前記描画データ生成工程では、前記第１の描画データの座標値を調整することにより前記第２の描画データを生成してもよい。さらに、この描画データ生成工程では、前記第１の描画データの座標値を前記タブ紙の物理サイズに基づいて決定することができる。
【００１６】
上記の課題は、上記のタブ紙両面印刷方法をコンピュータに実行させるためのタブ紙両面印刷プログラム、さらには、このタブ紙両面印刷プログラムを格納したコンピュータで読取り可能な記憶媒体を提供することによっても解決することができる。
【００１７】
上記課題を解決するための本発明の別の側面は、印刷制御装置であって、タブ紙印刷の設定がされているかを判定するための印刷設定判定手段と、前記タブ紙印刷の設定がされていると判定された場合に、印刷しようとする面が表面か裏面かを判定するための印刷面判定手段と、前記印刷しようとする面が前記表面であると判定された場合には第１の描画データを生成し、前記裏面であると判定された場合には前記第１の描画データを調整して第２の描画データを生成する描画データ生成手段とを備える。
【００１８】
また、前記描画データ生成手段は、前記第１の描画データ及び第２の描画データを同一の入力データから生成することができる。
【００１９】
さらに、前記描画データ生成手段は、前記第１の描画データの座標値を調整することにより前記第２の描画データを生成しても良いし、さらには前記第１の描画データの座標値を前記タブ紙の物理的サイズに基づいて決定することができる。
【００２０】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して説明する。
【００２１】
＜プリンタ制御システムの構成＞
図１は本発明の実施形態を示すプリンタ制御システム（印刷システム）におけるホストコンピュータとプリンタの構成を説明するブロック図である。なお、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであっても、ＬＡＮ，ＷＡＮ等のネットワークを介して接続がなされ処理が行われるシステムであっても本発明を適用できる。
【００２２】
図１において、ホストコンピュータ３０００は、ＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１に記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行するＣＰＵ１を備え、システムバス４に接続される各デバイスをＣＰＵ１が総括的に制御する。
【００２３】
また、このＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１は、ＣＰＵ１の制御プログラムであるオペレーティングシステムプログラム（以下ＯＳ）等を記憶し、ＲＯＭ３のフォント用ＲＯＭあるいは外部メモリ１１には上記文書処理の際に使用するフォントデータ等を記憶し、ＲＯＭ３のデータ用ＲＯＭあるいは外部メモリ１１には上記文書処理等を行う際に使用する各種データを記憶する。ＲＡＭ２は、ＣＰＵ１の主メモリ、ワークエリア等として機能する。
【００２４】
キーボードコントローラ（ＫＢＣ）５は、キーボード９や不図示のポインティングデバイスからのキー入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）６は、ＣＲＴディスプレイ（ＣＲＴ）１０の表示を制御する。７はディスクコントローラ（ＤＫＣ）で、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザーファイル、編集ファイル、プリンタ制御コマンド生成プログラム（以下プリンタドライバ）等を記憶するハードディスクＨＤ、フロッピー（登録商標）ディスクＦＤ等の外部メモリ１１とのアクセスを制御する。プリンタコントローラ（ＰＲＴＣ）８は、双方向性インタフェイス（インタフェイス）２１を介してプリンタ１５００に接続されて、プリンタ１５００との通信制御処理を実行する。
【００２５】
なお、ＣＰＵ１は、例えばＲＡＭ２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、ＣＲＴ１０上でのＷＹＳＩＷＹＧを可能としている。また、ＣＰＵ１は、ＣＲＴ１０上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。
【００２６】
ユーザーは印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行える。図１８は、タブ紙の両面印刷を行う時の、ホストコンピュータ３０００におけるＣＲＴディスプレイ１０に表示されるＧＵＩの例を示したものである。図１８に示すＧＵＩでは、タブ紙のＰｒｉｎｔ  Ｓｔｙｌｅとして両面印刷（２−ｓｉｄｅｄＰｒｉｎｔｉｎｇ）、給紙部２３のタブ紙を給紙する給紙段としてＤｒａｗｅｒ３、タブ紙の挿入位置として、３ページ目と６ページ目が選択されている。
【００２７】
図１においてプリンタ１５００は、ＣＰＵ１２により制御される。プリンタＣＰＵ１２は、ＲＯＭ１３のプログラム用ＲＯＭに記憶された制御プログラム等あるいは外部メモリ１４に記憶された制御プログラム等に基づいてシステムバス１５に接続される印刷部（プリンタエンジン）１７に出力情報としての画像信号を出力する。
【００２８】
また、このＲＯＭ１３のプログラムＲＯＭには、ＣＰＵ１２の制御プログラム等を記憶する。ＲＯＭ１３のフォント用ＲＯＭには上記出力情報を生成する際に使用するフォントデータ等が記憶され、ＲＯＭ１３のデータ用ＲＯＭには、ハードディスク等の外部メモリ１４がないプリンタの場合には、ホストコンピュータ上で利用される情報等が記憶されている。
【００２９】
ＣＰＵ１２は入力部１８を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ３０００に通知できる。ＲＡＭ１９は、ＣＰＵ１２の主メモリや、ワークエリア等として機能するＲＡＭで、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。なお、ＲＡＭ１９は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。
【００３０】
前述したハードディスク（ＨＤ）、ＩＣカード等の外部メモリ１４は、メモリコントローラ（ＭＣ）２０によりアクセスを制御される。外部メモリ１４は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、２２はユーザーインタフェイスで、後述するワーニングメッセージを表示するための表示画面（この表示画面はタッチパネル式であってもよい）、各種操作のためのスイッチ、印刷装置に対してプリント命令を出すためのＯＫボタン及びＬＥＤ表示器等が配されている。
【００３１】
また、前述した外部メモリ１４は１個に限らず、複数個備えられ、内蔵フォントに加えてオプションカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。更に、図示しないＮＶＲＡＭを有し、ユーザーインタフェイス２２からのプリンタモード設定情報を記憶するようにしてもよい。
【００３２】
印刷部１７は、電子写真方式やインクジェット方式などにより印刷処理を行うものであり、例えば電子写真方式の場合であれば、像担持体たる感光ドラム、感光ドラムの周囲を所定の極性・電位に一様に帯電処理するための帯電ローラ、感光ドラムの一様に帯電された表面を走査露光し、静電潜像を形成するためのレーザービームスキャナー等の画像情報露光部、感光ドラム上の静電潜像をトナー像として現像するための現像部、感光ドラム上に形成されたトナー像を給紙部２３から給紙される記録紙に対して順次静電転写するための転写ローラ、トナー像を記録紙に定着させるための定着部、トナー像が定着された記録紙を排出する排出部などで主に構成される。
【００３３】
給紙部２３は、タブ紙を含む記録紙を収容する収容部である手差しトレイやカセット等の複数の給紙段により構成され、各給紙段には、記録紙の有無を検知するためのセンサ２４を備えている。
【００３４】
図２は、プリンタ等の印刷装置が直接接続されているか、あるいはネットワーク経由で接続されているホストコンピュータにおける典型的な印刷処理のための、ソフトウエアモジュール構成の一例を示す図である。アプリケーション２０１、グラフィックエンジン２０２、プリンタドライバ２０３、およびシステムスプーラ２０４は、外部メモリ１１に保存されたファイルとして存在し、実行される場合にＯＳやそのモジュールを利用するモジュールによってＲＡＭ２にロードされ実行されるプログラムモジュールである。また、アプリケーション２０１およびプリンタドライバ２０３は、外部メモリ１１のＦＤや不図示のＣＤ−ＲＯＭ、あるいは不図示のネットワークを経由して外部メモリ１１のＨＤに追加することが可能となっている。
【００３５】
外部メモリ１１に保存されているアプリケーション２０１はＲＡＭ２にロードされて実行されるが、このアプリケーション２０１からプリンタ１５００に対して印刷を行う際には、同様にＲＡＭ２にロードされ実行可能となっているグラフィックエンジン２０２を利用して出力（描画）を行う。
【００３６】
グラフィックエンジン２０２は、印刷装置ごとに用意されたプリンタドライバ２０３を同様に外部メモリ１１からＲＡＭ２にロードし、アプリケーション２０１の出力をプリンタドライバ２０３に設定する。そして、アプリケーション２０１から受け取るＧＤＩ（Ｇｒａｐｈｉｃ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）関数をＤＤＩ（Ｄｅｖｉｃｅ  Ｄｒｉｖｅｒ  Ｉｎｔｅｒｆａｃｅ）関数に変換して、プリンタドライバ２０３にＤＤＩ関数を出力する。
【００３７】
プリンタドライバ２０３は、グラフィックエンジン２０２から受け取ったＤＤＩ関数をプリンタが認識可能な制御コマンド、例えばＰＤＬ（Ｐａｇｅ  ＤｅｓｃｒｉｐｔｉｏｎＬａｎｇｕａｇｅ）に変換する。変換されたプリンタ制御コマンドは、ＯＳによってＲＡＭ２にロードされたシステムスプーラ２０４を経てインタフェイス２１経由でプリンタ１５００へ印刷データとして出力される仕組みとなっている。
【００３８】
本実施形態の印刷システムは、図１で示すプリンタとホストコンピュータからなる印刷システムに加えて、更に図２に示すように、アプリケーションからの印刷データを一旦中間コードデータとしてスプールする構成を有する。
【００３９】
＜本実施形態における印刷関連のソフトウエアモジュール＞
図３は、図２のシステムを拡張したソフトウエアモジュール構成を示す図である。図３においては、グラフィックエンジン２０２からプリンタドライバ２０３へ印刷命令を送る際に、一旦中間コードからなるスプールファイル３０３が生成される。図２のシステムでは、アプリケーション２０１が印刷処理から開放されるのはプリンタドライバ２０３がグラフィックエンジン２０２からの印刷命令の全てをプリンタの制御コマンドへ変換し終った時点である。
【００４０】
これに対して、図３のシステムでは、スプーラ３０２がすべての印刷命令を中間コードデータに変換し、スプールファイル３０３に出力した時点で、アプリケーション２０１は解放される。通常、後者の方が短時間で済む。
【００４１】
また、図３に示すモジュール構成では、スプールファイル３０３の内容に対して加工を行うことができる。これによりアプリケーションからの印刷データに対して、本発明のタブ紙印刷をはじめ、拡大縮小や、複数ページを１ページに縮小して印刷する等、アプリケーションの持たない機能を実現することができる。
【００４２】
なお、印刷データの加工を行うためには、通常プリンタドライバ２０３が提供するウインドウから設定を行い、プリンタドライバ２０３がその設定内容をＲＡＭ２上あるいは外部メモリ１１上に保管する。
【００４３】
以下、図３の詳細を説明する。図に示す通り、この拡張された処理方式では、グラフィックエンジン２０２からの印刷命令であるＤＤＩ関数をディスパッチャ３０１が受け取る。ディスパッチャ３０１がグラフィックエンジン２０２から受け取った印刷命令（ＤＤＩ関数）が、アプリケーション２０１からグラフィックエンジン２０２へ発行された印刷命令（ＧＤＩ関数）に基づくものである場合には、ディスパッチャ３０１は外部メモリ１１に格納されているスプーラ３０２をＲＡＭ２にロードし、プリンタドライバ２０３ではなくスプーラ３０２へ印刷命令（ＤＤＩ関数）を送る。
【００４４】
スプーラ３０２は受け取った印刷命令を解析し、ページ単位に中間コードに変換してスプールファイル３０３に出力する。このページ単位に格納されている中間コードのスプールファイル３０３をページ描画ファイル（ＰＤＦ：Ｐａｇｅ  ＤｅｓｃｒｉｐｔｉｏｎＦｉｌｅ）と呼ぶ。
【００４５】
また、スプーラ３０２は、プリンタドライバ２０３に対して設定されている印刷データに関する加工設定（Ｎｕｐ、タブ紙印刷、両面、ステイプル、カラー／モノクロ指定等）をプリンタドライバ２０３から取得してジョブ単位のファイルとしてスプールファイル３０３に保存する。この時部単位に格納されている設定ファイルをジョブ設定ファイル（簡略してＳＤＦ：Ｓｐｏｏｌ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｆｉｌｅと呼ぶこともある）と呼ぶ。
【００４６】
このジョブ設定ファイルについては後述する。なお、スプールファイル３０３は外部メモリ１１上にファイルとして生成されるが、ＲＡＭ２上に生成されても構わない。更にスプーラ３０２は、外部メモリ１１に格納されているスプールファイルマネージャ３０４をＲＡＭ２にロードし、スプールファイルマネージャ３０４に対してスプールファイル３０３の生成状況を通知する。その後、スプールファイルマネージャ３０４は、スプールファイル３０３に保存された印刷データに関する加工設定の内容に従って印刷を行えるかを判断する。
【００４７】
スプールファイルマネージャ３０４がグラフィックエンジン２０２を利用して印刷を行えると判断した際には、外部メモリ１１に格納されているデスプーラ３０５をＲＡＭ２にロードし、デスプーラ３０５に対して、スプールファイル３０３に記述された中間コードのページ描画ファイルの印刷処理を行うように指示する。
【００４８】
デスプーラ３０５はスプールファイル３０３に含まれる中間コードのページ描画ファイルをスプールファイル３０３に含まれる加工設定情報を含むジョブ設定ファイルに従って加工し、ＧＤＩ関数を再生成し、もう一度グラフィックエンジン２０２経由でＧＤＩ関数を出力する。
【００４９】
ディスパッチャ３０１がグラフィックエンジン２０２から受け取った印刷命令（ＤＤＩ関数）がデスプーラ３０５からグラフィックエンジン２０２へ発行された印刷命令（ＧＤＩ関数）に基づいたものである場合には、ディスパッチャ３０１はスプーラ３０２ではなく、プリンタドライバ２０３に印刷命令を送る。
【００５０】
プリンタドライバ２０３はグラフィックエンジン２０２から取得したＤＤＩ関数に基づいてページ記述言語等からなるプリンタ制御コマンドを生成し、システムスプーラ２０４経由でプリンタ１５００に出力する。
【００５１】
＜印刷用中間データの保存処理＞
図５は、スプーラ３０２における、スプールファイル３０３の生成におけるページ単位保存ステップの処理をフローチャートで示したものである。
【００５２】
まずステップ５０１では、スプーラ３０２は、アプリケーションからグラフィックエンジン２０２を介して印刷要求を受けつける。アプリケーションにおいては、印刷設定を入力するダイアログが表示され、このダイアログから入力された印刷設定がプリンタドライバよりスプーラ３０３に渡される。
【００５３】
ステップ５０２では、スプーラ３０２は、受け付けた印刷要求がジョブ開始要求か否かを判定し、もしジョブ開始要求であると判定した場合には、ステップ５０３に進み、スプーラ３０２は、中間データを一時的に保存するためのスプールファイル３０３を作成する。続いて、ステップ５０４では、スプーラ３０２は、スプールファイルマネージャ３０４へ印刷処理の進捗を通知し、続くステップ５０５でスプーラ３０２のページ数カウンタを１に初期化する。
【００５４】
ここで、スプールファイルマネージャ３０４においては、印刷が開始されたジョブに対するジョブの情報や加工設定などをスプールファイル３０３より読み込み、記憶する。
【００５５】
一方、ステップ５０２において、ジョブ開始要求ではなかったと判定した場合には、ステップ５０６に進む。ステップ５０６では、スプーラ３０２は受け付けた要求がジョブ終了要求かどうかの判定を行う。ジョブ終了要求でないと判定した場合には、ステップ５０７に進み、改ページかどうかの判定を行う。
【００５６】
もしもステップ５０７で改ページであると判定した場合には、ステップ５０８に進み、スプールファイルマネージャ３０４へ印刷処理の進捗を通知する。そしてページ数カウンタをインクリメントして、中間コードを格納しているページ描画ファイルを閉じ、次のページ描画ファイルを生成する。
【００５７】
ステップ５０７において、受け付けた印刷要求が改ページではないと判定した場合にはステップ５０９に進み、スプーラ３０２はページ描画ファイルへの中間コードの書き出しの準備を行う。次に、ステップ５１０では、印字要求をスプールファイル３０３へ格納するため、スプーラ３０２は、印字要求のＤＤＩ関数の中間コードへの変換処理を行う。ステップ５１１では、スプーラ３０２は、ステップ５１０において格納可能な形に変換された印刷要求（中間コード）をスプールファイル３０３のページ描画ファイルへ書き込む。
【００５８】
その後、ステップ５０１に戻り、再びアプリケーションからの印刷要求を受けつける。この一連のステップ５０１からステップ５１１までの処理を、アプリケーションよりジョブ終了要求（Ｅｎｄ  Ｄｏｃ）を受け取るまで続ける。また、スプーラ３０２は、同時にプリンタドライバ２０３からＤＥＶＭＯＤＥ構造体に格納されている加工設定等の情報を取得し、ジョブ設定ファイルとしてスプールファイル３０３に格納する。
【００５９】
一方、ステップ５０６にて、アプリケーションからの印刷要求がジョブ終了であると判定した場合には、アプリケーションからの印刷要求は全て終了であるので、ステップ５１２に進み、スプールファイルマネージャ３０４へ印刷処理の進捗を通知し、処理を終える。
【００６０】
＜スプールファイルの生成＞
図６は、スプールファイルマネージャ３０４における、スプールファイル３０３生成プロセスと、後述する印刷データ生成プロセスの間での制御の詳細をフローチャートで示したものである。
【００６１】
ステップ６０１では、スプールファイルマネージャ３０４は、スプーラ３０２又はデスプーラ３０５からの印刷処理の進捗通知を受け付ける。ステップ６０２では、スプールファイルマネージャ３０４は、進捗通知が前述のステップ５０４において通知されるスプーラ３０２からの印刷開始通知であるかどうか判定し、もしそうであればステップ６０３へ進み、印刷の加工設定をスプールファイル３０３から読み込み、ジョブの管理を開始する。
【００６２】
本発明におけるタブ紙印刷の設定は、スプールファイル３０３に格納され、ステップ６０３においてスプールファイルマネージャ３０４が読み込み可能となる。
【００６３】
一方、ステップ６０２において、スプーラ３０２からの印刷開始通知でないと判定した場合はステップ６０４へ進み、スプールファイルマネージャ３０４は、進捗通知が前述のステップ５０８において通知されるスプーラ３０２からの１論理ページの印刷終了通知であるかどうか判定する。ここで１論理ページの印刷終了通知であればステップ６０５へ進み、この論理ページに対する論理ページ情報を格納する。
【００６４】
そして、続くステップ６０６では、この時点でスプールが終了したｎ論理ページに対して、１物理ページの印刷が開始できるかを判定する。ここで、印刷可能である場合はステップ６０７へ進み、印刷する１物理ページに対して割り付けれられる論理数から物理ページ番号を決定する。
【００６５】
物理ページの計算については、例えば、加工設定が１物理ページに４論理ページを配置するような設定の場合、第１物理ページは第４論理ページがスプールされた時点で印刷可能となり、第１物理ページとなる。続いて、第２物理ページは第８論理ページがスプールされた時点で印刷可能となる。
【００６６】
また、論理ページ数の総数が１物理ページに配置する論理ページ数の倍数でなくても、ステップ５１２におけるスプール終了通知によって１物理ページに配置する論理ページが決定可能である。ただし、本実施形態においては、タブ紙印刷であるので、１物理ページに配置される論理ページの数は１となる。
【００６７】
そして、ステップ６０８では、図８に示すような形式で印刷可能となった物理ページを構成する論理ページ番号と、その物理ページ番号などの情報がジョブ出力用設定ファイル（物理ページ情報を含むファイル）に保存され、物理ページ情報が１物理ページ分追加されたことがデスプーラ３０５に通知される。
【００６８】
その後ステップ６０１に戻り、次の通知を待つ。本実施形態においては、印刷データ１ページ、即ち１物理ページを構成する論理ページがスプールされた時点で印刷ジョブのスプールが全て終了していなくても印刷処理が可能である。
【００６９】
一方、ステップ６０４において、進捗通知がスプーラ３０２からの１論理ページの印刷終了通知でなかった場合はステップ６０９へ進み、スプールファイルマネージャ３０４は、前述のステップ５１２において通知されるスプーラ３０２からのジョブ終了通知であるかどうかを判定する。ここで、ジョブ終了通知である場合、前述のステップ６０６へ進む。一方、ジョブ終了通知でない場合、ステップ６１０へ進み、スプールファイルマネージャ３０４は、受け付けた通知がデスプーラ３０５からの１物理ページの印刷終了通知であるかどうか判定する。
【００７０】
ここで、１物理ページの印刷終了通知である場合はステップ６１２へ進み、加工設定の印刷が全て終了したかを判定する。印刷終了した場合、ステップ６１２へ進み、デスプーラ３０５に印刷終了の通知を行う。一方、加工設定に対する印刷がまだ終了していないと判断した場合、前述の６０６へ進む。
【００７１】
本実施形態におけるデスプーラ３０５は印刷処理を行う単位として１物理ページ数を想定している。また、ステップ６０８では、１物理ページの印刷処理を行うのに必要な情報をファイルに逐次保存し、再利用可能な形式にしているが、再利用不要な場合には、共有メモリ等高速な媒体を使用し、１物理ページ単位で次々と上書きする実装にして、速度とリソースを節約するような実装形式であってもよい。
【００７２】
また、デスプールの進捗よりもスプールの進捗の方が早い場合や全ページのスプール終了後からデスプールが開始されるような場合には、ステップ６０８で１物理ページ毎にページ印刷可能を通知せずに、デスプール側の進捗に応じて、複数物理ページもしくは全物理ページが印刷可能になったという通知内容にして、通知回数を節約することが可能である。
【００７３】
ステップ６１０において、通知がデスプーラ３０５からの１物理ページの印刷終了通知でないと判断された場合、ステップ６１３へ進み、スプールファイルマネージャ３０４は、デスプーラ３０５からの印刷終了通知かどうかを判定する。通知がデスプーラ３０５からの印刷終了通知と判定された場合、ステップ６１４へ進み、スプールファイルマネージャ３０４は、スプールファイル３０３の該当するページ描画ファイルの削除を行い処理を終える。ただし、一方、デスプーラ３０５からの印刷終了通知でなかった場合はステップ６１５へ進み、その他通常処理を行い、次の通知を待つ。
【００７４】
＜スプールファイルの出力＞
図７は、デスプーラ３０５における、印刷データの生成プロセスの詳細をフローチャートで示したものである。
【００７５】
デスプーラ３０５は、スプールファイルマネージャ３０４からの印刷要求に応じて、スプールファイル３０３から必要な情報（ページ描画ファイルおよびジョブ設定ファイル）を読み出して印刷データを生成する。生成された印刷データにおけるプリンタへの転送方法については図３で説明した通りである。
【００７６】
印刷データの生成では、まず、ステップ７０１において、前述のスプールファイルマネージャ３０４からの通知を受け付ける。続くステップ７０２では、デスプーラ３０５は、受け付けた通知がジョブの終了通知かどうか判定し、ジョブ終了通知であるならばステップ７０３へ進み、終了フラグを立て、ステップ７０５へ進む。
【００７７】
一方、ステップ７０２においてジョブ終了通知でないと判定した場合は、ステップ７０４に進み、前述のステップ６０８における１物理ページの印刷開始要求が通知されたかどうか判定する。ステップ７０４において開始要求と判定されなかった場合は、ステップ７１０へ進み、その他エラー処理を行い、ステップ７０１へ戻り次の通知を待つ。
【００７８】
一方、ステップ７０４において１物理ページの印刷開始要求と判定された場合は、ステップ７０５へ進み、デスプーラ３０５は、ステップ７０４で通知を受けた印刷処理可能な物理ページのＩＤを保存する。続くステップ７０６では、デスプーラ３０５は、ステップ７０５で保存した物理ページＩＤのすべてのページに関して印刷処理が終了しているかどうか判定する。
【００７９】
ここで全物理ページの処理が済んでいる場合は、ステップ７０７へ進み、前述のステップ７０３で終了フラグが立てられているのか判定する。終了フラグがたっている場合はジョブの印刷が終了したとみなし、デスプーラ３０５の処理終了の通知をスプールファイルマネージャ３０４に通知して処理を終える。ステップ７０７で、終了フラグが立っていないと判定された場合は、ステップ７０１へ戻り次の通知を待つ。一方、ステップ７０６で印刷可能な物理ページが残っていると判定された場合には、ステップ７０８へ進み、デスプーラ３０５は、保存された物理ページＩＤから未処理の物理ページＩＤを順に読み出し、読み出した物理ページＩＤに対応する物理ページの印刷データ生成に必要な情報を読み込み印刷処理を行う。
【００８０】
印刷処理では、スプールファイル３０３に格納された印刷要求命令を、デスプーラ３０５においてグラフィックエンジン２０２が認識可能な形式（ＧＤＩ関数）に変換して転送する。本実施形態のような、複数論理ページを１物理ページにレイアウトするような加工設定（以下Ｎページ印刷）については、このステップで縮小配置を考慮しながら変換する。
【００８１】
必要な印刷処理が終えたならば、続くステップ７０９において１物理ページの印刷データ生成終了の通知をスプールファイルマネージャ３０４に対して行う。そして再びステップ７０６へ戻り、ステップ７０５で保存しておいた印刷可能な物理ページＩＤすべてについて印刷処理を行うまで繰り返す。
【００８２】
以上が、ディスパッチャ３０１、スプーラ３０２、スプールファイルマネージャ３０４、デスプーラ３０５を用いた印刷処理の流れである。上記のように処理することにより、スプーラ３０２が中間コードを生成してスプールファイル３０３に格納するタイミングでアプリケーション２０１が印刷処理から開放されるので、プリンタドライバ２０３に直接出力するよりも短時間で済む。
【００８３】
＜ジョブ出力用設定ファイルの構成＞
図１０は、ステップ６０８において、スプールファイルマネージャ３０４が生成する印刷可能となった物理ページを構成する情報を保存しているジョブ出力用設定ファイルの例を示す。フィールド１００１は、ジョブを識別するためのＩＤで、本情報を保存しているファイル名や共有メモリの名称という形で保持することも可能である。フィールド１００２はジョブ設定情報である。
【００８４】
ジョブ設定情報には、グラフィックエンジン２０２に対してジョブの印刷を開始するために必要な構造体、本発明のタブ紙印刷の設定、Ｎページ印刷の指定、ページ枠などの追加描画の指定、部数、ステイプルなどのフィニッシング指定など、１つのジョブに対して１つしか設定できない情報が含まれている。ジョブ設定情報１００２には、ジョブに対する機能に応じて必要なだけ情報が保存される。
【００８５】
フィールド１００３はジョブの物理ページ数で、本フィールド以降、この数の分だけ物理ページ情報が保存されていることを示す。本実施形態では、印刷可能な物理ページ数を通知する方式であるので、このフィールドは無くても動作可能である。これ以降、フィールド１００４から最後までフィールド１００３の数だけ物理ページ情報が格納される。物理ページ情報については図１２で説明する。
【００８６】
図１１は、図１０のフィールド１００２に図示されたジョブ設定情報の一例である。フィールド１１０１は全物理ページ数である。フィールド１１０２は、全論理ページ数である。フィールド１１０１および１１０２は、印刷データに追加して、ページ数などを付加情報として印刷する場合などに利用する。印刷が続いている際には、両フィールドは暫定的な値、もしくは、印刷が終了するまでスプールファイルマネージャ３０４は印刷可能な物理ページの情報の作成を延期する。
【００８７】
フィールド１１０３は本印刷ジョブを何部印刷するかを指定する部数情報である。フィールド１１０４は、フィールド１１０３で複数部印刷する設定の場合、部単位で印刷するかどうかの指定である。フィールド１１０４はステイプル、パンチ、Ｚ折などのフィニッシング情報で、プリンタ本体もしくは外部にフィニッシャーがある場合に指定される。
【００８８】
フィールド１１０６は付加印刷情報で、ページ枠などの飾り、日付などの付加情報、ユーザー名、ページ数、ウォーターマーク印刷等、ジョブに対して付加する情報が保存される。機能が増えるに従って本ジョブ設定情報に含まれるフィールドの数も増加し、例えば、両面印刷が可能な場合は、両面印刷の指定を保存するフィールドが追加される。
【００８９】
図１２は、図１０のフィールド１００４に図示された物理ページ情報の一例を示す。最初のフィールド１２０１は物理ページ番号で、印刷順序の管理や、物理ページ番号を追加印刷する際に使用される値である。フィールド１２０２は物理ページ設定情報で、物理ページ毎にレイアウトやカラー・モノクロの指定が可能である場合、レイアウトやカラー・モノクロの設定が保存される。
【００９０】
フィールド１２０３は本物理ページに割り付けられる論理ページ数で、１物理ページに４ページを割り付ける場合には４もしくは４ページ印刷を示すＩＤが保存される。フィールド１２０４以降はフィールド１２０３で指定された数だけ論理ページの情報が保存される。
【００９１】
アプリケーション２０１から印刷されたページ数によっては、１２０３で指定されるページ数よりも実際のページデータ数が少なくなる場合がある。その場合には、論理ページ情報に空ページを示す特別なデータを保存して対応する。ただし、本発明のタブ紙印刷においては、１物理ページ中の論理ページ数は１となる。
【００９２】
図１３は、１２０２の物理ページ設定情報の例である。フィールド１３０１は物理ページ上への論理ページの配置順で、Ｎページ印刷で、物理ページ上に論理ページを配置する順番（左上から横へ、左上から下へ等）の指定が保存されている。システムによっては、配置順ではなく、フィールド１２０４以降の論理ページ情報の順番をページ番号順ではなく、配置順に応じた順序で配することで１３０１の設定を代用する場合もある。
【００９３】
フィールド１３０２は両面印刷の表・裏の情報が格納される。本発明においては、タブ紙の表面を始めに印刷し、その後、タブの裏面に対する印刷を行うが、タブ表面の印刷時には表面をあらわす値が格納され、タブ裏面に対する印刷の際は裏面を表す値が代入されることになる。
【００９４】
その他、例えば綴じ代を表裏でそろえる際に使用される。フィールド１３０３はカラーページかモノクロページかの指定で、プリンタがモノクロモードとカラーモードを持つ場合、カラーページとモノクロページが混在する文書で、カラーページをカラーモードで、モノクロページをモノクロモードで印刷したい場合などに使用される値である。
【００９５】
この情報を持つことにより、オートカラーモードとして、ページ単位にカラープリンタで処理を変更することが可能となる。つまり、カラーページは、中間転写体（中間転写ドラム、中間転写ベルト）もしくは転写体（転写ドラム、転写ベルト）がデバイスカラーの数分、ＹＭＣＫなら４回転し、モノクロページは、ブラックだけ１回転することにより転写制御することを可能とする。
【００９６】
フィールド１３０４は付加印刷情報で、物理ページに対して、ページ数や、日付などの付加情報を印刷する場合に使用される。物理ページ設定情報も、システムの機能に応じてフィールドが追加される。
【００９７】
図１４は、１２０４で示された論理ページ情報の一例を示す。フィールド１４０１は論理ページのＩＤで、このＩＤを利用して、スプールファイル３０３から論理ページに対応するページ描画ファイルの中間コードを参照する。このＩＤを利用して論理ページの中間コードへアクセス可能であれば良く、ファイルやメモリポインタであっても、論理ページを構成する中間コード自身が入っていてもよい。
【００９８】
フィールド１４０２は論理ページ番号で論理ページ番号を付加情報として印刷する場合や、論理ページＩＤの補助情報に使用される。フィールド１４０３のフォーマット情報には、論理ページ単位で指定可能である各種設定項目が保存される。例えば、ページ枠などの付加印刷情報、拡縮率などの論理ページ単位に指定される各種設定の情報が保存される。また、必要であれば、論理ページ単位のカラー・モノクロ情報などの論理ページに対する属性情報を保存する事も可能である。逆に、論理ページ単位で設定を切りかえる事や論理ページ単位での属性情報が不要であるようなシステムでは、フィールド１４０３は不要である。
【００９９】
ジョブ出力用設定ファイルは、上記のように構成されている。なお、ジョブ設定ファイルもほぼ同様であり、印刷体裁（片面、両面、製本印刷）、印刷レイアウト（タブ紙印刷、Ｎｕｐ、ポスター印刷）、付加情報（ウォーターマーク、日付、ユーザー名の付加）、部数、用紙サイズ情報がジョブとして有しており、物理ページ毎に、論理ページの配置順、両面印刷の表面か、裏面か、カラーモード等から構成されている。
【０１００】
＜単一原稿でタブ紙への両面印刷を実現するための処理＞
以下に、単一原稿でタブ紙への両面印刷を実現するための処理について、詳細に説明する。
【０１０１】
まず、５タブ用紙の両面タブ印刷の場合を例にとって、スプールファイルマネージャ３０４の動作を説明する。スプールファイルマネージャ３０４においては、図６のステップ６０７およびステップ６０８において、印刷する物理ページ情報が生成される。５タブ用紙の両面印刷の例では、１０物理ページ分の印刷データが生成される。内訳は、第１物理ページから第５物理ページまでは、図１３におけるフィールド１３０２に表面を示す値が格納される。
【０１０２】
また、第６物理ページから第１０物理ページは、裏面用の印刷データとなるので、フィールド１３０２には裏面を示す値が格納される。また、第６物理ページから第１０物理ページについては、図６におけるステップ６０９（スプーラ３０２からのスプール終了通知）において、印刷に必要なページ数が決定された時点で生成される。
【０１０３】
図８は、タブ紙原稿における描画データについて説明した図である。通常、タブ紙原稿は、Ａ４あるいはレターの原稿サイズの有効印字領域８０１内において、各ページにおけるタブ原稿を用意するのが一般的である。つまり、５タブ用の原稿であれば５ページ、１０タブ用の原稿であれば１０ページ分用意されることになる。
【０１０４】
まず、有効印字領域における原点（Ｘ０，Ｙ０）に対して、タブ部に印刷されるデータの基準座標が（Ｘ１，Ｙ１）であることを示している。本実施形態のようなテキストデータの場合、座標は文字列の基準値が用いられるのが一般的であるが、基準値は本発明を実現するプログラムが動作するＯＳ仕様により、文字列矩形の左上／左下であったり、文字デザインのベースラインであったりと異なるが、本発明において特に制限とするところではない。
【０１０５】
また、タブ印刷を行う場合には、原稿に対するオフセット値  ｏｆｆｓｅｔ＿ｘを印刷装置が認識することにより、原稿に対してｏｆｆｓｅｔ＿ｘの数値分だけ印刷原稿がオフセットされ、タブの部分に印刷される。このｏｆｆｓｅｔ＿ｘは本発明におけるプログラムにおいてユーザーインタフェイスを持つことによって設定可能な値であってもよいし、また、印刷装置（プリンタ）が提供するユーザーインタフェイスから設定可能でも良い。あるいは、印刷装置固有の固定値であってもよい。
【０１０６】
したがって、タブ紙原稿印刷においては、各ページに配置するオブジェクトの座標と、オフセット値を独立に考慮してよい。図８では、１ページ目のタブ原稿を示しているが、２ページ目以降、図９に示すようにｏｆｆｓｅｔ＿ｘ分のシフトで各タブに収まるように配置され、用意される。
【０１０７】
図１５は、タブ紙の裏面に印刷される際の座標計算について、第１ページと第５ページの座標変換について説明する図である。タブの数すなわち原稿の総ページ数をｎ、現在印刷しようとしている原稿が第ｋページであるとすると、裏面に対する印刷データのオフセット値  ｏｆｆｓｅｔ＿ｙ  は以下の式により計算することができる。
【０１０８】
【数１】
Ｏｆｆｓｅｔ＿ｙ  ＝  Ｙ（ｎ＋１−ｋ）  −  Ｙ（ｋ）
ここで、Ｙ（ｋ）は、第ｋ物理ページに格納されている印刷オブジェクトのＹ座標値を示す。すなわちデスプーラ３０７における描画処理（図７におけるステップ７０８）の際、描画データのＹ座標に対して、上記調整値を加味しながら印刷データを生成することになる。
【０１０９】
図１５の場合はＯｆｆｓｅｔ＿ｙ  ＝  Ｙ（５＋１−５）  −  Ｙ（５）となるので、ＴＡＢ１のＹ座標値からＴＡＢ５のＹ座標値を引いた値がオフセット値となり、デスプーラ３０７における描画処理では、１５０１分だけＴＡＢ５の描画データをずらして印刷データを生成することになる。
【０１１０】
図１６は、デスプーラ３０５における図７のステップ７０８における処理を示すフローチャートである。
【０１１１】
まず、ステップ１６０１においては、図１８に対応するユーザー設定に基づいてタブ紙印刷の設定が為されているか否かを判定する。もし、タブ紙印刷でなく通常の記録紙印刷であればステップ１６０３へ進み描画データを生成した後、ステップ１６０４にて記録紙に対する印刷処理をおこなう。
【０１１２】
一方、ステップ１６０１においてタブ紙印刷と判定されればステップ１６０２へ進み、印刷処理を行う物理ページが表面かどうかを判定する。もし、表面ならばスプーラ３０５における処理は記録紙印刷と変わりがないので、ステップ１６０３へ進んで通常の印刷処理を行う。この場合ステップ１６０３では、上記の図８、図９に相当する描画データの生成を行う。
【０１１３】
一方、ステップ１６０２で裏面と判定された場合はタブ紙裏面印刷を行うためにステップ１６０５へ進む。このステップ１６０５では、前述の式１により、Ｏｆｆｓｅｔ＿ｙを計算する。次に、ステップ１６０６において、Ｏｆｆｓｅｔ＿ｙ分だけ移動させた座標値において描画データを生成し、それに基づいて印刷処理を行う。
【０１１４】
以上の処理によって、単一原稿でタブ紙への両面印刷を実現することが可能となる。
【０１１５】
【第２の実施形態】
第１の実施形態では、単一オブジェクトかつテキストデータを想定したが、タブの印刷領域は用紙依存であるので、データに関係することなく、用紙サイズおよびタブの数から一定の値をオフセット値として算出する方法により、テキストデータ以外のオブジェクトや、複数のオブジェクトを扱うことが可能である。
【０１１６】
具体的には、実施形態１におけるＯｆｆｓｅｔ＿ｙの計算において、Ｙ（ｋ）の値が印刷データではなく、図１７のように、タブ用紙自体のＹ軸方向における領域を示す座標値Ｙ（ｐｋ）を使用することで実現される。
【０１１７】
図１７では、５タブの例を示しているので、Ｙ（ｐ１）からＹ（ｐ５）までが存在する。具体的な計算方法としては、タブ数ｎ、用紙サイズの情報Ｌｙとすると、ｋ番目のタブ（ｋ）の基準座標Ｙ（ｐｋ）と、オフセット値Ｏｆｆｓｅｔ＿ｙは、以下の式で算出される。
【０１１８】
【数２】
Ｙ（ｐｋ）    ＝  （ｋ  −１）  ＊  Ｌｙ  ／  ｎ
【数３】
Ｏｆｆｓｅｔ＿ｙ    ＝    Ｙ（ｐ（ｎ＋１−ｋ））  −  Ｙ（ｐｋ）
上式３によって求められたＯｆｆｓｅｔ＿ｙを第１の実施形態で示した処理に使用することにより、同様に単一原稿でタブ紙への両面印刷を実現することが可能となる。
【０１１９】
【他の実施の形態】
なお、本発明の目的は、前述した実施形態の機能を実現する手順を実現するプログラムコードを記憶した記憶媒体を、システムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても達成される。
【０１２０】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１２１】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ネットワーク上のファイルサーバが有する記憶装置、或いは、インターネット上のＦＴＰサーバが有する記憶装置など、あらゆる記録媒体を用いることができる。
【０１２２】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０１２３】
【発明の効果】
以上のように、本発明によれば、表面用のタブレイアウトと、裏面用のタブレイアウトの２種類を用意することなく、単一レイアウトに基づいてタブ紙の両面印刷を行うことができ、ユーザーの所望するタブ紙印刷制御方法を提供可能となる。
【図面の簡単な説明】
【図１】本発明の実施形態における印刷システムの構成を説明するブロック図である。
【図２】ホストコンピュータにおける印刷処理のためのソフトウエアモジュール構成の一例を示す図である。
【図３】ホストコンピュータにおける印刷処理のためのソフトウエアモジュール構成の他の一例を示す図である。
【図４】用紙搬送方向と、タブ原稿向きの関係を示す図である。
【図５】スプーラ３０２における処理を示したフローチャートである。
【図６】スプールファイルマネージャ３０４における印刷制御について示したフローチャートである。
【図７】デスプーラ３０５における処理を示したフローチャートである。
【図８】タブ紙原稿における描画データについて説明した図である。
【図９】２ページ目のタブ原稿の一例である。
【図１０】スプールファイルマネージャ３０４からデスプーラ３０５に対して物理ページの印刷要求を行う際に渡すデータ形式の一例を示した図である。
【図１１】スプールファイルマネージャ３０４からデスプーラ３０５に対して物理ページの印刷要求を行う際に渡すデータ形式の一例を示した図である。
【図１２】スプールファイルマネージャ３０４からデスプーラ３０５に対して物理ページの印刷要求を行う際に渡すデータ形式の一例を示した図である。
【図１３】スプールファイルマネージャ３０４からデスプーラ３０５に対して物理ページの印刷要求を行う際に渡すデータ形式の一例を示した図である。
【図１４】スプールファイルマネージャ３０４からデスプーラ３０５に対して物理ページの印刷要求を行う際に渡すデータ形式の一例を示した図である。
【図１５】本発明の実施形態におけるタブ紙の裏面に印刷される際の座標計算について、第１ページと第５ページの座標変換について説明する図である。
【図１６】デスプーラ３０５の図７ステップ７０８内の処理を示すフローチャートである。
【図１７】第２の実施形態における、裏面タブ印刷の際に使用するオフセット値を示す図である。
【図１８】タブ紙の両面印刷を行う場合のＧＵＩの例を示したものである。
【符号の説明】
１    ＣＰＵ
２    ＲＡＭ
３    ＲＯＭ
４    システムバス
１２    ＣＰＵ
１３    ＲＯＭ
１９    ＲＡＭ
３０００    ホストコンピュータ
１５００    プリンタ
【図１】
2004152003.tif 000003
【図２】
2004152003.tif 000004
【図３】
2004152003.tif 000005
【図４】
2004152003.tif 000006
【図５】
2004152003.tif 000007
【図６】
2004152003.tif 000008
【図７】
2004152003.tif 000009
【図８】
2004152003.tif 000010
【図９】
2004152003.tif 000011
【図１０】
2004152003.tif 000012
【図１１】
2004152003.tif 000013
【図１２】
2004152003.tif 000014
【図１３】
2004152003.tif 000015
【図１４】
2004152003.tif 000016
【図１５】
2004152003.tif 000017
【図１６】
2004152003.tif 000018
【図１７】
2004152003.tif 000019
【図１８】
2004152003.tif 000020