(57)【要約】【課題】プリント出力を効率化する、情報処理装置、プリント制御方法、プログラム、および記録媒体を提供すること。【解決手段】本発明の情報処理装置１０は、アプリケーション実行部４０と、プリンタ・ドライバ４２とを含んでおり、アプリケーション４０ａからドキュメントを受信し、ドキュメントから生成されたページ・データを、ページ・データの作成順と対応させて格納する記憶空間４０ｃと、記憶空間４０ｃからページ・データを読み出してラスタ・イメージを作成・表示させ、複数のページを統合するページ統合指令を受け付ける統合指令手段を提供する表示処理部４２ｅと、表示手段４２ｅからのページ統合指令を受取って指令された順にベージ・データを統合し、統合ページ・データを作成する統合ページ・データ作成処理部（４２ｃ、４２ｄ）と、作成された統合ページ・データを外部出力装置（２４、３４、３６）に伝送する、出力処理部４４とを含む。【選択図】  図２
2008052352.tif 000002
【特許請求の範囲】
【請求項１】
ドキュメントを外部出力装置に出力する情報処理装置であって、
アプリケーションから前記ドキュメントを受信し、前記ドキュメントから生成されたページ・データを前記ページ・データの作成順と対応させて格納する記憶空間を提供する記憶装置と、
複数のページを統合するページ統合指令を受け付ける統合指令手段を提供する表示処理部と、
前記表示手段からの前記ページ統合指令を受け取って指令された順に前記ページ・データを統合し、統合ページ・データを作成する統合ページ・データ作成処理部と、
作成された前記統合ページ・データを前記外部出力装置に伝送する、出力処理部と
を含む情報処理装置。
【請求項２】
前記統合ページ・データ作成処理部は、前記ドキュメントから前記ページ・データを作成し、前記ページ統合指令に応答して前記記憶空間から前記ページ・データを読み出し、前記ページ・データを連結して前記統合ページ・データを作成する描画処理部と、
前記統合ページ・データがプリント領域に収まるように縮小率を計算して前記描画処理部に渡す縮小処理部と
を備える、請求項１に記載の情報処理装置。
【請求項３】
前記表示処理部は、前記記憶空間に格納された前記ページ・データを読み出して前記描画処理部が作成したラスタ・データを表示させるため、表示シーケンス指令手段を表示する、請求項１または２に記載の情報処理装置。
【請求項４】
前記表示処理部は、最後のページ・データの空白率に応答して前記最後のページ・データを直前のページ・データに繰り込み、前記統合ページ・データ全体の縮小率を修正するページ繰り込み指令手段を表示する、請求項１〜３のいずれか１項に記載の情報処理装置。
【請求項５】
前記表示処理部は、さらに前記全体の縮小率の上限値を制限する制限手段を表示する、請求項４に記載の情報処理装置。
【請求項６】
情報処理装置に対してドキュメントを外部出力装置に出力させるプリント制御方法であって、
アプリケーションから前記ドキュメントを受信して生成されたページ・データを前記ページ・データの作成順と対応させて、記憶装置が提供する記憶空間に格納するステップと、
前記記憶空間から前記ページ・データを統合する統合指令手段を表示処理部により表示させるステップと、
前記表示処理部が提供する前記統合指令手段から複数のページを統合するページ統合指令を受け付けるステップと、
前記ページ統合指令を受け取って指令された順に前記出力ベージを統合し、統合ページ・データを作成するステップと、
作成された前記統合ページ・データからプリンタ制御コードを作成し、前記外部出力装置に伝送するステップと
を実行させる、プリント制御方法。
【請求項７】
前記統合ページ・データを作成するステップは、前記ドキュメントから前記ページ・データを作成し、前記ページ統合指令に応答して前記記憶空間から前記ページ・データを読み出し、前記ページ・データを連結して前記統合ページ・データを作成するステップと、
前記統合ページ・データがプリント領域に収まるように縮小率を計算して前記統合ページ・データを縮小するステップと、
を含む、請求項６に記載のプリント制御方法。
【請求項８】
前記表示処理部により表示させるステップは、
前記記憶空間から読み出された前記ページ・データのラスタ・データを表示させるため、表示シーケンス指令を表示シーケンス指令手段から受け取るステップと、
前記表示シーケンス指令に対応して前記ラスタ・データの表示シーケンスを決定するステップと、
を含む、請求項６または７に記載のプリント制御方法。
【請求項９】
前記統合ページ・データを作成するステップは、最後のページ・データの空白率に応答して前記最後のページ・データを直前のページ・データに繰り込み、前記統合ページ・データ全体の縮小率を修正するステップを含む、請求項６〜８のいずれか１項に記載のプリント制御方法。
【請求項１０】
さらに前記全体の縮小率の上限値を超えて前記縮小率が設定されないように制御するステップを含む、請求項９に記載のプリント制御方法。
【請求項１１】
請求項６〜１０のいずれか１項に記載のプリント制御方法を実行する、装置実行可能なプログラム。
【請求項１２】
請求項１１に記載のプログラムを格納した装置可読な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ドキュメント出力技術に関し、より詳細には、ドキュメントをプリント用紙に対して効率的に割り付ける、情報処理装置、プリント制御方法、プログラム、および記録媒体に関する。
【背景技術】
【０００２】
近年、コンピュータ技術、ソフトウェア技術が進歩し、コンピュータ上で動作するアプリケーションの種類も、ワードプロセッサ・ソフトウェア、表計算ソフトウェアの他、各種ペイント系、ドロー系のソフトウェア、ブラウザ・ソフトウェアなど多岐にわたっている。このようなソフトウェアの多様化に伴って、情報処理装置からのプリント指令を受け付けるプリンタ、ＭＦＰなどの複写機、ファクシミリが出力しなければならないドキュメントも多様になっている。一方、アプリケーションの中には、プリントするドキュメントに対してページング情報を付することなく、ドキュメントとプリント設定とを送付するものもある。また、Ｗｅｂページからダウンロードする画像を含むＨＴＭＬ、ＸＭＬなどの構造化文書は、プリント設定が付されていない場合もある。これらのアプリケーションからのドキュメントをプリントすると、ドキュメントが１ページ内に収まりきらず、途中で分断され、別のページにドキュメントの残りの部分が出力されてしまう。
【０００３】
図１６には、上述した多種類のドキュメントをプリンタ、ＭＦＰ（Multi Function Printer)、ファクシミリ装置（以下、総合して外部出力装置として参照する。）などの外部出力装置を使用してプリント出力物とした場合の従来例を示す。図１６に示すように、ページング情報を伴わないドキュメントをアプリケーションが備えるプリント設定だけでプリントすると、情報処理装置が設定する１ページ分のプリント・サイズで強制的にドキュメントが出力されてしまう。図１６に示されるように、情報処理装置上の画面では１ページのドキュメントとして表示されているドキュメント１５０は、情報処理装置が設定した１ページのサイズよりドキュメントが大きな場合、分断されたプリント出力物１５２として出力される。
【０００４】
この結果、図１６に示すように、プリント出力物１５２の一部のページは、外部出力装置のページ・フォーマッティングにより無駄のない出力が行われるということができる。しかしながら、その他の３ページについては、プリント・ページのごく一部にプリントされた状態のプリント出力物が与えられてしまう。
【０００５】
このようなプリント出力物が与えられたユーザは、複数のプリント用紙を２次元的に並べて見ることとなり、ユーザにとっては便利なものとは言えず、またプリント用紙の無駄という点から見ても好ましいものではない。
【０００６】
図１６に示したプリント出力物１５２が生成されないようにするため、アプリケーション自身が情報処理装置のディスプレイ画面上でドキュメントの縮小率を指令して縮小プリントを指令するプリンタ・ユーティリティを備える場合もある。しかしながら、ユーザは、プリンタ・ユーティリティを使用してプリント・ページ内に体裁良く収まるようにそのたびごとに判断して縮小率を設定する必要があり、操作が煩雑で、またユーザが縮小処理を忘れてプリント指令を行うこともあった。また、アプリケーションで縮小プリントを指令してプリントする場合であっても、最終ページは、効率的に使用されず、ページの多くの部分が無駄になるという問題もあった。
【０００７】
上述した問題点を改善する技術として、例えば、特開平１０−０７４２６５号公報（特許文献１）に開示された技術を挙げることができる。特許文献１では、ドキュメントのうち、ページからはみ出すと判断したドキュメントのみを縮小することにより、プリント出力物が複数のページに分離されてしまうことが防止されている。特許文献１で開示された方法によってもプリント出力物を１ページ当たり効率的に出力させることはできるものの、プリント出力物として見た場合、１ページの中に縮小率の異なるページが混在して、見栄えのよいプリント出力物を得ることはできなかった。
【特許文献１】特開平１０−０７４２６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明は、上記従来技術の問題点に鑑みてなされたものであり、ドキュメントがページング情報を有しているかいないかにかかわらず、ユーザがドキュメントの出力を行う場合に、アプリケーションから独立してユーザがページ統合指令、縮小指令、縮小率制限指令などを行うことが可能な情報処理装置、プリント制御方法、プログラムおよび記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明では、ユーザがアプリケーションからプリント指令を行った場合、外部出力装置にプリントするべきページ・データを伝送する前に、デフォルト設定で与えられたページ・データからラスタ・データを作成し、プレビューする表示処理部を提供する。ユーザは、表示処理部に表示されたプレビューを参考にしながら、プリント出力物の体裁を決定し、ページ・データを統合し、縮小して１ページに収まるようにした後、プリント出力指令を行うことができる。
【００１０】
本発明では、ページ・データは、ユーザ指令に応答して統合され、統合されたページ・データ（以下、統合ページ・データとして参照する。）は、描画に使用する領域の最大幅および最大高さのうち幅または高さのどちらかまたは両方が１ページの印刷領域に収まる縮小率で、プリント出力物とされる。このため、複数のプリント用紙に同一のページが順不同の出力形式で出力されてしまうことが防止できる。また、上記処理は、特定のアプリケーションのソフトウェア・モジュールではなく、プリンタ・ドライバに、出力形式をユーザ指令することが可能なソフトウェア・モジュールとして実装することにより実現される。このため本発明によれば、ページング処理機能を有しない、各種アプリケーション、Ｗｅｂブラウザ、ペイント、ドロー系のソフトウェアからのプリント指令についても、適切なプリント指令を行うことができる。
【００１１】
すなわち、本発明によれば、ドキュメントを外部出力装置に出力する情報処理装置であって、
アプリケーションから前記ドキュメントを受信し、前記ドキュメントから生成されたページ・データを前記ページ・データの作成順と対応させて格納する記憶空間を提供する記憶装置と、
複数のページを統合するページ統合指令を受け付ける統合指令手段を提供する表示処理部と、
前記表示手段からの前記ページ統合指令を受け取って指令された順に前記ページ・データを統合し、統合ページ・データを作成する統合ページ・データ作成処理部と、
作成された前記統合ページ・データを前記外部出力装置に伝送する、出力処理部と
を含む情報処理装置が提供される。
【００１２】
本発明では、前記統合ページ・データ作成処理部は、前記ドキュメントから前記ページ・データを作成し、前記ページ統合指令に応答して前記記憶空間から前記ページ・データを読み出し、前記ページ・データを連結して前記統合ページ・データを作成する描画処理部と、
前記統合ページ・データがプリント領域に収まるように縮小率を計算して前記描画処理部に渡す縮小処理部と
を備えることができる。
【００１３】
本発明では、前記表示処理部は、前記記憶空間に格納された前記ページ・データを読み出して前記描画処理部が作成したラスタ・データを表示させるため、表示シーケンス指令手段を表示することができる。
【００１４】
本発明では、前記表示処理部は、最後のページ・データの空白率に応答して前記最後のページ・データを直前のページ・データに繰り込み、前記統合ページ・データ全体の縮小率を修正するページ繰り込み指令手段を表示することができる。
【００１５】
本発明では、前記表示処理部は、さらに前記全体の縮小率の上限値を制限する制限手段を表示することができる。
【００１６】
本発明によれば、情報処理装置に対してドキュメントを外部出力装置に出力させるプリント制御方法であって、
アプリケーションから前記ドキュメントを受信して生成されたページ・データを前記ページ・データの作成順と対応させて、記憶装置が提供する記憶空間に格納するステップと、
前記記憶空間から前記ページ・データを統合する統合指令手段を表示処理部により表示させるステップと、
前記表示処理部が提供する前記統合指令手段から複数のページを統合するページ統合指令を受け付けるステップと、
前記ページ統合指令を受け取って指令された順に前記出力ベージを統合し、統合ページ・データを作成するステップと、
作成された前記統合ページ・データからプリンタ制御コードを作成し、前記外部出力装置に伝送するステップと
を実行させる、プリント制御方法が提供できる。
【００１７】
本発明の前記統合ページ・データを作成するステップは、前記ドキュメントから前記ページ・データを作成し、前記ページ統合指令に応答して前記記憶空間から前記ページ・データを読み出し、前記ページ・データを連結して前記統合ページ・データを作成するステップと、
前記統合ページ・データがプリント領域に収まるように縮小率を計算して前記統合ページ・データを縮小するステップと、
を含むことができる。
【００１８】
本発明の前記表示処理部により表示させるステップは、
前記記憶空間から読み出された前記ページ・データのラスタ・データを表示させるため、表示シーケンス指令を表示シーケンス指令手段から受け取るステップと、
前記表示シーケンス指令に対応して前記ラスタ・データの表示シーケンスを決定するステップと、を含むことができる。
【００１９】
本発明の前記統合ページ・データを作成するステップは、最後のページ・データの空白率に応答して前記最後のページ・データを直前のページ・データに繰り込み、前記統合ページ・データ全体の縮小率を修正するステップを含むことができる。
【００２０】
本発明では、さらに前記全体の縮小率の上限値を超えて前記縮小率が設定されないように制御するステップを含むことができる。
【００２１】
本発明によれば、上記いずれかに記載のプリント制御方法を実行する、装置実行可能なプログラムが提供できる。
【００２２】
本発明によれば、上記記載のプログラムを格納した装置可読な記録媒体が提供できる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明を図面に示した実施形態をもって説明するが、本発明は後述する実施形態に限定されるわけではない。
【００２４】
Ａ．装置実装形態
図１は、本発明の情報処理装置１０のハードウェア構成を示した図である。本発明の情報処理装置１０は、パーソナル・コンピュータ、ワークステーション、またはサーバとして構成することができる。情報処理装置１０は、中央処理装置（ＣＰＵ）１２により処理が制御されて、アプリケーションの実行、ネットワークを介したデータ伝送、ファイル書き込み・読み出しなどの処理を実行している。情報処理装置１０が使用するＣＰＵとしては、より具体的には、例えば、ＰＥＮＴＩＵＭ（登録商標）〜ＰＥＮＴＩＵＭ（登録商標）  ＩＶ、ＰＥＮＴＩＵＭ（登録商標）互換ＣＰＵ、ＰＯＷＥＲ  ＰＣ（登録商標）などを挙げることができる。
【００２５】
また、使用するオペレーティング・システム（ＯＳ）としては、ＭａｃＯＳ（商標）、Ｗｉｎｄｏｗｓ（登録商標）、Ｗｉｎｄｏｗｓ（登録商標）２００Ｘ  Ｓｅｒｖｅｒ、ＵＮＩＸ（登録商標）、ＬＩＮＵＸ（登録商標）またはそれ以外の適切なＯＳを挙げることができる。さらに、情報処理装置１０は、上述したＯＳ上で動作する、Ｃ、Ｃ＋＋、Ｖｉｓｕａｌ  Ｃ＋＋、ＶｉｓｕａｌＢａｓｉｃ、Ｊａｖａ（登録商標）、Ｐｅｒｌ、Ｒｕｂｙなどのオブジェクト指向のプログラミング言語により記述されたアプリケーション・プログラムを格納し、実行する。
【００２６】
情報処理装置１０は、起動時にＲＯＭ１４からＢＩＯＳ(Basic
Input-Output System)を読み出してシステム設定を実行した後、ＯＳを起動して、ＲＡＭ１６により提供される実行空間を使用してユーザに対して各種のアプリケーションの実行を可能とする。
【００２７】
アプリケーションによる処理は、グラフィック・アクセラレータ（ＧＡＣ）１８によりディスプレイ装置２０に表示され、ユーザに対してアプリケーションの実行結果として得られたプリントするべきドキュメント（以下、単にドキュメントとして参照する。）を表示させている。また、情報処理装置１０は、外部装置との間でデータ伝送を実行するための各種のインタフェースを備えている。情報処理装置１０は、例えば、ＩＤＥ(International Drive Electronics)や、ＳＣＳＩ(Small Computer System
Interface)などのインタフェース２６を備え、ＨＤＤ装置２２との間でデータ伝送を実行し、実行結果の読み出しや格納を実行している。
【００２８】
さらに、情報処理装置１０は、ＵＳＢ(Universal
Serial Buss)２８やＩＥＥＥ１２９４で規定されるセントロニクス仕様のインタフェース／バス接続３０を介してローカル・プリンタ２４などの外部出力装置に接続されていて、情報処理装置１０が処理した結果を、ユーザ指令に応答してプリント出力する。さらに情報処理装置１０は、ネットワーク・インタフェース・カード（ＮＩＣ）３２を備え、イーサネット（登録商標）などのデータリンク層プロトコルおよびネットワーク層／トランスポート層でセッションを管理するＴＣＰ／ＩＰプロトコルを使用して、インターネット、ワイドエリア・ネットワーク（ＷＡＮ）、ローカルエリア・ネットワーク（ＬＡＮ）を介して外部ネットワークへと接続されている。
【００２９】
また、情報処理装置１０には、外部ネットワークを介してネットワーク・プリンタ３４、ファクシミリ装置３６などの外部出力装置が接続されている。ネットワーク・プリンタ３４、ファクシミリ装置３６は、情報処理装置１０からのプリント指令およびドキュメントを受信して、プリント処理を実行する。
【００３０】
情報処理装置１０を構成する各ハードウェア機能部は、内部バス／バス・ブリッジ３８を介して相互接続されていて、コマンドおよびデータ伝送を実行している。
【００３１】
図２は、本発明の情報処理装置１０が実装するソフトウェア構成を示す機能ブロック図である。情報処理装置１０は、ＷＩＮＤＯＷＳ（登録商標）ＸＰなどのＯＳの下で実行および管理されるアプリケーション実行部４０と、プリンタ・ドライバ４２と、出力処理部４４とを備えている。アプリケーション実行部４０は、ＯＳの管理下でアプリケーション４０ａを実行する。アプリケーション４０ａは、ユーザからの指令に応答してプリント出力を行うためのアプリケーション・プログラミング・インタフェース（ＡＰＩ）４０ｂを起動し、プリンタ・ドライバ４２へとドキュメントを渡している。
【００３２】
なお、本発明の特定の実装形態においては、ＡＰＩの他、ＤＤＩ(Device
Driver Interface)を実装し、ＤＤＩコールを介してアプリケーション４０ａとプリンタ・ドライバ４２との間のトランザクションを行っても良い。
【００３３】
本発明の情報処理装置１０の特定の実装形態で、ＯＳとしてＷＩＮＤＯＷＳ（登録商標）ＸＰを使用する場合には、ＡＰＩ４０ｂは、ＧＤＩとして構成することができる。アプリケーション４０ａは、ユーザからのプリント指令を受け付けると、プリンタ・ドライバ４２のＵＩ処理部４２ａに通知し、プリント・ダイアログを表示させる。ユーザは、プリント・ダイアログに表示されたボタン、プルダウン・メニューなどのグラフィカル・ユーザ・インタフェース（ＧＵＩ）にしたがって、プリント設定およびプリント指令を行う。
【００３４】
アプリケーション４０ａは、プリント・ダイアログを介したユーザからのプリント設定を受け付けると、ＧＤＩコールを発行して、ドキュメントをＡＰＩ４０ｂへと渡し、同時にプリント設定をＤＥＶＭＯＤＥ構造体内に記述してＡＰＩ４０ｂへとプリント設定を通知する。
【００３５】
プリンタ・ドライバ４２は、ＡＰＩ４０ｂからのＤＤＩコールといった呼出しを受け取り、描画処理部４２ｃを起動してＤＥＶＭＯＤＥ構造体により設定されるプリント設定に基づいてページング処理されたデータから、描画関数を呼出し、ラスタ・データ、文字データのフォント判断を行い、プリンタ・ドライバが固有に使用するページ・データを作成する。作成したページ・データは、ＡＰＩ４０ｂからページングされたデータが送られ、ページ・データを作成した順に割り当てられる変数pageと対応させて、一旦、アプリケーション４０ａまたはプリンタ・ドライバ４２がその処理のためにＲＡＭ１６などに確保している記憶空間４０ｃに格納される。
【００３６】
本発明では、描画処理部４２ｃにより作成されたページ・データは、外部出力装置に固有のコード（以下、プリンタ制御コードとして参照する。）への変換する前に、プレビュー処理部４２ｂに渡す処理を実行する。プレビュー処理部４２ｂは、プレビュー・ウィンドウをＵＩ処理部４２ａに表示させている。描画処理部４２ｃにより作成されたページ・データは、描画処理部４２ｃがビットマップといったラスタ・データに変換され、ページ・イメージとされた後、まず、変数pageに登録された順（以下、デフォルト設定として参照する。）の配置でプレビュー・ウィンドウに表示される。なお、ＵＩ処理部４２ａとプレビュー処理部４２ｂとは、本発明の表示処理部４２ｅを構成する。
【００３７】
ユーザは、プレビュー・ウィンドウのページ・イメージからプリント出力物のページ構成を予測し、デフォルト設定のページ構成以外のページ構成を希望する場合には、ユーザは、ＵＩ処理部４２ａがＧＵＩとして提供する統合指令手段および統合方向指令手段から入力を行う。情報処理装置１０は、ユーザ指令を受け付けると、描画処理部４２ｃに対し、ページ統合処理を指令して、修正されたページ構成のページ・データを作成させる。
【００３８】
ユーザからページ統合処理を行う指令が発行されると、描画処理部４２ｃは、対応するページ・データを記憶空間４０ｃから呼び出して、複数のページ・データを統合し、統合ページ・データを作成する。作成された統合ページ・データは、その高さｈｐおよび幅ｗｐが計算され、プリント領域に収まるように縮小率を計算する際に使用される。作成した統合ページ・データは、出力処理部４４へと送られて、ＰＪＬなどで記述された外部出力装置へのプリンタ制御コードを作成するために使用される。また、本発明の他の実施形態では、統合ページ・データから、再度ラスタ・データを作成し、プレビュー処理部４２ｂに送られて、ユーザに対して修正したページ構成でのプレビュー表示を与え、ユーザに対して統合ページ・データが許容できるか、または予測した通りのものであるかを確認させることもできる。
【００３９】
その後、ユーザがプリント・ダイアログからプリント指令を行うと、ページ・データまたはユーザがページ統合指令を行って作成された統合ページ・データが出力処理部へと送られ、プリント制御データが作成される。作成されたプリンタ制御データは、スプーラ４４ａおよびポート・モニタ４４ｂを介してジョブ制御されながら、ユーザが指令したローカル・プリンタ、ネットワーク・プリンタ、またはファクシミリ装置などの外部出力装置へと送られて、プリンタまたはファクシミリ装置による処理が実行される。
【００４０】
図３は、本発明で、ユーザがプリントを希望するキュメントおよびアプリケーション４０ａからＡＰＩ４２ｂを介して描画処理部４２ｃに渡されるＤＥＶＭＯＤＥ構造体での設定にしたがって生成されるページ・データのデータ構造を示す。図３（ａ）がドキュメントを示し、図３（ｂ）が、デフォルト設定でドキュメントから生成されるページ・データのデータ構造を示す。
【００４１】
図３（ａ）に示すように、本発明の対象となるドキュメント５０は、それ自体ではページ・データを伴わず、単一のデータとしてディスプレイ装置２０に表示される。ユーザがアプリケーション４０ａの、例えばファイル・メニューからプリント指令を行うと、プリンタ・ドライバ４２は、プリント・ダイアログを表示させる。ユーザが各種設定を行い、印刷指令を行うと、アプリケーション４０ａからＡＰＩコールが実行され、ドキュメントがＤＥＶＭＯＤＥ構造体などのプリント設定と共にＡＰＩ４０ｂに渡され、ドキュメントのページング処理が実行される。
【００４２】
ページング処理されたドキュメントは、ページング処理が終了するごとに描画処理部４２ｃへと渡される。描画処理部４２ｃは、受け取ったページング処理されたドキュメントを使用して図３（ｂ）に示したデータ構造を有するページ・データ５２〜６２としてデフォルト設定でのページ・データを作成する。図３（ｂ）に示すように、ページ・データ５２〜６２は、本来のドキュメント５０の一部がプリント出力物の１ページを埋めてしまうページ構成で作成されており、図３に示した実施形態では、プリント割合の少ないプリント出力物が４ページ分作成されてしまう。また、ユーザは、プリント出力物を２次元的に広げて見なければ、全体を一度に把握することができない。なお、図３（ｂ）に示した１ページ目〜６ページ目は、ＡＰＩ４０ｂがドキュメントからＤＥＶＭＯＤＥ構造体にしたがって描画処理部４２ｃが生成したページ・データの出力シーケンス順に対応している。
【００４３】
本発明では、ＵＩ処理部４２ａが表示するプリント・ダイアログにプレビュー・ウィンドウおよびプリンタ・ドライバ４２から、ページ・データを修正するためのＧＵＩを提供するプリント・ダイアログを生成する表示処理部を提供する。本発明の表示処理部は、アプリケーションから独立してページ・データが作成された後に起動され、アプリケーションを介することなく、ページ・データを修正し、適切なページ構成での出力を提供する。
【００４４】
Ｂ．プリント制御方法の第１の実装形態
【００４５】
Ｂ−１．プレビュー表示（ステップＳ１１０）
図４は、本発明のプリント制御方法の第１の実施形態のフローチャートを示す。本発明のプリント制御方法の第１の実施形態は、ステップＳ１００から開始し、ステップＳ１０１で、ユーザによるアプリケーションからのプリント指令を受け付ける。ステップＳ１０２でＵＩ処理部がプリント・ダイアログを表示する。ステップＳ１０３では、ユーザからプリント・ダイアログを介してプリント指令を受け取り、ステップＳ１０４でアプリケーションは、ＤＥＶＭＯＤＥ構造体で設定されるプリント設定と、ドキュメントとを、ＡＰＩ４０ｂに渡す。ＡＰＩ４０ｂは、描画処理部４２ｃを呼出し、描画処理部４２ｃはさらにラスタ・データの有無の判断、フォントの判断、描画関数などを呼び出して対応するページ・データの作成を開始させる。
【００４６】
ステップＳ１０５では、描画処理部４２ｃは、作成したページ・データを一旦バッファリングし、ＡＰＩから送られるデータの全ページ分を処理したか否かを判断する。ステップＳ１０５の判断で全ページの処理が終了していない場合、ステップＳ１０６で描画処理部４２ｃは、作成したページ・データを記憶空間４０ｃに格納する。同時に、処理しているデータのページがデフォルト設定のシーケンスのどの位置に対応するかを示すページ・シーケンス・データpageを、ページ・データと対応させ、記憶空間４０ｃに格納する。
【００４７】
ステップＳ１０７では、１ページのプリント領域の幅Ｗおよび高さＨを検査し、さらにステップＳ１０８でプリントに使用するべき領域の幅ｗｐおよび高さｈｐを検査し、メモリなどに格納する。その後、ステップＳ１０９で検査するページ・シーケンス・データpageの値をインクリメントして、ＡＰＩ４０ｂからのデータの受領を繰り返すため、処理をステップＳ１０５に戻す。
【００４８】
ステップＳ１０５の処理で、全ページの処理が終了したと判断された場合（ｙｅｓ）には、処理をステップＳ１１０へと分岐させる。ステップＳ１１０では、ステップＳ１０５〜ステップＳ１０９の処理で生成させたページ・データをラスタ・データ、例えばビットマップなどに展開し、適切なサイズおよびシーケンスでページ・イメージとして一部または全部を表示させる。この場合、デフォルト設定のシーケンスは、ページ・シーケンス・データpageの順を使用することができる。また、プレビュー・ウィンドウを表示するプリント・ダイアログには、表示シーケンス指令手段が提供されており、ユーザは、表示シーケンス指令手段から、ページ・イメージを表示させるシーケンスを指令し、デフォルト設定の表示シーケンスを変更する。
【００４９】
ステップＳ１１１では、プレビュー・ウィンドウに表示されたページ・イメージを見て、ユーザが例えば１ページとしてプリントしてほしいページが、縦または横方向に分割されていると判断した場合、ユーザは、プレビュー・ウィンドウを表示するプリント・ダイアログに表示されたページ統合指令を指令するチェック・ボックスを介して、縦または横の縮小によるページ統合指令を発行する。
【００５０】
ステップＳ１１２で、情報処理装置１０が、ユーザによるページ統合を指令するイベントを受け付けた場合（ｙｅｓ）、ステップＳ１１３でイベントの発生に応答して縮小処理部４２ｄがページ・データを記憶空間４０ｃから読み込み、統合するべきページ・データを対応付け、対応するページ・データの結合処理を実行し、統合ページ・データを作成し、各ページ・データの最大幅であるＷａｌｌを取得する。その際、統合のために使用した対となるページ・データのうち、ページ・シーケンス・データpageの小さいものを統合ページのページ・シーケンス・データとして統合ページ・データと対応付けて登録する。ステップＳ１１４では、縮小処理部４２ｄが、最大幅Ｗａｌｌがプリント領域として割り当てられる１ページ当たりの最大データ幅以下となるように縮小率ａを計算する。ステップＳ１１５では、縮小処理部４２ｄは、ページ・データ全部に対して当該縮小率ａを使用してページ・データを縮小し、縮小したページ・データを記憶空間４０ｃの適切な領域に格納する。その後、ステップＳ１１６では、外部出力装置に対して統合ページ・データを読み出して、ステップＳ１１７でプリントを実行させる。
【００５１】
一方、ステップＳ１１２の判断で、ページ統合処理を指令するイベントを受け付けなかった場合、処理をステップＳ１１６へと分岐させる。ステップＳ１１６では、この場合、記憶空間４０ｃに格納しておいたデフォルト設定でのページ・データを読み込んで、ＰＪＬ(Printer Job Language)形式でプリンタ制御コードを作成させ、ステップＳ１１７で出力処理部４４にプリンタ制御コードを渡し、スプーラおよびポート・モニタを介してプリンタ制御データを伝送し、処理をステップＳ１１８で終了する。
【００５２】
図５は、図４のステップＳ１１０のプレビュー表示を実行する処理のフローチャートを示す。図５の処理は、ステップＳ２００から開始し、ステップＳ２０１で描画処理部４２ｃが記憶空間４０ｃからページ・データを読み込む。ステップＳ２０２で読み込んだページ・データをビットマップ、ＧＩＦ、ＰＮＧ、ＴＩＦＦ、ＪＰＥＧ、ＪＰＥＧ２０００などのラスタ・データに展開し、プレビュー処理部４２ｂに渡し、ステップＳ２０３でプレビュー処理部が展開されたページ・イメージを、プレビュー・ウィンドウ内に、その時点で設定されている表示シーケンスにしたがって表示させ、ステップＳ２０４でプレビュー処理を終了させる。
【００５３】
図６は、本発明で使用するプリント・ダイアログの実施形態を示した図である。図６に示したプリント・ダイアログ７０は、ページ・データを統合するためのＧＵＩ７２、７４、７６およびプレビュー・ウィンドウ７８を含んで構成される。なお、図６に示したプリント・ダイアログ７０は、アプリケーションから直接呼び出されるプリント・ダイアログとして与えられても良い。
【００５４】
呼び出されるプリント・ダイアログ７０のプレビュー・ウィンドウ７８には、アプリケーションから送られた、ページ・データのデフォルト設定で与えられるページ・データを、異なる表示シーケンスで表示させる指令を行った場合のプレビュー表示を例示している。ユーザがＧＵＩ７６から表示シーケンスを選択して指令すると、プレビュー処理部４２ｂは、プレビュー配置データ(line, col)の変数colの値としてcol=１、２、３・・・、ｎ（ｎは任意の正の整数）の値を設定し、プレビュー配置データを変数pageの値から表示させるための行数lineを計算してプレビュー・ウィンドウ７８内に(line,
col)の値で指令される順にプレビューを表示させている。なお、(line, col)の作成処理については、より詳細に後述する。
【００５５】
また、図６には、ユーザがページ統合を指令する統合指令手段として使用されるＧＵＩ７２と、ページ統合の方向を指令する統合方向指令手段を提供するＧＵＩ７４と、プレビュー表示の形式を指令するための表示シーケンス指令手段を提供するＧＵＩ７６とが提供されている。ユーザは、プレビュー・ウィンドウ７８に表示されたプレビュー表示を参照しながら、ＧＵＩ７６からプレビュー表示のシーケンスを設定し、デフォルト設定でのページ構成を確認する。ユーザは、プレビュー表示を確認し、ユーザがページ統合することを指令する場合に、ＧＵＩ７２で示されるチェック・ボックスをマークし、続いてＧＵＩ７４を使用してページ統合方向を、列、行のいずれかで指令する。
【００５６】
図６に示した実施形態では、ユーザは、ＧＵＩ７６から、ページ・イメージを表示させる表示シーケンスを、左上→左下→右上→右下の順に表示することを指令し、プレビュー・ウィンドウ７８にページ・イメージがユーザ指令に対応して表示されている。ユーザは、ページ統合指令などの指令が終了すると、「印刷」ボタンまたは「キャンセル」ボタン８０を介してプリント実行を指令する。なお、本発明では、左上→左下→右上→右下の他にも、左上→右上→左下→右下、右上→右下→左上→左下、右上→左上→右下→左下などの指令を可能とするＧＵＩが表示されている。なお、本発明ではさらに、ユーザが任意指令で表示シーケンスを指令するためのＧＵＩを配置することができる。
【００５７】
図７は、本発明でプリンタ・ドライバにより生成され、記憶空間４０ｃに格納されるページ・データおよびプレビュー配置データのデータ構造を示した図である。図７（ａ）は、ユーザが指令した表示シーケンスで表示されたページ・イメージ８２を示し、図７（ｂ）は、デフォルト設定のページ・データのデータ構造を示す。また、図７（ｃ）には、ユーザからの表示シーケンス指令を受け付けて、生成され、ページ・データと対応して格納される、プレビュー配置データの実施形態を示す。
【００５８】
図７（ａ）に示すように、ユーザがプレビュー配置を指令すると、描画処理部４２ｃにユーザ指令を通知し、列数指令値であるcol値を使用してpageの最大値を除算し、商に対して切り上げ演算した値を、line_numberとして設定する。その後、ページ・データに対応して付されたpage値を小さい値から順にcol=1として設定し、line_numberの値となるまで、(line, 1)としてプレビュー配置データを作成して登録する。なお、ユーザがページ統合指令を行わない場合には、col=1として設定しておき、ページ統合指令を行う場合、列数指令値として、ユーザが指令した列数または行数値をcolの値として設定することができる。
【００５９】
プレビュー配置データの作成で、処理しているページ・データのpage値がline=line_numberとなった時に、colの値をインクリメントし(col=2)、同時に次に処理するページ・データのpage値からline_numberの値を減算した値(line=page-line_number)を次の列のページ・データのline値とし、インクリメントされたcolの値を使用して、次の列を示す(line, 2)の値を計算し、ページ・データと対応させて登録して行き、変数pageの全部の値に対してプレビュー配置データの作成が終了した時点で、図７（ｃ）に示すプレビュー配置データを伴うページ・データが作成される。
【００６０】
図７（ｃ）に示すプレビュー配置データは、ページ・データを指令する識別値page_dataと、変数line、変数colのそれぞれの値が対応して登録された構造として生成される。プレビュー処理部４２ｂは、プレビュー・ウィンドウ７８の左上から、図７（ｃ）に示したデータ構造の変数colおよびlineの値を参照して、対応するページ・データのラスタ・データを、プレビュー・ウィンドウ７８の左上から設定された所定位置に表示させ、図７（ａ）で示したユーザ指令に対応したプレビュー表示を提供している。また、本発明で、ユーザが他の表示シーケンス、例えば「２行で表示する」を指令した場合にも同様の処理を使用して、プレビュー配置データを作成し、表示させることができる。
【００６１】
Ｂ−２．ページ統合処理（ステップＳ１１３〜ステップＳ１１５）
本発明では、ユーザが１列に表示した方がプリント出力の利用性が高いと判断して、ユーザがプリント・ダイアログ７０のＧＵＩ７２から「画像を１列になるように統合する」の指令を発行して印刷指令を行う。情報処理装置１０は、「画像を１列になるように統合する」の指令を受け付けると、プリント出力物が１列にページ順に出力されるようにページ・データを統合する処理を実行させる。
【００６２】
図８は、ページ統合処理の実施形態を説明した図である。図８中、ドキュメント５０と、ユーザが指令したプレビュー配置８６との関係を、プレビュー配置８６を太線で示している。
【００６３】
ページ統合処理が指令されると、プリント・ダイアログ７０から入力された各データは、描画処理部４２ｃに渡され、ページ統合処理が実行される。縮小処理部４２ｄでは、まず縮小率を求めるため、ページ・データの統合方向にあるページを識別し、連結方向に直交する方向の座標位置を保存しながら、連結方向にページ・データの位置座標を修正し、ページ・データの対応する隣接境界の座標位置を一致させて結合する。その後、描画処理部４２ｃは、結合処理により生成された統合ページ・データの最大の幅ｗａｌｌを決定する。Ｗａｌｌは、変数pageの最大値をｐとし、プリント領域の幅をW、colの値で指令されるページ・データの幅の最大値をｗｍａｘとして、下記式（１）により決定する。
【００６４】
【数１】
2008052352.tif 000003
で与えられる。ｗｍａｘは、各ページのページ・データの幅をｗｘ（ｘ＝１、…、ｐ）として、ＭＡＸ（ｗｘ）の値を用いる。なお、関数ＭＡＸは、引数のうち最大値を返す関数である。
【００６５】
次に、縮小率を下記式（２）で計算する。
【００６６】
【数２】
2008052352.tif 000004
縮小処理部４２ｄでは、統合ページ・データに、上記式（２）で与えられた縮小率を統合ページ・データの縦・横に適用して座標や大きさの情報を変更する。生成された統合ページ・データのページ・シーケンスは、プレビュー配置データにおけるlineの値を用い、ユーザが指令したプレビュー表示に準じたページ・シーケンスとする。生成された統合ページ・データは、ページ・シーケンス・データのうちの、lineの値の小さい順に出力処理部４４に渡されて、以後の処理が実行される。なお、統合ページ・データの縮小は、ページ・オブジェクトごとに変更してもよいし、すべての統合ページ・データをビットマップといったラスタ・データに展開した後、全体を一度に縮小してもよい。
【００６７】
その後、統合ページ・データは、ＰＪＬなどのプリンタ制御コードとされ、出力処理部４４に送られる。以後、本発明のプリント制御方法は、従来と同様に、スプーラ４４ａがポート・モニタ４４ｂにプリンタ制御データをスプールし、ポート・モニタ４４ｂは、プリンタ・ポートへとプリンタ制御データを伝送し、プリンタ制御データを受信したプリンタまたはファクシミリ装置がプリント処理を実行して、ユーザに対してプリント出力物が提供される。
【００６８】
図９は、本発明で与えられるプリント出力物の実施形態を、従来のプリンタ・ドライバを使用して出力させた場合の形態と比較して示した図である。
【００６９】
図９に示すように、本発明のプリンタ・ドライバ４２を備えていない場合には、アプリケーション４０ａから送られたデフォルト設定のまま、図９に示したプリント出力物８４が与えられ、ユーザはプリント出力物を前後しながら同一のデータにアクセスする必要がある。一方、本発明のプリンタ・ドライバ４２を備える場合、アプリケーション側でページ・フォーマットを修正する機能を備えていない場合、例えばＷｅｂブラウザや、イメージ・ビュワーなどからの出力指令であっても、ユーザは、上述した処理を経てプレビュー表示を参考に、１列または１行に配置するように設定を変更することができる。本発明では、上述した処理を実行した場合でも、ページ全体を同一の縮小率とすることができるので、特定の箇所だけが異なる縮小率とすることなく、見栄えの良いプリント出力物８８を提供することが可能となる。
【００７０】
本発明により、ユーザは、アプリケーションの種類によらず、プリント出力物を得る前にプリント出力物のプレビュー表示を使用して出力形式を指令できるので読みやすいプリント出力物を提供することができる。さらに、本発明においてユーザに表示されるプレビューの配置順を任意にユーザ指令することを可能にすることで、アプリケーションからいかなる順序でドキュメントが送られた場合でも、情報処理装置１０のディスプレイ装置２０で確認したプレビュー表示を効率的に用いてプリント出力させることができる。
【００７１】
Ｃ．プリント制御方法の第２の実装形態
本発明の第１の実施形態のプリント制御方法では、図４および図５に示した処理を用いて、ページ・データを統合し、統合ページ・データを１ページに集約して出力することを可能とする。上述した第１の実施形態でも、プリント面積の小さいページの発生を抑制することで、省資源的な観点およびプリント出力物の認識性を向上させることができる。本発明の第２の実施形態では、さらに、プリント出力物の余白ができるだけ発生させないように、ページ統合を実行する。
【００７２】
図１０は、本発明のプリント制御方法の第２の実施形態の処理のフローチャートを示す。図１０に示した処理は、図４に示した処理のステップＳ１０１〜Ｓ１１５の処理までは共通し、ステップＳ２０２〜ステップＳ２０５の処理で示されるページ統合処理が相違する。図１０に示した処理は、ステップＳ３００から開始し、ステップＳ３０１では、図４に示したステップＳ１０１〜ステップＳ１１５の処理を実行する。
【００７３】
ステップＳ３０２では、最後のページに空白が多いか否かに応答してページ繰り込み処理を実行するユーザ指令があるか否かを判断する。ページ繰り込み処理を実行する場合（ｙｅｓ）、ステップＳ３０３でプレビュー配置データにより指令される最終ページのプリント割合を、統合ページ・データ、縮小率およびプリント領域サイズから計算する。ステップＳ３０４では、最終ページのプリント割合が設定したしきい値Ｓよりも小さいか否かを判断する。ステップＳ３０３の判断でしきい値Ｓよりもプリント割合が高い場合には（ｎｏ）処理をステップＳ３０５へと分岐させて、その時点で得られた縮小率ａを使用してステップＳ３０６のプリント処理を実行させる。
【００７４】
一方、ステップＳ３０３の判断でしきい値Ｓよりもプリント割合が小さいと判断した場合（ｙｅｓ）には、処理をステップＳ３０４へと分岐させ、最終ページの直前のページに割り当てられたページ・データまたは統合ページ・データに最終ページのページ・データを統合して再統合画像データを作成し、１ページに収めるように縮小率ａ２を計算し、計算したａ２をすでに計算した値に乗算し、ａ３を計算させ、縮小率ａ＝ａ３として設定する。
【００７５】
ステップＳ３０５では、縮小処理部４２ｄを呼び出して計算された縮小率ａ３を使用して統合ページ・データ全体の縦・横を縮小し、ステップＳ３０６のプリント処理へとデータを渡し、ステップＳ３０７で処理を終了させる。
【００７６】
図１１は、本発明の図１０の処理を行うためのプリント・ダイアログ１００の実施形態を示す。図１１に示したプリント・ダイアログ１００は、図６に示すと同様に、ページ統合指令、統合方向指令、および表示シーケンス指令を指令するためのＧＵＩ１０２、１０４、１０６およびプレビュー・ウィンドウ１１０を含んで構成される。
【００７７】
プレビュー・ウィンドウ１１０には、アプリケーションから送られた、ページ・データがユーザ指令にしたがって、プレビューとしてユーザに対して表示されている。一方、図１１に示したプリント・ダイアログ１００には、最終ページのプリント割合に応じて、最終ページを前ページに含める処理を指令するためのＧＵＩ１０８が配置されていて、オプションによるプリント制御指令を受け付けている。ユーザがすべての指令を行った後、印刷／キャンセルを指令するボタン１１２をユーザがマウスでクリックするなどして指令を行うと、情報処理装置１０は、ユーザ設定されたプリント処理を実行する。
【００７８】
図１２は、本発明の第２の実施形態のステップＳ３０２〜ステップＳ３０５の処理をページ・データおよびプレビュー配置を使用して説明した図である。図１２に示すようにステップＳ３０２では、図４のステップＳ１１４で求めた縮小率ａで縮小した際の最終ページが、設定されたしきい値を超えて空白があるか否かの判断を行う。このための判断は、最終ページのプリント割合ｓを、統合ページ・データのサイズに対するプリント用紙におけるプリント領域に対する割合を計算し、統合ページ・データの占める割合が、しきい値Ｓｔｈ以下（例：０．２（２０％）以下）となった場合に、空白部分が多いとして判断を実行する。プリント割合は、図１２で示す変数定義を使用し、ページ・データ１１４に示すように、１ページのプリント領域の幅をＷ、縮小率ａで縮小後の最終ページの、描画に使用した領域の幅をｗ′ｌａｓｔとして、これらの比として、下記式（３）で与えられる。
【００７９】
【数３】
2008052352.tif 000005
ここで、ｗ′ｌａｓｔは、縮小率ａで縮小後の総ページ数をｐ′とし、縮小後の幅から、最終ページ繰り上げに伴ない総ページ数より１ページ少ないページ数とすることになるので、下記式（４）で与えられる。
【００８０】
【数４】
2008052352.tif 000006
なお、縮小後の総ページ数ｐ′は、第２の実施形態では、下記式（５）で与えられる。
【００８１】
【数５】
2008052352.tif 000007
ここで、上記式（５）中、記号、
【００８２】
【数６】
2008052352.tif 000008
は、小数点以下を切り上げた整数値を返す関数を意味する。
【００８３】
求めたプリント割合でｓ＞Ｓｔｈであれば、最終ページの空白部分は許容限度内であると判断して、以後、図４で説明したプリント処理を実行させる。一方、ｓ≦Ｓと判断された場合、最終ページには空白部分が多いものとし、図１０のステップＳ３０２〜ステップＳ３０５の処理を実行し、総ページ数ｐ′を（ｐ′−１）として得たページ数に、統合ページ・データを収めるための縮小率ａ２を求める。縮小率ａ２は、図１２の統合ページ・データ１１６に示すように、全体のプリント領域ａ×ｗａｌｌと、１ページ少ないページ数分のプリント領域の全体の対する割合として、下記式（７）で与えられる。
【００８４】
【数７】
2008052352.tif 000009
【００８５】
このとき、図１２の統合ページ・データ１１８に示す通り、１行（あるいは１列）に収めるよう縮小する前のサイズから見た縮小率は、ａ３＝ａ×ａ２となる。ａ３の値を、縮小処理部４２ｄにおける縮小率ａとして登録することで、ステップＳ３０５では、第１の実施形態と同一の処理を使用して縮小処理を行うことが可能となり、最終ページのページ・データを、前ページに収めた統合ページ・データとして作成することができる。
【００８６】
図１３は、本発明の第２の実施形態により提供されるプリント出力物の実施形態を示した図である。プリント出力物１２０は、本発明を適用せず、アプリケーションから送られてきたデータをそのままプリントさせた場合のプリント出力物の形態を示す。プリント出力物１２２は、本発明の第１の実施形態を適用し、２列に出力させるようにユーザが指令した場合に得られたプリント出力物である。プリント出力物１２２は、プリント出力枚数が１／２とされているものの、最終ページである２ページ目は、プリント割合が少なく、プリント用紙には無駄が多いといえる。このため、本発明では、ユーザによるページ統合指令を受け付けた場合、プレビュー配置データを作成後、最終ページに出力される統合ページ・データのプリント割合と、プリント領域との比を計算し、最終ページのプリント割合がしきい値Ｓｔｈ以上の場合に、１ページ少ないページ数で全体の統合ページ・データをプリントできるように指令する新たな縮小率ａ２を計算する。
【００８７】
その後、最終ページおよび前ページに含ませるように統合ページ・データを修正し、新たな修正率ａ３＝ａ×ａ２で全体を縮小し、プリントする。プリント出力物１２４は、本発明の第２の実施形態で与えられるプリント出力物の実施形態である。図１３に示すように、本発明の第２の実施形態で与えられたプリント出力物１２４は、全体の縮小率は高くなっているものの、プリント用紙はプリント出力物１２０に比較して１／４とされ、さらに、プリント出力物１２２に対してもさらにユーザによるドキュメントの認識性を向上させている。
【００８８】
Ｄ．プリント制御方法の第３の実装形態
【００８９】
図１４は、本発明のプリント制御方法の第３の実施の形態を示した図である。図１４に示した第３の実施形態は、最終ページの繰り込み処理を自動実行すると、ユーザが予期しない程度に縮小率が高くなってしまうことを防止する処理が追加されている。図１４に示した処理は、ステップＳ４００から開始し、ステップＳ４０１では図４に示したステップＳ１０１〜ステップＳ１１５の処理を実行する。ステップＳ４０２〜ステップＳ４０４では、ステップ３０２〜ステップＳ３０４と同一の処理を実行し、縮小率ａ３＝（ａ×ａ２）を計算する。ステップＳ４０５では、縮小率ａ（＝ａ３）が設定した縮小率のしきい値Ｄｔｈよりも小さく、限度以内であるか否かを判断する。縮小率ａが限度以内である場合（ｙｅｓ）には、ステップＳ４０６で、縮小率ａを使用し、同時に最終ページの繰り上げ処理を実行しステップＳ４０７のプリント処理を実行させて、処理を終了させる。
【００９０】
一方、ステップＳ４０５の判断でしきい値Ｄｔｈよりも縮小率が高いと判断した場合（ｎｏ）には、それまでに作成したプレビュー配置データおよび縮小率ａを廃棄し、ステップＳ４０９で描画処理部４２ｃがアプリケーションから取得したページ・データを記憶空間４０ｃから読み出して、処理をステップＳ４０７へと分岐させ、ページ統合を実行しない処理のままでプリント処理を実行させる。なお、第３の実施形態で使用する縮小率の判断は、図４に示した実施形態の縮小率ａ自体または図１０に示した実施形態での縮小率ａ２自体の縮小率を制限するためにも使用することができる。
【００９１】
図１５は、本発明の第３の実施形態で使用するプリント・ダイアログ１３０の実施形態を示した図である。図１５に示したプリント・ダイアログ１３０は、ページ統合、表示シーケンス指令、空白処理指令のためのＧＵＩ１３２、１３４、１３６、１４０およびプレビュー・ウィンドウ１３８を含んで構成される。
【００９２】
プレビュー・ウィンドウ１３８には、アプリケーションから送られた、ページ・データのユーザ指令に応じて作成されたページ・イメージがユーザに対して表示されている。一方、図１５に示したプリント・ダイアログ１３０には、さらに縮小率の上限値を指令することができるＧＵＩ１４２が提供されていて、ユーザは、キーボードまたはマウスなどから縮小率の上限値を設定することが可能とされている。ユーザが、縮小率の上限値を設定した後、ユーザが印刷／キャンセルを指令するボタン１４４をクリックするなどして描画処理部４２ｃおよび縮小処理部４２ｄに指令を発行することにより、ページ統合処理および繰り込み処理および縮小率制限処理が実行され、適切な縮小率のプリント出力物が提供される。
【００９３】
本発明の第３の実施形態では、情報処理装置１０は、それぞれの指令に対応した処理を実行して、ユーザに対し、認識性、プリント出力物の見栄え、プリント出力枚数、プリント用紙利用率が最適化されたプリント出力物を提供することができる。
【００９４】
本発明の上記機能は、Ｖｉｓｕａｌ  Ｃ、Ｃ＋＋、Ｖｉｓｕａｌ  Ｃ＋＋、Ｊａｖａ（登録商標）、Ｊａｖａ（登録商標）Ｂｅａｎｓ、Ｊａｖａ（登録商標）Ａｐｐｌｅｔ、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔ、Ｐｅｒｌ、Ｒｕｂｙなどのオブジェクト指向ブログラミング言語などで記述された装置実行可能なプログラムにより実現でき、装置可読な記録媒体に格納して頒布することができる。
【００９５】
これまで本発明を図面に示した実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、他の実施の形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【図面の簡単な説明】
【００９６】
【図１】本発明の情報処理装置のハードウェア構成を示した図。
【図２】本発明の情報処理装置が実装するソフトウェア構成を示す機能ブロック図。
【図３】ユーザがプリントを希望するドキュメントおよびページ・データのデータ構造を示した図。
【図４】本発明のプリント制御方法の第１の実施形態のフローチャート。
【図５】図４のプレビュー表示を実行する処理のフローチャート。
【図６】本発明で使用するプリント・ダイアログの実施形態を示した図。
【図７】本発明でプリンタ・ドライバにより生成され、記憶空間に格納されるページ・データおよびプレビュー配置データのデータ構造を示した図。
【図８】ページ統合処理の実施形態を説明した図。
【図９】本発明で与えられるプリント出力物の実施形態を、従来のプリンタ・ドライバを使用して出力させた場合の形態と比較して示した図。
【図１０】本発明のプリント制御方法の第２の実施形態の処理のフローチャート。
【図１１】本発明の図１０の処理を行うためのプリント・ダイアログの実施形態を示した図。
【図１２】本発明の第２の実施形態のステップＳ３０２〜ステップＳ３０５の処理を説明した図。
【図１３】本発明の第２の実施形態により提供されるプリント出力物の実施形態を示した図。
【図１４】本発明のプリント制御方法の第３の実施の形態を示した図。
【図１５】本発明の第３の実施形態で使用するプリント・ダイアログの実施形態を示した図。
【図１６】ドキュメントを、外部出力装置を使用してプリント出力物とした場合の従来例を示した図。
【符号の説明】
【００９７】
１０…情報処理装置、１２…ＣＰＵ、１４…ＲＯＭ、１６…ＲＡＭ、１８…ＧＡＣ、２０…ディスプレイ装置、２２…ＨＤＤ、２４…ローカル・プリンタ、２６…ＩＤＥ／ＳＣＳＩ、２８…ＵＳＢ、３０…ＩＥＥＥ１２９４、３２…ＮＩＣ、３４…ネットワーク・プリンタ、３６…ファクシミリ装置、３８…内部バス・バスブリッジ、４０…アプリケーション実行部、４２…プリンタ・ドライバ、４４…出力処理部、５０…ドキュメント、５２〜６２…ページ・データ、７０…プリント・ダイアログ、７２、７４、７６…ＧＵＩ、７８…プレビュー・ウィンドウ、８０…ボタン、８２…ページ・イメージ、８４…プリント出力物、８６…プレビュー配置、８８…統合後のプリント出力物、１００…プリント・ダイアログ、１０２〜１０８…ＧＵＩ、１１０…プレビュー・ウィンドウ、１１２…ボタン、１１４…ページ・データ、１１６…統合ページ・データ、１１８…統合ページ・データ、１２０〜１２４…プリント出力物、１３０…プリント・ダイアログ、１３２〜１３６、１４０、１４２…ＧＵＩ、１３８…プレビュー・ウィンドウ、１４４…ボタン
【図１】
2008052352.tif 000010
【図２】
2008052352.tif 000011
【図３】
2008052352.tif 000012
【図４】
2008052352.tif 000013
【図５】
2008052352.tif 000014
【図６】
2008052352.tif 000015
【図７】
2008052352.tif 000016
【図８】
2008052352.tif 000017
【図９】
2008052352.tif 000018
【図１０】
2008052352.tif 000019
【図１１】
2008052352.tif 000020
【図１２】
2008052352.tif 000021
【図１３】
2008052352.tif 000022
【図１４】
2008052352.tif 000023
【図１５】
2008052352.tif 000024
【図１６】
2008052352.tif 000025