(57)【特許請求の範囲】
【請求項１】
アプリケーションが生成した文書データに応じて印刷装置で印刷すべき印刷データを生成するプリンタドライバを備える情報処理装置であって、
プリンタドライバによる設定画面を介して、印刷用紙の１面に配置されるページ数と、配置順とを含むレイアウト印刷の条件を設定するための入力手段と、
前記アプリケーションから入力された文書データの各ページを変倍し、変倍された各ページの文書データをレイアウトする第一レイアウト手段と、
前記設定されたレイアウト印刷の条件を実行するために、前記第一レイアウト手段と、前記印刷装置内で変倍してレイアウトするための前記印刷装置が備える第二レイアウト手段との処理配分を決定する配分手段と、
前記配分手段により決定された前記第一レイアウト手段の処理配分において、前記第一レイアウト手段でレイアウトする際の文書データの各ページの配置を決定する配置決定手段と、
前記配置決定手段により決定された各ページの配置に従って、前記第一レイアウト手段によりレイアウトされた印刷データを生成する生成手段とを備え、
前記配分手段は、前記第一レイアウト手段と前記第二レイアウト手段の双方で変倍してレイアウトするように処理配分を決定可能であり、
前記配置決定手段は、前記レイアウト印刷の条件に含まれる印刷用紙の１面に配置されるページ数、印刷用紙の１面に配置されるページの配置順、前記配分手段により決定された処理配分、及び文書データの向きの４つの条件により前記第一レイアウト手段による各ページの配置を一意に特定することが可能な配列情報を用いて、前記第一レイアウト手段でレイアウトする際の文書データの各ページの配置を決定することを特徴とする情報処理装置。
【請求項２】
文書データをページ単位に任意の順序で読み出し可能に格納手段にスプールするスプール手段と、
前記スプールされた文書データの生成状況を監視して、該スプール済みの文書データに基づく印刷処理が可能であるか判断する判断手段とを更に備え、
前記判断手段は、前記配列情報により決定される印刷データの各ページに配置される文書データの各ページの配置に従って、該スプール済みの文書データに基づく印刷処理が可能であるか判断することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
レイアウト印刷を行うに際し、必ず当該情報処理装置の第一レイアウト手段を用いるか、第一レイアウト手段を用いずに前記印刷装置の第二レイアウト手段を用いるか、当該情報処理装置の第一レイアウト手段と前記印刷装置の第二レイアウト手段の両方が利用可能であるかを、指定画面を介して択一的に選択する選択手段を更に備え、
前記配分手段は、前記選択手段により当該情報処理装置の第一レイアウト手段と前記印刷装置の第二レイアウト手段の両方が利用可能であることが選択されている場合に、前記第一レイアウト手段と前記第二レイアウト手段との処理配分を決定して、前記第一レイアウト手段と前記第二レイアウト手段の両方の変倍とレイアウトを実行させることを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記配分手段は、前記第一レイアウト手段の縮小レイアウト機能と、前記第二レイアウト手段の縮小レイアウト機能との双方を協調的に使用した配分を決定し、どちらか１つでは実現できない縮小レイアウト印刷の体裁を生成可能とすることを特徴とする請求項３に記載の情報処理装置。
【請求項５】
アプリケーションが生成した文書データに応じて印刷装置で印刷すべき印刷データを生成するプリンタドライバを備える情報処理装置における情報処理方法であって、
プリンタドライバによる設定画面を介して、印刷用紙の１面に配置されるページ数と、配置順とを含むレイアウト印刷の条件を設定するための入力工程と、
前記アプリケーションから入力された文書データの各ページを変倍し、変倍された各ページの文書データをレイアウトする第一レイアウト工程と、
前記設定されたレイアウト印刷の条件を実行するために、前記第一レイアウト工程と、前記印刷装置内で変倍してレイアウトするための前記印刷装置が備える第二レイアウト工程との処理配分を決定する配分工程と、
前記配分工程により決定された前記第一レイアウト工程の処理配分において、前記第一レイアウト工程でレイアウトする際の文書データの各ページの配置を決定する配置決定工程と、
前記配置決定工程により決定された各ページの配置に従って、前記第一レイアウト工程によりレイアウトされた印刷データを生成する生成工程とを備え、
前記配分工程は、前記第一レイアウト工程と前記第二レイアウト工程の双方で変倍してレイアウトするように処理配分を決定可能であり、
前記配置決定工程は、前記レイアウト印刷の条件に含まれる印刷用紙の１面に配置されるページ数、印刷用紙の１面に配置されるページの配置順、前記配分工程により決定された処理配分、及び文書データの向きの４つの条件により前記第一レイアウト工程による各ページの配置を一意に特定することが可能な配列情報を用いて、前記第一レイアウト工程でレイアウトする際の文書データの各ページの配置を決定することを特徴とする情報処理方法。
【請求項６】
文書データをページ単位に任意の順序で読み出し可能に格納手段にスプールするスプール工程と、
前記スプールされた文書データの生成状況を監視して、該スプール済みの文書データに基づく印刷処理が可能であるか判断する判断工程とを更に備え、
前記判断工程は、前記配列情報により決定される印刷データの各ページに配置される文書データの各ページの配置に従って、該スプール済みの文書データに基づく印刷処理が可能であるか判断することを特徴とする請求項５に記載の情報処理方法。
【請求項７】
レイアウト印刷を行うに際し、必ず当該情報処理装置における第一レイアウト工程を用いるか、第一レイアウト工程を用いずに前記印刷装置における第二レイアウト工程を用いるか、当該情報処理装置における第一レイアウト工程と前記印刷装置における第二レイアウト工程の両方が利用可能であるかを、指定画面を介して択一的に選択する選択工程を更に備え、
前記配分工程は、前記選択工程により当該情報処理装置における第一レイアウト工程と前記印刷装置における第二レイアウト工程の両方が利用可能であることが選択されている場合に、前記第一レイアウト工程と前記第二レイアウト工程との処理配分を決定して、前記第一レイアウト工程と前記第二レイアウト工程の両方の変倍とレイアウトを実行させることを特徴とする請求項５または６に記載の情報処理方法。
【請求項８】
前記配分工程は、前記第一レイアウト工程の縮小レイアウト機能と、前記第二レイアウト工程の縮小レイアウト機能との双方を協調的に使用した配分を決定し、どちらか１つでは実現できない縮小レイアウト印刷の体裁を生成可能とすることを特徴とする請求項７に記載の情報処理方法。
【請求項９】
アプリケーションが生成した文書データに応じて印刷装置で印刷すべき印刷データを生成するプリンタドライバが格納された記憶媒体であって、情報処理装置により実行される該プリンタドライバが、
プリンタドライバによる設定画面を介して、印刷用紙の１面に配置されるページ数と、配置順とを含むレイアウト印刷の条件を設定するための入力工程のコードと、
前記アプリケーションから入力された文書データの各ページを変倍し、変倍された各ページの文書データをレイアウトする第一レイアウト工程のコードと、
前記設定されたレイアウト印刷の条件を実行するために、前記第一レイアウト工程のコードと、前記印刷装置内で変倍してレイアウトするための前記印刷装置が備える第二レイアウト工程のコードとの処理配分を決定する配分工程のコードと、
前記配分工程のコードにより決定された前記第一レイアウト工程のコードの処理配分において、前記第一レイアウト工程のコードでレイアウトする際の文書データの各ページの配置を決定する配置決定工程のコードと、
前記配置決定工程のコードにより決定された各ページの配置に従って、前記第一レイアウト工程のコードによりレイアウトされた印刷データを生成する生成工程のコードとを備え、
前記配分工程のコードは、前記第一レイアウト工程のコードと前記第二レイアウト工程のコードの双方で変倍してレイアウトするように処理配分を決定可能であり、
前記配置決定工程のコードは、前記レイアウト印刷の条件に含まれる印刷用紙の１面に配置されるページ数、印刷用紙の１面に配置されるページの配置順、前記配分工程のコードにより決定された処理配分、及び文書データの向きの４つの条件により前記第一レイアウト工程のコードによる各ページの配置を一意に特定することが可能な配列情報を用いて、前記第一レイアウト工程のコードでレイアウトする際の文書データの各ページの配置を決定することを特徴とする記憶媒体。
【請求項１０】
文書データをページ単位に任意の順序で読み出し可能に格納手段にスプールするスプール工程のコードと、
前記スプールされた文書データの生成状況を監視して、該スプール済みの文書データに基づく印刷処理が可能であるか判断する判断工程のコードとを更に備え、
前記判断工程のコードは、前記配列情報により決定される印刷データの各ページに配置される文書データの各ページの配置に従って、該スプール済みの文書データに基づく印刷処理が可能であるか判断することを特徴とする請求項９に記載の記憶媒体。
【請求項１１】
レイアウト印刷を行うに際し、必ず当該情報処理装置で実行される第一レイアウト工程のコードを用いるか、第一レイアウト工程のコードを用いずに前記印刷装置で実行される第二レイアウト工程のコードを用いるか、当該情報処理装置で実行される第一レイアウト工程のコードと前記印刷装置で実行される第二レイアウト工程のコードの両方が利用可能であるかを、指定画面を介して択一的に選択する選択工程のコードを更に備え、
前記配分工程のコードは、前記選択工程のコードにより当該情報処理装置で実行される第一レイアウト工程のコードと前記印刷装置で実行される第二レイアウト工程のコードの両方が利用可能であることが選択されている場合に、前記第一レイアウト工程のコードと前記第二レイアウト工程のコードとの処理配分を決定して、前記第一レイアウト工程のコードと前記第二レイアウト工程のコードとの両方の変倍とレイアウトを実行させることを特徴とする請求項９または１０に記載の記憶媒体。
【請求項１２】
前記配分工程のコードは、前記第一レイアウト工程のコードの縮小レイアウト機能と、前記第二レイアウト工程のコードの縮小レイアウト機能との双方を協調的に使用した配分を決定し、どちらか１つでは実現できない縮小レイアウト印刷の体裁を生成可能とすることを特徴とする請求項１１に記載の記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はパーソナルコンピュータ等の情報処理装置とプリンタから成る印刷制御システム、情報処理装置及び印刷制御方法、情報処理方法、記憶媒体に関するものである。
【０００２】
【従来の技術】
レ−ザプリンタなど、ＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）を搭載する出力機においては、アプリケーションからの複数ページデータを縮小レイアウトし、印刷データ１ページに割り付ける機能をもつデバイスが増加している。この実現のために、出力機内部で縮小するページデータ格納するメモリを複数ページ分搭載する必要がある。通常、デバイスが１ページに割り付けるページ数の上限は４ページ程度である。
【０００３】
一方、印刷データをいったんスプールして、体裁を加工するというような、ホストコンピュータ側での処理方法によつても複数ページの縮小レイアウトが可能である。この方法においては、１ページに割り付けるページ数の上限は現在では１６程度である。
【０００４】
【発明が解決しようとする課題】
現在、上記２つの方法によつて縮小レイアウト印刷が可能であるが、それぞれの印刷設定は独立のユーザインターフェイスからの設定によるものとなるために、縮小レイアウト印刷を設定するユーザの混乱を招く可能性があった。
【０００５】
すなわち、それぞれ独立したユーザインターフェイスからの印刷設定により、縮小レイアウト印刷を設定する場合、所望の縮小レイアウトが適切に設定できているか否か、ユーザにとってわかりにくく操作性が悪かった。
【０００６】
【課題を解決するための手段】
上記課題を鑑みて、本発明は、統一したユーザインターフェースを用いて印刷制御設定を行い、縮小レイアウト印刷が設定されている場合は、レイアウトの条件を判断し、印刷デバイス（プリンタ）側と情報処理装置（ホストコンピュータ）側とが重複する機能を効率的に制御して、ユーザの設定に対して適切な印刷制御を可能にすることを目的とするものである。前記目的を達成するべく、本発明に係る情報処理装置、情報処理方法、該方法をコンピュータで実行するためのプログラムを格納した記憶媒体は主として以下の構成からなることを特徴とする。
【００１０】
すなわち、アプリケーションが生成した文書データに応じて印刷装置で印刷すべき印刷データを生成するプリンタドライバを備える情報処理装置は、
プリンタドライバによる設定画面を介して、印刷用紙の１面に配置されるページ数と、配置順とを含むレイアウト印刷の条件を設定するための入力手段と、
前記アプリケーションから入力された文書データの各ページを変倍し、変倍された各ページの文書データをレイアウトする第一レイアウト手段と、
前記設定されたレイアウト印刷の条件を実行するために、前記第一レイアウト手段と、前記印刷装置内で変倍してレイアウトするための前記印刷装置が備える第二レイアウト手段との処理配分を決定する配分手段と、
前記配分手段により決定された前記第一レイアウト手段の処理配分において、前記第一レイアウト手段でレイアウトする際の文書データの各ページの配置を決定する配置決定手段と、
前記配置決定手段により決定された各ページの配置に従って、前記第一レイアウト手段によりレイアウトされた印刷データを生成する生成手段とを備え、
前記配分手段は、前記第一レイアウト手段と前記第二レイアウト手段の双方で変倍してレイアウトするように処理配分を決定可能であり、
前記配置決定手段は、前記レイアウト印刷の条件に含まれる印刷用紙の１面に配置されるページ数、印刷用紙の１面に配置されるページの配置順、前記配分手段により決定された処理配分、及び文書データの向きの４つの条件により前記第一レイアウト手段による各ページの配置を一意に特定することが可能な配列情報を用いて、前記第一レイアウト手段でレイアウトする際の文書データの各ページの配置を決定することを特徴とする。
【００１１】
また、アプリケーションが生成した文書データに応じて印刷装置で印刷すべき印刷データを生成するプリンタドライバを備える情報処理装置における情報処理方法は、
プリンタドライバによる設定画面を介して、印刷用紙の１面に配置されるページ数と、配置順とを含むレイアウト印刷の条件を設定するための入力工程と、
前記アプリケーションから入力された文書データの各ページを変倍し、変倍された各ページの文書データをレイアウトする第一レイアウト工程と、
前記設定されたレイアウト印刷の条件を実行するために、前記第一レイアウト工程と、前記印刷装置内で変倍してレイアウトするための前記印刷装置が備える第二レイアウト工程との処理配分を決定する配分工程と、
前記配分工程により決定された前記第一レイアウト工程の処理配分において、前記第一レイアウト工程でレイアウトする際の文書データの各ページの配置を決定する配置決定工程と、
前記配置決定工程により決定された各ページの配置に従って、前記第一レイアウト工程によりレイアウトされた印刷データを生成する生成工程とを備え、
前記配分工程は、前記第一レイアウト工程と前記第二レイアウト工程の双方で変倍してレイアウトするように処理配分を決定可能であり、
前記配置決定工程は、前記レイアウト印刷の条件に含まれる印刷用紙の１面に配置されるページ数、印刷用紙の１面に配置されるページの配置順、前記配分工程により決定された処理配分、及び文書データの向きの４つの条件により前記第一レイアウト工程による各ページの配置を一意に特定することが可能な配列情報を用いて、前記第一レイアウト工程でレイアウトする際の文書データの各ページの配置を決定することを特徴とする。
【００１２】
また、アプリケーションが生成した文書データに応じて印刷装置で印刷すべき印刷データを生成するプリンタドライバが格納された記憶媒体であって、情報処理装置により実行される該プリンタドライバが、
プリンタドライバによる設定画面を介して、印刷用紙の１面に配置されるページ数と、配置順とを含むレイアウト印刷の条件を設定するための入力工程のコードと、
前記アプリケーションから入力された文書データの各ページを変倍し、変倍された各ページの文書データをレイアウトする第一レイアウト工程のコードと、
前記設定されたレイアウト印刷の条件を実行するために、前記第一レイアウト工程のコードと、前記印刷装置内で変倍してレイアウトするための前記印刷装置が備える第二レイアウト工程のコードとの処理配分を決定する配分工程のコードと、
前記配分工程のコードにより決定された前記第一レイアウト工程のコードの処理配分において、前記第一レイアウト工程のコードでレイアウトする際の文書データの各ページの配置を決定する配置決定工程のコードと、
前記配置決定工程のコードにより決定された各ページの配置に従って、前記第一レイアウト工程のコードによりレイアウトされた印刷データを生成する生成工程のコードとを備え、
前記配分工程のコードは、前記第一レイアウト工程のコードと前記第二レイアウト工程のコードの双方で変倍してレイアウトするように処理配分を決定可能であり、
前記配置決定工程のコードは、前記レイアウト印刷の条件に含まれる印刷用紙の１面に配置されるページ数、印刷用紙の１面に配置されるページの配置順、前記配分工程のコードにより決定された処理配分、及び文書データの向きの４つの条件により前記第一レイアウト工程のコードによる各ページの配置を一意に特定することが可能な配列情報を用いて、前記第一レイアウト工程のコードでレイアウトする際の文書データの各ページの配置を決定することを特徴とする。
【００１３】
【発明の実施の形態】
以下、本発明を適用するのに好適である実施形態について説明を行う。
【００１４】
（第１の実施形態）
図１は、本発明の実施形態の一つである印刷制御システムの構成を説明するブロック図である。なお、本発明の機能が実行されるのであれば、単体の機器であつても、複数の機器からなるシステムであっても、ＬＡＮ、ＷＡＮ等のネットワークを介して接続が為され処理が行われるシステムであつても本発明を適用できる。
【００１５】
同図において、情報処理装置（ホストコンピュータ）３０００は、ＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１に記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行するＣＰＵ１を備え、システムバス４に接続される各印刷デバイス（プリンタ）をＣＰＵ１が総括的に制御する。
【００１６】
また、このＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１には、ＣＰＵ１の制御プログラムであるオペレーティングシステムプログラム（以下ＯＳ）等を記憶し、ＲＯＭ３のフォント用ＲＯＭあるいは外部メモリ１１には上記文書処理の際に使用するフォントデータ等を記憶し、ＲＯＭ３のデータ用ＲＯＭあるいは外部メモリ１１には上記文書処理等を行う際に使用する各種データを記憶する。ＲＡＭ２は、ＣＰＵ１の主メモリ、ワークエリア等として機能する。
【００１７】
キーボードコントローラ（ＫＢＣ）５は、キーボード９や不図示のポインティングデバイスからのキー入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）６は、ＣＲＴディスプレイ（ＣＲＴ）１１の表示を制御する。
【００１８】
７はディスクコントローラ（ＤＫＣ）で、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタ制御コマンド生成プログラム（以下プリンタドライバ）等を記憶するハードディスク（ＨＤ）、フロッピーディスク（ＦＤ）等の外部メモリ１１とのアクセスを制御する。
【００１９】
プリンタコントローラ（ＰＲＴＣ）８は、双方向性インターフェース（インターフェース）２１を介してプリンタ１５００に接続されて、プリンタ１５００との通信制御処理を実行する。
【００２０】
なお、ＣＰＵ１は、例えばＲＡＭ２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、ＣＲＴｌ１上でのＷＹＳＩＷＹＧ（What You See Is What You Get）を可能としている。
【００２１】
また、ＣＰＵ１は、ＣＲＴｌ１上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行える。
【００２２】
プリンタ１５００は、ＣＰＵｌ２により制御される。プリンタＣＰＵ１２は、ＲＯＭｌ３のプログラム用ＲＯＭに記憶された制御プログラム等あるいは外部メモリ１４に記憶された制御プログラム等に基づいてシステムバス１５に印刷制御インターフェース１６を介して接続される印刷部（プリンタエンジン）１７へ出力情報としての画像信号を出力する。
【００２３】
また、このＲＯＭｌ３のプログラムＲＯＭには、ＣＰＵｌ２の制御プログラム等を記憶する。ＲＯＭｌ３のフォント用ＲＯＭには上記出力情報を生成する際に使用するフォントデータ等が記憶され、ＲＯＭｌ３のデータ用ＲＯＭには、ハードディスク等の外部メモリ１４がないプリンタの場合には、ホストコンピュータ上で利用される情報等が記憶されている。
【００２４】
ＣＰＵｌ２は入力部１８を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ３０００に通知できる。ＲＡＭｌ９は、ＣＰＵ１２の主メモリや、ワークエリア等として機能するＲＡＭで、図示しない増設ポートに接続されるオプションＲＡＭにより、メモり容量を拡張することができるように構成されている。なお、ＲＡＭｌ９は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。前述したハードディスク（ＨＤ）、ＩＣカード等の外部メモリ１４は、メモリコントローラ（ＭＣ）２０によリアクセスを制御される。外部メモリ１４は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、１２４は操作パネルで操作のためのスイッチおよびＬＥＤ表示器等が配されている。
【００２５】
また、前述した外部メモリ１４は１個に限らず、複数個備えられ、内蔵フォントに加えてオプションカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。更に、図示しないＮＶＲＡＭを有し、操作パネル１５０１からのプリンタモード設定情報を記憶するようにしてもよい。
【００２６】
図２は、プリンタ等の印刷装置が直接接続されているか、あるいはネットワーク経由で接続されているホストコンピュータにおける典型的な印刷処理の構成図である。
【００２７】
アプリケーション２０１、グラフィックエンジン２０２、プリンタドライバ２０３、およびシステムスプーラ２０４は、外部メモリ１１１に保存されたファイルとして存在し、実行される場合にＯＳやそのモジュールを利用するモジュールによってＲＡＭ１０２にロードされ実行されるプログラムモジュールである。
【００２８】
また、アプリケーション２０１およびプリンタドライバ２０３は、外部メモリ１１のＦＤや不図示のＣＤ―ＲＯＭ、あるいは不図示のネットワークを経由して外部ディスク１１のＨＤに追加することが可能となっている。外部メモリ１１に保存されているアプリケーション２０１はＲＡＭ２にロードされて実行されるが、このアプリケーション２０１からプリンタ１５００に対して印刷を行う際には、同様にＲＡＭ２にロードされ実行可能となっているグラフィックエンジン２０２を利用して出力（描画）を行う。
【００２９】
グラフィックエンジン２０２は、印刷装置ごとに用意されたプリンタドライバ２０３を同様に外部メモリ１１からＲＡＭ２にロードし、アプリケーション２０１の出力をプリンタドライバ２０３に設定する。そして、アプリケーション２０１から受け取るＧＤＩ（Ｇｒａｐｈｉｃ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）関数からＤＤＩ（Ｄｅｖｉｃｅ  Ｄｒｉｖｅｒ  ｉｎｔｅｒｆａｃｅ）関数に変換して、プリンタドライバ２０３へＤＤＩ関数を出力する。
【００３０】
プリンタドライバ２０３は、グラフィックエンジン２０２から受け取つたＤＤＩ関数に基づいて、プリンタが認識可能な制御コマンド、例えばＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）に変換する。変換されたプリンタ制御コマンドは、ＯＳによってＲＡＭ２にロードされたシステムスプーラ２０４を経てインタフェース１２１経由でプリンタ１５００へ印刷データとして出力される仕組みとなっている。
【００３１】
本発明の一実施形態である印刷システムは、図２で示したプリンタとホストコンピュータからなる印刷システムに加え、更に図３に示すように、アプリケーションからの印刷データを一旦中間コードデータでスプールする構成を有する。
【００３２】
＜システムの構成＞
図３は、図２のシステムを拡張したもので、グラフィックエンジン２０２からプリンタドライバ２０３へＤＤＩ関数を送る際に、一旦中間コードからなるスプールファイル３０３を生成する構成をとる。図２のシステムでは、アプリケーション２０１が印刷処理から開放されるのはプリンタドライバ２０３がグラフィンクエンジン２０２からのすべてのＤＤＩ関数をプリンタの制御コマンドヘ変換し終つた時点である。これに対して、図３のシステムでは、スプーラ３０２がすべてのＤＤＩ関数を中間コードデータに変換し、スプールファイル３０３に出力した時点である。通常、後者の方が短時間で済む。
【００３３】
また、図３で示すシステムにおいては、スプールファイル３０３の内容に対して加工することができる。これによリアプリケーションからの印刷データに対して、拡大縮小、複数ページを１ページに縮小した印刷、および本発明における製本印刷等、アプリケーションの持たない機能を実現することができる。
【００３４】
印刷データを種々加工可能にして多様な印刷様式で印刷できるようにするために、図２の従前のシステムに対し、図３のような構成として印刷データを中間コードデータでスプールするというシステムの拡張がなされている。
【００３５】
なお、印刷データの加工を行うためには、通常プリンタドライバ２０３が提供するウインドウから設定を行い、プリンタドライバ２０３がその設定内容をＲＡＭ２上あるいは外部メモリ１１上に保管する。
【００３６】
＜データの処理＞
以下、図３の詳細を説明する。図に示す通り、この拡張された処理方式では、グラフィンクエンジン２０２からの印刷命令をディスパッチャ３０１が受け取る。ディスパッチャ３０１がグラフィックエンジン２０２から受け取つた印刷命令が、アプリケーション２０１からグラフィックエンジン２０２へ発行された印刷命令の場合には、ディスパッチャ３０１は外部メモリ１１に格納されているスプーラ３０２をＲＡＭ２にロードし、プリンタドライバ２０３ではなくスプーラ３０２ヘ印刷命令を送付する。
【００３７】
スプーラ３０２は受け取つた印刷命令を中間コードに変換してスプールファイル３０３に出力する。また、スプーラ３０２は、プリンタドライバ２０３に対して設定されている印刷データに関する加工設定をプリンタドライバ２０３から取得してスプールファイル３０３に保存する。なお、スプールファイル３０３は外部メモリ１１上にファイルとして生成するが、ＲＡＭ２上に生成されても構わない。更にスプーラ３０２は、外部メモリ１１に格納されているスプールファイルマネージャ３０４をＲＡＭ２にロードし、スプールファイルマネージャ３０４に対してスプールファイル３０３の生成状況を通知する。その後、スプールファイルマネージャ３０４は、スプールファイル３０３に保存された印刷データに関する加工設定の内容に従つて印刷を行えるか判断する。
【００３８】
スプールファイルマネージャ３０４はグラフィックエンジン２０２を利用して印刷を行えると判断した際には、外部メモリ１１１に格納されているデスプーラ３０５をＲＡＭ２にロードし、デスプーラ３０５に対して、スプールファイル３０３に記述された中間コードの印刷処理を行うように指示する。
【００３９】
デスプーラ３０５はスプールファイル３０３に含まれる中間コードをスプールファイル３０３に含まれる加工設定の内容に従つて加工し、もう一度グラフィックエンジン２０２経由で出力する。
【００４０】
ディスパッチャ３０１がグラフィックエンジン２０２から受け取つた印刷命令がデスプーラ３０５からグラフィックエンジン２０２へ発行された印刷命令の場合には、ディスパッチャ３０１はスプーラ３０２ではなく、プリンタドライバ２０３に印刷命令を送る。
【００４１】
プリンタドライバ２０３はプリンタ制御コマンド（ＰＤＬなど）を生成し、システムスプーラ２０４経由でプリンタ１５００に出力する。
【００４２】
＜ＬＢＰの構成＞
図４は、プリンタ１５００の一例である両面印刷機能を有するカラーレーザプリンタの断面図である。
【００４３】
このプリンタはホストコンピュータ３０００より入力した印刷データに基づいて得られる各色毎の画像データで変調されたレーザ光をポリゴンミラー３１により感光ドラム１５を走査して静電潜像を形成する。そして、この静電潜像をトナー現像して可視画像を得、これを中間転写体９へ全色について多重転写してカラー可視画像を形成する。
【００４４】
そして更に、このカラー可視画像を転写材２へ転写し、転写材２上にカラー可視画像を定着させる。以上の制御を行う画像形成部は、感光ドラム１５を有するドラムユニット、接触帯電ローラ１７を有する一次帯電部、クリーニング部、現像部、中間転写体９、用紙カセット１や各種ローラ３、４、５、７を含む給紙部、転写ローラ１０を含む転写部及び定着部２５によつて構成されている。
【００４５】
ドラムユニット１３は、感光ドラム（感光体）１５と感光ドラム１５のホルダを兼ねたクリーニング機構を有するクリーナ容器１４とを一体に構成したものである。このドラムユニット１３はプリンタ本体に対して着脱自在に支持され、感光ドラム１５の寿命に合わせて容易にユニット交換可能に構成されている。
【００４６】
上記感光ドラム１５はアルミシリンダの外周に有機光導電体層を塗布して構成し、クリーナ容器１４に回転可能に支持されている。感光ドラム１５は、図示しない駆動モータの駆動力が伝達されて回転するもので、駆動モータは感光ドラム１５を画像形成動作に応じて反時計回り方向に回転させる。感光ドラム１５の表面を選択的に露光させることにより静電潜像が形成されるように構成されている。
【００４７】
スキャナ部３０では、変調されたレーザ光を、モータ３１ａにより画像信号の水平同期信号を同期して回転するポリゴンミラーにより反射し、レンズ３２、反射鏡３３を介して感光ドラムを照射する。
【００４８】
現像部は、上記静電潜像を可視画像化するために、イエロー（Ｙ）、マゼンダ（Ｍ）、シアン（Ｃ）の現像を行う３個のカラー現像器２０Ｙ、２０Ｍ、２０Ｃと、ブラック（Ｂ）の現像を行う１個のブラック現像器２１Ｂとを備えた構成を有する。カラー現像器２０Ｙ、２０Ｍ、２０Ｃ及びプランク現像器２１Ｂには、スリープ２０ＹＳ、２０ＭＳ、２０ＣＳ及び２１ＢＳと、これらスリープ２０ＹＳ、２０ＭＳ、２０ＣＳ、２１ＢＳそれぞれの外周に圧接する塗布ブレード２０ＹＢ、２０ＭＢ、２０ＣＢ及び２１ＢＢとがそれぞれ設けられる。
【００４９】
また３個のカラー現像器２０Ｙ、２０Ｍ、２０Ｃには塗布ローラ２０ＹＲ、２０ＭＲ、２０ＣＲが設けられている。
【００５０】
ブラック現像器２１Ｂはプリンタ本体に対して着脱可能に取り付けられており、カラー現像器２０Ｙ、２０Ｍ、２０Ｃは回転軸２２を中心に回転する現像ロータリー２３にそれぞれ着脱可能に取り付けられている。
【００５１】
ブラック現像器２１Ｂのスリープ２１ＢＳは感光ドラム１５に対して、例えば３００μｍ程度の微小間隔をもって配置されている。ブラック現像器２１Ｂは、器内に内蔵された送り込み部材によってトナーを搬送すると共に、時計回り方向に回転するスリープ２１ＢＳの外周に塗布ブレード２１ＢＢによつて塗布するように摩擦帯電によってトナーヘ電荷を付与する。
【００５２】
また、スリープ２１ＢＳに現像バイアスを印加することにより、静電潜像に応じて感光ドラム１５に対して現像を行って感光ドラム１５にブラックトナーによる可視画像を形成する。
【００５３】
３個のカラー現像器２０Ｙ、２０Ｍ、２０Ｃは、画像形成に際して現像ロータリー２３の回転に伴って回転し、所定のスリープ２０ＹＳ、２０ＭＳ、２０ＣＳが感光ドラム１５に対して３００μｍ程度の微小間隔をもつて対向することになる。これにより所定のカラー現像器２０Ｙ、２０Ｍ、２０Ｃが感光ドラム１５に対向する現像位置に停止し、感光ドラム１５に可視画像が作成される。
【００５４】
カラー画像形成時には、中間転写体９の１回転毎に現像ロータリー２３が回転し、イエロー現像器２０Ｙ、マゼンダ現像器２０Ｍ、シアン現像器２０Ｃ、次いでブラック現像器２１Ｂの順で現像工程がなされ、中間転写体９が４回転してイエロー、マゼンダ、シアン、ブラックのそれぞれのトナーによる可視画像を順次形成し、その結果フルカラー可視画像を中間転写体９上に形成する。
【００５５】
中間転写体９は、感光ドラム１５に接触して感光ドラム１５の回転に伴って回転するように構成されたもので、カラー画像形成時に時計回り方向に回転し、感光ドラム１５から４回の可視画像の多重転写を受ける。また、中間転写体９は画像形成時に後述する転写ローラ１０が接触して転写材２を挟持搬送することにより転写材２に中間転写体９上のカラー可視画像を同時に多重転写する。
【００５６】
中間転写体の外周部には、中間転写体９の回転方向に関する位置を検知するためのＴＯＰセンサ９ａ及びＲＳセンサ９ｂと、中間転写体に転写されたトナー像の濃度を検知するための濃度センサ９ｃが配置されている。
【００５７】
転写ローラ１０は、感光ドラム１５に対して接離可能に支承された転写帯電器を備えたもので、金属軸を中抵抗発泡弾性体により巻回することによつて構成されている。
【００５８】
転写ローラ１０は、図４に実線で示すように中間は写体９上にカラー可視画像を多重転写している間は、カラー可視画像を乱さぬように下方に離開している。そして、上記中間転写体９上に４色のカラー可視画像が形成された後は、このカラー可視画像を転写材２に転写するタイミングにあわせてカム部材（不図示）により転写ローラ１０を図示点線で示す上方に位置させる。これにより転写ローラ１０は転写材２を介して中間転与体９に所定の押圧力で圧接すると共に、バイアス電圧が印加され、中間転写体９上のカラー可視画像が転写材２に転写される。
【００５９】
定着部２５は、転写２を搬送させながら、転写されたカラー可視画像を定着させるものであり、転写材２を加熱する定着ローラ２６と転写材２を定着ローラ２６に圧接させるための加圧ローラ２７とを備えている。定着ローラ２６と加圧ローラ２７とは中空状に形成され、内部にそれぞれヒータ２８、２９が内蔵されている。
【００６０】
即ち、カラー可視画像を保持した転写材２は定着ローラ２６と加圧ローラ２７とにより搬送されると共に、熱及び圧力を加えることによりトナーが表面に定着される。
【００６１】
可視画像定着後の転写材２は、その後排紙ローラ３４、３５、３６によつて排紙部３７へ排出して画像形成動作を終了する。クリーニング手段は、感光ドラム１５上及び中間転写体９上に残つたトナーをクリーニングするものであり、感光ドラム１５上に形成されたトナーによる可視画像を中間転写体９に転写した後の廃トナーあるいは、中間転写体９上に作成された４色のカラー可視画像を転写材２に転写した後の廃トナーは、クリーナ容器１４に蓄えられる。
【００６２】
印刷される転写材（記録用紙）２は、給紙トレイ１から給紙ローラ３により取り出されて中間転写体９と転写ローラ１０との間に挟まれるようにして搬送されてカラートナー画像が記録され、定着部２５を通過してトナー像が定着される。片面印刷の場合には、案内３８が上方の排紙部に記録用紙を導くように搬送経路を形成するが、両面印刷に対しては、下方の両面ユニットに導くように経路を形成する。
【００６３】
両面ユニットに導かれた記録用紙は、搬送ローラ４０によリトレイ１の下部（二点鎖線で示す搬送経路）に一旦送り込まれた後に逆方向に搬送され、両面トレイ３９に送られる。両面トレイ３９上では、用紙は給紙トレイ１に載置された状態とは表裏が逆になり、また搬送方向について前後が逆になつている。この状態で再びトナー像の転写、定着を再度行うことで、両面印刷ができる。
【００６４】
＜ページ単位保存ステップの処理＞
図５は、スプーラ３０２における、スプールファイル３０３の生成におけるページ単位保存ステップの処理をフローチャートで示したものである。
【００６５】
まずステップ５０１では、アプリケーションからの印刷要求を受けつける。アプリケーションにおいては、図８に示すような印刷設定を入力するダイアログが表示され、このダイアログから入力された印刷設定がプリンタドライバよリスプーラ３０３に渡される。図８に示す設定入力ダイアログにおいては、８０１のような１物理ページにレイアウトする論理ページの数を決定するような設定項目等を含んでいる。
【００６６】
ステップ５０２では、受け付けた印刷要求がジョブ開始要求か判定し、もしステップ５０２でジョブ開始要求であると判断した場合には、ステップ５０３に進み、中間データを一時的に保存するためのスプールフアイル３０８を作成する。続いて、ステップ５０４では、スプールファイルマネージャ３０４へ印刷処理の進捗を通知し、続くステップ５０５でスプーラ３０２のページ数カウンタを１に初期化する。
【００６７】
ここで、スプールファイルマネージャ３０４においては、印刷が開始されたジョブに対するジョブの情報や加工設定などをスプールファイル３０３より読み込み、記憶する。
【００６８】
一方、ステップ５０２において、ジョブ開始要求ではなかつたと判断した場合には、ステップ５０６に進む。
【００６９】
ステップ５０６では、受け付けた要求がジョブ終了要求かどうかの判別を行う。ジョブ終了要求でないと判断した場合には、ステップ５０７に進み、改ページかどうかの判別を行う。
【００７０】
もしもステップ５０７で改ページであると判断した場合には、ステップ５０８に進み、スプールファイルマネージャ３０４へ印刷処理の進捗を通知する。そしてページ数カウンタをインクリメントする。
【００７１】
ステップ５０７において、受け付けた印刷要求が改ページではないと判断した場合には、ステップ５０９に進み、中間ファイル書き出しの準備を行う。
【００７２】
ステップ５１０では、印刷要求のスプールファイル３０３へ格納するための変換処理を行う。ステップ５１１では、ステップ５１０において格納可能な形に変換された印刷要求をスプールファイル３０３へ書き込む。その後、ステップ５０１に戻り、再びアプリケーションからの印刷要求を受けつける。この一連のステップ５０１からステップ５１１までの処理を、アプリケーションよりジョブ終了要求を受け取るまで続ける。
【００７３】
一方、ステップ５０６にて、アプリケーションからの印刷要求がジョブ終了であると判断した場合には、アプリケーションからの印刷要求は全て終了であるので、ステップ５１２に進み、スプールファイルマネージャ３０４へ印刷処理の進捗を通知し、処理を終える。
【００７４】
＜印刷制御の説明＞
図６は、スプールファイルマネージャ３０４における、スプールファイル３０３生成プロセスと以降説明する印刷データ生成プロセスの間での制御の詳細をフローチャートで示したものである。
【００７５】
ステップ６０１では、スプーラ３０２あるいはデスプーラ３０５からの印刷処理の進捗通知を受け付ける。
【００７６】
ステップ６０２では、もし進捗通知が前述のステップ５０４において通知されるスプーラ３０２からの印刷開始通知であるかどうか判定し、もしそうであればステップ６０３へすすみ、印刷の加工設定をスプールファイル３０３から読み込み、ジョブの管理を開始する。
【００７７】
一方、ステップ６０２において、スプーラ３０２からの印刷開始通知でなければステップ６０４へすすみ、進捗通知が前述のステップ５０８において通知されるスプーラ３０２からの１論理ページの印刷終了通知であるかどうか判定する。ここで１論理ページの印刷終了通知であればステップ６０５へ進み、この論理ページに対する論理ページ情報を格納する。そして、続くステップ６０６では、この時点でスプールが終了したｎ論理ページに対して、１物理ページの印刷が開始できるかを判定する。ここで、印刷可能である場合はステップ６０７へ進み、印刷する１物理ページに対して割り付けれられる論理数から物理ページ番号を決定する。
【００７８】
物理ページの計算については、例えば、加工設定が１物理ページに４論理ページを配置するような設定の場合、第１物理ページは第４論理ページがスプールされた時点で印刷可能となり、第１物理ページとなる。続いて、第２物理ページは第８論理ページがスプールされた時点で印刷可能となる。
【００７９】
また、論理ページ数の総数が１物理ページに配置する論理ページ数の倍数でなくても、ステップ５１２におけるスプール終了通知によって１物理ページに配置する論理ページの決定が可能である。
【００８０】
そして、ステップ６０８では、図９に示すような形式で、印刷可能となった物理ページを構成する論理ページ番号と、その物理ページ番号などの情報がデスプーラ３０５に通知される。その後ステップ６０１に戻り、次の通知を待つ。
【００８１】
本実施形態においては、印刷データ１ページ、すなわち１物理ページを構成する論理ページがスプールされた時点で印刷ジョブのスプールが全て終了していなくても印刷処理が可能である。
【００８２】
一方、ステップ６０４において、進捗通知がスプーラ３０２からの１論理ページの印刷終了通知でなかった場合ステップ６０９へ進み、前述のステップ５１２において通知されるスプーラ３０２からのジョブ終了通知であるかどうかを判定する。ここで、ジョブ終了通知である場合、前述のステップ６０６へ進む。
【００８３】
一方、ジョブ終了通知でない場合、ステップ６１０へ進み、受け付けた通知がデスプーラ３０５からの１物理ページの印刷終了通知であるかどうか判定する。ここで、１物理ページの印刷終了通知である場合はステップ６１１へ進み、加工設定の印刷が全て終了したかを判定する。印刷終了した場合、ステップ６１２へ進み、デスプーラ３０５に印刷終了の通知を行う。
【００８４】
一方、加工設定に対する印刷がまだ終了していないと判断した場合、前述の６０６へ進む。本実施形態におけるデスプーラ３０５は同時に印刷処理を行える物理ページ数を１と想定している。
【００８５】
ステップ６１０において、デスプーラ３０５からの１物理ページの印刷終了通知でないと判断された場合、ステップ６１３へ進み、デスプーラ３０５からの印刷終了通知かどうかを判定する。デスプーフ３０５からの印刷終了通知と判定された場合、ステップ６１４へ進み、スプールファイル３０３の削除を行い処理を終える。一方、デスプーラ３０５からの印刷終了通知でなかった場合はステップ６１５へ進み、その他通常処理を行い、次の通知を待つ。
【００８６】
＜印刷データの生成＞
図７は、デスプーラ３０５における、印刷データの生成プロセスの詳細をフローチャートで示したものである。デスプーラ３０５は、スプールファイルマネージャ３０４からの印刷要求に応じて、スプールファイル３０３から必要な情報を読みだして印刷データを生成する。生成された印刷データにおけるプリンタヘの転送方法については図３で説明した通りである。
【００８７】
印刷データの生成では、まず、ステップ７０１において、前述のスプールファイルマネージャ３０４からの通知を入力する。続くステップ７０２では、入力された通知がジョブの終了通知かどうか判定し、ジョブ終了通知であるならばステップ７０３へ進み、デスプーラ３０５の処理終了の通知をスプ一ルファイルマネージャ３０４に通知し、処理を終える。
【００８８】
一方、ステップ７０２においてジョブ終了通知でない場合は、ステップ７０４に進み、前述のステップ６０８における１物理ページの印刷開始要求が通知されたかどうか判定する。ここで１物理ページの印別開始要求と判定された場合、ステップ７０５ヘ進み、スプールファイルマネージャ３０４から渡された図９に示す情報とスプールファイル３０３とから、指定された物理ページの印刷データ生成に必要な情報を読み込み、印刷処理を行うと印刷処理はスプールファイル３０３に格納された印刷要求命令をデスプーラ３０５においてグラフィックエンジン２０２が認識可能な形式に変換し、転送する。本実施形態のような、複数論理ページを１物理ページにレイアウトするような加工設定については、このステップで縮小配置を考慮にいれながら変換する。
【００８９】
必要な印刷処理が終えたならば、続くステップ７０６において１物理ページの印刷データ生成終了の通知をスプールファイルマネージャ３０４に対して行う。そしてステップ７０１へ戻り次の通知を待つ。
【００９０】
一方、ステップ７０４において開始要求と判定されなかつた場合はステップ７０７へ進み、その他通常処理を行い、ステップ７０１へ戻り次の通知を待つ。
【００９１】
＜デバイスとホストコンピュータとの割り振り＞
以下、本実施形態における、複数ページ印刷におけるデバイスとホストコンピュータの割振り方法について述べる。図１０は、複数ページ印刷の設定画面の一例である。
【００９２】
１００１に一覧されるページレイアウトから、複数ページ印刷を設定する。設定画面はプリンタドライバ２０２が表示し、必要な割振りを行う。また、１００２に示すように、用紙向きも設定可能である。
【００９３】
図１１は内部的にデバイスの機能を用いるか、ホストコンピュータの機能を用いるかを指定する画面の一例である。
【００９４】
１１０１において、内部処理の選択が可能である。本実施形態のように、「自動」「必ずホストコンピュータ側で処理を行う」「ホストコンピュータ側での処理を無効にする」の３者択一形式でも良いし、スライダーバー形式によって、処理の配分を設定するようなユーザインターフェイスでも良い。
【００９５】
本実施形態においては、「自動」が選択された場合には、デバイスとホストコンピュータの双方の機能を用いることとする。また、「必ずホストコンピュータ側で処理を行う」ではホストコンピュータの機能、「ホストコンピュータ側での処理を無効にする」ではデバイスの機能を用いることとする。
【００９６】
また、以降本実施形態で説明するように、デバイスの機能が４ページの割り付け印刷までしかサポートしていない場合に、１６ページ印刷が要求された場合においては、この選択肢を無視してもよいし、はじめから１６ページ印刷など、デバイスのみで不可能な縮小レイアウト印刷のパターンは選択不可能にしてもよい。
【００９７】
図１２は、複数ページの縮小レイアウト印刷が指定された場合、デバイスとホストコンピュータでどのように割振るかの組み合わせを示した図である。本実施形態においては、デバイスの制限は４ページ／枚で、ホストコンピュータの制限は１６ページ／枚と想定している。表に示されるとおり、印刷設定の縮小レイアウトページ数Ｎは、デバイスの縮小レイアウト数Ｄとホストコンピュータの縮小レイアウトページ数Ｈの積、すなわち、Ｎ＝Ｄ×Ｈとなる。
【００９８】
さらに、図１３に示すように、本実施形態においては、以下の４通りのページ順を想定している。
【００９９】
左上から右向き（ＬＲＴＢ）
右上から左向き（ＲＬＴＢ）
左上から下向き（ＴＢＬＲ）
右上から下向き（ＴＢＲＬ）
ただし、２ページの縮小レイアウト印刷においては、ＬＲＴＢとＴＢＬＲは同じ結果であり、ＲＬＴＢＴＢＲＬは同じ結果である。
【０１００】
図１４は、複数ページ印刷における内部処理を示すフローチャートである。
【０１０１】
ステップ１４０１において、縮小レイアウトするページ数Ｎおよびデバイスとホストコンピュータの処理配分の設定情報などをはじめとする印刷設定を入力する。
【０１０２】
ステップ１４０２において、デバイスとホストコンピュータの処理配分が「自動」であれば、ステップ１４０５ヘ進み、そうでなければステップ１４０３へ進む。
ステップ１４０３において、デバイスとホストコンピュータの処理配分が「必ずホストコンピュータ側で処理を行う」であれば、ステップ１４０６へ進み、そうでなければステップ１４０４へ進む。
【０１０３】
ステップ１４０４において、デバイスとホストコンピュータの処理配分が「ホストコンピュータ側での処理を無効にする」であるので、デバイスでの処理が可能かを判定し、可能ならばステップ１４０７へ進み、そうでなければステップ１４０８へ進む。具体的には、デバイスにおける縮小レイアウト印刷がＰＤＬにより実現される場合、印刷設定でラスタモード（イメージモード）が指定された場合は、デバイスでの縮小レイアウト印刷が不可能である。このような場合はデバイスでの処理が不可能となる。
【０１０４】
ステップ１４０５において、自動配分が指定されたので、印刷設定に応じて印刷システムによってデバイスとホストコンピュータの配分を決定し、印刷を行う。
【０１０５】
ステップ１４０６において、ホストコンピュータ機能のみで縮小レイアウト印刷を行う。
【０１０６】
ステップ１４０７において、デバイス機能のみで縮小レイアウト印刷を行う。
【０１０７】
ステップ１４０８において、デバイス機能を最大に用いた縮小レイアウト印刷を行う。
【０１０８】
図１５は、図１４のステップ１４０５における処理を説明したフローチャートである。ステップ１５００において、印刷設定がＰＤＬモードであるか判定し、そうであればステップ１５０１に進み、そうでなければステップ１５０５へ処理を進める。
【０１０９】
ステップ１５０１において、ページ数がＮ＝１，６，９のいずれかであるか判定し、そうであればステップ１５０５に進み、そうでなければステップ１５０２へ進む。
【０１１０】
ステップ１５０２において、ページ数Ｎが２であるか判定し、そうであればステップ１５０６へ進み、そうでなければステップ１５０３へ処理を進める。
【０１１１】
ステップ１５０３において、ページ数Ｎが４であるか判定し、そうであればステップ１５０７へ進み、そうでなければステップ１５０４へ進む。
【０１１２】
ステップ１５０４において、ページ数Ｎが８であるか判定し、そうであればステップ１５０８へ進み、そうでなければステップ１５０９へ処理を進める。
【０１１３】
ステップ１５０５において、デバイス側との処理の配分が不可能なので、ホストコンピュータ側で処理を行う。
【０１１４】
ステップ１５０６において、デバイス側で２ページの縮小レイアウト印刷を行う。ホストコンピュータで１ページ通常印刷を行う。
【０１１５】
ステップ１５０７において、デバイス側とホストコンピュータ側の双方で２ページの縮小レイアウト印刷を行う。
【０１１６】
ステップ１５０８において、デバイス側で４ページ、ホストコンピュータ側で２ページの縮小レイアウト印刷を行う。
【０１１７】
ステップ１５０９において、デバイス側とホストコンピュータ側の双方で４ページの縮小レイアウト印刷を行う。配分決定に関する説明は後述する。
【０１１８】
図１６は、図１４のステップ１４０８における処理を説明したフローチャートである。
【０１１９】
ステップ１６００において、印刷設定がＰＤＬモードであるか判定し、ＰＤＬモードであればステップ１６０１に進み、そうでなければステップ１６０５へ処理を進める。
【０１２０】
ステップ１６０１において、ページ数Ｎが１，６，９のいずれかであるか判定し、そうであればステップ１６０５に進み、そうでなければステップ１６０２へ処理を進める。
【０１２１】
ステップ１６０２において、ページ数Ｎが２であるか判定し、Ｎ＝2であればステップ１６０６へ進み、そうでなければステップ１６０３へ処理を進める。
【０１２２】
ステップ１６０３において、ページ数Ｎが４であるか判定し、Ｎ＝4であればステップ１６０７へ進み、そうでなければステップ１６０４へ進む。
【０１２３】
ステップ１６０４において、ページ数Ｎが８であるか判定し、Ｎ＝8であればステップ１６０８へ進み、そうでなければステップ１６０９へ処理を進める。
【０１２４】
ステップ１６０５において、デバイス側との配分が不可能なので、ホストコンピュータ側で処理を行う。
【０１２５】
ステップ１６０６では、デバイス側で２ページの縮小レイアウト印刷を行い、ステップ１６０７においては、デバイス側で４ページの縮小レイアウト印刷を行う。
【０１２６】
ステップ１６０８では、デバイス側で４ページ、ホストコンピュータ側で２ページの縮小レイアウト印刷を行い。ステップ１６０９においは、デバイス側とホストコンピュータ側の双方で４ページの縮小レイアウト印刷を行う。
【０１２７】
ステップ１６０８、１６０９については、「自動」を選択した場合と同様の配分になる。これらの配分決定に関する説明は後述する。
【０１２８】
＜ホストコンピュータとデバイスの処理配分＞
ホストコンピュータとデバイスの処理配分を決定は、より早く印刷開始が行える組み合わせが選択される。図１７から図２２は処理配分による縮小レイアウト印刷のレイアウト例である。図中において、Ｎは印刷設定ページ/枚、Ｈはホストコンピュータ側の印刷処理枚数、Ｄはデバイス側の印刷処理枚数を示す。
【０１２９】
図１７、１８は４ページ縮小レイアウト印刷におけるホストコンピュータとデバイスの処理配分を示した図であり、図１９、２０は８ページ縮小レイアウト印刷におけるホストコンピュータとデバイスの処理配分を示す図である。更に、図２１、２２は１６ページ縮小レイアウト印刷におけるホストコンピュータとデバイスの処理配分を示した図である。
【０１３０】
例えば、図１９（ａ）においては、アプリケーションから縦書きの文書を左上から右向きに８ページ分の縮小レイアウト印刷する場合、ホストコンピュータでの処理を２ページの縮小レイアウト印刷（ＬＲＴＢ）、デバイスでの処理を４ページの縮小レイアウト印刷（ＬＲＴＢ）に設定する。プリンタ側では、ホストコンピュータで２ページ印刷を行うことは感知する必要が無く、図中の矢印のとおり、単に横向き（ランドスケープ）の文書の４ページ縮小レイアウト印刷という設定であればよい。
【０１３１】
一方、ホストコンピュータ側での縮小レイアウト印刷においては、スプールファイルマネージャ３０４とデスプーラ３０５との間において、図２３に示す配列を用いて印刷を行えばよい。具体的には、図２３の配列は、デスプーラ３０５が用紙の左上から右向きに描画を行うことを想定したものである。
【０１３２】
図２３において、配列２３０１、２３０２は図１２の設定条件の１２０１に対応しており、配列２３０３、２３０４は図１２の設定条件の１２０３に対応し
、配列２３０５は図１２の設定条件１２０５に対応している。
【０１３３】
上記のような設定にすることによって、アプリケーションの２ページ目をスプールした時点からプリンタ側への処理要求が可能で、さらに続いて４ページ目をスプールした時点でデバイス側における２ページめの処理要求が可能となる。
【０１３４】
例えば、上記でデバイス側の配置順をＴＢＬＲにした場合、デバイスの１ページ目の処理開始は同じタイミングで行えるものの、２ページめの印刷開始が、ホストコンピュータ側で６ページのスプール終了時点まで待つ必要があり、処理のオーバーヘッドが生じる可能性がある。同様に設定に応じてデバイスとホストコンピュータの配分およびそれぞれの設定が決定される。この結果、図１２における１２０２および１２０４の組み合わせは本実施形態では採用されない。
【０１３５】
以上の処理により、デバイスとホストコンピュータの機能を併用しながら縮小レイアウト印刷を行うことが可能となり、ユーザの操作負荷を軽減することが可能となる。
【０１３６】
（第２の実施形態）
本実施形態では、印刷デバイス（プリンタ）と情報処理装置（ホストコンピュータコンピュータ）の双方の縮小レイアウト機能を協調的に併用して縮小複製印刷を行う場合について説明する。ここで、縮小複製印刷とは、同一用紙に縮小した同一の印刷データをレイアウトして印刷することをいう。
【０１３７】
なお、本実施形態においては、まずホストコンピュータで縮小レイアウトし、続いて印刷デバイスで縮小レイアウトすることを想定したが、ホストコンピュータ側に２つの縮小レイアウト機能が存在する場合にも適用可能である。また、印刷デバイス側で２つの縮小レイアウト機能が存在する場合にも適用が可能である。
【０１３８】
プリンタの機能とホストコンピュータの機能を併用するので、図１１のインタフェースで指定した条件で、「自動」を用いたときには双方の機能により縮小印刷が可能となるが、図１１で「自動」以外の設定であっても、ユーザインタフェースから「縮小複製印刷」を指定した場合は、プリンタとホストコンピュータとの双方の機能を用いて縮小印刷が可能となる。
【０１３９】
この場合、用紙１面に対して同一のページデータが印刷されるので、データの配置順は関係なくなり考慮する必要はない。図２５Ａ、Ｂ、Ｃは、図２３において示したプリンタとホストコンピュータの縮小レイアウトの組み合わせ以外の組み合せ例である。
【０１４０】
図２６は、スプールファイルマネージャ３０４における縮小複製印刷の手順を示したフローチャートである。尚、この処理は図６におけるステップ６０３で縮小複製印刷が設定されていた場合、ステップ６０７において行う処理を示したものである。この際、ステップ６０３において、縮小複製印刷を行うかどうか、また、縮小複製印刷を行う場合においては、縮小複製印刷を行う１ページ当りの分割数Ｎが入力され、ホストコンピュータにおいて１ページに描画するページ数Ｈおよびプリンタでの縮小レイアウト印刷数Ｄ等の設定がされる。
【０１４１】
ステップ２６０１において、カウンタＫおよびＪを０に初期化する。
【０１４２】
ここで、カウンタ「Ｋ」は縮小レイアウト枚数を制御し、カウンタ「Ｊ」はページ枚数を制御する。
【０１４３】
ステップ２６０２において、カウントＫが設定された縮小レイアウト枚数（Ｄ）より小さければ（Ｓ２６０２−ＹＥＳ）、処理をステップ２７０３へ進め、そうでなければ処理を抜ける（Ｓ２６０２−ＮＯ）。
【０１４４】
ステップ２６０３において、カウンタＪが設定されたページ数（Ｈ）より小さければステップ２６０４へ進み（Ｓ２６０３−ＹＥＳ）、そうでなければステップ２６０６０に進む。
【０１４５】
ステップ２６０４において、現在のページ番号を物理ページを構成する論理ページとして図９に示すような配列に格納する。
【０１４６】
ステップ２６０５において、Ｊを１増加させる。
【０１４７】
ステップ２６０６において、Ｊを０に初期化し、Ｋを１増加させる。
【０１４８】
以上のステップを実行することにより、ページごとの縮小レイアウト数と、ページ数とを設定されている数値と比較して、レイアウト数が設定数より大きくなった場合ページを更新し、ページ数が設定数より大きくなった場合終了する。
【０１４９】
縮小複製印刷は、名刺やチケットなどの作成など、小型用紙でかつ複製が求められる出力に対して有効であり、ユーザインタフェースを用いて設定された縮小複写印刷の条件に従い、プリンタ側とホストコンピュータ側双方の機能を協調的に併用した豊富な出力体裁の印刷が可能となる。
【０１５０】
【他の実施形態】
尚、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（複写機、プリンタ、ファクシミリ装置など）に適用してもよい。
【０１５１】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体を、システムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成される。
【０１５２】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、例えば、フロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ―ＲＯＭ、ＣＤ―Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【０１５３】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によつて前述した実施形態の機能が実現される場合も含まれる。
【０１５４】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によつて前述した実施形態の機能が実現される場合も含まれる。
【０１５５】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードを格納することになるが、簡単に説明すると、図２４のメモリマップ例に示す各モジュールを記憶媒体に格納することになる。すなわち、少なくとも「データ入力モジュール２４０１」「配分モジュール２４０２」および「レイアウト制御モジュール２４０３」、「印刷処理モジュール２４０４」、「データ格納モジュール２４０５」の各モジュールのプログラムコードを記憶媒体に格納すればよい。
【０１５６】
【発明の効果】
以上説明したように、統一したユーザインターフェースを用いて印刷制御設定を行い、縮小レイアウト印刷が設定されている場合は、レイアウト印刷の条件を判断し、第一のレイアウト手段と第二のレイアウト手段との機能を制御して、縮小レイアウト印刷を行う際、効率的な機能分散を図り、設定された条件に対して適切なレイアウト印刷を可能とする。
【０１５７】
ユーザインタフェースを用いて設定された縮小複写印刷の条件に従い、第一のレイアウト手段と第二のレイアウト手段双方の機能を協調的に併用した豊富な出力体裁の印刷ができる。
【図面の簡単な説明】
【図１】本発明の実施形態にかかる印刷制御システムの構成を説明するブロック図である。
【図２】プリンタが接続されたホストコンピュータの典型的な印刷システムの構成を示すブロック図である。
【図３】アプリケーションからの印刷命令をプリンタ制御コマンドに変換する前に、一旦、中間コードとしてスプールする印刷制御システムの構成を示すブロック図である。
【図４】本発明にかかるプリンタの構成を説明する図である。
【図５】スプーラ３０５における処理を示したフローチャートである。
【図６】スプールファイルマネージャ３０４における印刷制御および物理ページ番号の決定について示したフローチャートである。
【図７】デスプーラ３０５における処理を示したフローチャートである。
【図８】印刷設定画面の−例である。
【図９】スプールファイルマネージャ３０４からデスプーラ３０５に対して物理ページの印刷要求を行う際のデータ形式例を示した図である。
【図１０】複数ページ印刷の設定画面の一例である。
【図１１】内部的にプリンタの機能を用いるか、ホストコンピュータの機能を用いるかを指定する画面の一例である。
【図１２】複数ページの縮小レイアウト印刷が指定された場合、プリンタとホストコンピュータでどのように割振るかの組み合わせを示した図である。
【図１３】本発明において想定しているページの配置順をしめした図である。
【図１４】複数ページ印刷における内部処理を示すフローチャートである。
【図１５】図１４のステップ１４０５における処理を説明したフローチャートである。
【図１６】図１４のステップ１４０８における処理を説明したフローチャートである。
【図１７】４ページ縮小レイアウト印刷におけるホストコンピュータとプリンタの処理配分を示した図である。
【図１８】４ページ縮小レイアウト印刷におけるホストコンピュータとプリンタの処理配分を示した図である。
【図１９】８ページ縮小レイアウト印刷におけるホストコンピュータとプリンタの処理配分を示した図である。
【図２０】８ページ縮小レイアウト印刷におけるホストコンピュータとプリンタの処理配分を示した図である。
【図２１】１６ページ縮小レイアウト印刷におけるホストコンピュータとプリンタの処理配分を示した図である。
【図２２】１６ページ縮小レイアウト印刷におけるホストコンピュータとプリンタの処理配分を示した図である。
【図２３】プリンタとホス卜の縮小レイアウト機能の組み合わせを示した図である。
【図２４】記憶媒体のメモリマップを示す図である。
【図２５Ａ】プリンタとホス卜の縮小レイアウト機能の組み合わせを示した図である。
【図２５Ｂ】プリンタとホス卜の縮小レイアウト機能の組み合わせを示した図である。
【図２５Ｃ】プリンタとホス卜の縮小レイアウト機能の組み合わせを示した図である。
【図２６】縮小複製印刷の処理を示すフローチャートである。
【符号の説明】
ｌ  ＣＰＵ
２  ＲＡＭ
３  ＲＯＭ
４  システムバス
１２  ＣＰＵ
１３  ＲＯＭ
１９  ＲＡＭ
３０００  ホストコンピュータ
１５００  プリンタ
【図１】
0003907337.tif 000002
【図２】
0003907337.tif 000003
【図３】
0003907337.tif 000004
【図４】
0003907337.tif 000005
【図５】
0003907337.tif 000006
【図６】
0003907337.tif 000007
【図７】
0003907337.tif 000008
【図８】
0003907337.tif 000009
【図９】
0003907337.tif 000010
【図１０】
0003907337.tif 000011
【図１１】
0003907337.tif 000012
【図１２】
0003907337.tif 000013
【図１３】
0003907337.tif 000014
【図１４】
0003907337.tif 000015
【図１５】
0003907337.tif 000016
【図１６】
0003907337.tif 000017
【図１７】
0003907337.tif 000018
【図１８】
0003907337.tif 000019
【図１９】
0003907337.tif 000020
【図２０】
0003907337.tif 000021
【図２１】
0003907337.tif 000022
【図２２】
0003907337.tif 000023
【図２３】
0003907337.tif 000024
【図２４】
0003907337.tif 000025
【図２５Ａ】
0003907337.tif 000026
【図２５Ｂ】
0003907337.tif 000027
【図２５Ｃ】
0003907337.tif 000028
【図２６】
0003907337.tif 000029