(57)【特許請求の範囲】
【請求項１】
印刷媒体の表裏各面に順に印刷する印刷装置と接続されたプリンタドライバを備えるホストコンピュータとしての印刷制御装置であって、
アプリケーションから発行される印刷されるべき文書を構成する先頭ページから最終ページまでの１部分の印刷データを中間コード形式でスプーラに格納する格納手段と、
前記プリンタドライバから取得した印刷設定が、部単位印刷かつ両面印刷を利用する印刷であるかを判定する判定手段と、
前記判定手段により部単位印刷かつ両面印刷を利用する印刷であると判定された場合に、前記格納手段によりスプーラに格納されている中間コード形式の印刷データを読み出し、印刷データの最終ページが印刷媒体の表面にあたる場合には、その裏面に空白ページを挿入し、印刷設定に従ってジョブ終了データを発行することで前記印刷装置に送付されるページ記述言語形式の印刷ジョブを生成するジョブ生成手段とを備え、
前記ジョブ生成手段は、指定印刷部数に相当する回数繰り返して前記スプーラに格納されている前記文書の先頭ページの印刷データから最終ページの印刷データを読み出して、先頭ページから最終ページの印刷データを前記指定印刷部数分繰り返して並べてあり、かつ、最終ページと該最終ページの次の部の先頭ページとが１枚の印刷媒体に印刷されないように前記空白ページを挿入した１つの印刷ジョブを生成することを特徴とする印刷制御装置。
【請求項２】
前記ジョブ生成手段は、前記印刷媒体の各面に、複数のページを縮小して配置することを特徴とする請求項１に記載の印刷制御装置。
【請求項３】
前記ジョブ生成手段は、前記印刷設定として指定印刷部数が２部以上かつ両面印刷が設定されている場合に、印刷データの最終ページが印刷媒体の表面にあたる場合には、その裏面に空白ページを挿入することを特徴とする請求項１に記載の印刷制御装置。
【請求項４】
印刷媒体の表裏各面に順に印刷する印刷装置と接続されたプリンタドライバを備えるホストコンピュータとしての印刷制御装置における印刷制御方法であって、
アプリケーションから発行される印刷されるべき文書を構成する先頭ページから最終ページまでの１部分の印刷データを中間コード形式でスプーラに格納する格納工程と、
前記プリンタドライバから取得した印刷設定が、部単位印刷かつ両面印刷を利用する印刷であるかを判定する判定工程と、
前記判定工程により部単位印刷かつ両面印刷を利用する印刷であると判定された場合に、前記格納工程によりスプーラに格納されている中間コード形式の印刷データを読み出し、印刷データの最終ページが印刷媒体の表面にあたるか判定する判定工程と、
前記印刷データの最終ページが印刷媒体の表面にあたる場合には、その裏面に空白ページを挿入する空白ページ挿入工程と、
ジョブ終了データを発行することで前記印刷装置に送付されるページ記述言語形式の印刷ジョブを生成するジョブ生成工程とを備え、
前記ジョブ生成工程では、指定印刷部数に相当する回数繰り返して前記スプーラに格納されている前記文書の先頭ページの印刷データから最終ページの印刷データを読み出して、先頭ページから最終ページの印刷データを前記指定印刷部数分繰り返して並べてあり、かつ、最終ページと該最終ページの次の部の先頭ページとが１枚の印刷媒体に印刷されないように前記空白ページを挿入した１つの印刷ジョブを生成することを特徴とする印刷制御方法。
【請求項５】
前記印刷媒体の各面には、複数のページが縮小して配置されることを特徴とする請求項４に記載の印刷制御方法。
【請求項６】
前記指定印刷部数分の印刷データは、単一の印刷ジョブのデータとして印刷装置に送付されることを特徴とする請求項４に記載の印刷制御方法。
【請求項７】
プリンタドライバを備えるホストコンピュータとしての印刷制御装置と印刷装置とを備える印刷システムであって、
前記印刷制御装置は、アプリケーションから発行される印刷されるべき文書を構成する先頭ページから最終ページまでの１部分の印刷データを中間コード形式でスプーラに格納する格納手段と、
前記プリンタドライバから取得した印刷設定が、部単位印刷かつ両面印刷を利用する印刷であるかを判定する判定手段と、
前記判定手段により部単位印刷かつ両面印刷を利用する印刷であると判定された場合に、前記格納手段によりスプーラに格納されている中間コード形式の印刷データを読み出し、印刷データの最終ページが印刷媒体の表面にあたる場合には、その裏面に空白ページを挿入し、印刷設定に従ってジョブ終了データを発行することで前記印刷装置に送付されるページ記述言語形式の印刷ジョブを生成するジョブ生成手段とを備え、
前記印刷装置は、前記印刷媒体の表裏各面に順に印刷し、
前記ジョブ生成手段は、指定印刷部数に相当する回数繰り返して前記スプーラに格納されている前記文書の先頭ページの印刷データから最終ページの印刷データを読み出して、先頭ページから最終ページの印刷データを前記指定印刷部数分繰り返して並べてあり、かつ、最終ページと該最終ページの次の部の先頭ページとが１枚の印刷媒体に印刷されないように前記空白ページを挿入した１つの印刷ジョブを生成することを特徴とする印刷システム。
【請求項８】
前記印刷制御装置は、前記印刷媒体の各面に、複数のページを縮小して配置することを特徴とする請求項７に記載の印刷システム。
【請求項９】
前記ジョブ生成手段は、前記印刷設定として指定印刷部数が２部以上かつ両面印刷が設定されている場合に、印刷データの最終ページが印刷媒体の表面にあたる場合には、その裏面に空白ページを挿入することを特徴とする請求項７に記載の印刷システム。
【請求項１０】
印刷媒体の表裏各面に順に印刷する印刷装置と接続されたプリンタドライバを備えるホストコンピュータにより実行されるプログラムを格納したコンピュータ可読記録媒体であって、前記プログラムは、
アプリケーションから発行される印刷されるべき文書を構成する先頭ページから最終ページまでの１部分の印刷データを中間コード形式でスプーラに格納する格納手段と、
前記プリンタドライバから取得した印刷設定が、部単位印刷かつ両面印刷を利用する印刷であるかを判定する判定手段と、
前記判定手段により部単位印刷かつ両面印刷を利用する印刷であると判定された場合に、前記格納手段によりスプーラに格納されている中間コード形式の印刷データを読み出し、印刷データの最終ページが印刷媒体の表面にあたる場合には、その裏面に空白ページを挿入し、印刷設定に従ってジョブ終了データを発行することで前記印刷装置に送付されるページ記述言語形式の印刷ジョブを生成するジョブ生成手段としてコンピュータを機能させ、
前記ジョブ生成手段は、指定印刷部数に相当する回数繰り返して前記スプーラに格納されている前記文書の先頭ページの印刷データから最終ページの印刷データを読み出して、先頭ページから最終ページの印刷データを前記指定印刷部数分繰り返して並べてあり、かつ、最終ページと該最終ページの次の部の先頭ページとが１枚の印刷媒体に印刷されないように前記空白ページを挿入した１つの印刷ジョブを生成することを特徴とするコンピュータ可読記憶媒体。
【請求項１１】
前記プログラムは、前記印刷媒体の各面に、複数のページを縮小して配置する手段をさらに実現することを特徴とする請求項１０に記載のコンピュータ可読記憶媒体。
【請求項１２】
前記ジョブ生成手段は、前記印刷設定として指定印刷部数が２部以上かつ両面印刷が設定されている場合に、印刷データの最終ページが印刷媒体の表面にあたる場合には、その裏面に空白ページを挿入することを特徴とする請求項１０に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は印刷制御装置および方法に関するもので、特にパーソナルコンピュータ等の情報処理と部単位印刷機能を持たない印刷装置とからなるシステムにおいて、両面印刷された複数部の出力結果を、各部ごとにまとまった形で得ることのできる印刷制御装置および方法に関するものである。
【０００２】
【従来の技術】
情報処理装置から、テキストや画像、表等を含む１つの文書を複数部出力する場合、出力結果は各ページ（両面印刷時は各用紙）ごとに指定された枚数ずつ出力される場合と、各部ごとにまとまって出力される場合とがある。各部ごとにまとめて出力される部単位印刷の実現方法には、印刷装置で行う方法と、情報処理装置で行う方法とがある。
【０００３】
印刷装置で部単位印刷を実現する方法には、情報処理装置から受け取った１つの印刷ジョブの印刷データをすべて印刷装置内に蓄積し、印刷装置がそのデータを指定部数分繰返し出力する方法と、ソータなど部ごとに出力先を切り替える装置を利用する方法とがある。前者の場合には、印刷データを蓄積するためのメモリやハードディスクが印刷装置に必要であり、後者の場合には、ソータが必要である。いずれにしても、部単位印刷を印刷装置で実現するためにはコストがかかるという問題があり、部単位の印刷が行えない印刷装置が一般的である。
【０００４】
このため、情報処理装置により部単位印刷を実現する方法が従来行われている。情報処理装置で部単位印刷を実現する従来の方法として、１つの印刷ジョブの中で、出力すべき部数の分、印刷データを繰返し印刷装置に送信する方法がある。この方法を行うには、印刷を実行するアプリケーションソフトウエアがこの方法を実現するための処理を行う必要がある。この従来のアプリケーションによる部単位印刷により両面印刷を行う場合、印刷する文書のページ数が奇数であると、ひとつの部の最終ページの裏面に次の部の最初のページが印刷され、出力物を部単位に分けることができないという問題点があった。
【０００５】
この問題を解決するひとつの方法として、Ｎ部の文書を印刷する際に、１部の印刷を行う印刷ジョブをＮ個生成して印刷装置に送信する方法があった。この方法では、１部ずつ独立した印刷ジョブにより印刷することにより、互いに隣接する部の境界で、すなわち１つのジョブの終了時点で排紙させることで出力物を部単位に分けることができる。
【０００６】
【発明が解決しようとする課題】
しかし、各部ごとに印刷ジョブを生成する場合、印刷中の文書の印刷の中止あるいは中断を行うためには、各印刷ジョブを中止あるいは中断しなければならない。
【０００７】
また、ネットワーク上で共有されている印刷装置から文書を印刷させる場合、各印刷ジョブの間に他のクライアントから送信されてきた印刷ジョブが挿入されてしまうこともあり得る。そのため、複数部の出力物の中から、他のクライアントの出力物の有無を調べなければならない。また、他のクライアントも文書を複数部印刷している場合には、各文書の出力部数分だけ印刷ジョブが生成される。その結果、印刷装置の排出トレイには、２種類の文書が、各部ごとにまとまってはいるものの、混じりあった状態で排出される。文書を複数部印刷するクライアントが更に増えれば、出力物の整理は非常に繁雑な作業となることは明らかである。
【０００８】
本発明は上記従来例に鑑みてなされたもので、部単位印刷機能を持たない印刷装置において、奇数ページの印刷データを印刷装置の両面印刷を用いて印刷する際には、部の境界が同一用紙上に配置されないようにし、出力物を部単位に分けることが可能なように印刷を行う印刷制御装置及び方法を提供することを目的とする。
【０００９】
また、複数部の文書を各部ごとにまとめて印刷する部単位印刷を、単一の印刷ジョブで実現することにより、複数部の印刷出力であってもひとつの印刷ジョブにより管理することができ、また、部単位で印刷を行っても、他の印刷ジョブがそれに割り込むことなく印刷できる印刷制御装置及び方法を提供することを目的とする。
【００１０】
【課題を解決するための手段】
上記目的を達成するために本発明はつぎのような構成からなる。
印刷媒体の表裏各面に順に印刷する印刷装置と接続されたプリンタドライバを備えるホストコンピュータとしての印刷制御装置であって、
アプリケーションから発行される印刷されるべき文書を構成する先頭ページから最終ページまでの１部分の印刷データを中間コード形式でスプーラに格納する格納手段と、
前記プリンタドライバから取得した印刷設定が、部単位印刷かつ両面印刷を利用する印刷であるかを判定する判定手段と、
前記判定手段により部単位印刷かつ両面印刷を利用する印刷であると判定された場合に、前記格納手段によりスプーラに格納されている中間コード形式の印刷データを読み出し、印刷データの最終ページが印刷媒体の表面にあたる場合には、その裏面に空白ページを挿入し、印刷設定に従ってジョブ終了データを発行することで前記印刷装置に送付されるページ記述言語形式の印刷ジョブを生成するジョブ生成手段とを備え、
前記ジョブ生成手段は、指定印刷部数に相当する回数繰り返して前記スプーラに格納されている前記文書の先頭ページの印刷データから最終ページの印刷データを読み出して、先頭ページから最終ページの印刷データを前記指定印刷部数分繰り返して並べてあり、かつ、最終ページと該最終ページの次の部の先頭ページとが１枚の印刷媒体に印刷されないように前記空白ページを挿入した１つの印刷ジョブを生成する。
【００１１】
また好ましくは、前記ジョブ生成手段は、前記印刷媒体の各面に、複数のページを縮小して配置する。
また好ましくは、前記ジョブ生成手段は、前記印刷設定として指定印刷部数が２部以上かつ両面印刷が設定されている場合に、印刷データの最終ページが印刷媒体の表面にあたる場合には、その裏面に空白ページを挿入する。
【００１４】
【発明の実施の形態】
以下、本発明を適用するに好適である実施の形態について説明を行う。
［第１の実施の形態］
図１は本発明の実施の形態を示すプリンタ制御システムのブロック図である。なお、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであっても、ＬＡＮ、ＷＡＮ等のネットワークを介して接続が為され処理が行われるシステムであっても本発明を適用できる。
＜印刷システムの構成＞
同図において、ホストコンピュータ３０００は、ＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１に記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行するＣＰＵ１を備える。ＣＰＵ１は、システムバス４に接続される各デバイスを統括的に制御する。また、このＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１には、ＣＰＵ１の制御プログラムであるオペレーティングシステムプログラム（以下ＯＳ）等を記憶し、ＲＯＭ３のフォント用ＲＯＭあるいは外部メモリ１１には上記文書処理の際に使用するフォントデータ等を記憶し、ＲＯＭ３のデータ用ＲＯＭあるいは外部メモリ１１には上記文書処理等を行う際に使用する各種データを記憶する。ＲＡＭ２は、ＣＰＵ１の主メモリ、ワークエリア等として機能する。
【００１５】
キーボードコントローラ（ＫＢＣ）５は、キーボード９や不図示のポインティングデバイスからのキー入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）６は、ＣＲＴディスプレイ（ＣＲＴ）１０の表示を制御する。ディスクコントローラ（ＤＫＣ）７は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタ制御コマンド生成プログラム（以下プリンタドライバ）等を記憶するハードディスク（ＨＤ）、フロッピーディスク（ＦＤ）等の外部メモリ１１とのアクセスを制御する。プリンタコントローラ（ＰＲＴＣ）８は、所定の双方向性インターフェース（インタフェース）２１を介してプリンタ１５００に接続されて、プリンタ１５００との通信制御処理を実行する。
【００１６】
なお、ＣＰＵ１は、例えばＲＡＭ２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、ＣＲＴ１０上でのＷＹＳＩＷＹＧを可能としている。また、ＣＰＵ１はＣＲＴ１０上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行える。
【００１７】
プリンタ１５００においては、プリンタＣＰＵ１２は、ＲＯＭ１３のプログラム用ＲＯＭに記憶された制御プログラム等あるいは外部メモリ１４に記憶された制御プログラム等に基づいてシステムバス１５に接続される印刷部（プリンタエンジン）１７に出力情報としての画像信号を出力する。また、このＲＯＭ１３のプログラムＲＯＭには、ＣＰＵ１２の制御プログラム等を記憶する。ＲＯＭ１３のフォント用ＲＯＭには、上記出力情報を生成する際に使用するフォントデータ等を記憶し、ＲＯＭ１３のデータ用ＲＯＭにはハードディスク等の外部メモリ１４がないプリンタの場合には、ホストコンピュータ上で利用される情報等を記憶している。
【００１８】
ＣＰＵ１２は入力部１８を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ３０００に通知可能に構成されている。ＲＡＭ１９は、ＣＰＵ１２の主メモリ、ワークエリア等として機能するＲＡＭで、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。なお、ＲＡＭ１９は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。前述したハードディスク（ＨＤ）、ＩＣカード等の外部メモリ１４は、メモリコントローラ（ＭＣ）２０によりアクセスを制御される。外部メモリ１４は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、操作部１５０１には、操作のためのスイッチおよびＬＥＤ表示器等が配されている。
【００１９】
また、前述した外部メモリ１４は１個に限らず、少なくとも１個以上備え、内蔵フォントに加えてオプションカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。更に、図示しないＮＶＲＡＭを有し、操作部１５０１からのプリンタモード設定情報を記憶するようにしてもよい。
【００２０】
図１０は、ホストコンピュータ３０００とプリンタ１５００との接続形態を示す図である。図１では、双方向性インターフェース２１によって、ホストコンピュータ３０００とプリンタ１５００とが直接接続されている場合のブロック図を示したが、図１０ではネットワーク経由で接続されている場合を示している。図１０において、プリンタ１５００ａはホストコンピュータ３０００ａに直接接続され、プリンタ１５００ａに対する印刷ジョブの管理をホストコンピュータ３０００ａが行っている。ホストコンピュータ３０００ａは、プリンタ１５００ａがネットワーク上の他のホストコンピュータからも利用できるように、共有を許可している。この共有により、ホストコンピュータ３０００ｂ及び３０００ｃは、プリンタ１５００ａをネットワーク経由で利用できる。
【００２１】
プリンタ１５００ｂは、ネットワークに直接接続されている。プリンタ１５００ｂに対する印刷ジョブの管理はホストコンピュータ３０００ｂが行っている。ホストコンピュータ３０００ｂは、プリンタ１５００ｂがネットワーク上の他のホストコンピュータからも利用できるように、共有を許可している。この共有により、ホストコンピュータ３０００ａ及び３０００ｃは、プリンタ１５００ｂをネットワーク経由で利用できる。
【００２２】
図２は、プリンタ等の印刷装置が直接接続されているか、あるいはネットワーク経由で接続されているホストコンピュータにおける典型的な印刷処理の構成図である。アプリケーション２０１、グラフィックエンジン２０２、プリンタドライバ２０３、およびシステムスプーラ２０４は、外部メモリ１１に保存されたファイルとして存在し、実行される場合にＯＳやそのモジュールを利用するモジュールによってＲＡＭ２にロードされ実行されるプログラムモジュールである。また、アプリケーション２０１およびプリンタドライバ２０３は、外部メモリ１１のＦＤや不図示のＣＤ−ＲＯＭ、あるいは不図示のネットワークを経由して外部ディスク１１のＨＤに追加することが可能となっている。
【００２３】
外部メモリ１１に保存されているアプリケーション２０１はＲＡＭ２にロードされて実行されるが、このアプリケーション２０１からプリンタ１５００に対して印刷を行う際には、同様にＲＡＭ２にロードされ実行可能となっているグラフィックエンジン２０２を利用して出力（描画）を行う。グラフィックエンジン２０２は印刷装置ごとに用意されたプリンタドライバ２０３を同様に外部メモリ１１からＲＡＭ２にロードし、アプリケーション２０１の出力をプリンタドライバ２０３を用いてプリンタの制御コマンドに変換する。変換されたプリンタ制御コマンドはＯＳによってＲＡＭ２にロードされたシステムスプーラ２０４を経てインターフェース２１経由でプリンタ１５００へ出力される仕組みとなっている。＜印刷制御システムの構成＞
本実施の形態のシステムは、図２で示すプリンタとホストコンピュータからなる印刷システムに加えて、更に図３に示すように、アプリケーションからの印刷データを一旦中間コードデータでスプールするシステムを前提としている。
【００２４】
図３は、図２のシステムを拡張したもので、グラフィックエンジン２０２からプリンタドライバ２０３へ印刷命令を送る際に、一旦中間コードからなるスプールファイル３０３を生成する。図２のシステムでは、アプリケーション２０１が印刷処理から開放されるのはプリンタドライバ２０３がグラフィックエンジン２０２からのすべての印刷命令をプリンタの制御コマンドへ変換し終わった時点である。これに対して、図３のシステムでは、スプーラ３０２が全ての印刷命令を中間コードデータに変換してスプールファイル３０３に出力した時点である。通常、後者の方が短時間で済む。また、図３で示すシステムにおいては、スプールファイル３０３の内容に対して加工することができる。これにより、アプリケーションからの印刷データに対して、拡大縮小や、複数ページを１ページに縮小して印刷する等、アプリケーションの持たない機能を実現することができる。
【００２５】
これらの目的のために、図２のシステムに対し、図３の様に中間コードデータでスプールする様、システムの拡張がなされてきている。なお、印刷データの加工を行うためには、通常プリンタドライバ２０３が提供する設定画面からオペレータが設定を行い、プリンタドライバ２０３がその設定内容をＲＡＭ２あるいは外部メモリ１１上に保管する。
【００２６】
以下、図３の詳細を説明する。図に示す通り、この拡張された処理方式では、グラフィックエンジン２０２からの印刷命令をディスパッチャ３０１が受け取る。ディスパッチャ３０１がグラフィックエンジン２０２から受け取った印刷命令が、アプリケーション２０１からグラフィックエンジン２０２へ発行された印刷命令の場合には、ディスパッチャ３０１は外部メモリ１１に格納されているスプーラ３０２をＲＡＭ２にロードし、プリンタドライバ２０３ではなくスプーラ３０２へ印刷命令を送付する。
【００２７】
スプーラ３０２は受け取った印刷命令を中間コードに変換してスプールファイル３０３に出力する。また、スプーラ３０２は、プリンタドライバ２０３に対して設定されている印刷データに関する加工設定をプリンタドライバ２０３から取得してスプールファイル３０３に保存する。なお、スプールファイル３０３は外部メモリ１１上にファイルとして生成されるが、ＲＡＭ２上に生成されても構わない。更にスプーラ３０２は、外部メモリ１１に格納されているスプールファイルマネージャ３０４をＲＡＭ２上にロードし、スプールファイルマネージャ３０４に対してスプールファイル３０３の生成状況を通知する。その後、スプールファイルマネージャ３０４は、スプールファイル３０３に保存された印刷データに関する加工設定の内容に従って印刷を行えるか判断する。
【００２８】
スプールファイルマネージャ３０４がグラフィックエンジン２０２を利用して印刷を行えると判断した際には、外部メモリ１１に格納されているデスプーラ３０５をＲＡＭ２にロードし、デスプーラ３０５に対してスプールファイル３０３に記述された中間コードの印刷処理を行うように指示する。
【００２９】
デスプーラ３０５はスプールファイル３０３に含まれる中間コードをスプールファイル３０３に含まれる加工設定の内容に従って加工し、もう一度グラフィックエンジン２０２経由で出力する。
【００３０】
ディスパッチャ３０１がグラフィックエンジン２０２から受け取った印刷命令が、デスプーラ３０５からグラフィックエンジン２０２へ発行された印刷命令の場合には、ディスパッチャ３０１はスプーラ３０２ではなく、プリンタドライバ２０３に印刷命令を送る。
【００３１】
プリンタドライバ２０３は受け取った印刷命令に応じてプリンタ制御コマンドを生成し、それをシステムスプーラ２０４，双方向インターフェース２１経由でプリンタ１５００に出力する。
＜プリンタの構成＞
図９は、プリンタ１５００の一例である両面印刷機能を有するカラーレーザビームプリンタの断面図である。
【００３２】
このプリンタはホストコンピュータ３０００より入力した印刷データに基づいて得られる各色毎の画像データで変調されたレーザ光をポリゴンミラー３１により感光ドラム１５を走査して静電潜像を形成する。そして、この静電潜像をトナー現像して可視画像を得、これを中間転写体９へ全色について多重転写してカラー可視画像を形成する。そして更に、このカラー可視画像を転写材２へ転写し、転写材２上にカラー可視画像を定着させる。以上の制御を行う画像形成部は、感光ドラム１５を有するドラムユニット、接触帯電ローラ１７を有する一次帯電部、クリーニング部、現像部、中間転写体９、用紙カセット１や各種ローラ３、４、５、７を含む給紙部、転写ローラ１０を含む転写部及び定着部２５によって構成されている。
【００３３】
ドラムユニット１３は、感光ドラム（感光体）１５と感光ドラム１５のホルダを兼ねたクリーニング機構を有するクリーナ容器１４とを一体に構成したものである。このドラムユニット１３はプリンタ本体に対して着脱自在に支持され、感光ドラム１５の寿命に合わせて容易にユニット交換可能に構成されている。上記感光ドラム１５はアルミシリンダの外周に有機光導電体層を塗布して構成し、クリーナ容器１４に回転可能に支持されている。感光ドラム１５は、図示しない駆動モータの駆動力が伝達されて回転するもので、駆動モータは感光ドラム１５を画像形成動作に応じて反時計回り方向に回転させる。感光ドラム１５への露光は、スキャナ部３０から送られるレーザ光を感光ドラム１５の表面を選択的に露光させることにより静電潜像が形成されるように構成されている。スキャナ部３０では、変調されたレーザ光を、モータ３１ａにより画像信号の水平同期信号を同期して回転するポリゴンミラーにより反射し、レンズ３２、反射鏡３３を介して感光ドラムを照射する。
【００３４】
現像部は、上記静電潜像を可視画像化するために、イエロー（Ｙ）、マゼンタ（Ｍ）、シアン（Ｃ）の現像を行う３個のカラー現像器２０Ｙ，２０Ｍ，２０Ｃと、ブラック（Ｂ）の現像を行う１個のブラック現像器２１Ｂとを備えた構成を有する。カラー現像器２０Ｙ，２０Ｍ，２０Ｃ及びブラック現像器２１Ｂには、スリーブ２０ＹＳ，２０ＭＳ，２０ＣＳ及び２１ＢＳと、これらスリーブ２０ＹＳ，２０ＭＳ，２０ＣＳ，２０ＢＳそれぞれの外周に圧接する塗布ブレード２０ＹＢ，２０ＭＢ，２０ＣＢ及び２１ＢＢとがそれぞれ設けられる。また３個のカラー現像器２０Ｙ，２０Ｍ，２０Ｃには塗布ローラ２０ＹＲ，２０ＭＲ，２０ＣＲが設けられている。
【００３５】
また、ブラック現像器２１Ｂはプリンタ本体に対して着脱可能に取り付けられており、カラー現像器２０Ｙ，２０Ｍ，２０Ｃは回転軸２２を中心に回転する現像ロータリー２３にそれぞれ着脱可能に取り付けられている。
【００３６】
ブラック現像器２１Ｂのスリーブ２１ＢＳは感光ドラム１５に対して例えば３００μｍ程度の微小間隔を持って配置されている。ブラック現像器２１Ｂは、器内に内蔵された送り込み部材によってトナーを搬送すると共に、時計回り方向に回転するスリーブ２１ＢＳの外周に塗布ブレード２１ＢＢによって塗布するように摩擦帯電によってトナーへ電荷を付与する。また、スリーブ２１ＢＳに現像バイアスを印加することにより、静電潜像に応じて感光ドラム１５に対して現像を行って感光ドラム１５にブラックトナーによる可視画像を形成する。
【００３７】
３個のカラー現像器２０Ｙ，２０Ｍ，２０Ｃは、画像形成に際して現像ロータリー２３の回転に伴って回転し、所定のスリーブ２０ＹＳ，２０ＭＳ，２０ＣＳが感光ドラム１５に対して３００μｍ程度の微小間隔を持って対向することになる。これにより所定のカラー現像器２０Ｙ，２０Ｍ，２０Ｃが感光ドラム１５に対向する現像位置に停止し、感光ドラム１５に可視画像が作成される。
【００３８】
カラー画像形成時には、中間転写体９の１回転毎に現像ロータリー２３が回転し、イエロー現像器２０Ｙ、マゼンタ現像器２０Ｍ、シアン現像器２０Ｃ、次いでブラック現像器２０Ｂの順で現像工程がなされ、中間転写体９が４回転してイエロー、マゼンタ、シアン、ブラックのそれぞれのトナーによる可視画像を順次形成し、その結果フルカラー可視画像を中間転写体９上に形成する。
【００３９】
中間転写体９は、感光ドラム１５に接触して感光ドラム１５の回転に伴って回転するように構成されたもので、カラー画像形成時に時計回り方向に回転し、感光ドラム１５から４回の可視画像の多重転写を受ける。また、中間転写体９は画像形成時に後述する転写ローラ１０が接触して転写材２を挟持搬送することにより転写材２に中間転写体９上のカラー可視画像を同時に多重転写する。中間転写体の外周部には、中間転写体２の回転方向に関する位置を検知するためのＴＯＰセンサ９ａ及びＲＳセンサ９ｂと、中間転写体に転写されたトナー像の濃度を検知するための濃度センサ９ｃが配置されている。
【００４０】
転写ローラ１０は、感光ドラム１５に対して接離可能に支承された転写帯電器を備えたもので、金属軸を中抵抗発泡弾性体により巻回することによって構成されている。
【００４１】
転写ローラ１０は、図９に実線で示すように中間転写体９上にカラー可視画像を多重転写している間は、カラー可視画像を乱さぬように下方に離開している。そして、上記中間転写体９上に４色のカラー可視画像が形成された後は、このカラー可視画像を転写材２に転写するタイミングにあわせてカム部材（不図示）により転写ローラ１０を図示点線で示す上方に位置させる。これにより転写ローラ１０は転写材２を介して中間転写体９に所定の押圧力で圧接すると共に、バイアス電圧が印加され、中間転写体９上のカラー可視画像が転写材２に転写される。
【００４２】
定着部２５は、転写材２を搬送させながら、転写されたカラー可視画像を定着させるものであり、転写材２を加熱する定着ローラ２６と転写材２を定着ローラ２６に圧接させるための加圧ローラ２７とを備えている。定着ローラ２６と加圧ローラ２７とは中空状に形成され、内部にそれぞれヒータ２８，２９が内蔵されている。即ち、カラー可視画像を保持した転写材２は定着ローラ２６と加圧ローラ２７とにより搬送されると共に、熱及び圧力を加えることによりトナーが表面に定着される。
【００４３】
可視画像定着後の転写材２は、その後排紙ローラ３４，３５，３６によって排紙部３７へ排出して画像形成動作を終了する。
【００４４】
クリーニング手段は、感光ドラム１５上及び中間転写体９上に残ったトナーをクリーニングするものであり、感光ドラム１５上に形成されたトナーによる可視画像を中間転写体９に転写した後の廃トナーあるいは、中間転写体９上に作成された４色のカラー可視画像を転写材２に転写した後の廃トナーは、クリーナ容器１４に蓄えられる。
【００４５】
印刷される転写材（記録用紙）２は、給紙トレイ１から給紙ローラ３により取り出されて中間転写体９と転写ローラ１０との間に挟まれるように搬送されてカラートナー画像が記録され、定着部２５を通過してトナー像が定着される。片面印刷の場合には、案内３８が上方の排紙部に記録用紙を導くように搬送径路を形成するが、両面印刷の用紙に対しては、下方の両面ユニットに導くように径路を形成する。
【００４６】
両面ユニットに導かれた記録用紙は、搬送ローラ４０によりトレイ１の下部（ニ点鎖線で示す搬送径路）に一旦送り込まれた後に逆方向に搬送され、両面トレイ３９に送られる。両面トレイ３９上では、用紙は給紙トレイ１に載置された状態とは表裏が逆になり、また搬送方向について前後が逆になっている。この状態で再びトナー像の転写・定着を再度行うことで、両面印刷ができる。
＜部単位の両面印刷のしかた＞
図４は、従来のアプリケーションによる部単位印刷の例（図４（ａ））と、本実施例の印刷制御システムにより得られる出力結果の例（図４（ｂ））を示すものである。従来の出力結果では、部の総ページ数Ｎが奇数の場合、１部目の最終ページの裏面に２部目の１ページ目が印刷されている。この結果、出力物を部単位に分ける事ができなくなっている。また、１部目と２部目の各用紙の裏表では、印刷されているページの組み合わせが異なる結果となっている。これに対し、本実施例の印刷制御システムの出力結果では、部の総ページ数Ｎが奇数の場合にはその裏面に空白ページを挿入する事により、別の部に含まれるページが同一の用紙の表面と裏面に配置される事のないようにし、出力物を部単位に分ける事を可能とし、また各用紙の裏表に印刷されているページの組み合わせは全ての部で同一となる。
【００４７】
図１１Ａ，１１Ｂは、部単位印刷時の印刷ジョブキューの状態を示す図である。図１１Ａは、８部の「Printer Test Page」を印刷するために、８個の印刷ジョブを発生させた場合の印刷ジョブキューの状態を示している。この印刷を中止あるいは中断するためには、８個の印刷ジョブそれぞれに対して、中止あるいは中断の指示が必用である。また、５部目と６部目との間には、他の印刷ジョブ「Script.doc」が割り込んでいる。８部の印刷を８個の印刷ジョブによりひとつのプリンタで行っているため、それら印刷ジョブとほぼ同時に他の印刷ジョブがそのプリンタに対して送り付けられると、このような事態になる。
【００４８】
これに対して本実施形態の印刷システムおける印刷ジョブキューの例を図１１Ｂに示す。図１１Ｂにおいては、複数部の印刷を単一の印刷ジョブで実行するために、印刷ジョブキューにはひとつのジョブとして表示される。また、印刷の中止や中断はそのひとつの印刷ジョブに対する操作で実行できる。また、他の印刷ジョブが間に割り込むこともなく、異なる文書が混じりあうこともない。
【００４９】
＜印刷制御手順＞
以下、図５以降を用いて、両面印刷時の部単位印刷処理について詳しく述べる。図５および図６は、スプールファイルマネージャ３０４により実行される制御手順である。
【００５０】
アプリケーション２０１から印刷が開始されると、スプーラ３０２はプリンタドライバ２０３から印刷の設定を取得し、スプールファイル３０３に記録する。スプーラ３０２は、スプールファイルマネージャ３０４が起動していない場合にはＲＡＭ２にスプールファイルマネージャをロードし、印刷が開始されたことをスプールファイルマネージャに通知する。
【００５１】
スプールファイルマネージャ３０４は、スプールファイル３０３に記録されている印刷の設定を読み取り、部単位印刷でかつプリンタの両面印刷を利用する印刷であると判定すると、図５の処理を開始する。
【００５２】
ステップ５００では、印刷処理を行っていない残り部数を示すＮに指定された部数をセットする。ステップ５０１では、印刷ジョブの先頭を示す「ジョブ開始」をプリンタに対して発行し、ひとつの印刷ジョブの始まりをプリンタに知らせる。ただし、印刷時に指定される印刷部数は１以上であるものとする。
【００５３】
ステップ５０２では、Ｎが１以上か調べ、１未満であれば指定された部数を処理し終えたとして終了する。１以上の場合には、ステップ５０３で１部の印刷処理を行い、ステップ５０４で残り部数を１減らし、ステップ５０２へ戻る。こうして、指定された部数回ステップ５０３の１部の印刷処理を行うことで、部単位の印刷を行う。指定された部数の文書を印刷し終えたなら、「ジョブ終了」を発行して、プリンタにひとつの印刷ジョブの終了を知らせる。
【００５４】
図６は、図５のステップ５０３における処理のフローチャートである。ステップ６０１では、処理中のページ番号を示すＫに１をセットし、１ページ目の処理を開始する。ステップ６０２では、Ｋページ目が存在するかを調べ、存在する場合にはそのページを印刷するようデスプーラ３０５に指示をする（ステップ６０３）。そしてＫページ目の処理を終了し、Ｋの値をインクリメントし（ステップ６０４）、ステップ６０２に戻って次のページの処理へ進む。ステップ６０２でＫページ目が存在しないと判定された場合には、ステップ６０５でＫは偶数であるか、すなわち裏面であるかを調べる。Ｋが偶数（裏面）でない場合、Ｋ−１ページ目は偶数（裏面）であり、それが部の最終ページであるため、そのまま１部の印刷処理を終了する。一方、Ｋが偶数の場合、Ｋページ目は両面印刷の裏面にあたり、かつＫページ目は存在しないので、Ｋページ目として空白ページを印刷する。
【００５５】
このように、１部のページ数が奇数ページの場合には、部の最後の用紙の裏面に空白ページを挿入することにより、図４に示す本実施例の印刷制御システムの出力結果を得ることが出来る。こうして、部単位にまとまった両面印刷された印刷物を、そのページ数が偶数であろうと奇数であろうと出力することができる。
【００５６】
また、このように複数部の部単位印刷を単一の印刷ジョブで実現することにより、印刷の中止や中断が通常の１ジョブに対する場合と同様に行え、また、部単位印刷中に、他の印刷ジョブが間に割り込むことを防止できる。
［第２の実施の形態］
図３に示した拡張されたシステムでは、複数のページ（Ｎページ）を縮小し、１ページにまとめて印刷する機能を実現できる。以下、この機能をＮアップ印刷と呼ぶ。Ｎアップ印刷の場合にも、以下に示す手順により、本発明を適用できる。以下、アプリケーションソフトウェアから印刷されるページ（数）を論理ページ（数）、実際に出力されるページ（数）を物理ページ（数）と呼ぶ事とする。Ｎアップ印刷では、Ｎ論理ページを縮小して１物理ページにまとめ、印刷することになる。
【００５７】
図７は、図３に示す拡張された印刷データ生成方法でＮアップ印刷を行った際、従来のアプリケーションによる部単位印刷の出力結果と、本実施例の印刷制御システムにより得られる出力結果を示すものである。従来の出力結果では、ひとつの部の総物理ページ数Ｐが奇数の場合、１部目の最終物理ページの裏面（図７（ａ）においては２枚目の裏面）に２部目の１物理ページ目が印刷されている。この結果、出力物を部単位に分けることができなくなっている。また、１部目と２部目の各用紙の裏表では、印刷されている論理ページの組み合わせが異なる結果となっている。
【００５８】
これに対し、本実施形態の印刷制御システムの出力結果では、ひとつの部の総物理ページ数Ｐが奇数の場合にはその裏面に空白ページを挿入する事により、互いに異なる部に含まれる論理ページが同一の用紙の表面と裏面に配置される事のないようにして、出力物を部単位に分ける事を可能としている。また各用紙の裏表に印刷されている論理ページの組み合わせはすべての部で同一となる。
【００５９】
以下、Ｎアップ印刷における両面印刷時の部単位印刷処理について詳しく述べる。図５および図８は、スプールファイルマネージャ３０４により実行される制御手順である。
【００６０】
スプールファイルマネージャ３０４は、スプールファイル３０３に記録されている印刷の設定を読み取り、部単位印刷でかつプリンタの両面印刷を利用する印刷であると判定すると、第１の実施の形態と同様に、図５の処理を開始する。ただし、ステップ５０３では、印刷の設定でＮアップ印刷を指定されている場合には、図６ではなく、図８のフローチャートに示す処理を行う。
【００６１】
ステップ８０１では、処理中の物理ページ番号を示すＰに１をセットし、１物理ページ目の処理を開始する。Ｎには、Ｎアップ印刷の各物理ページに配置する論理ページ数Ｎ（例えば、４ページ分を１ページに縮小する４アップの場合ではＮ＝４）をセットする。
【００６２】
ステップ８０２では、（Ｎ（Ｐ−１）＋１）論理ページが存在するかを調べる。
【００６３】
（Ｎ（Ｐ−１））は、（Ｐ−１）物理ページ目までに印刷を終えた論理ページ数を意味する。よって、＋１した前記値は、Ｐ物理ページに配置する最初の論理ページを意味する。この論理ページが存在する場合には、Ｐ物理ページを印刷する必要があり、そうでない場合はＰ物理ページを印刷する必要はなく、（Ｐ−１）物理ページが、部の最終ページとなる。
【００６４】
ステップ８０２の結果がＹＥＳの場合には、Ｐ物理ページが存在するため、Ｐ物理ページを印刷するようデスプーラ３０５に指示をする（ステップ８０３）。そしてＰ物理ページ目の処理を終了し、Ｐの値をインクリメントし（ステップ８０４）、ステップ８０２に戻って次の物理ページの処理へ進む。
【００６５】
一方、ステップ８０２で（Ｎ（Ｐ−１）＋１）論理ページが存在しないと判定された場合には、ステップ８０５でＰは偶数であるか、すなわち裏面であるかを調べる。Ｐが偶数の場合、Ｐページ目は両面印刷の裏面にあたり、かつＰ物理ページ目は存在しないので、Ｐ物理ページ目として空白ページを印刷する。
【００６６】
このように、Ｎアップ印刷の場合にも、部のページ数が奇数ページの場合に部の最後の裏面に空白ページを挿入することにより、図７に示す出力結果を得る事が出来る。こうして、例えばホストコンピュータなどから繰返し印刷要求を行うことで所望の部数の印刷物を１部ずつ分けて出力する場合、１部のページ数がどのようなものであっても、１部ずつ独立し、各部が同じ体裁の印刷物を得ることができる。
【００６７】
また、このように複数部の部単位印刷を単一のジョブで実現することにより、印刷の中止や中断が通常の１ジョブに対する場合と同様に行え、また部単位印刷中に他の印刷ジョブが間に割り込むことを防止できる。
【００６８】
【他の実施形態】
なお、本発明は、複数の機器（例えばホストコンピュータ，インタフェイス機器，リーダ，プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用してもよい。
【００６９】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成される。
【００７０】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００７１】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【００７２】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００７３】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００７４】
【発明の効果】
以上説明したように、本発明によれば、奇数ページの印刷データを印刷装置の両面印刷を用いて出力した際には、各部の境界が同一用紙上に配置されないようにし、部単位に分けることが可能となる。
【００７５】
また、複数ページを１ページに縮小して印刷する機能を併用した場合にも、各部の境界が同一用紙上に配置されないようにし、部単位に分けることが可能となる。
【００７６】
また、複数部の部単位印刷を単一のジョブで実現することにより、印刷の中止や中断が通常の１ジョブに対する場合と同様に行え、また部単位印刷中に他の印刷ジョブが間に割り込むことを防止できる。
【００７７】
【図面の簡単な説明】
【図１】実施形態の印刷システムのブロック図である。
【図２】ホストコンピュータにおける典型的な印刷データ生成を示す図である。
【図３】中間コードを生成する図２を拡張した印刷データ生成を示す図である。
【図４】部単位両面印刷の出力例を示す図である。
【図５】部単位印刷の処理手順を示すフローチャートである。
【図６】部単位印刷の各部の印刷処理手順を示すフローチャートである。
【図７】Ｎアップ印刷に対して部単位両面印刷を行った場合の出力例の図である。
【図８】Ｎアップ印刷における部単位印刷の各部の印刷処理手順を示すフローチャートである。
【図９】両面ユニットを有するレーザビームプリンタの断面図である。
【図１０】ホストコンピュータとプリンタとの接続形態を示す図である。
【図１１Ａ】部単位印刷時のプリンタキューの状態を示す図である。
【図１１Ｂ】本実施形態における部単位印刷時のプリンタキューの状態を示す図である。
【符号の説明】
１  ＣＰＵ
２  ＲＡＭ
３  ＲＯＭ
４  システムバス
１２  ＣＰＵ
１３  ＲＯＭ
１９  ＲＡＭ
３０００  ホストコンピュータ
１５００  プリンタ
【図１】
0003814410.tif 000002
【図２】
0003814410.tif 000003
【図３】
0003814410.tif 000004
【図４】
0003814410.tif 000005
【図５】
0003814410.tif 000006
【図６】
0003814410.tif 000007
【図７】
0003814410.tif 000008
【図８】
0003814410.tif 000009
【図９】
0003814410.tif 000010
【図１０】
0003814410.tif 000011
【図１１Ａ】
0003814410.tif 000012
【図１１Ｂ】
0003814410.tif 000013