(57)【特許請求の範囲】
【請求項１】
アプリケーションで作成された文書ページのデータが格納されるスプールファイルから文書ページのデータを読み込み、読み込まれた文書ページのデータに基づきプリンタに供給されるビットマップデータを生成する印刷データ生成方法であって、
模様ページ生成手段が、前記アプリケーションからの印刷開始のイベントに応じて、文書ページ上に模様を付加するよう指示する模様設定がある場合に、前記スプールファイルに格納される模様ページのデータを生成する模様ページ生成ステップと、
合成ページ作成手段が、前記スプールファイルから文書ページのデータを読み込み拡大して描画し、前記スプールファイルから模様ページのデータを読み込み、前記拡大して描画した文書ページのデータに重ねて描画することにより、合成ページのデータを作成する合成ページ作成ステップと、
ビットマップデータ生成手段が、前記合成ページ作成ステップで作成された合成ページのデータから、ビットマップデータを生成するビットマップデータ生成ステップとを有することを特徴とする印刷データ生成方法。
【請求項２】
前記合成ページ作成ステップでは、前記スプールファイルから文書ページのデータと模様ページのデータとを読み出し、合成ページのデータを作成して、グラフィックデバイスインタフェースに供給し、
前記ビットマップデータ生成ステップでは、作成された合成ページのデータから、前記グラフィックデバイスインタフェースが生成した描画コマンドに基づき、ビットマップデータを生成することを特徴とする請求項１記載の印刷データ生成方法。
【請求項３】
前記模様ページは、のりしろを示す模様を含むことを特徴とする請求項１記載の印刷データ生成方法。
【請求項４】
前記模様ページは、切り取りを示す模様を含むことを特徴とする請求項１記載の印刷データ生成方法。
【請求項５】
前記模様ページ生成ステップでは、更に、印刷設定の変更のイベントに応じて、模様ページのデータを生成することを特徴とする請求項１記載の印刷データ生成方法。
【請求項６】
前記模様ページ生成ステップは、ユーザインタフェースドライバが実行し、
前記合成ページ作成ステップは、プリントプロサッセが実行し、
前記ビットマップデータ生成ステップは、プリンタグラフィックドライバが実行することを特徴とする請求項１記載の印刷データ生成方法。
【請求項７】
アプリケーションで作成された文書ページのデータが格納されるスプールファイルから文書ページのデータを読み込み、読み込まれた文書ページのデータに基づきプリンタに供給されるビットマップデータを生成する印刷データ生成装置であって、
前記アプリケーションからの印刷開始のイベントに応じて、文書ページ上に模様を付加するよう指示する模様設定がある場合に、前記スプールファイルに格納される模様ページのデータを生成する模様ページ生成手段と、
前記スプールファイルから文書ページのデータを読み込み拡大して描画し、前記スプールファイルから模様ページのデータを読み込み、前記拡大して描画した文書ページのデータに重ねて描画することにより、合成ページのデータを作成する合成ページ作成手段と、
前記合成ページ作成手段により作成された合成ページのデータから、ビットマップデータを生成するビットマップデータ生成手段とを有することを特徴とする印刷データ生成装置。
【請求項８】
前記合成ページ作成手段は、前記スプールファイルから文書ページのデータと模様ページのデータとを読み出し、合成ページのデータを作成して、グラフィックデバイスインタフェースに供給し、
前記ビットマップデータ生成手段は、作成された合成ページのデータから、前記グラフィックデバイスインタフェースが生成した描画コマンドに基づき、ビットマップデータを生成することを特徴とする請求項７記載の印刷データ生成装置。
【請求項９】
前記模様ページは、のりしろを示す模様を含むことを特徴とする請求項７記載の印刷データ生成装置。
【請求項１０】
前記模様ページは、切り取りを示す模様を含むことを特徴とする請求項７記載の印刷データ生成装置。
【請求項１１】
前記模様ページ生成手段は、更に、印刷設定の変更のイベントに応じて、模様ページのデータを生成することを特徴とする請求項７記載の印刷データ生成装置。
【請求項１２】
前記模様ページ生成手段は、ユーザインタフェースドライバにより実現され、
前記合成ページ作成手段は、プリントプロサッセにより実現され、
前記ビットマップデータ生成手段は、プリンタグラフィックドライバにより実現されることを特徴とする請求項７記載の印刷データ生成装置。
【請求項１３】
アプリケーションで作成された文書ページのデータが格納されるスプールファイルから文書ページのデータを読み込み、読み込まれた文書ページのデータに基づきプリンタに供給されるビットマップデータを生成する印刷データ生成方法を実現させるためのコンピュータプログラムであって、
前記アプリケーションからの印刷開始のイベントに応じて、文書ページ上に模様を付加するよう指示する模様設定がある場合に、前記スプールファイルに格納される模様ページのデータを生成する模様ページ生成ステップと、
前記スプールファイルから文書ページのデータを読み込み拡大して描画し、前記スプールファイルから模様ページのデータを読み込み、前記拡大して描画した文書ページのデータに重ねて描画することにより、合成ページのデータを作成する合成ページ作成ステップと、
前記合成ページ作成ステップで作成された合成ページのデータから、ビットマップデータを生成するビットマップデータ生成ステップとを、コンピュータに実行させるためのコンピュータプログラム。
【請求項１４】
前記合成ページ作成ステップでは、前記スプールファイルから文書ページのデータと模様ページのデータとを読み出し、合成ページのデータを作成して、グラフィックデバイスインターフェースに供給し、
前記ビットマップデータ生成ステップでは、作成された合成ページのデータから、前記グラフィックデバイスインタフェースが生成した描画コマンドに基づき、ビットマップデータを生成することを特徴とする請求項１３記載のコンピュータプログラム。
【請求項１５】
前記模様ページは、のりしろを示す模様を含むことを特徴とする請求項１３記載のコンピュータプログラム。
【請求項１６】
前記模様ページは、切り取りを示す模様を含むことを特徴とする請求項１３記載のコンピュータプログラム。
【請求項１７】
前記模様ページ生成ステップでは、更に、印刷設定の変更のイベントに応じて、模様ページのデータを生成することを特徴とする請求項１３記載のコンピュータプログラム。
【請求項１８】
請求項１３乃至１７のいずれか１項に記載のコンピュータプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は印刷データ生成方法及びその装置、すなわち、情報伝達用の文書データと機能表示用の模様データとを含む印刷データを作成する印刷データ生成方法及びその装置、特にアプリケーションが出力した文書等の1ページ分の印刷データを、複数枚の記録媒体上に分割して画像を形成するように印刷する機能を持つ印刷データ生成方法及びその装置に関するものである。
【０００２】
【従来の技術】
情報伝達用の印刷データと機能表示用の印刷データとを含む印刷データを作成する一例として、プリンタが扱うことのできる印刷用紙のサイズより大きな印刷結果を得ようとする場合がある。一般に、プリンタが扱うことのできる印刷用紙のサイズより大きな印刷結果を得る場合には、印刷データを部分的に分割し複数回に分けて印刷することにより分割印刷を行い、印刷された複数枚の用紙を適当に配置して互いに貼り合わせることで、もとの印刷用紙に納まるように印刷した印刷結果より大きいサイズの印刷結果を得ることが可能で、ポスター印刷と呼ばれている。
【０００３】
このポスター印刷を実現するため、例えばアプリケーションが扱う文書のページを拡大して複数枚の用紙に分割して印刷する場合、貼り合わせ作業を容易にするために、各用紙の少なくとも一辺に糊代用の余白を設けて印刷を行っていた。また、プリンタによっては印刷可能領域が用紙のサイズより小さいため印刷後の用紙には余白が残り、貼り合わせの際には不要領域となって極端な場合には貼り合わせにより印刷情報が覆われるため、余白部分を切り落とせるように予め切取用の余白を設けて印刷を行っていた。
【０００４】
また更に、切り取り作業や貼り合わせ作業を容易にするため糊代用余白と切取用余白の印刷データ側に破線を描画したり、糊代用余白には「のりしろ」切取用余白には「切り取り」等と文字列を描画したり、或いは文字列ではなくて糊代と切取をあらわすようなアイコン等の図形を余白に描画したりしていた。以下、この明細書ではこれらの文字列やアイコン等の図形を総称して模様と呼ぶ。
【０００５】
【発明が解決しようとする課題】
ところで、前記のような従来の技術には、次のような解決すべき課題があった。
【０００６】
模様付きの文書印刷を実行する場合、従来は、プリンタドライバにより模様のビットマップデータを生成し、文書の各ページのビットマップデータと重ね合わせた後のデータをプリンタに送っていた。従って、プリンタドライバがビットマップデータを合成するために大量の記憶領域を使用する欠点がある。
【０００７】
加えて、ネットワーク環境において、クライアント側でアプリケーションが印刷データを作成し、サーバ側でプリンタドライバが動作する場合に、クライアント側でユーザが指定した模様の文字列のフォントやアイコンの画像等がサーバに存在しない場合は、模様を付加した印刷が出来ない欠点がある。
【０００８】
本発明は、前記従来の欠点を除去し、情報伝達用の文書データと機能表示用の模様データ（糊代や切取など）とを含む印刷データをプリントする場合に、必要とする記憶領域の容量を小さくし、ネットワークにかかる負荷を低減出来、サーバに必要なフォント等が存在しなくても印刷が可能となる印刷データ生成方法及びその装置を提供する。
【０００９】
【問題を解決するための手段】
前記の目的を達成するために、本発明の印刷データ生成方法及びその装置は、システムによる印刷イベントの通知を利用し模様ページをアプリケーションに成り代わり描画し、アプリケーションの文書ページの間に挿入することで、システム標準のスプールファイルに保存され、デスプーリングにおいてプリントプロセッサにより重ね合わせを行い、プリンタグラフィクスドライバは重ね合わせ処理が行われた印刷データをビットマップイメージに変換しプリンタに供給する。
【００１０】
すなわち、本発明の印刷データ生成方法は、アプリケーションで作成された文書ページのデータが格納されるスプールファイルから文書ページのデータを読み込み、読み込まれた文書ページのデータに基づきプリンタに供給されるビットマップデータを生成する印刷データ生成方法であって、模様ページ生成手段が、前記アプリケーションからの印刷開始のイベントに応じて、文書ページ上に模様を付加するよう指示する模様設定がある場合に、前記スプールファイルに格納される模様ページのデータを生成する模様ページ生成ステップと、合成ページ作成手段が、前記スプールファイルから文書ページのデータを読み込み拡大して描画し、前記スプールファイルから模様ページのデータを読み込み、前記拡大して描画した文書ページのデータに重ねて描画することにより、合成ページのデータを作成する合成ページ作成ステップと、ビットマップデータ生成手段が、前記合成ページ作成ステップで作成された合成ページのデータから、ビットマップデータを生成するビットマップデータ生成ステップとを有することを特徴とする。ここで、前記合成ページ作成ステップでは、前記スプールファイルから文書ページのデータと模様ページのデータとを読み出し、合成ページのデータを作成して、グラフィックデバイスインタフェースに供給し、前記ビットマップデータ生成ステップでは、作成された合成ページのデータから、前記グラフィックデバイスインタフェースが生成した描画コマンドに基づき、ビットマップデータを生成する。また、前記模様ページは、のりしろを示す模様を含む。また、前記模様ページは、切り取りを示す模様を含む。また、前記模様ページ生成ステップでは、更に、印刷設定の変更のイベントに応じて、模様ページのデータを生成する。
【００１１】
又、前記模様ページ生成ステップは、ユーザインタフェースドライバが実行し、前記合成ページ作成ステップは、プリントプロサッセが実行し、前記ビットマップデータ生成ステップは、プリンタグラフィックドライバが実行する。
【００１２】
又、本発明の印刷データ生成装置は、アプリケーションで作成された文書ページのデータが格納されるスプールファイルから文書ページのデータを読み込み、読み込まれた文書ページのデータに基づきプリンタに供給されるビットマップデータを生成する印刷データ生成装置であって、前記アプリケーションからの印刷開始のイベントに応じて、文書ページ上に模様を付加するよう指示する模様設定がある場合に、前記スプールファイルに格納される模様ページのデータを生成する模様ページ生成手段と、前記スプールファイルから文書ページのデータを読み込み拡大して描画し、前記スプールファイルから模様ページのデータを読み込み、前記拡大して描画した文書ページのデータに重ねて描画することにより、合成ページのデータを作成する合成ページ作成手段と、前記合成ページ作成手段により作成された合成ページのデータから、ビットマップデータを生成するビットマップデータ生成手段とを有することを特徴とする。ここで、前記合成ページ作成手段は、前記スプールファイルから文書ページのデータと模様ページのデータとを読み出し、合成ページのデータを作成して、グラフィックデバイスインタフェースに供給し、前記ビットマップデータ生成手段は、作成された合成ページのデータから、前記グラフィックデバイスインタフェースが生成した描画コマンドに基づき、ビットマップデータを生成する。また、前記模様ページは、のりしろを示す模様を含む。また、前記模様ページは、切り取りを示す模様を含む。また、前記模様ページ生成手段は、更に、印刷設定の変更のイベントに応じて、模様ページのデータを生成する。
【００１３】
又、前記模様ページ生成手段は、ユーザインタフェースドライバにより実現され、前記合成ページ作成手段は、プリントプロサッセにより実現され、前記ビットマップデータ生成手段は、プリンタグラフィックドライバにより実現される。
【００１６】
又、本発明のコンピュータプログラムは、アプリケーションで作成された文書ページのデータが格納されるスプールファイルから文書ページのデータを読み込み、読み込まれた文書ページのデータに基づきプリンタに供給されるビットマップデータを生成する印刷データ生成方法を実現させるためのコンピュータプログラムであって、前記アプリケーションからの印刷開始のイベントに応じて、文書ページ上に模様を付加するよう指示する模様設定がある場合に、前記スプールファイルに格納させる模様ページのデータを生成する模様ページ生成ステップと、前記スプールファイルから文書ページのデータを読み込み拡大して描画し、前記スプールファイルから模様ページのデータを読み込み、前記拡大して描画した文書ページのデータに重ねて描画することにより、合成ページのデータを作成する合成ページ作成ステップと、前記合成ページ作成ステップで作成された合成ページのデータから、ビットマップデータを生成するビットマップデータ生成ステップとを、コンピュータに実行させる。
【００１７】
かかる構成により、
(1)模様ページの印刷データと文書ページの印刷データとを重ね合わせ合成した後でビットマップデータに変換しプリンタに送るので、記憶領域の使用量を抑えられコンピュータの負荷が減り印刷速度も向上する。
【００１８】
(2)スプールファイル中に挿入される模様ページの数は、アプリケーションが発行した印刷ページ数に依存しないのでスプールされるデータサイズが小さくて済む。
【００１９】
(3)ネットワーク環境における印刷では、クライアントからサーバへ模様ページを転送する特別な手法を用いる必要が無く、データ転送時間が短くなりネットワークにかける付加が小さくなる。
【００２０】
【発明の実施の形態】
以下、本発明の実施の形態を、具体例を用いて説明する。
【００２１】
＜実施形態１＞
（本実施形態の印刷システムの構成例）
図1は、本発明による印刷システムの実施形態を示すブロック図である。図において、特に本発明の実現に関るモジュールは、模様設定処理部と模様ページ生成処理部を兼備するユーザインタフェースドライバ3と、模様ページ合成処理部として機能するプリントプロセッサ5である。なお、本実施形態ではオペレーティングシステムとしてWindowsを用いた場合を示すが、本発明はこれに限定されない。
【００２２】
図1の印刷システムは、上位装置であるパーソナルコンピュータ等でアプリケーション1が作成した情報伝達にための文書等の印刷用データを、GDI2を通じてEMFスプールファイル4に一時保持し、これをビットマップデータに変換してプリンタ7に供給し印刷するよう構成されている。ここで、GDIとはグラフィックデバイスインタフェースのことでWindowsのグラフィクスエンジンである。また、EMFとはEnhanced Meta Fileの略でWindowsにおける描画データの論理的な格納形式であり、EMFスプールファイル4には印刷データがEMF形式で格納される。
【００２３】
ユーザインタフェースドライバ3は、一般に印刷に使用する用紙サイズや印刷方向、その他の属性を設定する機能を提供する。同時に、本実施形態におけるユーザインタフェースドライバ3は、用紙サイズ等の属性の他にポスター印刷の切取余白や糊代余白部分の模様の属性を設定する機能を提供する模様設定処理部を有し、模様の属性が設定された場合、アイコンを用いる模様ならばアイコン画像が格納されているファイル名等の設定値をアプリケーション1に返却する。また、余白部分の切取作業や張付作業をする際の位置合わせを容易にするトンボ線や余白部分を示す破線等を用いる場合においても、それらの設定値をアプリケーション1に返却する。
【００２４】
アプリケーション1は、任意の文書を作成し、印刷するために印刷システムに印刷開始を通知する。ここで、GDI2は、ユーザインタフェースドライバ3にアプリケーション1による印刷開始の印刷イベントを通知する。ユーザインタフェースドライバ3は、印刷開始の印刷イベントを受け取ると、アプリケーション1に成り代わり模様のみ描画されたページを生成する。
【００２５】
続いて、アプリケーション1は任意の文書のページデータをGDI2に供給し、印刷処理を続行する。ここでGDI2を経由した印刷データは、EMFスプールファイル4に格納される。従って、EMFスプールファイル4には、ユーザインタフェースドライバ3が生成した模様ページの描画データとアプリケーション1が生成した文書ページの描画データとが格納される。
【００２６】
プリントプロセッサ5は、Windowsにおいて、印刷時にEMFスプールファイル4から印刷出力情報と印刷データとを読込み、印刷データを1ページずつGDI2を介してプリンタグラフィクスドライバ6に供給して印刷を行うモジュールである。本実施形態におけるプリントプロセッサ5は、同時に模様ページ合成処理部の機能を有し、EMFスプールファイル4から印刷するべき文書データのページと、ユーザインタフェースドライバ3が作成した模様ページとを読み出し、これらを重ね合わせて新たに合成ページを作成してGDI2に供給する。ここで、プリントプロセッサ5は、アプリケーション1の文書データの1ページを複数ページに分割して印刷するため、模様ページ合成処理において文書ページを拡大した描画データと模様ページとを重ね合わせて合成ページを作成する作業を、複数回繰り返す。
【００２７】
イメージ生成処理部の機能を有するプリンタグラフィックドライバ6は、プリントプロセッサ5が供給した合成ページの印刷データを基に、GDI2が生成したグラフィック描画コマンドからビットマップデータを生成するモジュールであり、生成したビットマップデータを図に示していないデータ送信部を介してプリンタ7に供給する。
【００２８】
出力デバイスであるプリンタ7は、例えば、プリンタグラフィックドライバ6から渡された、印刷データのページ12が拡大描画されたイメージと模様ページ9とが重ね合わされたビットマップデータを用紙8に対し印刷する機能を持つ。
【００２９】
本実施形態で模様の属性に文字列を設定する場合には、予めユーザインタフェースドライバ3で文字列を描画した模様ページを作成しEMFスプールファイル4に格納しておき、プリントプロセッサ5で模様ページの印刷データとアプリケーション1からの文書ページの印刷データとを重ね合わせた合成ページの印刷データを、プリンタグラフィクスドライバ6に供給して、印刷すべき文書ページと模様ページとが重ね合わされた状態のビットマップを生成し、そのビットマップをプリンタ7に供給する。
【００３０】
図1の例には、アプリケーション1の文書ページを2分割する（すなわち、印刷データを２倍に拡大する）場合を示しており、ユーザインタフェースドライバ3は模様ページとして「切り取り」文字列のみを描画した模様ページ9と「のりしろ」文字列のみを描画した模様ページ10とを、アプリケーション1の印刷に先立って作成し、プリントプロセッサ5はアプリケーショ 1の文書ページを拡大した描画データと模様ページ9とを重ね合わせた合成ページを作成する。同様に、アプリケーション1の文書ページを拡大した描画データと模様ページ10とを重ね合わせた合成ページを作成して、GDI2を介してプリンタグラフィックドライバ6に供給する。こうして、出力デイバイスであるプリンタ7からは2枚の用紙8, 9が印刷される。図1では2分割のポスター印刷の例を示したが任意の分割数に対しても同様の印刷方法をとる。尚、以下で説明するように、「切り取り」及び「のりしろ」の配置は、分割数に対応してそれぞれ設定される。
【００３１】
（本実施形態の印刷システムの動作手順例）
図2には、実施形態１のユーザインタフェースドライバ3の動作フローチャートを示す。また図3には、実施形態１のプリントプロセッサ5の動作フローチャートを示す。これらの図を用いて、図1に示す印刷システムの全体的な動作を説明する。
【００３２】
まず、図2を用いて模様ページ生成処理の動作を説明する。ユーザインタフェースドライバ3による模様ページ生成処理は、GDI2から印刷イベントを受け取った時に行われる。
【００３３】
まず、ステップS1においてGDI2によって通知された印刷イベントがプリントプロセッサ5による印刷イベントかアプリケーション1による印刷イベントかを判断し、プリントプロセッサ5による印刷イベントの場合には処理は行わず終了する。アプリケーション1の印刷イベントの場合はステップS2に移る。ステップS2では印刷イベントの種別を判定し、印刷開始を示す印刷イベントの場合はステップS3に進む。これら以外の印刷イベントの場合は処理は行わず終了する。次に、ステップS3では印刷設定に模様の設定があるかどうかを判定し、模様の設定がされている場合はステップS4に進む。模様の設定がされていない場合は終了する。
【００３４】
ステップS4では、アプリケーション1に成り代わり模様ページを描画・作成するため印刷システムに1ページ印刷開始を通知する。印刷システムはこの通知をアプリケーション1による通知として扱うため、この後ユーザインタフェースドライバ3が描画する模様ページは、アプリケーション1が描画する文書ページと同様に扱われる。次に、ステップS5ではユーザにより設定された模様の属性の設定値が正当化かどうかを判定する。例えば模様にアイコンを用いる場合、画像ファイルが存在するかどうかなどを判定する。設定値が正当ならばステップS6に進む。設定値が不正ならば模様の描画は行わずステップS7に移り、模様が描画されていないページを作成する。
【００３５】
ステップS6では、GDI2を介しアプリケーション1に代わって、切取用余白、糊代用余白のそれぞれに模様の属性の設定値に従い様々な模様を適切に描画する。たとえば模様に文字列が指定されている場合は、フォントの設定値に従い文字列を描画する。また模様に画像を用いる場合は、拡大/縮小処理や濃度変換等を行い描画する。ステップS7では、アプリケーションに成り代わり印刷システムに1ページ印刷終了の通知を行う。これにより、ユーザインタフェースドライバ3が描画・作成した模様ページがEMFスプールファイル4に格納される。
【００３６】
次に、図3を用いて模様ページ合成処理の動作を説明する。プリントプロセッサ5による模様ページ合成処理は印刷ジョブごとに行われる。
【００３７】
まず、ステップS21で模様の設定がなされているかどうかを判定する。模様設定がある場合はEMFスプールファイル4に格納されているページの印刷データ、模様設定がない場合はステップS26に移り通常の印刷を開始する。
【００３８】
ステップS22からS25は、EMFスプールファイル 4に格納されている各ページ間の設定の相違からスプールファイル中のページ番号と対応するアプリケーション1の文書ページ番号を記録するループを示す。ステップS23では連続する２つのページデータの印刷設定を比較し、印刷設定が途中で変更されたか判定する。変更がなければステップS25へ移る。変更があればステップS24に進む。ステップS24では、EMFスプールファイル4中のページ番号と対応するアプリケーション1のリストに保存し、次に調査するスプールページ番号をユーザインタフェースドライバ3が挿入した模様ページの枚数だけスキップする。ステップS25ではスプールファイル4中のページデータを全て調査したならばステップS26に進み、調査していないページが残っていれば、次のページの印刷設定が変更されたか調査するためステップS22に戻りループを繰り返す。
【００３９】
ステップS26では、プリントプロセッサ5が作成するページを実際に印刷するため、印刷システムに印刷開始を通知する。
【００４０】
ステップS27からS33は、印刷されるべき最終物理ページまで各文書ページを印刷するためのループである。各物理ページの印刷処理はステップS28に続く。全ての物理ページを印刷した後は、ステップS34に進み印刷システムに印刷処理終了を通知する。
【００４１】
各物理ページの印刷処理はステップS28から始まり、まず印刷システムに1ページ印刷開始を通知する。続いて、ステップS29で印刷すべき物理ページ番号に対応するアプリケーション1の文書ページ番号を計算し、アプリケーションの文書ページ番号に対応するEMFスプールファイル4中のページ番号を前記ページ対応リストから取得し、EMFスプールファイル4から前記文書ページを読込み拡大描画する。
【００４２】
ステップS30では、印刷すべき文書ページに模様が設定されているか判定し、模様が設定されていなければステップS32に移り物理ページの印刷を終了する。模様が設定されていればステップS31に進む。ステップS31では、アプリケーション 1の印刷すべき文書ページ番号に対応するEMFスプールファイル4中の模様ページの番号を前記ページ対応リストから取得し、EMFスプールファイル4から前記模様ページを読込み描画する。この後、物理ページの印刷を終了するためにステップS32に進む。ステップS32では、印刷システムに1ページ印刷終了を通知して物理ページの印刷を終了する。
【００４３】
以上で図3に示した模様ページ合成処理が終了する。ステップS32でプリントプロセッサ5が合成ページを作成し物理ページの終了を通知するごとに、プリンタグラフィクスドライバ6が合成ページをビットマップデータに変換し、ビットマップデータは図には示さない所定のデータ送信処理を介してプリンタ7に供給され合成されたページが印刷される。
【００４４】
（本実施形態の印刷例）
次に、図4にはEMFスプールファイル4に格納される模様ページと文書ページの状態と、用紙に印刷される物理ページの関係の概念図を示す。ここで、アプリケーション1は印刷の途中で印刷設定を変更せずに文書ページを3ページ印刷し、印刷設定として2分割のポスターで切取領域と糊代領域とに文字列模様が指定されていることを条件とする。
【００４５】
図4の(A)はEMFスプールファイル4に格納されるページ順を示している。EMFスプールファイル4に格納される先頭2ページはユーザインタフェースドライバ3が作成した模様ページとなり、アプリケーション1が作成した文書ページはEMFスプールファイル4中の3〜5ページ目に格納される。プリントプロセッサ5は各文書ページに最適な模様ページとしてスプールページ1とスプールページ2を採用し、各文書ページを拡大印刷した時、文書ページの上端半分に当たる模様ページにはスプールページ1を重ね合わせ、文書ページの下端半分に当たる模様ページにはスプールページ2を重ね合わせて描画することで、図4の(B) に示されるように印刷結果である物理ページ1〜6が得られる。
【００４６】
次に、図5には模様ページと文書ページに重ね合わせて描画するプリントプロセッサ5の模様ページ合成処理の概念図を示す。ここでは、2分割のポスター印刷でアプリケーション1の文書ページの上端半分を印刷する際を例に挙げる。
【００４７】
最初にアプリケーション1の文書ページを拡大描画し、次に模様ページを重ね合わせて描画することで、印刷される合成ページを作成する。図5では模様ページに切取領域の「切り取り」文字列と切り取り領域の切り取り線を示したが、画像を用いてもよい。図示していない文書ページの下端半分には糊代領域があり「のりしろ」文字列等を用いる。また、2分割より大きい分割数におけるポスター印刷では、1つの模様ページに切取領域と糊代領域の両方が存在してもよい。
【００４８】
（本実施形態の印刷システムのハードウエア構成例）
次に、本発明の印刷システムのハードウェアブロック図を説明する。
【００４９】
図6は、本実施形態における印刷システムのハードウエア構成を示すブロック図である。
【００５０】
図において、61は、CRT表示装置であり、図1に示すユーザインタフェースドライバが提供するプロパティ設定ウィンドウ等を表示する。62はCRTCで表示装置用のコントローラである。63は、キーボードなどのデータ入力装置であり、64は、キーボードコントローラである。65は、ポインティングデバイス等の座標入力装置であり、66は、ポインティングデバイスコントローラである。
【００５１】
67は、装置全体の制御を司るCPUである。68は、ブートプログラムなどを記憶しているROMである。69は、OSや各アプリケーションプログラム、図1のシステム構成と図2、3のフローチャートに関るプリンタドライバプログラムを格納したり、さらにはワークエリアとしても利用されるRAMである。
【００５２】
70は、OS、各アプリケーションプログラム、図1のシステム構成図と図2、3のフローチャートに関るプログラムを含むプリンタドライバプログラム、フォントデータ、さらにはデータファイル(模様に用いられる画像)等を記憶しているハードディスク装置であり、71はハードディスクコントローラである。72は、可搬性記憶媒体の駆動装置であるフロッピーディスク装置であり、73はフロッピーディスクコントローラである。74は、インターフェースであり、インターフェースケーブルを介してインクジェットプリンタなどの印刷装置75に接続される。76は、各デバイスを接続するバスである。尚、可搬性記憶媒体はフロッピーディスクに限らず、ＣＤやＭＯ、ＤＶＤ、あるいは磁気や光カード、メモリカード等であってもよい。
【００５３】
本装置に電源が投入されると、CPU67はROM68に格納されているブートプログラムに従って起動し、ハードディスク装置70からOSをロードし、操作者の操作待ち状態になる。そして、操作者からKB63またはPD65からアプリケーションを介して印刷指示やプリンタドライバの印刷設定変更指示を受けた場合、もしくは自動的に起動するように設定されている場合は、ハードディスク装置70に格納されているプリンタドライバプログラムがRAM69にロードされ、本実施形態の処理が実行される。
【００５４】
＜実施形態１の効果＞
以上のように、プリントプロセッサ5において印刷すべきアプリケーション1が作成した文書ページとユーザインタフェースドライバ3が作成した模様ページとを重ね合わせた後、プリンタグラフィクスドライバ6に供給するようにしたので、模様ページの数は文書ページの数に依存しなくなりEMFスプールファイル4が必要とする記憶領域の容量は小さくて済む。また、ネットワーク環境では文書ページの数が多くなっても模様ページの数は変わらないのでネットワークにかかる負荷を低減出来る。また、模様ページはクライアントでユーザインタフェースドライバ3により作成されるので、サーバにおけるプリンタグラフィクスドライバ6実行時に模様を描画するのに必要なフォント等が存在しなくても印刷が可能となる。
【００５５】
＜実施形態２＞
文書を印刷すべき用紙のサイズが常に一定ではなく、一部に異なるサイズの用紙が含まれているような文書を印刷することがある。こうした場合、実施形態１で説明したような処理を行うと、常に最初にユーザインタフェースドライバ3が作成した大きさの模様ページが用いられるので、模様の位置がずれたり模様の一部がはみだしたりして、好ましくない印刷結果になる場合がある。例えば用紙の向きが印刷中に変更された場合に、模様が一部印刷されない問題も生じる。本実施形態は、用紙サイズがまちまちの場合においても、ポスターを良好に印刷できる例を説明する。
【００５６】
図1を用いて実施形態２のシステムを説明する。実施形態２では印刷開始の印刷イベントが通知された時と、印刷設定変更の印刷イベントが通知された時とに、ユーザインタフェースドライバ3がアプリケーション1に成り代わり模様ページを生成することが、実施形態１との違いである。また、プリントプロセッサ5はアプリケーション1が印刷設定を変更してから作成した文書ページに最適な模様ページとを重ね合わせる。
【００５７】
次に、図2を用いて実施形態２のユーザインタフェースドライバの動作を説明する。ステップS1は実施形態１と同一の動作である。ステップS2では印刷イベントの種別を判定し、印刷開始を示す印刷イベント、または印刷設定変更を示す印刷イベントの場合はステップS3に進む。これら以外の印刷イベントの場合は処理は行わず終了する。印刷設定変更イベントでは、印刷設定が変更された直後に模様ページ挿入処理を行うので、アプリケーション1が変更した印刷設定をもちいて描画することができる。他のステップは実施形態１と同一の動作である。
【００５８】
次に、図7には印刷中に印刷設定が変更された場合の、EMFスプールファイル4に格納される模様ページと文書ページの状態と、用紙に印刷される物理ページの関係の概念図を示す。ここで、アプリケーション1は印刷中に文書ページ2と文書ページ3の間で印刷設定を変更し、用紙の向きを変えてから文書ページ3を印刷し、印刷設定として2分割のポスター印刷で文字列模様が指定されていることを条件とする。
【００５９】
図7の(A)はEMF スプールファイル4に格納されるページ順を示している。スプールファイルに格納される先頭2ページはユーザインタフェースドライバ3が作成した印刷開始イベントに対応する模様ページとなり、続いてアプリケーション1が作成した文書ページ1, 2はEMFスプールファイル4中のスプールページ3, 4に格納され、続いてユーザインタフェースドライバ 3 が作成した印刷設定変更イベントに対応する模様ページがスプールページ5, 6に格納され, 最後に文書ページ3がスプールページ7に格納される。ここで、アプリケーション1は文書ページ2と文書ページ3の間で印刷設定を変更し用紙の向きを変えたので文書ページ3に対応する模様ページはスプールページ5, 6に格納されている。ここでユーザインタフェースドライバ 3は印刷設定変更イベントにより用紙の向きが変更されたことが通知されるので、用紙サイズが変更されてもバランスよく文字列を描画することが可能である。プリントプロセッサ5は各文書ページに最適な模様ページとして文書ページ1,2にはスプールページ1, 2を採用し、文書ページ3 にはスプールページ5, 6をそれぞれ採用し、各文書ページの上に重ね合わせて描画することで図7の(B)に示される印刷結果である物理ページ1〜6が得られる。また、用紙サイズや模様の配置設定が変更された場合においても、印刷設定変更イベントに対応して、ユーザインタフェースドライバ 3が適切に描画を行うことにより、好ましい配置で模様ページを作成し、良好な出力結果が得られる。
【００６０】
尚、図７では示されていないが、例えば、図７の(b)で出力用紙がアプリケーション1からEMF スプールファイル4に格納される文書ページの２倍のサイズであると、図７の(b)には「のりしろ」も「切り取り」もない１枚の用紙で出力が可能である。一方、出力用紙が文書ページの半分のサイズであると、２倍のポスター印刷であっても４枚で１つの文書ページを印刷することになり、「のりしろ」や「切り取り」の配置は同じサイズの用紙に対する場合と異なってくる。更に、等倍でない文書と用紙、例えば文書ページと印刷用紙がＡ版とＢ版とで異なる場合には、ポスター印刷が複数の用紙に収まるように用紙が配置される。これらの種々のサイズによっても、用紙の配置に従って「のりしろ」や「切り取り」が適切に配置されるようになる。これらも、本発明に含まれる。
【００６１】
＜実施形態２の効果＞
前記のように、ユーザインタフェースドライバ3で用紙サイズや模様の配置設定に対応させた模様ページを生成し処理するので、用紙の大きさが切り替わったり、様々な状況の変化があっても、それに応じて適切な位置に模様の印刷が可能となる。
【００６２】
＜実施形態３＞
実施形態１、実施形態２の手法を用いるとユーザインタフェースドライバ3が作成する模様ページの総数は、アプリケーション1が作成する文書ページのページ数には依存しないが、ポスター印刷の分割数に比例して増大することになり、例えば16分割のポスター印刷の場合はユーザインタフェースドライバ3は16枚の模様ページを作成するのでEMFスプールファイル 4のサイズが大きくなる。本実施形態では、ユーザインタフェースドライバ3が作成する模様ページをポスター印刷の分割数に依存させないようにする例を説明する。
【００６３】
図8に印刷中に印刷設定が変更された場合の、EMFスプールファイル4に格納される模様ページと文書ページの状態と、用紙に印刷される物理ページの関係の概念図を示す。ここで、アプリケーション1は文書ページを1ページを印刷し、印刷設定として4分割のポスター印刷で文字列模様が指定されていることを条件とする。
【００６４】
図8の(A)はEMFスプールファイル4に格納されるページ順を示している。スプールファイル4に格納される先頭ページはユーザインタフェースドライバ3が作成した印刷開始イベントに対応する模様ページとなり、続いてアプリケーション1が作成した文書ページが格納される。プリントプロセッサ5は文書ページ1に最適な模様ページとしてユーザインタフェースドライバ3が作成したスプールページ1を採用し、拡大した文書ページの上に模様ページを重ね合わせる際、必要な糊代領域と切取領域以外は描画データが反映されないようにクリッピングする。ここで、プリントプロセッサ5は模様ページ合成処理の際に糊代領域と切取領域の境界線を描画してもよい。以上のように模様ページ合成処理を行うことで、図8の(B)に示される印刷結果である物理ページ1〜4が得られる。
【００６５】
また、印刷システムの制限によりプリントプロセッサ5によりクリッピングできない場合は、図9に示すように模様ページを重ね合わせる際に位置を平行移動させてもよい。図中の91はプリントプロセッサによる重ね合わせ処理で作成される合成ページであり、92はユーザインタフェースドライバ3により作成された模様ページである。94は拡大した文書ページであり、95は糊代領域である。プリントプロセッサ5は、模様ページ合成処理の際に糊代領域のみに模様ページが重なるように模様ページを92の位置に配置して重ね合わせう。96は切取領域であり、切取領域のみに模様頁が重なるように模様ページを93の位置に配置し重ね合わせる。このように制御することで、クリッピング出来ない場合でも良好な結果を得られ、図8の(C)に示される印刷結果である物理ページ1〜4が得られる。ここで、プリントプロセッサは模様ページ合成処理の際に糊代領域と切取領域の境界線を描画してもよい。
【００６６】
なお、本実施形態３のシステムや他の処理の流れは、上述の実施形態と等しいので説明を省略する。
【００６７】
＜実施形態３の効果＞
前記のように、ユーザインタフェースドライバ3によりページの四辺の切取領域と糊代領域に模様を描画した模様ページを作成することにより、ポスター印刷の分割数に関らず、印刷開始時と印刷設定変更時に作成する模様ページは1枚となり、EMFスプールファイルの大きさを抑えることが可能である。また、印刷システムの制限によりプリントプロセッサ5がクリッピング出来ない場合でも本手法によれば、模様ページ数を抑えることができる。
【００６８】
なお、本発明は、複数の機器（例えばホストコンピュータ，インタフェイス機器，リーダ，プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置に適用してもよい。
【００６９】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００７０】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【００７１】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７２】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７３】
本発明を前記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードを含むプログラムを格納することになる。
【００７４】
【発明の効果】
本発明により、情報伝達用の文書データと機能表示用の模様データ（糊代や切取など）とを含む印刷データをプリントする場合に、文書ページと模様ページをスプールし、スプールファイルから読み出した文書ページと模様パージを合成してビットマップデータ生成手段に供給するので、模様ページの数が文書ページの数に依存しなくなり、スプールファイルの記憶容量を少なくでき、ネットワークにかかる負荷を低減出来、サーバに必要なフォント等が存在しなくても印刷が可能となる印刷データ生成方法及びその装置を提供できる。
【００７５】
すなわち、プリントプロセッサ5において印刷すべきアプリケーション1が作成した文書ページとユーザインタフェースドライバ3が作成した模様ページとを重ね合わせた後、プリンタグラフィクスドライバ6に供給するようにしたので、模様ページの数は文書ページの数に依存しなくなりEMFスプールファイル4が必要とする記憶領域の容量は小さくて済む。また、ネットワーク環境では文書ページの数が多くなっても模様ページの数は変わらないのでネットワークにかかる負荷を低減出来る。また、模様ページはクライアントでユーザインタフェースドライバ3により作成されるので、サーバにおけるプリンタグラフィクスドライバ6実行時に模様を描画するのに必要なフォント等が存在しなくても印刷が可能となる。
【００７６】
また、ユーザインタフェースドライバ3で用紙サイズや模様の配置設定に対応させた模様ページを生成し処理するので、用紙の大きさが切り替わったり、様々な状況の変化があっても、それに応じて適切な位置に模様の印刷が可能となる。また、ユーザインタフェースドライバ3によりページの四辺の切取領域と糊代領域に模様を描画した模様ページを作成することにより、ポスター印刷の分割数に関らず、印刷開始時と印刷設定変更時に作成する模様ページは1枚となり、EMFスプールファイルの大きさを抑えることが可能である。また、印刷システムの制限によりプリントプロセッサ5がクリッピング出来ない場合でも本手法によれば、模様ページ数を抑えることができる。
【図面の簡単な説明】
【図１】本実施形態に係わる印刷システムのブロック図である。
【図２】本発明の実施形態１に関るユーザインタフェースドライバの模様ページ生成処理方法を示すフローチャートである。
【図３】本発明の実施形態１に関るプリントプロセッサの模様ページ合成処理方法を示すフローチャートである。
【図４】本発明の実施形態１に関るEMFスプールファイルに格納される模様ページと文書ページの状態と、用紙に印刷される物理ページの関係の概念図である。
【図５】本発明の実施形態に関る模様を文書ページに重ね合わせて描画する、プリントプロセッサの模様ページ合成処理の概念図である。
【図６】本発明の印刷システムのハードウェアブロック図であり、本実施形態における印刷システムの構成図である。
【図７】本発明の実施形態２に関るEMFスプールファイルに格納される模様ページと文書ページの状態と、用紙に印刷される物理ページの関係の概念図である。
【図８】本発明の実施形態３に関るEMFスプールファイルに格納される模様ページと文書ページの状態と、用紙に印刷される物理ページの関係の概念図である。
【図９】本発明の実施形態３に関る模様を文書ページに重ね合わせて描画する、プリントプロセッサの模様ページ合成処理の概念図である。
【図１】
0003897539.tif 000002
【図２】
0003897539.tif 000003
【図３】
0003897539.tif 000004
【図４】
0003897539.tif 000005
【図５】
0003897539.tif 000006
【図６】
0003897539.tif 000007
【図７】
0003897539.tif 000008
【図８】
0003897539.tif 000009
【図９】
0003897539.tif 000010