(57)【要約】【課題】  綴じ代、ＸＹオフセットなどの画像シフトには、ＤＬ生成段階でシフトする場合とレンダリング後のエンジン転送時にシフトする場合とがある。後者の場合シフト方向やシフト量に制限があるのが一般的であり、ＤＬ生成段階でシフトするのが理想的である。しかしながら、ＢＤＬではＤＬ生成段階で画像シフトを実現することはできない。【解決手段】  主走査方向の画像シフトはＢＤＬによるＤＬ生成時に行い、副走査方向の画像シフトはエンジンへの画像転送時に行う。【選択図】  図７
2006244132.tif 000002
【特許請求の範囲】
【請求項１】
プリンタドライバはプリンタに対してバンド単位で描画データを送り、プリンタはそのバンド単位で中間データを生成し、更にそのバンド単位でイメージデータを生成し、更にそのバンド単位でイメージデータを印刷機構部に転送する印刷システムであって、
主走査方向の画像シフト量を算出する主走査方向画像シフト量算出手段と、
副走査方向の画像シフト量を算出する副走査方向画像シフト量算出手段と、
主走査方向の画像シフトを行う主走査方向画像シフト手段と、
副走査方向の画像シフトを行う副走査方向画像シフト手段
を備えていることを特徴とする印刷システム。
【請求項２】
主走査方向の画像シフトはバンド単位で中間データを生成する際に行い、副走査方向の画像シフトはイメージデータを印刷機構部に転送する際に行うことを特徴とする請求項１に記載の印刷システム。
【請求項３】
主走査方向の画像シフトはバンド単位でイメージデータを生成する際に行い、副走査方向の画像シフトはイメージデータを印刷機構部に転送する際に行うことを特徴とする請求項１に記載の印刷システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はプリンタドライバがバンド単位で描画データを生成してプリンタに送信し、プリンタはバンド単位で中間データの生成、レンダリング及び印刷機構部へのイメージデータの転送を行う印刷システムにおいて、綴じ代などのために出力画像をシフトする方法に関する。
【背景技術】
【０００２】
これまでホストコンピュータ上の文書ファイルを印刷する場合、プリンタドライバはページ単位で描画データを生成し、プリンタは１ページ分の中間データを生成してからレンダリング（イメージへの展開）を行うのが一般的であった。
【０００３】
しかしながら、プリンタの省メモリと高速化のためにプリンタドライバで描画オブジェクトをバンド単位に分割し、バンド単位で描画データをプリンタに送信る方式が広まりつつある。この場合、プリンタは中間データの生成とレンダリングをバンド単位で行えるので中間データの格納メモリのサイズを小さく抑えることができる。更に、中間データの生成が終わったバンドから即座にレンダリングが開始できるので中間データの生成処理とレンダリング処理の並列性が高まり、スループットが向上する。
【０００４】
尚、綴じ代などのために出力画像をシフトする場合にはプリンタドライバが描画オブジェクトの描画位置を移動させることで実現する。
【０００５】
又、従来例としては、例えば特許文献１をあげることが出来る。
【特許文献１】特開平１１−２６８３７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ユーザがプリンタドライバのユーザインタフェースから指定する綴じ代などのための画像シフトは先に説明したようにプリンタドライバが描画オブジェクトの描画位置をずらすことで実現できるが、プリンタ側の要因で画像をシフトする場合には実現できないという問題点がある。
【０００７】
例えば、プリンタドライバから送られた印刷ジョブをプリンタ内のハードディクスに保存しておき、ユーザの指示により綴じ代や片面／両面の設定を変更して再度印刷する場合がこれにあたる。また、プリンタの用紙搬送時のずれを補正するための画像シフトもこれにあたる。用紙搬送時のずれ量はプリンタの個体に依存し、更に給紙トレイ、表面／裏面、先頭ページ／連続ページなどにも依存するため、プリンタドライバの画像シフトによる補正は事実上不可能である。
【０００８】
従って、画像のシフトはプリンタ側で行うのが好ましい。
【０００９】
ＬＢＰ等の一般的な電子写真方式のプリンタが画像のシフトを行なう場合、大きく別けて２つの方法がある。第１の方法はレンダリングされたイメージ画像をバンド単位で印刷機構本体へ転送する際に画像をシフトする方式である。第２の方法は中間データ生成時もしくはそれをレンダリングする際に画像をシフトする方式である。
【００１０】
次にプリンタが画像をシフトする場合の問題点を説明する。第１の方法の場合、主走査方向の画像シフトはその可能な範囲が狭く、範囲を超えると画像の回り込みが発生してしまうと言う問題点がある。第２の方法の場合、中間データの生成処理、及びレンダリング処理はバンド単位に行われるため副走査方向へ画像をシフトすることはできないという問題点がある。
【課題を解決するための手段】
【００１１】
前述の課題を解決するために本発明ではプリンタが画像シフトを行う場合、それを２つのステップに別けて行う。
【００１２】
まず、主走査方向の画像シフトを中間データの生成時または中間データをレンダリングする際に行う。中間データ生成時の画像シフトとはプリンタドライバから送信される描画データの個々の描画位置を主走査方向にずらした中間データを生成することを意味する。また、レンダリング時の画像シフトとは中間データ生成時の画像シフトは行わずに、それをレンダリングする際にバンドメモリ内で主走査方向にずらした位置にイメージ画像を出力するか又はバンドメモリにイメージ画像を出力後にシフトすることを意味する。一般的に中間データ生成処理はソフトウェアで行なわれるが、レンダリング処理はハードウェアで行なわれるシステムも多い。レンダリング処理をハードウェアで行なう場合、レンダリング時に画像をシフトすることができるか否かはそのハードウェアに依存するため、画像のシフトを中間データ生成時に行う方式が汎用的である。
【００１３】
次に、副走査方向の画像シフトをイメージ画像を印刷機構本体に転送する際に行う。これはシフト量がマイナスであればビデオ転送の開始タイミングを早め、シフト量がプラスであればビデオ転送の開始タイミングを遅らせることで実現できる。尚、シフト量がバンドの高さよりも大きい場合には先頭または終端の幾つかのバンドは転送する必要はない。
【発明の効果】
【００１４】
本発明によれば、プリンタドライバがバンド単位で描画データを送り、プリンタはそのバンド単位で中間データを生成し、更にそのバンド単位でイメージデータを生成し、更にそのバンド単位でイメージデータを印刷機構部に転送する印刷システムにおいて、画像シフトの方法を主走査方向と副走査方向とで切り分けることで、任意の画像シフトをプリンタ側で実現することが可能となる。
【００１５】
任意の画像シフトをプリンタ側で実現できることにより、プリンタのハードディスクに保存された印刷データを再度印刷する場合等に綴じ代や片面／両面の設定を変更して出力することが可能になる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明をＬＢＰに適用し、図面を用いて更に詳細に説明する。
【実施例１】
【００１７】
本実施例の構成を説明する前に、本実施例を適用するＬＢＰの構成を図１を参照して説明する。
【００１８】
図１は実施例のＬＢＰの内部構造を示す断面図である。
【００１９】
図において１００はＬＢＰ本体であり、このＬＢＰはＬＡＮ接続されているコンピュータ（図２の２０１）から供給される用紙サイズ指定命令、文字印字命令、各種図形描画命令、イメージ描画命令及び色指定命令等に従って対応する文字パターンや図形、イメージ等を作成し、記録媒体である記録用紙上に像を形成する。１５１は操作のためのスイッチ及びプリンタの状態を表示するＬＥＤ表示器やＬＣＤ表示器等が配されている操作パネル、１０１はＬＢＰ１００全体の制御及びコンピュータから供給される文字印字命令等を解析するプリンタ制御ユニットである。
【００２０】
尚、本実施例におけるＬＢＰはＲＧＢの色情報をＭ（マゼンタ）Ｃ（シアン）Ｙ（イエロー）Ｋ（クロ）に変換し、それらを並列で像形成・現像するため、ＭＣＹＫそれぞれが像形成・現像機構を持つ。プリンタ制御ユニット１０１はＭＣＹＫそれぞれの印字イメージを生成し、ビデオ信号に変換してＭＣＹＫそれぞれのレーザ・ドライバに出力する。
【００２１】
Ｍ（マゼンタ）のレーザ・ドライバ１１０は半導体レーザ１１１を駆動するための回路であり、入力されたビデオ信号に応じて半導体レーザ１１１から発射されるレーザ光１１２をオン・オフ切替する。レーザ光１１２は回転多面鏡１１３で左右方向に振られて静電ドラム１１４上を走査する。これにより、静電ドラム１１４上には文字や図形のパターンの静電潜像が形成される。この潜像は静電ドラム１１４周囲の現像ユニット（トナーカートリッジ）１１５によって現像された後、記録用紙に転写される。
【００２２】
Ｃ（シアン）、Ｙ（イエロー）、Ｋ（クロ）に関してもＭ（マゼンタ）と同様の像形成・現像機構を持ち、１２０、１２１、１２２、１２３、１２４、１２５はＣ（シアン）用の像形成・現像機構、１３０、１３１、１３２、１３３、１３４、１３５はＹ（イエロー）用の像形成・現像機構、１４０、１４１、１４２、１４３、１４４、１４５はＫ（クロ）用の像形成・現像機構である。個々の機能はＭ（マゼンタ）の像形成・現像機構と同じであるので説明は省略する。
【００２３】
記録用紙にはカット・シートを用い、カット・シート記録紙はＬＢＰに装着した給紙トレイ１０２に収納されバネ１０３で一定の高さに保たれており、給紙ローラ１０４及び搬送ローラ１０５と１０６とにより装置内に取り込まれ、用紙搬送ベルト１０７に乗せられてＭＣＹＫの各像形成・現像機構を通過する。
【００２４】
記録用紙に転写されたＭＣＹＫの各トナー（粉末インク）は定着器１０８で熱と圧力により記録用紙に固定され、記録用紙は搬送ローラ１０９と１５０によってＬＢＰ本体上部に出力される。
【００２５】
図２は図１に示したＬＢＰの制御ユニット１０１の概略構成を示すブロック図である。
【００２６】
このＬＢＰの制御ユニットは、ＬＡＮ２１６で接続されているコンピュータ２０１より送られてきた文字、図形、イメージの各描画命令及び色情報等からなるデータを入力し、ページ単位で文書情報等を印刷するようにしている。２０２はコンピュータ２０１と各種情報をやりとりする入出力インターフェース部、２０３は入出力インターフェース部２０２を介して入力された各種情報を一時記憶する入力バッファである。２０４は文字パターン発生器で、文字の幅や高さ等の属性や実際の文字パターンのアドレスが格納されているフォント情報部２１９、文字パターン自身が格納されている文字パターン部２２０、及びその読みだし制御プログラムから成る。読みだし制御プログラムはＲＯＭ２１７に含まれ、文字コードを入力するとそのコードに対応する文字パターンのアドレスを算出するコード・コンバート機能をも有している。
【００２７】
２０５はＲＡＭで、文字パターン発生器２０４より出力された文字パターンを記憶するフォント・キャッシュ領域２０７、コンピュータ２０１より送られてきた外字フォント及び現在の印字環境等を記憶する記憶領域２０６を含んでいる。このように、一旦文字パターンに展開したパターン情報をフォント・キャッシュとしてフォント・キャッシュ領域２０７に記憶しておくことにより、同じ文字を印刷する時に再度同じ文字を復号してパターン展開する必要がなくなるため、文字パターンへの展開が速くなる。
【００２８】
２０８はプリンタの制御ユニット全体を制御するためのＣＰＵで、ＲＯＭ２１７に記憶されたＣＰＵ２０８の制御プログラムにより装置全体の制御を行なっている。２０９は入力データを元に生成される内部的なデータ群である中間バッファである。１ページ分のデータの受信が完了し、それらがよりシンプルな中間データに変換されて中間バッファに蓄えられた後、レンダラ２１０によりバンド単位でレンダリングされ、各色８ビットのＲＧＢ画像としてバンドバッファ２１１に出力される。
【００２９】
バンドバッファに出力されたＲＧＢ画像はハーフトーニングプロセッサ２１２により各色１ビットのＭＣＹＫ画像に変換され、ＭＣＹＫの各プレーンに分離されてスプールメモリ２１３に格納される。スプールメモリ２１３に格納されたＭＣＹＫ画像はプレーン毎に圧縮されて保持される。１ページ分の全バンドのデータが格納されると、ページ・プリンタの印刷機構部２１５が起動される。そしてＭＣＹＫ画像がプレーン毎に伸長されて出力インターフェース部２１４でビデオ信号に変換され、プリンタ印字部２１５に出力される。
【００３０】
先に図１を用いて説明したように本実施例におけるＬＢＰではＭＣＹＫの像形成・現像を並列で行うため、出力インターフェース部２１４はＭ出力インターフェース部、Ｃ出力インターフェース部、Ｙ出力インターフェース部、Ｋ出力インターフェース部の４つのインターフェース部で構成され、それぞれが独立にスプールメモリ２１３からプレーン画像を読み出し、ビデオ信号に変換して各プレーンのレーザ・ドライバ１１０，１２０，１３０，１４０へ出力する。
【００３１】
２１８は一般のＥＥＰＲＯＭ等で構成する不揮発性メモリであり、以後ＮＶＲＡＭ（Ｎｏｎ  Ｖｏｌａｔｉｌｅ  ＲＡＭ）と称す。ＮＶＲＡＭ２１８には操作パネル１５１で指定されるパネル設定値などが記憶される。
【００３２】
尚、ＲＯＭ２１７にはコンピュータ２０１から入力されるデータの解析、中間データの生成、印刷機構本体部２１５の制御プログラム、及びＲＧＢ色空間からＭＣＹＫ色空間への色変換テーブル等も含まれる。
【００３３】
２２１はハードディスクで任意の情報を記録することができ、電源が切断されても情報が失われることはない。
【００３４】
図３はページをバンド単位に分割して処理することを説明するための図である。図において３００はＡ４縦サイズの用紙である。本実施例においてはＡ４縦サイズの用紙はバンド３０１，３０２，３０３，３０４，３０５，３０６の６つの領域に分割されて処理される。
【００３５】
ホストコンピュータ２０１のプリンタドライバは文字、各種図形、イメージ等の描画オブジェクトがその位置と大きさからどのバンドにかかるかを判定し、描画オブジェクトをバンド単位に分割して、更にそれをバンド３０１，３０２，３０３，３０４，３０５，３０６の順にソートする。バンド単位に分割及びソートされた描画オブジェクトは先頭バンドから順にバンド単位で描画コマンドに変換されてプリンタに送信される。
【００３６】
ユーザはプリンタドライバのユーザインタフェースから綴じ代の位置と幅を指定することができる。図４はプリンタドライバにおいて綴じ代の設定を行うためのユーザインタフェースである。図において４００はホストコンピュータ２０１の画面に表示されるウィンドウであり、ユーザが綴じ代の設定を行う場合に表示される。４０１は綴じ代の幅を入力するためのフィールドである。４０２は綴じ代の位置を指定するための領域であり、綴じ代の位置を用紙の上下左右のいずれかから指定する。ユーザは綴じ代の設定が完了したらボタン４０３をクリックし、その設定がプリンタに通知される。尚、ボタン４０４をクリックすれば綴じ代の設定はキャンセルされる。設定された綴じ代の位置と幅の情報は印刷ジョブデータのヘッダとしてプリンタに送信される。例えば図４のように設定された場合にプリンタに送信される綴じ代の位置と幅の情報は次のようになる。
【００３７】
Ｂｉｎｄ−Ｍａｒｇｉｎ＝５．５ｍｍ＜ｃｒ＞
Ｂｉｎｄ−Ｅｄｇｅ＝ｌｅｆｔ＜ｃｒ＞
である。尚、＜ｃｒ＞は１６進数の０Ｄである。
【００３８】
図５は中間バッファ２０９の構成を説明するための図である。ページの生成が開始されるとまず最初に各バンドの中間データの先頭アドレスを保持するために領域が確保される。この領域をページ先頭領域と呼ぶ。図において５００は第Ｎページのページ先頭領域である。ページ生成開始直後はページ先頭領域にはどのバンドの先頭アドレスもセットされておらず、各バンドの中間データが生成されてはじめてページ先頭領域にそのバンドの先頭アドレスがセットされる。各バンドの中間データ領域は必要に応じて適当な大きさの領域が必要に応じて確保され、確保された領域が中間データでいっぱいになるとその領域が拡張される。連続領域として領域を拡張できない場合には新たな領域が確保され、アドレスによるリンクが張られる。その場合の領域の検索は下位アドレスに向かって行なわれ、下位アドレスに空き領域がない場合には中間バッファ２０９の先頭アドレスから検索される。図５は第Ｎページの中間データの生成が完了し、第Ｎ＋１ページの第３バンドの中間データを生成している状態を表している。５０１，５０２，５０３，５０４，５０５，５０６はそれぞれ第Ｎページに対応するバンド３０１，３０２，３０３，３０４，３０５，３０６の中間データである。第Ｎページの中間データはバンドバッファ２１１に空きがあればレンダラ２１０によりレンダリングされ、レンダリングされたバンドの中間データは解放される状態になる。但し、バンドバッファ２１１は複数のバンドの画像を保持するだけのメモリは割り当てられておらず、実質的にはスプールメモリ２１３の空き状態がレンダリングを実行タイミングに影響する。５１０は第Ｎ＋１ページのページ先頭領域であり、５１１，５１２，５１３はそれぞれ第Ｎ＋１ページに対応するバンド３０１，３０２，３０３の中間データである。
【００３９】
図６はページ先頭領域の構成を更に詳しく説明するための図である。図において６０１，６０２，６０３，６０４，６０５，６０６はそれぞれ対応するバンド３０１，３０２，３０３，３０４，３０５，３０６の中間データ先頭アドレスの格納領域である。また６１１，６１２，６１３，６１４，６１５，６１６はバンド３０１，３０２，３０３，３０４，３０５，３０６の状態を管理するための領域であり、
０：中間データ生成中
１：中間データ生成完了（レンダリング開始可能）
２：レンダリング完了（中間データは解放可能）
のいずれかの値がセットされる。この状態管理領域はプリンタドライバから送信されるバンド終了通知命令によって生成中のバンドの状態管理領域が１にセットされ、次のバンドの中間データの生成処理に移行する。
【００４０】
次にＣＰＵ２０８による１ページ分の中間データの生成処理についてフローチャート図７を参照して説明する。まずステップＳ７０１で綴じ代情報を取得する。これは通常印刷時プリンタドライバが印刷ジョブのヘッダ情報として指定した綴じ代位置と幅であるが、ハードディスク２２１に保存されている印刷ジョブを処理する場合には変更されている場合があり、その場合には変更後の設定値を取得する。また、操作パネル１５１で設定されＮＶＲＡＭ２１８に記憶されている補正値もこのステップで読み出される。この補正値は個体差による用紙搬送の誤差を補正するために工場出荷時に設定される。次にステップＳ７０２で実際のシフト量を計算する。中間データの生成段階では主走査方向の画像シフトのみを行うため、綴じ代位置が用紙の左辺ならシフト量はプラス、用紙の右辺ならシフト量はマイナスになる。綴じ代位置が用紙の上辺、下辺の場合には綴じ代のための画像シフトはこの段階では行わない。綴じ代のためのシフト量はｍｍからドットへの変換され、そのドット数に主走査方向の用紙搬送の誤差を補正するために設定されているドット数を加算したものが中間データ生成段階での最終的な画像シフト量となる。シフト量が決定されるとステップＳ７０３に進んでコマンドの解析を開始する。まずステップＳ７０３で入力バッファメモリ２０３からデータを読み出し、ＰＤＬコマンドの１命令を解析する。そしてステップＳ７０４でそれが文字、図形、イメージ等の描画命令であるか否かを判断し、描画命令である場合にはステップＳ７０５に進んで描画オブジェクトの位置を補正し、更にステップＳ７０６でその描画命令に対応する中間データを生成して中間バッファ２０９の対象となっているバンドの領域に出力する。そしてステップＳ７０３に戻って次のコマンドを解析する。描画コマンドでない場合にはステップＳ７０７に進んでそれがバンド終了コマンドであるか否かを判断する。バンド終了コマンドである場合にはステップＳ７０８に進んで対象バンドの状態管理領域に１（中間データ生成完了）をセットし、そのバンドの中間データ生成処理を終了する。そしてステップＳ７０９に進んでそれがそのページの最終バンドであるか否かを判断し、最終バンドである場合には１ページ分の中間データの生成処理を終了する。最終バンドでない場合にはステップＳ７１０に進んで対象バンドを次のバンドに変更してステップＳ７０３に戻る。その他の命令である場合にはステップＳ７１１でその命令に対応する処理を行なってＳ７０３に戻る。これは例えば文字サイズの指定などのコマンドであるが本発明との直接的な関係は無いので説明は省略する。
【００４１】
次にレンダリング処理についてフローチャート図８を参照して説明する。レンダリング処理はＣＰＵ２０８によって制御されるレンダラ２１０によって行なわれる。レンダリング処理は先に説明した中間データの生成処理と並列に行なわれるが中間データの生成処理よりも優先度の高いタスクで行なわれる。このタスクをレンダリングタスクと呼ぶ。レンダリングタスクでは中間バッファ２０９の状態をポーリングしており、ステップＳ８０１でレンダリング可能、即ち状態管理領域に１（中間データ生成完了）がセットされているバンドの有無を調べる。存在しない場合には所定のポーリング間隔で再度判定する。レンダリング可能なバンドが存在する場合にはステップＳ８０２に進んでスプールメモリ２１３に空きがあるか否かを判定する。正常な動作を保証するためにはハーフトーンＣＭＹＫのプレーン画像を非圧縮状態で格納できる領域が必要である。但し、実際にはＣＭＹＫのプレーン画像は圧縮されるため通常の画像であればその数％程度しか消費されない。スプールメモリ２１３にＣＭＹＫのプレーン画像を非圧縮状態で格納するための空きがない場合には所定のポーリング間隔で再度判定する。スプールメモリ２１３に空きがある場合にはステップＳ８０３に進んでレンダラ２１０にそのバンドの中間データのアドレスと、バンドバッファ２１１のアドレスをセットしてレンダリングを実行する。レンダリング結果はＲＧＢ画像としてバンドバッファ２１１に出力される。レンダリングが終了するとステップＳ８０４に進んでハーフトーニングプロセッサ２１２によりＣＭＹＫ各色２ＢＰＰの画像に変換されてスプールメモリ２１３に出力され、更にプレーン毎に圧縮される。そして最後にステップＳ８０５で対象バンドのバンド状態管理領域に２（レンダリング完了）をセットしてステップＳ８０１に戻る。
【００４２】
次にスプールメモリ２１３にスプールされていた１ページ分のイメージ画像をバンド毎に印刷機構部２１５に転送するイメージ転送処理についてフローチャート図９を参照して説明する。尚、ここでの説明はＣＭＹＫプレーンのうちのひとつに関するものであり、実際にはこの処理がＣＭＹＫの各プレーンに対して行われる。
【００４３】
まず最初にステップＳ９０１で転送すべき最初のバンドと最後のバンドを決定する。副走査方向の画像シフト量が０である場合には３０１，３０２，３０３，３０４，３０５，３０６の全てのバンドを転送することになるが、例えば綴じ代位置が用紙の上辺に設定されている場合のように画像シフト量がプラス方向であって、それがバンド３０６の高さ以上である場合にはバンド３０６は転送する必要はない。更に画像シフト量がバンド３０５と３０６の高さの和以上である場合にはバンド３０５も転送する必要はない。逆に綴じ代位置が用紙の下辺に設定されている場合のように画像シフト量がマイナス方向であって、それがバンド３０１の高さ以上である場合にはバンド３０１は転送する必要はない。更に画像シフト量がバンド３０１と３０２の高さの和以上である場合にはバンド３０２も転送する必要はない。ステップＳ９０１ではこのように副走査方向の画像シフトの方向その量と、各バンドの高さから転送すべき最初のバンドと最後のバンドを決定する。また、ステップＳ９０１では画像シフト量がプラス方向である場合に、最初のバンドの転送を開始するタイミングも決定する。具体的には画像シフト量に相当するだけ転送開始を遅延させることになる。逆に画像シフト量がマイナス方向である場合には、転送すべき最初のバンドに対してそのバンドのどのスキャンラインから転送を開始するかを決定する。また、画像シフト量がプラス方向である場合に転送すべき最後のバンドに対してどのスキャンラインまでを転送するを決定する。これは用紙をはみ出る画像をカットするための処理である。
【００４４】
次にステップＳ９０２で印刷機構部２１５に起動をかける。これにより印刷機構部２１５は用紙搬送ローラや回転多面鏡の回転、及び定着器１０８の昇温を開始し、これらが印刷可能な状態になると給紙カセット１０２からの給紙を開始する。次にステップＳ９０３に進んで最初のバンドの転送を行う。尚、最初のバンドの転送の開始タイミングとバンドのどのスキャンラインから転送を開始するかはステップＳ９０１で決定されている。次に、ステップＳ９０４に進んで対象バンド番号を更新し、ステップＳ９０５でそれが転送すべき最後のバンドであるか否かを判断する。転送すべき最後のバンドでない場合にはステップＳ９０６に進んで対象バンドの転送を行い、ステップＳ９０４に戻って対象バンド番号を更新する。転送すべき最後のバンドの場合にはステップＳ９０７に進んで最後のバンドの転送を行う。尚、最後のバンドに対してはどのスキャンラインまで転送するかはステップＳ９０１で決定されている。
【００４５】
尚、スプールメモリ２１３にバンド毎に格納されている画像は圧縮されているため、ステップＳ９０３，Ｓ９０５，Ｓ９０７において画像は伸張され、出力インターフェース部２１４によって印刷機構部２１５に転送される。
【００４６】
以上説明したように本実施例においては主走査方向の画像シフトは中間データを生成する段階で実現し、副走査方向の画像シフトは画像データを印刷機構部に転送する際に実現する。これにより、プリンタドライバがバンド単位で描画データをプリンタに送り、プリンタはそのバンド単位で中間データの生成、イメージデータの生成、印刷機構部への転送を行う印刷システムにおいて、任意の画像シフトをプリンタ側で実現することが可能となる。
【００４７】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用しても良い。また、本発明はシステム或は装置にプログラムを供給することによって実施される場合にも適用できることは言うまでもない。この場合、本発明に係るプログラムを格納した記憶媒体が、本発明を構成することになる。そして、該記憶媒体からそのプログラムをシステム或は装置に読み出すことによって、そのシステム或は装置が、予め定められたし方で動作する。
【図面の簡単な説明】
【００４８】
【図１】実施例を適用する印刷装置の構成を説明する断面図である。
【図２】図１に示した本体の制御構成を説明するブロック図である。
【図３】実施例におけるＡ４縦用紙のバンド分割を表す図である。
【図４】実施例におけるプリンタドライバにおいて綴じ代の設定を行うためのユーザインタフェースを表す図である。
【図５】実施例における中間バッファ２０９の構成の１例を示す図である。
【図６】実施例における中間バッファ２０９内のページ先頭領域の構成を示す図である。
【図７】実施例における中間データの生成処理を説明するためのフローチャートである。
【図８】実施例におけるレンダリング処理を説明するためのフローチャートである。
【図９】実施例におけるイメージ転送処理を説明するためのフローチャートである。
【符号の説明】
【００４９】
１００  プリンタ本体
１０１  プリンタ制御ユニット
１０２  給紙カセット
１０３  用紙を持ち上げるためのバネ
１０４  給紙ローラ
１０５  用紙搬送ローラ
１０６  用紙搬送ローラ
１０７  用紙搬送ベルト
１０８  定着器
１０９  用紙搬送ローラ
１１０  レーザ・ドライバ（マゼンタ用）
１１１  半導体レーザ発射装置（マゼンタ用）
１１２  レーザ・ビーム（マゼンタ用）
１１３  回転多面鏡（マゼンタ用）
１１４  静電ドラム（マゼンタ用）
１１５  トナーカートリッジ（マゼンタ用）
１２０  レーザ・ドライバ（シアン用）
１２１  半導体レーザ発射装置（シアン用）
１２２  レーザ・ビーム（シアン用）
１２３  回転多面鏡（シアン用）
１２４  静電ドラム（シアン用）
１２５  トナーカートリッジ（シアン用）
１３０  レーザ・ドライバ（イエロー用）
１３１  半導体レーザ発射装置（イエロー用）
１３２  レーザ・ビーム（イエロー用）
１３３  回転多面鏡（イエロー用）
１３４  静電ドラム（イエロー用）
１３５  トナーカートリッジ（イエロー用）
１４０  レーザ・ドライバ（クロ用）
１４１  半導体レーザ発射装置（クロ用）
１４２  レーザ・ビーム（クロ用）
１４３  回転多面鏡（クロ用）
１４４  静電ドラム（クロ用）
１４５  トナーカートリッジ（クロ用）
１５０  用紙搬送ローラ
１５１  操作パネル
２０１  コンピュータ
２０２  入力インターフェース部
２０３  入力バッファ
２０４  文字パターン発生器
２０５  ＲＡＭ
２０６  各種登録データ及び印刷環境等が記憶される記憶領域
２０７  フォントキャッシュ領域
２０８  ＣＰＵ
２０９  印刷データが蓄積される記憶領域
２１０  レンダラ
２１１  バンドバッファ
２１２  ハーフトーニングプロセッサ
２１３  スプールメモリ
２１４  印刷機構部への出力インターフェース部
２１５  印刷機構部
２１６  ＬＡＮ
２１７  ＲＯＭ
２１８  ＮＶＲＡＭ
２１９  フォント情報部
２２０  文字パターン部
２２１  ハードディスク
３００  Ａ４縦用紙
３０１  Ａ４縦用紙の第１バンド
３０２  Ａ４縦用紙の第２バンド
３０３  Ａ４縦用紙の第３バンド
３０４  Ａ４縦用紙の第４バンド
３０５  Ａ４縦用紙の第５バンド
３０６  Ａ４縦用紙の第６バンド
４００  綴じ代設定のためのユーザインターフェースウィンドウ
４０１  綴じ代幅設定フィールド
４０２  綴じ代位置指定領域
４０３  綴じ代設定完了ボタン
４０４  綴じ代中止ボタン
５００  第Ｎページの中間データのページ先頭領域
５０１  第Ｎページ第１バンドの中間データの領域
５０２  第Ｎページ第２バンドの中間データの領域
５０３  第Ｎページ第３バンドの中間データの領域
５０４  第Ｎページ第４バンドの中間データの領域
５０５  第Ｎページ第５バンドの中間データの領域
５０６  第Ｎページ第６バンドの中間データの領域
５１０  第Ｎ＋１ページの中間データのページ先頭領域
５１１  第Ｎ＋１ページ第１バンドの中間データの領域
５１２  第Ｎ＋１ページ第２バンドの中間データの領域
５１３  第Ｎ＋１ページ第３バンドの中間データの領域
６０１  第Ｎページ第１バンドの中間データの先頭アドレスを格納する領域
６０２  第Ｎページ第２バンドの中間データの先頭アドレスを格納する領域
６０３  第Ｎページ第３バンドの中間データの先頭アドレスを格納する領域
６０４  第Ｎページ第４バンドの中間データの先頭アドレスを格納する領域
６０５  第Ｎページ第５バンドの中間データの先頭アドレスを格納する領域
６０６  第Ｎページ第６バンドの中間データの先頭アドレスを格納する領域
６１１  第Ｎページ第１バンドの状態管理領域
６１２  第Ｎページ第２バンドの状態管理領域
６１３  第Ｎページ第３バンドの状態管理領域
６１４  第Ｎページ第４バンドの状態管理領域
６１５  第Ｎページ第５バンドの状態管理領域
６１６  第Ｎページ第６バンドの状態管理領域
【図１】
2006244132.tif 000003
【図２】
2006244132.tif 000004
【図３】
2006244132.tif 000005
【図４】
2006244132.tif 000006
【図５】
2006244132.tif 000007
【図６】
2006244132.tif 000008
【図７】
2006244132.tif 000009
【図８】
2006244132.tif 000010
【図９】
2006244132.tif 000011