(57)【要約】【課題】  集約印刷を行う場合に、少ないシート枚数で指定された集約ページよりも少ないページ数で集約した印刷結果を得る.【解決手段】    印刷装置に印刷ジョブを出力する情報処理装置において、入力されたページ数と印刷すべき印刷データのページ数とから片面印刷で使用するシート枚数を算出する。さらに、入力されたページ数よりも集約可能な少ないページ数と印刷すべきページ数とから使用するシート枚数を算出する。そして、後から算出したシート枚数が最初に算出されたシート枚数以下となる最小の集約数を探索する。その後、印刷装置がシートの両面に対して画像を印刷可能である場合、さらに、両面印刷を考慮して後から算出したシート枚数が最初に算出されたシート枚数以下となる最小の集約数を探索して、印刷ジョブに集約数を設定することを特徴とする。【選択図】  図4
2014191363.tif 000002
【特許請求の範囲】
【請求項１】
印刷装置に印刷ジョブを出力する情報処理装置であって、
１ページに集約されて印刷されるページ数を入力する入力手段と、
入力されたページ数と印刷すべき印刷データのページ数とから片面印刷で使用するシート枚数を算出する算出手段と、
入力されたページ数よりも集約可能な少ないページ数と印刷すべきページ数とから前記算出手段が算出するシート枚数が前記算出手段により最初に算出されたシート枚数以下となる最小の集約数を探索する探索手段と、
前記印刷装置がシートの両面に対して画像を印刷可能かどうか否かを判断する判断手段と、を備え、
前記印刷装置が両面印刷可能であると判断した場合、前記探索手段が入力されたページ数よりも集約可能な少ないページ数と両面印刷で印刷すべきページ数とから前記算出手段が算出するシート枚数が前記算出手段により最初に算出されたシート枚数以下となる最小の集約数を探索することを特徴とする情報処理装置。
【請求項２】
前記探索手段が探索した最小の集約数を前記印刷ジョブに設定する設定手段を備えることを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記探索手段により探索される最小の集約数で印刷を行うモードと、前記入力手段により入力されたページ数で集約印刷を行うモードとを選択する選択手段を備えることを特徴とする請求項１記載の情報処理装置。
【請求項４】
１つのページに集約されるいずれかのページ中で印刷すべき画像サイズが最大となるページの画像の向きに合わせて、集約される他のページの画像の向きを調整する調整手段を備えることを特徴とする請求項１記載の情報処理装置。
【請求項５】
印刷装置に印刷ジョブを出力する情報処理装置の制御方法であって、
１ページに集約されて印刷されるページ数を入力する入力工程と、
入力されたページ数と印刷すべき印刷データのページ数とから片面印刷で使用するシート枚数を算出する算出工程と、
入力されたページ数よりも集約可能な少ないページ数と印刷すべきページ数とから前記算出工程が算出するシート枚数が前記算出工程により最初に算出されたシート枚数以下となる最小の集約数を探索する探索工程と、
前記印刷装置がシートの両面に対して画像を印刷可能かどうか否かを判断する判断工程と、を備え、
前記印刷装置が両面印刷可能であると判断した場合、前記探索工程が入力されたページ数よりも集約可能な少ないページ数と両面印刷で印刷すべきページ数とから前記算出工程が算出するシート枚数が前記算出工程により最初に算出されたシート枚数以下となる最小の集約数を探索することを特徴とする情報処理装置の制御方法。
【請求項６】
前記探索工程が探索した最小の集約数を前記印刷ジョブに設定する設定工程を備えることを特徴とする請求項５記載の情報処理装置の制御方法。
【請求項７】
前記探索工程により探索される最小の集約数で印刷を行うモードと、前記入力工程により入力されたページ数で集約印刷を行うモードとを選択する選択工程を備えることを特徴とする請求項５記載の情報処理装置の制御方法。
【請求項８】
１つのページに集約されるいずれかのページ中で印刷すべき画像サイズが最大となるページの画像の向きに合わせて、集約される他のページの画像の向きを調整する調整工程を備えることを特徴とする請求項５記載の情報処理装置の制御方法。
【請求項９】
請求項５乃至８のいずれか１項に記載の情報処理装置の制御方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数ページの文書データを印刷する際に、１枚の印刷用紙に複数のページを集約して印刷することが可能な画像処理システムに関するものである。に関するものである。
【背景技術】
【０００２】
従来、プリンタ等の画像形成装置で印刷を行う際に１枚の用紙上に複数ページの文書データを縮小配置して印刷する技術がある。集約印刷、Ｎアップ印刷などと呼ばれ、文書編集ソフトなどにより作成したファイルをシート１枚で一覧したい場合や、コスト削減や環境対策の１つとして使用する印刷用紙枚数を削減するなど、さまざまな目的で利用される。
【０００３】
例えばユーザは、１枚に集約する文書データのページ数を選択し印刷設定を更新することで、集約印刷の設定を行うことができる。この設定はＯＳ上のレイアウトモジュールにより処理が反映され、更新した印刷設定上の集約数に応じたレイアウトに応じて印刷できるようプリンタドライバに印刷データを渡す。
【０００４】
その後、プリンタドライバのレンダリングモジュールが、プリンタが解釈できる言語へ印刷設定とデータを変換することで、プリンタは集約印刷を行うことが可能となる。集約印刷と関連して集約印刷の見栄えを改善させることに関するシステムについて、例えば特許文献１に記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−３３５９６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
一般に、印刷物は元の文書データと同じレイアウトで作成されると見栄え良く、作り手の意図が反映されたものとなる。それは文書データの作り手が、１枚のメディアに文書データの１ページ分が印刷されることを考慮した上で最適な文字の大きさ、フォントの種類、絵柄の大きさなどを考慮するためである。
【０００７】
しかしながら、集約印刷を行うと作り手の意図とは異なり、設定によっては印刷物の見栄えは、小さく見にくいものになってしまう。
例えば、集約数が「４」のときに文書データ１ページ分を印刷した場合、データは約１／４のサイズに縮小されて印刷される。使用する印刷用紙枚数を変えずに、集約数１で印刷すること、つまり集約せずに印刷することも可能である場合、より見栄えのいい印刷物を印刷できる設定が他に存在している場合があった。
また、６ページの文書データを、集約数４で印刷した場合、画像が約１／４で印刷される。この場合、印刷用紙を２枚使用することがわかる。もし両面印刷ができるプリンタであった場合、集約数２で、２枚の印刷用紙を用いてより見栄えよく印刷することが可能である。この場合も見栄えに関して最良の設定とならない場合があった。
【０００８】
特許文献１に記載の技術では、印刷物上に形成される空白領域を最小化するように、文書データに応じて最適な集約数を決定し、決定した集約数を使用して設定データを作成するということを行っている。特許文献１では、片面印刷・両面印刷のどちらかを決めた上で、固定する印刷用紙枚数を算出するので、片面印刷時の最適な集約数または両面印刷時の最適な集約数を算出することができる。しかしながら、片面印刷と両面印刷どちらも含めた上で最適な集約数を算出していない。
【０００９】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、集約印刷を行う場合に、少ないシート枚数で指定された集約ページよりも少ないページ数で集約した印刷結果を得ることが可能となる仕組みを提供することである。
【課題を解決するための手段】
【００１０】
上記目的を達成する本発明の情報処理装置は以下に示す構成を備える。
印刷装置に印刷ジョブを出力する情報処理装置であって、１ページに集約されて印刷されるページ数を入力する入力手段と、入力されたページ数と印刷すべき印刷データのページ数とから片面印刷で使用するシート枚数を算出する算出手段と、入力されたページ数よりも集約可能な少ないページ数と印刷すべきページ数とから前記算出手段が算出するシート枚数が前記算出手段により最初に算出されたシート枚数以下となる最小の集約数を探索する探索手段と、前記印刷装置がシートの両面に対して画像を印刷可能かどうか否かを判断する判断手段と、を備え、前記印刷装置が両面印刷可能であると判断した場合、前記探索手段が入力されたページ数よりも集約可能な少ないページ数と両面印刷で印刷すべきページ数とから前記算出手段が算出するシート枚数が前記算出手段により最初に算出されたシート枚数以下となる最小の集約数を探索することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、約印刷を行う場合に、少ないシート枚数で指定された集約ページよりも少ないページ数で集約した印刷結果を得ることが可能となる。
【図面の簡単な説明】
【００１２】
【図１】画像処理システムの構成を説明するブロック図である。
【図２】情報処理装置の制御方法を説明するフローチャートである。
【図３】ホストコンピュータ上のモジュール構成を説明するブロック図である。
【図４】情報処理装置の制御方法を説明するフローチャートである。
【図５】情報処理装置の制御方法を説明するフローチャートである。
【図６】ＤＳＰに表示されるＵＩ画面の一例を示す図である。
【図７】情報処理装置の制御方法を説明するフローチャートである。
【図８】情報処理装置の制御方法を説明するフローチャートである。
【発明を実施するための形態】
【００１３】
次に本発明を実施するための最良の形態について図面を参照して説明する。
＜システム構成の説明＞
〔第１実施形態〕
図１は、本実施形態を示す画像処理システムの構成を説明するブロック図である。本実施形態では、印刷装置（プリンタ２）に印刷ジョブを出力する情報処理装置（ホストコンピュータ１）する画像処理システムを例とする。なお、プリンタ２とホストコンピュータ
１とは、所定プロトコルで通信して、印刷装置の状態、機能（両面印刷機能）の有無等を判断することができるように構成されている。
【００１４】
図１において、ホストコンピュータ１とプリンタ２で構成される。ホストコンピュータ１はＣＰＵ１０、ＲＡＭ１１、ＲＯＭ１２、キーボードコントローラ（ＫＢＣ）１３、ディスプレイコントローラ（ＤＳＰＣ）１４、ディスクコントローラ（ＤＫＣ）１５、プリンタコントローラ（ＰＲＴＣ）１６がシステムバス３と接続される。
【００１５】
そして、キーボード（ＫＢ）１７はキーボードコントローラ（ＫＢＣ）に、ディスプレイ（ＤＳＰ）１８は、ディスプレイコントローラ（ＤＳＰＣ）１４に、外部メモリ１９はディスクコントローラ（ＤＫＣ）１５に接続されている。ＣＰＵ１０はシステムバス３に接続される各モジュールの動作を統括して制御するものである。ＲＡＭ１１はＣＰＵ１０の作業用メモリとして使われる。ＲＯＭ１２は、ＯＳやアプリケーション等のプログラムなどが格納される記憶領域である。
【００１６】
キーボード（ＫＢ）１７は外部入力インタフェースとして、コマンドの実行や値の入力を行う装置である。ディスプレイ（ＤＳＰ）１８は、アプリケーションの編集途中経過を表示するなど、ホストコンピュータ１内の処理情報を表示する装置である。外部メモリ１９は、プログラムや、データ等を格納することが可能な記憶装置である。キーボードコントローラ（ＫＢＣ）１３は、キーボード（ＫＢ）１７上に配置されるボタンが押された情報を取得するなどキーボード上での動作状況を管理するモジュールである。ディスプレイコントローラ（ＤＳＰＣ）１４は、ディスプレイ（ＤＳＰ）１８に表示するデータや表示の仕方、表示のタイミングなどを制御するモジュールである。ディスクコントローラ（ＤＫＣ）１５は、外部メモリ１９に対してデータの格納や消去など外部メモリ１９の動作を制御するモジュールである。
【００１７】
プリンタ２は、ホストコンピュータ１と双方向インタフェース５を通じて、入力部２３で情報のやりとりを行うことが可能である。プリンタ２は、ＣＰＵ２０、ＲＡＭ２１、ＲＯＭ２２、印刷部Ｉ／Ｆ２４、印刷部２５、操作部２６、メモリコントローラ（ＭＣ）２７、外部メモリ２８で構成されている。
【００１８】
ＣＰＵ２０はプリンタ２内におけるシステムバス４と接続される各モジュールを統括的に制御する装置である。ＲＡＭ２１はプリンタ２内で処理を行うにあたって、作業用の記憶領域として用いられるモジュールである。ＲＯＭ２２は、プリンタ２の基本的な処理やハードウェアを管理するＯＳやプリンタの処理を記載したプログラムを格納している記憶モジュールである。入力部２３はホストコンピュータ１と双方向インタフェースにより接続されることにより、プリンタ２への情報を取得することや、プリンタ２の状態をホストコンピュータ１へ提供することが可能なモジュールである。印刷部Ｉ／Ｆ２４は、印刷部２５が紙に印刷を行うために必要な情報の送信を制御するモジュールである。印刷部２５は、印刷部Ｉ／Ｆ２４から印刷に必要な情報を受け取ると紙に印刷し、プリンタ部へ排出することを行う。
【００１９】
操作部２６は、プリンタ２上に配置され、印刷処理を実行することや、印刷設定の変更やサイズなどの用紙情報を登録することが可能な、プリンタ２の外部入力インタフェースとなるモジュールである。メモリコントローラ（ＭＣ）２７は、外部メモリ２８にデータの格納や取得に関しての操作を制御するモジュールである。外部メモリ２８は、メモリコントローラ（ＭＣ）２７により制御され、印刷に用いるデータなどを格納することができる記憶装置である。
【００２０】
図２は、本実施形態を示す情報処理装置の制御方法を説明するフローチャートである。本例は、印刷設定ダイアログ表示処理例である。なお、各ステップは、ＣＰＵ１０が外部メモリ１９に記憶された制御プログラムを実行することで実現される。
前記処理が要求されると、ＯＳ４００のプリントマネージャ４０１がコンフィギュレーションモジュール５０２を動作させ印刷設定ファイルを作成させる。同時にディスプレイ（ＤＳＰ）１８にダイアログ等を表示する（Ｓ５０００）。これに対して、ユーザはキーボード（ＫＢ）１７などの外部入力インタフェースで印刷設定を編集することで印刷設定値を変更する（Ｓ５００１）。例えば、両面印刷や白黒モードや集約印刷時の集約数等をユーザ任意の値に変更することが可能である。
【００２１】
ディスプレイ（ＤＳＰ）１８に表示された印刷設定画面でユーザが印刷実行を選択すると（Ｓ５００２）、ＯＳ４００に印刷実行命令が伝わり、グラフィックスエンジン４０２がプリンタドライバ５００へ描画を行う。
図３は、図１に示したホストコンピュータ１上のモジュール構成を説明するブロック図である。本モジュールは、印刷処理に関係するモジュール例である。
図３において、ＲＯＭ１２または外部メモリ１９に格納されている文書編集ソフトウエアにおいて、ディスプレイ（ＤＳＰ）１８に表示される情報に基づき、ユーザがキーボード（ＫＢ）１７等の外部入力インタフェースを介して印刷設定画面を表示させる処理を要求する。
【００２２】
なお、印刷設定情報でレイアウト処理が指定されている場合は、プリンタドライバ５００のレンダリングモジュール５０１による処理が実行される前に一時的なスプールファイル４０４が作成され、レイアウトモジュール４０３が起動される。
レイアウトモジュール４０３は、印刷設定情報３０２に従って、ページの順番を入れ替えたり、一枚の用紙に複数ページを配置したりする処理を指す。レイアウトモジュール４０３は、処理を実行した後、プリンタドライバ５００への描画を行う。
【００２３】
印刷設定情報３０２で自動集約レイアウト設定がＯＮと設定され、印刷実行が選択されると、レイアウト設定を内部的に無いものとみなし、コンフィギュレーションモジュールは、自動集約レイアウト設定モジュール５０４を起動する。自動集約レイアウト設定モジュール５０４は起動すると、文書データ取得モジュール５０５を起動させる。
文書データ取得モジュール５０５は起動すると、一時的にホストコンピュータ１のＲＡＭ１１上に画像記憶領域を確保する。文書データ取得モジュール５０５は、グラフィックスエンジン４０２よりプリンタドライバ５００へ描画が行われると同時に文書データ取得モジュール５０５が印刷する画像を全て取得し、一時的に文書データ取得モジュール用スプールに記憶する。
同時に、文書データ取得モジュール５０５内部のページカウンタがスプールした画像のページ数を取得する。全ての画像のスプールが終了すると文書データ取得モジュール５０５は、カウントしたページ数を自動集約レイアウト設定モジュール５０４に渡し処理を終了する。
【００２４】
自動集約レイアウト設定モジュール５０４にページ数が渡されると、印刷ページ数と設定された集約数より必要な印刷用紙枚数を算出し、算出した印刷用紙枚数から、最適な集約数を決定する。最適な集約数を決定すると、コンフィギュレーションモジュール５０２により印刷設定情報を更新する。印刷設定情報を更新すると、コンフィギュレーションモジュール５０２は、プリントマネージャに再度印刷実行を要求することで再設定されたレイアウト設定で印刷処理が開始される。
【００２５】
プリンタドライバ５００は、レンダリングモジュール５０１によって、描画データをプリンタ２が理解できるデータ言語、即ちプリンタ制御言語に変換する。このとき印刷設定情報も、プリンタ制御言語に変換される。
【００２６】
レンダリングモジュール５０１、コンフィギュレーションモジュール５０２は共に複数の種類のプリンタに対して共通のモジュールであることが多く、機種ごとの違いは機種依存データファイル５０３に記述されている。
レンダリングモジュール５０１、コンフィギュレーションモジュール５０２は、適宜、この機種依存データファイル５０３を参照する。プリンタ制御言語はスプールファイル４０４として逐次保存されていく。プリントマネージャ４０１は、スプールファイル４０４を取得し、印刷ジョブファイルとして印刷処理のスケジュール管理を行う。プリンタが印刷できる状態になると、プリントマネージャ４０１は、Ｉ／Ｏモジュール４０５を介してプリンタ２にプリンタ制御言語（印刷ジョブ）を送信する。
このようにして、アプリケーション３００からの文書データ３０３がプリンタ制御言語に変換されて印刷が行われる。
【００２７】
図４は、本実施形態を示す情報処理装置の制御方法を説明するフローチャートである。本例は、自動集約レイアウト設定モジュール５０４を起動した後の自動集約レイアウト設定モジュール５０４によるレイアウト処理例である。なお、各ステップは、ＣＰＵ１０が外部メモリ１９に記憶された制御プログラムを実行することで実現される。
まず、自動集約レイアウト設定モジュール５０４は、ユーザ設定の集約数Ｎをコンフィギュレーションモジュール５０２より取得し、印刷ページ数を取得するため文書データ取得モジュール５０５を起動し、印刷ページ数Ｐを取得する（Ｓ１０００）。
【００２８】
次に、自動集約レイアウト設定モジュール５０４は、片面で印刷を行った場合に必要な用紙枚数Ｍｍａｘを算出する（Ｓ１００２）。用紙枚数Ｍｍａｘは、下記数１により算出する。ＭｍａｘはＰをＮで割った値の小数点以下の値を切り上げた値となる。これにより、入力されたページ数と印刷すべき印刷データのページ数とから片面印刷で使用するシート枚数を算出することができる。
【数１】
2014191363.tif 000003
【００２９】
次に、自動集約レイアウト設定モジュール５０４は、用紙枚数がＭｍａｘ以下となる最小の集約数Ｎを算出する（Ｓ１００３）。なお、入力されたページ数よりも集約可能な少ないページ数と印刷すべきページ数とから前記算出手段が算出するシート枚数が前記算出手段により最初に算出されたシート枚数以下となる最小の集約数を探索するＳ１００３の処理の詳細は後述する。次に、Ｓ１００３により算出した、集約数Ｎよりも小さいＮが両面印刷では可能であるかどうかを確認するために、自動集約レイアウト設定モジュール５０４は、まずは両面印刷が可能か判断する（Ｓ１００４）。
【００３０】
なお、Ｓ１００４において、両面印刷が可能かの判断は、例えば、コンフィギュレーションモジュール５０２が機種依存データファイル５０３より両面印刷が可能なユニットを持っているかどうかで判断する。また、プリントマネージャ４０１より提供される、プリンタ２の情報で印刷に使用する用紙が両面印刷可能なユニットで利用できるかどうかにより両面印刷が可能かどうか判断してもよい。または、事前にユーザがプリンタドライバ上で両面可能であると指定した紙が印刷に使われていることが判断されれば両面印刷が可能だと判断してもよい。
【００３１】
Ｓ１００４により両面印刷が可能であるとコンフィギュレーションモジュール５０２が判断した場合は、自動集約レイアウト設定モジュール５０４は両面印刷時に必要な用紙枚数Ｍ'がＭｍａｘを超えない最小のＮを算出して（Ｓ１００５）、Ｓ１００６へ進む。なお、Ｓ１００５の処理の詳細は後述する。
【００３２】
Ｓ１００４において両面印刷が可能でないとコンフィギュレーションモジュール５０２が判断した場合、現在の最小の集約数Ｎをコンフィギュレーションモジュール５０２に伝え、集約数と片面・両面のレイアウト設定について印刷設定情報を更新し集約印刷の処理を行う（Ｓ１００６）。これにより、探索した最小の集約数を印刷ジョブに設定する設定することができる。
【００３３】
Ｓ１００５において最小の集約数Ｎが算出できた場合、Ｓ１００５で算出した集約数Ｎをコンフィギュレーションモジュール５０２に伝え、集約数の印刷設定情報をＮに更新し、両面印刷設定をＯＮにし、集約印刷を行い（Ｓ１００６）、本処理を終了する。
【００３４】
図５は、本実施形態を示す情報処理装置の制御方法を説明するフローチャートである。本例は、Ｓ１００３で実行される集約数Ｎの算出処理例である。なお、各ステップは、ＣＰＵ１０が外部メモリ１９に記憶された制御プログラムを実行することで実現される。
自動集約レイアウト設定モジュール５０４は、現在設定されている集約設定値Ｎを最終的に決定する集約数を格納する変数Ｎ＿ａｎｓに代入する（Ｓ２０００）。次に、自動集約レイアウト設定モジュール５０４は、現在のＮより小さい集約数が、機種依存データファイル５０３より選択しているプリンタドライバにおいて設定可能な集約数群Ｎｌｉｓｔに存在するかどうか判断する（Ｓ２００１）。Ｓ２００１において、Ｎｌｉｓｔに、現在のＮより一つ小さい値でＮの値が存在していると自動集約レイアウト設定モジュール５０４は、が判断した場合、自動集約レイアウト設定モジュール５０４は、その値でＮを更新する（Ｓ２００２）。
一方、Ｓ２００１において、Ｎより小さい値がＮｌｉｓｔ上にないと自動集約レイアウト設定モジュール５０４が判断した場合、自動集約レイアウト設定モジュール５０４は、現在のＮ＿ａｎｓを最小の集約数として、Ｓ１００３の処理を終了する（Ｓ２００６）。
【００３５】
Ｓ２００２により自動集約レイアウト設定モジュール５０４はＮの値を更新すると、Ｓ２００３で、自動集約レイアウト設定モジュール５０４は、Ｎｉｎ１つまり、印刷用紙（シート）１枚に集約するページ数をＮとした場合に全印刷ページを印刷すると必要な印刷用紙枚数（シート枚数）Ｍを算出する（Ｓ２００３）。
【００３６】
ここで用紙枚数Ｍの算出にはＳ１００２と同様の数１を用いる。Ｓ２００３で、自動集約レイアウト設定モジュール５０４は、算出した印刷用紙枚数ＭとＳ１００２で算出したＭｍａｘを比較する（Ｓ２００４）。Ｓ２００４において、ＭがＭｍａｘ以上であると自動集約レイアウト設定モジュール５０４が判断した場合は、現在のＮ＿ａｎｓを最小の集約数として、Ｓ１００３の処理を終了する。
一方、Ｓ２００４において、Ｍｍａｘの値がＭ以上であると自動集約レイアウト設定モジュール５０４が判断した場合、自動集約レイアウト設定モジュール５０４は現在の集約数ＮをＮ＿ａｎｓに代入し（Ｓ２００５）、Ｓ２００１の処理に戻る。
【００３７】
ここでＳ１００５の処理の詳細について説明する。
Ｓ１００３の処理とほぼ同様にＳ２０００の処理を開始し最小の集約数を算出する。ただし、Ｓ２００３において集約数Ｎで印刷用紙枚数Ｍを算出する際に下記数２を用いてＭを算出する。つまりＳ１００５では、両面印刷時に必要な印刷用紙枚数を算出する。これにより、両面印刷可能であると判断した場合、自動集約レイアウト設定モジュール５０４が入力されたページ数よりも集約可能な少ないページ数と両面印刷で印刷すべきページ数とから算出するシート枚数が最初に算出されたシート枚数以下となる最小の集約数を探索することができる。
【数２】
2014191363.tif 000004
【００３８】
前述した第１実施形態にかかるシステム構成と処理により、ユーザは印刷しようとする文書データのページ数を意識せず、ユーザ自身が設定した集約数よりも見栄えのいい印刷物を提供可能な集約数へと設定を自動変更することができる。
また、文書データを印刷するプリンタに応じて、プリンタが両面印刷可能であれば、本実施例にかかる画像処理システムにおいて両面印刷した場合の見栄えも考慮し集約数の設定を変更するため、ユーザはより見栄えのいい印刷物を取得することが可能となる。
【００３９】
〔第２実施形態〕
以下、第２実施形態にかかる画像処理システムについて説明する。なお、第２実施形態に係るプリンタ制御システムの構成は図１と同様であり、印刷に関わるモジュールのブロック図も図２と同様であるため説明は省略する。
本実施形態は、図２における自動集約レイアウト設定モジュール５０４の処理が、第１実施形態と異なる構成について図６、図７を用いて説明する。
【００４０】
第２実施形態に係るコンフィギュレーションモジュール５０２は、第１実施形態に係るコンフィギュレーションモジュールが提供する印刷設定項目に加え、印刷用紙を削減する用紙枚数削減モードと見栄え優先モードを選択する項目をユーザに提供する。
【００４１】
図３に示したように、印刷設定ダイアログが表示されると（Ｓ５０００）と印刷設定時に図６に一例を示すＵＩ画面６００を確認し操作することが可能となる。これにより、探索される最小の集約数で印刷を行うモードと、入力されたページ数で集約印刷を行うモードとを選択する選択することができる。ここで、最小の集約数で印刷を行うモードとは、後述する見栄え優先モードに対応し、入力されたページ数で集約印刷を行うモードとは、後述する用紙枚数優先モードに対応する。
図６において、チェックボックス６０１は、自動集約レイアウト設定をＯＮにする際に外部入力インタフェースを用いてユーザがチェックマークを入れることが可能なインタフェースである。ドロップダウンリスト６０２は、ユーザが右端の下向き三角ボタンを外部入力インタフェース等で選択することで、印刷するプリンタ上で可能な集約数のリストを表示し、ユーザは選択することができる。
選択した集約数はドロップダウンリスト６０２上に表示される。ドロップダウンリスト６０３は、ユーザが優先したいモードを選択するためのインタフェースである。例えば、用紙枚数削減モードと見栄え優先モードを選択することが可能である。本実施形態では、ユーザが自動集約レイアウト設定ＯＮにチェックを入れ、優先モードを選択することが可能となる。
図６では、ドロップダウンリストのように用紙枚数優先モードと見栄え優先モードが選択できるなか、用紙枚数削減モードが優先されている状態である。
【００４２】
第２実施形態にかかる画像処理システムは、ユーザの印刷情報設定ダイアログのＵＩ例５００上のドロップダウンリスト６０３で見栄え優先モードが選択されている場合、第１実施形態に係る画像処理システムと同様の動作を行う。
ドロップダウンリスト６０３で用紙枚数削減モードを選択した状態で印刷処理が実行されると、図７に示す処理を行う。
【００４３】
図７は、本実施形態を示す情報処理装置の制御方法を説明するフローチャートである。本例は、集約印刷処理例である。なお、各ステップは、ＣＰＵ１０が外部メモリ１９に記憶された制御プログラムを実行することで実現される。また、Ｓ３０００〜Ｓ３００３までは、図４に示したＳ１０００、Ｓ１００２、ステップ１００３、Ｓ１００４までの処理と同様である。
Ｓ３００３において、両面印刷が可能であると判断した場合は、コンフィギュレーションモジュール５０２より印刷設定情報３０２の両面印刷設定をＯＮに更新する（Ｓ３００４）。または、Ｓ３００３において両面印刷が可能でないと判断した場合は、コンフィギュレーションモジュール５０２より印刷設定情報３０２の片面印刷設定をＯＮに更新する（Ｓ３００６）。
次に、Ｓ３００２で、算出した最小の集約数Ｎを用いて、コンフィギュレーションモジュール５０２より印刷設定情報３０２の集約印刷設定値を更新し、集約印刷を行い（Ｓ３００５）、本処理を終了する。
【００４４】
本実施形態によれば、ユーザは状況に応じて優先モードが選択でき、自動集約レイアウト設定モジュール５０４の動作を変更することが可能となる。これによりユーザは、見栄えを事前の設定値以上に保ちながら印刷用紙枚数をできる限り減らすことや、設定された集約数よりも見栄えのいい印刷物を取得することのどちらが良いか選ぶことが可能となる。
【００４５】
〔第３実施形態〕
以下、第３実施形態にかかる画像処理システムについて説明する。なお、第３実施形態に係るプリンタ制御システムの構成は図１と同様であり、印刷に関わるモジュールのブロック図も図２と同様であるため説明は省略する。
本実施形態では、図２のＳ１００６の処理とＳ３００５の処理の直前に、集約印刷の際に縦のレイアウトか横のレイアウトかどちらが見栄えが良くなるかを判断してレイアウト処理を制御する例を説明する。
【００４６】
図８は、本実施形態を示す情報処理装置の制御方法を説明するフローチャートである。本例は、自動集約レイアウト設定モジュール５０４がコンフィギュレーションモジュール５０２より印刷設定情報３０２のレイアウトの向きの設定を更新する処理例である。なお、各ステップは、ＣＰＵ１０が外部メモリ１９に記憶された制御プログラムを実行することで実現される。以下、１つのページに集約されるいずれかのページ中で印刷すべき画像サイズが最大となるページの画像の向きに合わせて、集約される他のページの画像の向きを調整する例を説明する。
まず、文書データ取得モジュール５０５により、スプールされている全ページの画像データを取得する（Ｓ４０００）。次に、Ｓ４０００で取得した画像データから見栄えが良くなるレイアウトを決定する際に必要な情報を算出する（Ｓ４００１）。この処理Ｓ４００１では、まず文書データ全ページの各画像サイズと縦横の長さの大小を求める。また、全ページの中で最大の画像サイズを求める。
【００４７】
次に、Ｓ４００１で、自動集約レイアウト設定モジュール５０４が求めた最大の画像サイズを持つページの中で、縦長の画像と横長の画像はそれぞれ何ページあるかを算出し、縦長の画像と横長の画像のページ数比率を算出する。さらに、自動集約レイアウト設定モジュール５０４が算出した縦長の画像と横長の画像のページ数比率が一致しているかどうかを判断する（Ｓ４００２）。Ｓ４００２において、縦長の画像と横長の画像のページ数比率が一致していると自動集約レイアウト設定モジュール５０４が判断した場合は、Ｓ４００３の処理を行う。Ｓ４００２において、縦長の画像と横長の画像のページ数比率が一致していないと自動集約レイアウト設定モジュール５０４が判断した場合は、Ｓ４００６の処理を行う。
【００４８】
Ｓ４００６では、自動集約レイアウト設定モジュール５０４が最もサイズの大きい画像の中でページ数比率が高い方の向きにレイアウトを決定する。例えば最もサイズの大きい画像のなかで縦長の画像が４ページ、横長の画像が１ページだった場合は、集約する際のレイアウトを縦長の向きに画像を配置するレイアウトに決定する。
【００４９】
Ｓ４００２で、最もサイズの大きい画像の縦長・横長のページ数比率が一致していた場合、Ｓ４００３で、自動集約レイアウト設定モジュール５０４が文書データ全ページの画像の縦長・横長のページ数比率を求める。そして、全ページの画像の中で縦長・横長の画像のページ数比率が一致していた場合は、Ｓ４００４の処理を行う。
一方、Ｓ４００３の処理において、全ページの画像の中でページ数比率が一致していないと自動集約レイアウト設定モジュール５０４が判断した場合、比率の多い方の向きにレイアウトを決定して（Ｓ４００７）、Ｓ４５００５へ進む。
【００５０】
Ｓ４００４では、Ｓ４００３で全ページの画像の縦長・横長のページ数比率が一致している場合は、印刷設定情報の初期設定として設定されている向きにレイアウトを決定して（Ｓ４００４）、Ｓ４００５へ進む。
【００５１】
Ｓ４００６またはＳ４００７またはＳ４００５の処理が終了するとＳ４００５の処理を行う。Ｓ４００５では、自動集約レイアウト設定モジュール５０４がＳ４００６またはＳ４００７またはＳ４００５において決定したレイアウトの向きにレイアウト情報を更新して、本処理を終了する。ここでは、コンフィギュレーションモジュール５０２より、印刷設定情報３０２の情報を書き変えてもらうことで、レイアウトを変更する。
【００５２】
本実施形態によれば、同一の文書データ内に、サイズや縦長や横長などの形状が異なるデータがあった場合でも、集約印刷時の回転や画像の拡大縮小方法による見栄えの低下を防ぐことが可能となる。例えば、文書データのページ毎に回転がかからないことにより文書の一覧性を保つことができたり、大きいサイズの画像が過度に縮小されることを防ぐことができたりすることで、ユーザは見やすい印刷物を得ることが可能となる。
なお、上記実施形態では、印刷データの各ページを先頭ページから順に集約印刷する例について説明したが、本発明は、印刷すべきページを抽出して印刷する場合や、特定のオブジェクトを備えるページを抽出して印刷する場合にも適用可能である。例えば偶数ページのみ、奇数ページのみ、ページ逆順を指定して印刷する場合である。また、図面ページのみ、画像ページのみ、テキストページのみ、これらの組合わせページのみ等を指定して印刷する場合である。また、小冊子印刷する場合にも本発明を適用可能である。
【００５３】
本発明の各工程は、ネットワーク又は各種記憶媒体を介して取得したソフトウエア（プログラム）をパソコン（コンピュータ）等の処理装置（ＣＰＵ、プロセッサ）にて実行することでも実現できる。
【００５４】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。
【符号の説明】
【００５５】
１  ホストコンピュータ
２  プリンタ
【図１】
2014191363.tif 000005
【図２】
2014191363.tif 000006
【図３】
2014191363.tif 000007
【図４】
2014191363.tif 000008
【図５】
2014191363.tif 000009
【図６】
2014191363.tif 000010
【図７】
2014191363.tif 000011
【図８】
2014191363.tif 000012