(57)【要約】【課題】  プレビュー時に付加されたプレビュー固有の情報を含む文書をそのまま印刷するとユーザの意図しない文書が印刷される。【解決手段】  プレビュー制御部は、印刷指示に基づきプレビュー表示固有の描画命令を削除した文書データをスプールファイルに出力し、レイアウト処理部は、スプールファイルから文書データを入力し、入力された文書データを印刷設定情報に基づきレイアウト処理することなくプレビュー文書作成部に出力し、プレビュー文書作成部はレイアウト処理された文書データを印刷コマンド生成処理部に出力し、印刷コマンド生成処理部はレイアウト処理された文書データをプリンタが解釈可能な印刷コマンドに変換することを特徴とする。【選択図】  図２
2008186254.tif 000002
【特許請求の範囲】
【請求項１】
スプールファイルから文書データを入力するレイアウト処理手段と、
前記レイアウト処理手段から文書データを入力するプレビュー文書作成手段と、
前記プレビュー文書作成手段から文書データを入力する印刷コマンド生成処理手段と、
プレビュー用文書データに基づきプレビューを制御するプレビュー制御手段とを有し、
前記レイアウト処理手段は、プレビュー済みフラグが設定されている場合、スプールファイルから入力された文書データを印刷設定情報に基づきレイアウト処理することなく前記プレビュー文書作成手段に出力し、プレビュー済みフラグが設定されていない場合、印刷設定情報に基づきスプールファイルから入力された文書データのレイアウト処理を行い、レイアウト処理された文書データを前記プレビュー文書作成手段に出力し、
前記プレビュー文書作成手段は、プレビュー済みの場合またはプレビューが設定されていない場合、レイアウト処理された文書データを前記印刷コマンド生成処理手段に出力し、プレビュー済みでなくプレビューが設定されている場合、プレビュー済みフラグを設定するとともに、レイアウト処理された文書データに基づきプレビュー用文書データを作成し、
前記プレビュー制御手段は、印刷指示に基づきプレビュー表示固有の描画命令を削除したプレビュー済みフラグが設定された文書データを前記スプールファイルに出力し、
前記印刷コマンド生成処理手段は、レイアウト処理された文書データをプリンタが解釈可能な印刷コマンドに変換することを特徴とする情報処理装置。
【請求項２】
スプールファイルから文書データを入力するレイアウト処理手段と、
前記レイアウト処理手段から文書データを入力するプレビュー文書作成手段と、
前記プレビュー文書作成手段から文書データを入力する印刷コマンド生成処理手段と、
プレビュー用文書データに基づきプレビューを制御するプレビュー制御手段とを有し、
前記レイアウト処理手段は、プレビュー済みフラグが設定されている場合、スプールファイルから入力された文書データを印刷設定情報に基づきレイアウト処理することなく前記プレビュー文書作成手段に出力し、プレビュー済みフラグが設定されていない場合、印刷設定情報に基づきスプールファイルから入力された文書データのレイアウト処理を行い、レイアウト処理された文書データを前記プレビュー文書作成手段に出力し、
前記プレビュー文書作成手段は、プレビュー済みの場合またはプレビューが設定されていない場合、レイアウト処理された文書データを前記印刷コマンド生成処理手段に出力し、プレビュー済みでなくプレビューが設定されている場合、プレビュー済みフラグを設定するとともに、レイアウト処理された文書データに基づきプレビュー用文書データを作成し、
前記プレビュー制御手段は、印刷指示に基づきプレビュー済みフラグが設定された文書データを前記スプールファイルに出力し、
前記印刷コマンド生成処理手段は、レイアウト処理された文書データのうちプレビュー表示固有の描画命令は印刷コマンドに変換せず、レイアウト処理された文書データのうちプレビュー表示固有の描画命令以外の描画命令をプリンタが解釈可能な印刷コマンドに変換することを特徴とする情報処理装置。
【請求項３】
前記プレビュー表示固有の描画命令は、領域を表示するための描画命令を含むことを特徴する請求項１または２記載の情報処理装置。
【請求項４】
前記プレビュー制御手段は、プレビュー表示固有の描画命令を付加する付加手段を有することを特徴とする請求項１または２記載の情報処理装置。
【請求項５】
プレビュー時に設定変更を行う設定変更手段を有し、
前記設定変更手段は、文書データの設定により変更内容が異なることを特徴とする請求項１、または２記載の情報処理装置。
【請求項６】
スプールファイルから文書データを入力するレイアウト処理手段と、前記レイアウト処理手段から文書データを入力するプレビュー文書作成手段と、前記プレビュー文書作成手段から文書データを入力する印刷コマンド生成処理手段と、
プレビュー用文書データに基づきプレビューを制御するプレビュー制御手段とを有する情報処理装置で実行される情報処理方法であって、
前記レイアウト処理手段は、プレビュー済みフラグが設定されている場合、スプールファイルから入力された文書データを印刷設定情報に基づきレイアウト処理することなく前記プレビュー文書作成手段に出力し、プレビュー済みフラグが設定されていない場合、印刷設定情報に基づきスプールファイルから入力された文書データのレイアウト処理を行い、レイアウト処理された文書データを前記プレビュー文書作成手段に出力し、
前記プレビュー文書作成手段は、プレビュー済みの場合またはプレビューが設定されていない場合、レイアウト処理された文書データを前記印刷コマンド生成処理手段に出力し、プレビュー済みでなくプレビューが設定されている場合、プレビュー済みフラグを設定するとともに、レイアウト処理された文書データに基づきプレビュー用文書データを作成し、
前記プレビュー制御手段は、印刷指示に基づきプレビュー表示固有の描画命令を削除したプレビュー済みフラグが設定された文書データを前記スプールファイルに出力し、
前記印刷コマンド生成処理手段は、レイアウト処理された文書データをプリンタが解釈可能な印刷コマンドに変換することを特徴とする情報処理方法。
【請求項７】
スプールファイルから文書データを入力するレイアウト処理手段と、前記レイアウト処理手段から文書データを入力するプレビュー文書作成手段と、前記プレビュー文書作成手段から文書データを入力する印刷コマンド生成処理手段と、プレビュー用文書データに基づきプレビューを制御するプレビュー制御手段とを有する情報処理方法であって、
前記レイアウト処理手段は、プレビュー済みフラグが設定されている場合、スプールファイルから入力された文書データを印刷設定情報に基づきレイアウト処理することなく前記プレビュー文書作成手段に出力し、プレビュー済みフラグが設定されていない場合、印刷設定情報に基づきスプールファイルから入力された文書データのレイアウト処理を行い、レイアウト処理された文書データを前記プレビュー文書作成手段に出力し、
前記プレビュー文書作成手段は、プレビュー済みの場合またはプレビューが設定されていない場合、レイアウト処理された文書データを前記印刷コマンド生成処理手段に出力し、プレビュー済みでなくプレビューが設定されている場合、プレビュー済みフラグを設定するとともに、レイアウト処理された文書データに基づきプレビュー用文書データを作成し、
前記プレビュー制御手段は、印刷指示に基づきプレビュー済みフラグが設定された文書データを前記スプールファイルに出力し、
前記印刷コマンド生成処理手段は、レイアウト処理された文書データのうちプレビュー表示固有の描画命令は印刷コマンドに変換せず、レイアウト処理された文書データのうちプレビュー表示固有の描画命令以外の描画命令をプリンタが解釈可能な印刷コマンドに変換することを特徴とする情報処理方法。
【請求項８】
前記プレビュー表示固有の描画命令は、領域を表示するための描画命令を含むことを特徴する請求項６または７記載の情報処理方法。
【請求項９】
前記プレビュー制御手段は、プレビュー表示固有の描画命令を付加することを特徴とする請求項６または７記載の情報処理方法。
【請求項１０】
プレビュー時に設定変更を行う設定変更ステップを有し、
前記設定変更ステップは、文書データの設定により変更内容が異なることを特徴とする請求項６、または７記載の情報処理方法。
【請求項１１】
スプールファイルから文書データを入力するレイアウト処理ステップと、
前記レイアウト処理ステップから文書データを入力するプレビュー文書作成ステップと、
前記プレビュー文書作成ステップから文書データを入力する印刷コマンド生成処理ステップと、
プレビュー用文書データに基づきプレビューを制御するプレビュー制御ステップとをコンピュータに実行させるプログラムであって、
前記レイアウト処理ステップは、プレビュー済みフラグが設定されている場合、スプールファイルから入力された文書データを印刷設定情報に基づきレイアウト処理することなく前記プレビュー文書作成ステップに出力し、プレビュー済みフラグが設定されていない場合、印刷設定情報に基づきスプールファイルから入力された文書データのレイアウト処理を行い、レイアウト処理された文書データを前記プレビュー文書作成ステップに出力し、
前記プレビュー文書作成ステップは、プレビュー済みの場合またはプレビューが設定されていない場合、レイアウト処理された文書データを前記印刷コマンド生成処理ステップに出力し、プレビュー済みでなくプレビューが設定されている場合、プレビュー済みフラグを設定するとともに、レイアウト処理された文書データに基づきプレビュー用文書データを作成し、
前記プレビュー制御ステップは、印刷指示に基づきプレビュー表示固有の描画命令を削除したプレビュー済みフラグが設定された文書データを前記スプールファイルに出力し、
前記印刷コマンド生成処理ステップは、レイアウト処理された文書データをプリンタが解釈可能な印刷コマンドに変換することを特徴とするプログラム。
【請求項１２】
スプールファイルから文書データを入力するレイアウト処理ステップと、
前記レイアウト処理ステップから文書データを入力するプレビュー文書作成ステップと、
前記プレビュー文書作成ステップから文書データを入力する印刷コマンド生成処理ステップと、
プレビュー用文書データに基づきプレビューを制御するプレビュー制御ステップとをコンピュータに実行させるプログラムであって、
前記レイアウト処理ステップは、プレビュー済みフラグが設定されている場合、スプールファイルから入力された文書データを印刷設定情報に基づきレイアウト処理することなく前記プレビュー文書作成ステップに出力し、プレビュー済みフラグが設定されていない場合、印刷設定情報に基づきスプールファイルから入力された文書データのレイアウト処理を行い、レイアウト処理された文書データを前記プレビュー文書作成ステップに出力し、
前記プレビュー文書作成ステップは、プレビュー済みの場合またはプレビューが設定されていない場合、レイアウト処理された文書データを前記印刷コマンド生成処理ステップに出力し、プレビュー済みでなくプレビューが設定されている場合、プレビュー済みフラグを設定するとともに、レイアウト処理された文書データに基づきプレビュー用文書データを作成し、
前記プレビュー制御ステップは、印刷指示に基づきプレビュー済みフラグが設定された文書データを前記スプールファイルに出力し、
前記印刷コマンド生成処理ステップは、レイアウト処理された文書データのうちプレビュー表示固有の描画命令は印刷コマンドに変換せず、レイアウト処理された文書データのうちプレビュー表示固有の描画命令以外の描画命令をプリンタが解釈可能な印刷コマンドに変換することを特徴とするプログラム。
【請求項１３】
前記プレビュー表示固有の描画命令は、領域を表示するための描画命令を含むことを特徴する請求項１１または１２記載のプログラム。
【請求項１４】
前記プレビュー制御ステップは、プレビュー表示固有の描画命令を付加する付加ステップを有することを特徴とする請求項１１または１２記載のプログラム。
【請求項１５】
プレビュー時に設定変更を行う設定変更ステップを有し、
前記設定変更ステップは、文書データの設定により変更内容が異なることを特徴とする請求項１１、または１２記載のプログラム。
【請求項１６】
請求項１１乃至１５いずれかに記載のプログラムを記憶した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば印刷処理を行う前に、印刷イメージをユーザが認識可能に表示する、いわゆるプレビュー機能等を有する情報処理装置、情報処理方法、プログラム、及び記憶媒体に関する。
【背景技術】
【０００２】
従来より、印刷前に印刷イメージを取得して画面に表示する技術が提案されている。
【０００３】
このような技術の一例として、プリンタが解釈可能な印刷コマンドをプリンタに接続された計算機（データ処理装置）によって解析し、その計算機でＣＭＹＫプレーン毎に展開することによって印刷イメージを生成する手法が知られている。また、プリンタに接続された計算機から当該プリンタに印刷コマンドを送信した後、その計算機は当該プリンタ内部で作成された印刷イメージを受信し、受信した印刷イメージに基づいて表示を行なう手法が一般に知られている。
【０００４】
ここで、オペレーティングシステム（ＯＳ）としてＭｉｃｒｏｓｏｆｔ社のＷｉｎｄｏｗｓ（登録商標）を搭載した計算機を用いた印刷システムにおいて、アプリケーションプログラム（アプリケーション）等で生成された印刷データは、ＯＳ標準のデータ形式でスプールファイルに格納される。ＯＳは印刷データを印刷するためにプリンタドライバを呼び出す。そしてプリンタドライバが、スプールファイルに格納された印刷データを読み取り、イメージ生成処理部により印刷イメージを作成し、さらにプリンタが解釈可能な印刷コマンドに変換する。印刷コマンドはプリンタに送信され、プリンタは印刷コマンドを解釈し、記録媒体に像を形成することで印刷処理が実行される。
【０００５】
この印刷システムにおいてプレビュー機能を提供するために、プリンタドライバは印刷処理を開始した時に、印刷イメージを表示するプレビューアを実行する。そして画像生成部はプレビュー用の印刷イメージを作成し、プレビューアは当該プレビュー用の印刷イメージを表示する。つまり、プリンタドライバにおいて、印刷イメージを作成する当該画像生成部と、印刷イメージを表示する当該プレビューアとが協調することにより、プレビュー機能が実現される（特許文献１参照）。
【０００６】
また、印刷ジョブを結合する機能を有する印刷システムにおけるプレビューでは、それぞれの印刷ジョブのレイアウトを考慮したプレビューを行える仕組みが考案されている。印刷すべきデータを中間コード形式に変換した印刷ジョブを結合して１つの結合ジョブを生成する際に、結合ジョブ内のそれぞれの印刷ジョブのレイアウト情報を個別に保存する。結合ジョブのプレビューを表示する際には、プレビューを行うページに対応するレイアウト情報を参照することで、結合ジョブ内のそれぞれの印刷ジョブのレイアウトを再現する。また、中間データの他にレイアウト情報を持つことで、結合ジョブ内のそれぞれの印刷ジョブのレイアウト情報を、同一結合ジョブ内の他の印刷ジョブに影響を与えることなくプレビュー中に変更することができる（特許文献２参照）。
【０００７】
上記に加え、画像生成部が生成したプレビュー用の印刷イメージに対し、プレビューア自身が加工を施してからプレビュー表示を行うことによって、ＣＤ−Ｒ等の円盤状の記録媒体や複雑な短形であるメディアに印刷を行うことがある。その場合等に、事前にプレビューにて印刷内容を確認するに際し、メディアの領域の内外に印字される領域をより識別できるようにする手段（ＣＤ−Ｒ領域表示機能と称す）が知られている（特許文献３参照）。
【０００８】
また、プレビュー内容と並行して印刷設定の内容を確認する手法、ならびに、プレビュー表示中に印刷設定の間違いに気づいた場合に、プレビュー表示中に印刷設定を変更し実印刷を継続できる手段（印刷設定変更機能と称す）が知られている（特許文献４参照）。
【特許文献１】特開２００４−１０２６１８号公報
【特許文献２】特開２００１−１３００８２号公報
【特許文献３】特開２００４−１１０８０７号公報
【特許文献４】特開２００６−０１１８４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
ところで、前記のような従来の技術には次のような解決すべき課題があった。
前記従来例の第一の手法では、プリンタドライバがＯＳに呼び出されている間にプレビューの実行が可能であった。ＯＳがプリンタドライバを呼び出し印刷処理を行うのは、印刷キュー中の先頭の印刷ジョブを対象としている。通常、印刷処理の対象となる印刷ジョブは印刷キューにつき一つのみとなる。従って、プレビュー機能を実行している間は、他の印刷ジョブは印刷対象にならない。このため印刷キュー中に印刷処理中の印刷ジョブがある場合、他の印刷ジョブのプレビュー機能を実行できない欠点がある。また、印刷処理中の印刷ジョブにおいてプレビュー機能を実行している際、少なくともプレビュー機能を実行しているジョブの処理が終了するまで、同一印刷キュー中の他のジョブは印刷されない欠点がある。また、同ＯＳを用いれば複数のユーザが同時に印刷ジョブを発行することがあるにも関らず、複数のユーザが同時にプレビュー機能を利用できないことが問題である。
【００１０】
レイアウト処理の視点では、プレビュー用の印刷イメージを作成する際にレイアウト処理を行い、さらにその時点では上記印刷ジョブは中間データなので、プレビュー画面を表示させるためには、ビットマップ化処理を行わなければならない。このように画面表示用にビットマップ化処理を行ったプレビュー用のビットマップデータは、実際に印刷処理を続行させるにおいて、必ずしもプリンタが必要とするビットマップデータに適合していないので、流用することができない。すなわち、実際に印刷を行うための印刷イメージを作成するにあたってはレイアウト処理を再度行う必要がある。つまり同一のレイアウト処理を印刷イメージを作成する度に繰り返し行う必要があり、同一処理を重複して行う問題がある。
【００１１】
前記従来例の第二の手法では、複数の印刷ジョブを結合するにあたりレイアウト情報を別途保存するため、プレビュー機能で印刷イメージを表示する際にレイアウト処理が必要となる。また、プレビュー中にレイアウト情報を変更できることから、実際にプリンタで印刷する際にもレイアウト処理が必要になる。つまり、プレビュー中にレイアウト情報が変更されなかった場合は、同一のレイアウト処理をプレビュー時と実印刷時に繰り返し行う必要があり、同一処理を重複して行う問題がある。
【００１２】
本発明は上記従来の問題点に鑑み、同一のレイアウト処理を重複して行わないことで効率的に処理を行う、プレビュー機能を有する情報処理装置を提供することを目的とする。また、プレビュー時に付加されたプレビュー固有の情報は印刷しない情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記目的を達成するために、本発明の情報処理装置は、
スプールファイルから文書データを入力するレイアウト処理手段と、
前記レイアウト処理手段から文書データを入力するプレビュー文書作成手段と、
前記プレビュー文書作成手段から文書データを入力する印刷コマンド生成処理手段と、
プレビュー用文書データに基づきプレビューを制御するプレビュー制御手段とを有し、
前記レイアウト処理手段は、プレビュー済みフラグが設定されている場合、スプールファイルから入力された文書データを印刷設定情報に基づきレイアウト処理することなく前記プレビュー文書作成手段に出力し、プレビュー済みフラグが設定されていない場合、印刷設定情報に基づきスプールファイルから入力された文書データのレイアウト処理を行い、レイアウト処理された文書データを前記プレビュー文書作成手段に出力し、
前記プレビュー文書作成手段は、プレビュー済みの場合またはプレビューが設定されていない場合、レイアウト処理された文書データを前記印刷コマンド生成処理手段に出力し、プレビュー済みでなくプレビューが設定されている場合、プレビュー済みフラグを設定するとともに、レイアウト処理された文書データに基づきプレビュー用文書データを作成し、
前記プレビュー制御手段は、印刷指示に基づきプレビュー表示固有の描画命令を削除したプレビュー済みフラグが設定された文書データを前記スプールファイルに出力し、
前記印刷コマンド生成処理手段は、レイアウト処理された文書データをプリンタが解釈可能な印刷コマンドに変換することを特徴とする。
【００１４】
また、本発明の情報処理装置は、
スプールファイルから文書データを入力するレイアウト処理手段と、
前記レイアウト処理手段から文書データを入力するプレビュー文書作成手段と、
前記プレビュー文書作成手段から文書データを入力する印刷コマンド生成処理手段と、
プレビュー用文書データに基づきプレビューを制御するプレビュー制御手段とを有し、
前記レイアウト処理手段は、プレビュー済みフラグが設定されている場合、スプールファイルから入力された文書データを印刷設定情報に基づきレイアウト処理することなく前記プレビュー文書作成手段に出力し、プレビュー済みフラグが設定されていない場合、印刷設定情報に基づきスプールファイルから入力された文書データのレイアウト処理を行い、レイアウト処理された文書データを前記プレビュー文書作成手段に出力し、
前記プレビュー文書作成手段は、プレビュー済みの場合またはプレビューが設定されていない場合、レイアウト処理された文書データを前記印刷コマンド生成処理手段に出力し、プレビュー済みでなくプレビューが設定されている場合、プレビュー済みフラグを設定するとともに、レイアウト処理された文書データに基づきプレビュー用文書データを作成し、
前記プレビュー制御手段は、印刷指示に基づきプレビュー済みフラグが設定された文書データを前記スプールファイルに出力し、
前記印刷コマンド生成処理手段は、レイアウト処理された文書データのうちプレビュー表示固有の描画命令は印刷コマンドに変換せず、レイアウト処理された文書データのうちプレビュー表示固有の描画命令以外の描画命令をプリンタが解釈可能な印刷コマンドに変換することを特徴とする。
【発明の効果】
【００１５】
上記構成により本発明によればプレビューアから印刷開始を指示してもレイアウト処理は１回しか行わない為、コンピュータの負荷が軽減する効果が得られる。また、プレビュー時に付加されたプレビュー固有の情報を印刷させない情報処理装置を提供できる。
【発明を実施するための最良の形態】
【００１６】
以下、図面に示す実施例に基づき本発明を詳細に説明する。尚、本文中のＸＰＳとはＸＭＬ  Ｐａｐｅｒ  Ｓｐｅｃｉｆｉｃａｔｉｏｎの略で、Ｍｉｃｒｏｓｏｆｔ社が開発したオープン規格の電子文書フォーマットの一つである。
【００１７】
＜ＸＰＳ文書の構成＞
本文の理解を容易にするため、まずＸＰＳについて簡単に説明する。ＸＰＳ文書はＦｉｘｅｄＤｏｃｕｍｅｎｔＳｅｑｕｅｎｃｅ（以下ＦＤＳ）をルートとするツリー構造になっている。ＦＤＳは複数のＦｉｘｅｄＤｏｃｕｍｅｎｔ（以下ＦＤ）を持ち、ＦＤは複数のＦｉｘｅｄＰａｇｅ（以下ＦＰ）を持つ。ＦＤＳとＦＤとＦＰのそれぞれは、ＸＰＳパートと呼ばれることがある。ＦＰは文書のページの内容をＸＭＬ形式で記述しており、実際に表示または印刷される内容を含んでいる。ＦＰのページ内容で使用されるフォントや画像等の資源は複数のＦＰで共有することができる。また、ＦＤＳとＦＤとＦＰははそれぞれ印刷設定をＰｒｉｎｔＴｉｃｋｅｔ（以下ＰＴ）で持つことができる。ＰＴはＸＰＳ文書を印刷する際の印刷設定をＸＭＬ形式で記述したものである。ここで各ＦＰを印刷する際に使用する印刷設定は、ＦＤＳのＰＴと、印刷対象ＦＰの親ＦＤのＰＴと、印刷対象ＦＰのＰＴをマージしたＰＴとなる。
【００１８】
図５はＸＰＳ文書の論理構造を示したブロック図の一例である。ＸＰＳ文書５０１の論理構造はＦＤＳ５０３がルートとなるツリー構造となっている。ＦＤＳ５０３は子としてＦＤ５１１とＦＤ５１３を有する。ＦＤ５１１は子としてＦＰ５２１とＦＰ５２３を有する。ＦＤ５１３は子としてＦＰ５２５を有する。印刷設定を記述したＰＴについては、ＦＤＳ５０３がＰＴ５３１を、ＦＤ５１１がＰＴ５３３を、ＦＰ５２１がＰＴ５３５を、ＦＤ５１３がＰＴ５３７をそれぞれ保持している。ＦＰ５２３とＦＰ５２５はＰＴを保持していない。また、ＦＰ５２１とＦＰ５２３がフォントや画像等の資源５４１を共有しており、ＦＰ５２５はフォントや画像等の資源５４３を利用している。ここで例えばＦＰ５２１を印刷する際に使用するＰＴは、ＰＴ５３１とＰＴ５３３とＰＴ５３５をマージしたＰＴとなる。
【００１９】
以上説明したように、ＸＰＳ文書は論理的にＸＰＳパートという概念を用いると理解が容易になる。ただし、ＸＰＳ文書自体はバイト列（ストリーム）として取り扱いが可能である為、ＸＰＳ文書内部のデータを指す場合はＸＰＳデータという言葉を用いることもある。従って本文においてもＸＰＳパートとＸＰＳデータという言葉を用いて実施例を説明する。
【００２０】
＜印刷システムの構成＞
図１は本発明の実施の一形態に係る印刷システムの構成を示すブロック図である。プリンタ１０１は、画像形成を行うインクジェット方式のプリンタであり、後述するデータ処理装置１０２で生成された印刷コマンドに基づいて記録媒体１００に画像の形成を行う。プリンタの種類については特に問わないが、ここではインクジェット方式のカラープリンタを想定している。データ処理装置１０２は、アプリケーションが印刷ジョブを作成し、プリンタドライバが印刷ジョブのスプールデータから、接続されたプリンタ１０１の印刷動作を制御する印刷コマンドの生成を行う。本実施形態ではデータ処理装置１０２としてパーソナルコンピュータを用いている。印刷の設定に関するユーザからの指示や入力を受ける役割も果たす。データ処理装置１０２は、各種機能ブロック１３０〜１３５、１４０〜１４３によって構成される。また、データ処理装置１０２には、データ処理装置１０２を制御するＯＳが組み込まれており、このＯＳ上で各種機能ブロックが動作する。通信インタフェース１０３は、データ処理装置１０２とプリンタ１０１を接続する通信インタフェースである。本実施形態ではシリアルインタフェースであるＵＳＢを用いているが、この他に、ＩＥＥＥ１３９４、Ｅｔｈｅｒｎｅｔ（登録商標）、ＩｒＤＡ、ＩＥＥＥ８０２．１１、電力線などのシリアルインタフェースや、セントロニクス、ＳＣＳＩなどのパラレルインタフェースを利用することもできる。通信を実現するものであれば有線／無線を問わずどのようなインタフェースであっても構わない。このように、本実施形態における印刷システムとは、単体の装置ではなく、データ処理装置１０２と画像形成を行うプリンタ１０１とが特定の双方向インタフェースで接続された構成をとっている。しかしながら、この例に限られることなく、このようなデータ処理装置とプリンタの機能が一体となった装置一体型の印刷システムであってもよい。尚、プリンタ１０１及びデータ処理装置１０２とも本実施形態の特徴を説明する上で特に必要ないと思われる機能については省略する。
【００２１】
中央制御部１４１は、データ処理装置１０２の各種機能を制御し、ＣＰＵの持つ機能がこれに該当する。入力操作部１４２は、ユーザの意図を印刷設定に反映させるための各種入力機器から構成される。設定情報通知部１４３は、印刷設定をユーザに通知する。通知方法としては、モニタなどの表示装置を使用する場合や音声による通知などが考えられる。Ｉ／Ｆ制御部１４０は、データ処理装置１０２のインタフェース機能を司る。Ｉ／Ｆ制御部１４０はＵＳＢのホスト側のコントローラによって構成され、ＵＳＢホストとしての機能を有する。ＵＳＢホストとしての機能の一部はＯＳやドライバなどソフトウェアによっても構成される。記憶部１４４はＯＳやアプリケーションプログラムやプリンタドライバの命令コードを格納したり、ソフトウェアが動作するにあたり一時的にデータを保存・読込みするのに使用される。記憶部１４４は例えばハードディスクドライブや半導体メモリなどで構成される。プリンタドライバ１３０は、印刷のための各種設定や印刷データの生成及びプリンタの制御をデータ処理装置１０２上で行うためのソフトウェアである。中央制御部１４１によりプリンタドライバのプログラムが実行されて、印刷設定処理部１３１や、レイアウト処理部とプレビュー文書作成部と印刷コマンド生成処理部を含む印刷コマンド生成部１３４、データ通信処理部１３３などの機能が実現される。印刷設定処理部１３１は、用紙の設定や印刷品位の設定などを含む各種印刷設定を行う。印刷設定処理部１３１は、ユーザからの指示や入力を受け付け、設定された内容を表示もしくは通知する機能を有する。印刷コマンド生成部１３４では、まず、レイアウト成処理部においてアプリケーションにより作成された印刷ジョブのページのレイアウト処理を行う。その後、プレビュー文書作成部において印刷設定に応じプレビュー用文書を作成する。そして、印刷コマンド変換処理部においてレイアウト処理後の印刷データを印刷コマンドに変換する。印刷コマンド生成部１３４で作成された印刷コマンドは、データ通信処理部１３３を介してＩ／Ｆ制御部１４０に送られ、プリンタ１０１へ印刷コマンドが送られる。プレビュー制御部１３５は、プレビュー文書作成部によって作成されるプレビュー用文書を用いて、プレビュー機能をユーザに提供する。ここでプレビュー機能とはプレビュー用文書を用いて印刷イメージを情報通知部１４３を介して表示し、ユーザからの指示を入力操作部１４２を介して取得し、表示する印刷イメージを切り替えたり、印刷を続行したり、印刷をキャンセルしたりする機能のことを指す。
【００２２】
＜プリンタドライバの動作＞
図２は、本発明におけるプリンタドライバの実施形態を説明するために図１の印刷システムをＯＳの印刷サポート機能とプリンタドライバを中心に概念的に表したブロック図である。図２において、本発明に関るモジュールは、印刷設定処理部の機能を有するユーザインタフェースモジュール２１１と、印刷コマンド生成部の機能を有するフィルターパイプライン２０７である。ここでフィルターパイプライン２０７は、レイアウトフィルター２１３と、プレビューフィルター２１５と、印刷コマンドフィルター２１７で構成される。なお、レイアウトフィルター２１３はＸＰＳデータのページをレイアウト処理する機能を有する。プレビューフィルター２１５はプレビュー機能を提供するためのフィルターである。印刷コマンドフィルター２１７はＸＰＳデータをプリンタが解釈可能な印刷コマンドに変換する機能を有する。
【００２３】
ここでフィルターとは、一般的に入力されたデータをもとに、加工、変換、無変換、生成等の工程を介して、何らかのデータを出力する機能を有するプログラムのことを称する。
【００２４】
図２における印刷システムでは、アプリケーション２０１が作成した文書の各ページの印刷データは、ＯＳの印刷サポート機能２０３を通じてＸＰＳスプールファイル２０５に一時的に蓄えられる。そして、これをプリンタドライバのフィルターパイプライン２０７がプリンタが解釈可能な印刷コマンドに変換してプリンタ２３１に供給して印刷するよう構成されている。
【００２５】
ユーザインタフェースモジュール２１１は、一般に印刷に使用する用紙サイズや印刷方向、その他の属性を設定する機能を提供する。同時に本発明におけるユーザインタフェースモジュール２１１は、プリンタによる印刷動作を開始する前に印刷イメージを表示するプレビューを設定する機能を有する。ユーザインタフェースモジュール２１１は、複数の印刷設定項目の設定値が格納された印刷設定情報をアプリケーション２０１に返却する。ユーザインタフェースモジュール２１１が提供する印刷設定ダイアログの一例については図３を用いて後述する。
【００２６】
アプリケーション２０１は作成した文書の印刷にあたり、ＯＳの印刷サポート機能２０３に対して、印刷開始や印刷終了を通知したり、印刷設定を行うためにユーザインタフェースモジュール２１１から返却された印刷設定情報を通知したり、文書の各ページの描画開始や描画終了を通知する。ＯＳの印刷サポート機能２０３は、アプリケーションが描画した内容や印刷設定情報をＸＰＳスプールファイル２０５に格納する。
【００２７】
フィルターパイプライン２０７は一つ以上のフィルターで構成されており、印刷時にＸＰＳスプールファイルから印刷設定情報とＸＰＳパートとを読込み、プリンタが解釈可能な印刷コマンドに変換してプリンタ２３１に供給し、印刷を行う機能を有する。各フィルターはスプールされた印刷ジョブをデスプール際にＯＳの印刷サポート機能から呼び出される。スプールされたＸＰＳデータはフィルターパイプライン２０７の各フィルターを通過するＸＰＳデータのまま内容が編集され、或いはドライバ独自のデータ形式に変換され、最終的にプリンタが解釈可能な印刷コマンドに変換される。印刷ジョブのＸＰＳデータを全て処理し終えた場合、或いは、印刷ジョブがキャンセルされた場合は、フィルターパイプライン２０７の各フィルターは動作を終了する。本実施形態におけるフィルターパイプライン２０７はレイアウト処理部であるレイアウトフィルター２１３と、プレビュー文書作成部であるプレビューフィルター２１５と、印刷コマンド変換部である印刷コマンドフィルター２１７で構成される。
【００２８】
レイアウトフィルター２１３は、ＸＰＳスプールファイル２０５に格納されたＸＰＳデータを入力とし、印刷設定情報に基づきページのレイアウト処理を行い、レイアウト済みのＸＰＳデータを出力する機能を有する。ただし、印刷設定情報にレイアウト設定がなされていない場合や、プレビュー済フラグが格納されている場合は、入力のＸＰＳデータをそのまま出力する。本実施例におけるレイアウト処理とは例えば複数のページを一つの用紙面に印刷するＮ−ｕｐ印刷や、一つのページを複数の用紙面に印刷するポスター印刷等を含む。
【００２９】
プレビューフィルター２１５は、レイアウトフィルター２１３の出力を入力とし、印刷設定情報に基づきユーザにプレビュー機能を提供する。ただし、印刷設定情報のプレビュー設定がＯＦＦである場合や、プレビュー済フラグが格納されている場合は、入力のＸＰＳデータをそのまま出力する。印刷設定情報にプレビュー済フラグが格納されていなく、かつ、プレビュー設定がＯＮである場合、プレビューフィルター２１５はＦＤＳの印刷設定情報であるＰＴにプレビュー済フラグを格納する。続いてプレビュー制御モジュール２１９を起動し、プレビュー用ＸＰＳ文書２２１を用意する。プレビューフィルター２１５は、プレビュー用ＸＰＳ文書２２１にＦＤＳを格納した後、入力のＸＰＳパートをキャッシュすると共にプレビュー用ＸＰＳ文書２２１に格納していく。入力の最後のＸＰＳパートを処理する前に、プレビュー制御モジュール２１９から印刷続行の通知を受けた場合は、ＦＤＳとキャッシュしたＸＰＳパートを出力し、残りのＸＰＳパートを入力から取得し、そのまま出力する。また、プレビューフィルター２１５は、プレビュー用ＸＰＳ文書２２１を完成させるとともに、各フィルターの処理を終了させる。
【００３０】
印刷コマンドフィルター２１７はプレビューフィルター２１５の出力を入力とし、印刷設定情報に従い、ＸＰＳデータをプリンタが解釈可能な印刷コマンドに変換し出力する機能を有する。印刷コマンドフィルター２１７が入力のＸＰＳデータを一度イメージデータに変換する場合、一般的にレンダーフィルターと呼ばれる。レンダーフィルターはインクジェットプリンタに代表される廉価なラスタープリンタ用のプリンタドライバにおいて多く見られる。印刷コマンドフィルター２１７がレンダーフィルターとして動作する場合は、入力のＸＰＳデータを一度イメージデータに変換する。その後、色空間の変換や二値化等の画像処理の過程を経て、ラスタープリンタが解釈可能な印刷コマンドに変換される。ページプリンタに代表される高機能なプリンタにおいて、プリンタが解釈できる印刷コマンドの種類にＸＰＳが含まれるならば、印刷コマンドフィルター２１７は入力のＸＰＳデータを編集しＸＰＳデータを出力する。印刷コマンドフィルター２１７にて処理する必要がなければ、入力のＸＰＳデータをそのまま出力するか、印刷コマンドフィルター２１７はプリンタドライバに含めなくても良いことは言うまでもない。
【００３１】
出力デバイスであるプリンタ２３１は、フィルターパイプライン２０７で生成された印刷コマンドを解釈し、可視画像を印刷用紙に対して形成する機能を持つ。印刷用紙２４１で図示される印刷結果の例は、レイアウトフィルター２１３が２−ｕｐの処理を行った場合を示している。
【００３２】
ここで２−ｕｐ印刷とは、ＸＰＳスプールファイル２０５に格納されている２つのページを縮小し、ユーザが見やすいように同一用紙面に配置したページを印刷することである。同様にＮ個のページを縮小し、同一用紙面に配置すればＮ−ｕｐ印刷となる。従ってＮ−ｕｐのレイアウト処理によって作成されたレイアウト済みのページには、ＸＰＳスプールファイル２０５に格納されていた複数のページの内容に関するＸＭＬ記述を含むことになる。例えばＸＰＳスプールファイル２０５に格納されているページの内容に関するＸＭＬ記述のサイズが一定だとすると、２−ｕｐのレイアウト処理後のページの内容に関するＸＭＬ記述のサイズは約２倍となる。同様にＮ−ｕｐのレイアウト処理後のページの内容に関するＸＭＬ記述のサイズは約Ｎ倍となる。従ってＸＰＳスプールファイル２０５に格納されているページの内容が複雑な場合、ページの内容のＸＭＬ記述のサイズが大きく成る為、レイアウト処理に要するコストが増加する。また、Ｎ−ｕｐの配置するページ数（Ｎ）が多くなるほどレイアウト処理に要するコストが増加する。
【００３３】
プレビュー制御モジュール２１９は、プレビュー用ＸＰＳ文書２２１を読込み、ユーザにプレビューを提供する機能を有する。プレビュー制御モジュール２１９はユーザにプレビュー用のユーザインタフェースを提供し、印刷イメージを表示したり、ユーザの指示に従い表示するページの印刷イメージを切り替えたり、印刷を続行したり、印刷を中断したりする。プレビューフィルター２１５がプレビュー用ＸＰＳ文書２２１にＸＰＳデータを書き込んでいる間に印刷開始がユーザに指示された場合、プレビュー制御モジュール２１９はプレビューフィルター２１５に印刷続行を通知し終了する。プレビューフィルター２１５がプレビュー用ＸＰＳ文書２２１にＸＰＳデータを書き込んでいる間に印刷キャンセルがユーザに指示された場合、印刷ジョブのキャンセルを行い終了する。プレビュー用ＸＰＳ文書２２１が完成した後に印刷開始がユーザに指示された場合、プレビュー用ＸＰＳ文書２２１のデータを用い新規の印刷ジョブを作成し終了する。プレビュー用ＸＰＳ文書２２１が完成した後に印刷キャンセルがユーザに指示された場合は終了する。プレビュー制御モジュール２１９が終了する際にはプレビュー用ＸＰＳ文書２２１を削除する。プレビュー制御モジュール２１９が提供するプレビューウィンドウについては図４を用いて後述する。
【００３４】
ここで、図２を用いてプレビュー設定がＯＮの２−ｕｐ印刷を行う場合について説明する。アプリケーション２０１はＯＳの印刷サポート機能２０３を介しユーザインタフェースモジュール２１１の印刷設定機能を利用する。印刷設定情報としてプレビュー設定をＯＮに設定し、レイアウト設定を２−ｕｐに設定する。アプリケーション２０１は取得した印刷設定情報を用いて、複数ページからなる文書の印刷を開始する。アプリケーション２０１の文書の印刷データと印刷設定情報はＯＳの印刷サポート機能を介してＸＰＳスプールファイル２０５に格納される。ＸＰＳスプールファイル２０５に文書のページがスプールされ始めると、ＯＳの印刷サポート機能はフィルターパイプライン２０７を起動する。レイアウトフィルター２１３は印刷設定情報を参照しレイアウト印刷設定が２−ｕｐになっているため、ページのレイアウト処理を行い、レイアウト後のページを出力する。プレビューフィルター２１５は印刷設定情報にプレビュー済フラグを格納し、印刷設定とＸＰＳデータをプレビュー用ＸＰＳ文書２２１に格納し、プレビュー制御モジュール２１９を起動する。プレビュー制御モジュール２１９はプレビュー用ＸＰＳ文書２２１を用いて印刷イメージを表示し、ユーザに印刷機能を提供する。
【００３５】
ここでアプリケーション２０１の文書が２ページで構成されているとすれば、レイアウト設定で２−ｕｐが指定されている為、プレビュー用ＸＰＳ文書２２１に格納されるページ数は１ページとなる。従ってプレビュー用ＸＰＳ文書２２１の作成は終了しているので、ユーザが印刷開始をプレビュー制御モジュール２１９に指示した場合は、新規の印刷ジョブを作成しプレビュー用ＸＰＳ文書２２１の内容をそのまま格納する。新規の印刷ジョブが再び印刷された時は、印刷設定情報にプレビュー済フラグが格納されている為、レイアウトフィルター２１３とプレビューフィルター２１５では入力がそのまま出力される。続いて印刷コマンドフィルター２１７によって、入力のＸＰＳデータがプリンタが解釈可能な印刷コマンドに変換される。プリンタ２３１は供給された印刷コマンドを解釈し印刷用紙に像を形成し、出力結果２４１が得られる。
【００３６】
また、アプリケーション２０１の文書のページ数が非常に多く、ユーザが印刷開始をプレビュー制御モジュール２１９に指示した時点で、プレビュー用ＸＰＳ文書２２１が作成中であれば、プレビュー制御モジュール２１９はプレビューフィルター２１５に印刷続行を通知する。プレビュー用ＸＰＳ文書２２１を作成中のプレビューフィルター２１５は、プレビュー用ＸＰＳ文書２２１の作成を中止し、保持しているＸＰＳパートを全て出力し、入力から残りのＸＰＳパートを取得し出力する。続いて印刷コマンドフィルター２１７により入力は印刷コマンドに変換され、これをプリンタ２３１が解釈して印刷結果２４１が得られる。
【００３７】
このようにプレビュー時において処理済のレイアウト処理を、印刷続行時には行わないようにすることで、同一処理の重複実行を排除し、効率的な印刷処理が行えるようになる。
【００３８】
また、ある印刷ジョブのプレビュー中にプレビュー用ＸＰＳ文書２２１の作成が完了した場合は、当該印刷ジョブの印刷処理は一旦終了できるため、印刷キューに存在する後続の印刷ジョブの印刷処理を開始することができる。従って、ある印刷ジョブのプレビュー中に、他の印刷ジョブのプレビューを行うことが可能となり、また、他の印刷ジョブの印刷コマンドを生成しプリンタを駆動することが可能となる。
【００３９】
ここで、本実施例では理解を容易にする為にフィルターパイプライン２０７は機能ごとにフィルターを分け、三つのフィルターで構成されるようにした。しかし、これらのフィルターの機能を単一のフィルターで実現しても良いことは言うまでもない。
【００４０】
また、本実施例では理解を容易にする為に各フィルターは入力と、印刷コマンド以外の出力をＸＰＳパートで取り扱うように記述した。しかし各フィルターにおける入出力はＸＰＳデータをストリームで扱うような形式にしても良いことは言うまでもない。
【００４１】
＜印刷設定画面＞
図３は本実施形態における印刷モードや各種用紙設定を行う際に表示される印刷設定ダイアログの一例を示す図である。図３において、印刷設定ダイアログ３０１は、表示エリア３０２〜３１１、３２０〜３３１から構成される。印刷設定では表示する項目が非常に多いため、タブシートを使用して設定項目を内容ごとに分けて見やすい構成にするのが通例である。
【００４２】
図３に基本設定タブ３０２が選択された場合の表示例を示す。基本設定の簡易表示エリア３２０には、文字情報だけでなく視覚に訴える形で設定された情報を表示する。用紙種類選択部３２２は、用紙の種類を表示するとともに利用者により選択させることができる。用紙種類選択部３２２はドロップダウンメニューとなっており普段は選択されている用紙の種類が表示され、そこをクリックすることで選択可能な用紙種類がリスト表示される。選択可能な用紙の種類はプリンタで印刷可能な用紙であり、図示されている普通紙の他にも例えば光沢紙、コート紙、写真専用紙、ハガキ、年賀状葉書等が含まれる。給紙方法選択部３２３は、プリンタ本体が用紙を給紙する給紙方法を表示し、利用者による給紙方法の選択をさせることができる。利用者は、給紙方法選択部３２３により、たとえば自動給紙口である給紙トレイや給紙カセット、または印刷用紙を一枚ずつ手動で給紙する「手差し給紙」などを選択できる。印刷品質選択部３２４は利用者に印刷の品位を設定させるための項目である。色調整部３２５は利用者に印刷の色を調整させるための項目である。モノクロ印刷設定部３２６は、印刷文書がカラーであっても印刷結果をグレースケールにするためのチェックボックスである。プレビュー印刷設定部３２７は、各種印刷設定がどのように印刷文書に反映されるかを、プリンタによる実際の印刷が行われる前に確認するためのチェックボックスである。標準設定部３３１が押されると、基本設定３０２の設定が標準（出荷時設定）に戻される。
【００４３】
ユーザは各項目を選択した後にＯＫボタン３０８を押下することで印刷設定ダイアログ３０１を閉じ、選択した印刷設定を印刷に反映させることができる。キャンセルボタン３０９を押下すると印刷設定ダイアログ３０１が閉じ、選択した設定項目の内容は破棄され印刷に反映されることはない。適用ボタン３１０は印刷設定ダイアログ３０１は開いたままで選択した印刷設定を印刷に反映させることができる。ヘルプボタン３１１は基本設定３０２の各設定項目に関する説明文を別ウィンドウで表示させることができる。
【００４４】
＜プレビュー制御モジュールのプレビューウィンドウ＞
図４に、本実施の形態におけるプレビュー制御モジュールによって提供される表示画面（プレビューウィンドウ）の一例を示す。印刷プレビューウィンドウ４０１は、プレビュー画像や印刷ジョブの印刷設定等を表示するための表示エリアと、ユーザがプレビュー画像の表示方法等を変更するための入力手段を兼備している。
【００４５】
メニューバー４０２は、ユーザは表示切り替え等プレビューアへの命令をメニュー形式選択することができる。ユーザ操作部４０３〜４０６が用意される領域はツールバーであり、ユーザはメニューバー４０２を使用しなくともツールバー４０３を押下することで容易にプレビューページの切り替え等を行うことができる。ページ切り替えボタン４０３は４つのボタンで構成されており、先頭ページ、前ページ、次ページ、最終ページへプレビュー表示を切り替えることが可能である。４０４はプレビュー画像の表示サイズを変更する為のドロップダウンリストで、全体表示や１００％、２００％表示等を選択することができる。印刷開始ボタン４０５においては、ユーザがこのボタンを押下することでプレビューアを終了し、プレビューしていたプレビュー用ＸＰＳ文書を印刷処理可能な状態にすることができる。印刷中止ボタン４０６においては、ユーザがこのボタンを押下することでプレビューアを終了し、プレビュー用ＸＰＳ文書が作成中であれば印刷ジョブをキャンセルすることができる。プレビュー表示領域４０７は、プレビュー用ＸＰＳファイルの内容を利用し、印刷用紙と印刷用紙に形成されるであろう可視象を印刷イメージとして表示する。表示領域４０８はプレビュー機能を実行している印刷ジョブの印刷設定に関る代表的な設定項目の設定値を表示する。本図においては文書の総ページ数は３ページであり、現在プレビュー表示しているページ番号は２ページであり、印刷設定で設定された部数は１部であり、かつ等倍印刷が設定されていた例を示している。
【００４６】
また、図４に例示する表示画面は、プレビュー設定がＯＮである印刷設定情報を伴う印刷ジョブがスプールされ、ＯＳの印刷サポート機能によりフィルターパイプラインが起動され、プレビューフィルターがプレビュー制御モジュールを起動した時点で表示される。
【００４７】
＜印刷キューとプレビュー＞
通常、一台のプリンタで同時に印刷可能な文書は一つであることから、ＯＳはプリンタごとに複数の印刷ジョブを管理するための論理的なキューを持つ。これは一般的に印刷キューと呼ばれ、キューの先頭の印刷ジョブの処理状態が「印刷中」となりプリンタドライバの処理対象となる。
【００４８】
図７は本実施例における印刷キューと印刷ジョブのプレビューの関係を説明する為の概念図の一例である。図７に示される印刷ジョブのうち、ＪｏｂＡとＪｏｂＢがプレビュー設定がＯＮとなっている印刷設定情報が格納されている。
【００４９】
図７（１）は印刷キュー７０１に印刷ジョブが三個格納されている状態を示している。ここで先頭のＪｏｂＡ７１５の処理状態が「印刷中」となっており、ＪｏｂＢ７１３とＪｏｂＣ７１１は「待機中」となる。ここでＪｏｂＡ７１５の印刷設定情報はプレビュー設定ＯＮであるから、プレビュー用ＸＰＳ文書Ａ７２５が作成される。時間の経過とともにプレビュー用ＸＰＳ文書Ａ７２５が完成すると、印刷キューからＪｏｂＡ７１５が削除され図７（２）の状態になる。
【００５０】
図７（２）ではプレビュー用ＸＰＳ文書Ａ７２５に基づくプレビューは実行中である。印刷キューの先頭の印刷ジョブにあたるＪｏｂＢ７１３の印刷状態は「印刷中」となる。ＪｏｂＢ７１３はプレビュー設定ＯＮであるから、プレビュー用ＸＰＳ文書Ｂ７２３が作成される。この時点で、プレビュー用ＸＰＳ文書Ａ７２５に基づくプレビューと、プレビュー用ＸＰＳ文書Ｂ７２３に基づくプレビューが同時に行われていることになる。これは単一ユーザに対して複数の印刷ジョブに対するプレビュー機能を提供する場合や、あるいは複数のユーザに対して同時にプレビュー機能を提供する場合に有用である。時間の経過と共にプレビュー用ＸＰＳ文書Ｂ７２３が完成すると、印刷キューからＪｏｂＢ７１３が削除され図７（３）の状態になる。
【００５１】
図７（３）ではプレビュー用ＸＰＳ文書Ａ７２５に基づくプレビューと、プレビュー用文書Ｂ７２３に基づくプレビューは同時に実行中である。印刷キューの先頭の印刷ジョブにあたるＪｏｂＣ７１１の印刷状態は「印刷中」となる。ＪｏｂＣ７１１はプレビュー設定ＯＦＦであるから、プレビューは実行されず、フィルターパイプラインによってプリンタが解釈可能な印刷コマンドが生成され、プリンタにより印刷用紙に像が形成されてゆく。一般的にプリンタによる印刷処理速度は遅く、アプリケーションが文書の印刷処理を行い印刷データがスプールされる時間の方が短い。ここで、ＪｏｂＣ７１１の内容がプリンタにより印刷されている間に、プレビュー用ＸＰＳ文書Ａ７２５に基づくプレビューにおいて、ユーザにより印刷開始が指示されたとする。この場合、プレビュー制御モジュールは新規印刷ジョブをキューに作成し、プレビュー用ＸＰＳ文書Ａ７２５の内容をＸＰＳスプールファイル２０５に格納する。この状態を図（４）に示す。
【００５２】
図７（４）ではプレビュー用文書Ｂ７２３に基づくプレビューは実行中である。印刷キュー先頭の印刷ジョブに当たるＪｏｂＣ７１１の印刷状態は「印刷中」で、図７（３）から引き続きプリンタによる印刷処理が行われている。ここでプレビュー用ＸＰＳ文書Ａ７２５を印刷続行するために新たに作成された印刷ジョブであるＪｏｂＡ’７３５の処理状態は「待機中」となる。時間の経過とともにＪｏｂＣ７１１の印刷処理が終了すると、図７（５）の状態になる。
【００５３】
図７（５）ではプレビュー用文書Ｂ７２３に基づくプレビューは実行中である。印刷キューの先頭の印刷ジョブに当たるＪｏｂＡ’７３５の処理状態は「印刷中」となる。ＪｏｂＡ’７３５は既にプレビューされた印刷ジョブであることは、前述したように印刷設定にプレビュー済フラグが格納されていることで判断される。従ってＪｏｂＡ’７３５に対してプレビューは実行されず、フィルターパイプラインによってプリンタが解釈可能な印刷コマンドが生成され、プリンタにより印刷用紙に像が形成されてゆく。時間の経過とともにＪｏｂＡ’７３５の印刷処理が終了すると、印刷キューからＪｏｂＡ’７３５が削除され図７（６）の状態になる。
【００５４】
図７（６）ではプレビュー用文書Ｂ７２３に基づくプレビューは実行中である。印刷キューには印刷ジョブが一つも格納されていない状態となる。
【００５５】
以上のように、本実施例によれば複数のプレビューを同時に提供したり、プレビュー機能を提供中に印刷キュー中の印刷ジョブの実印刷を行うことができる。
【００５６】
ここで、本実施例ではキューという概念から逸脱しないよう、新規に作成した印刷ジョブは印刷キューの最後に格納されるように説明した。しかし、ＯＳの印刷サポート機能によっては、新規の印刷ジョブを印刷キューの途中に格納できる場合もある。すなわち新規印刷ジョブを印刷キューに格納する際に、既存の印刷ジョブの前に格納しても良い。新規印刷ジョブを格納する印刷キュー中の位置が自由な場合、プレビュー制御モジュールは最適な位置を選択して新規印刷ジョブを格納できる。例えば、印刷キューに格納されている印刷ジョブはＸＰＳ文書であるから、総ページ数やジョブのサイズを取得することで、各印刷ジョブがプリンタにより印刷される処理時間を推定できる。このことから、新規印刷ジョブを追加する時点で、印刷キューに格納されている印刷ジョブがすべて印刷される時の、推定平均待ち時間を最小にするような位置を選択してもよい。また、新規印刷ジョブを格納する印刷キュー中の位置を、ユーザが選択できるようにユーザインタフェースを提供しても良い。以上のように、本発明の利点を阻害するものではないから、新規印刷ジョブを格納するキュー中の位置は任意であって構わない。
【００５７】
＜ＰｒｉｎｔＴｉｃｋｅｔとプレビュー済フラグ＞
図６を用いてＰＴに格納するプレビュー済フラグについて説明する。前述したようにＰＴとはＸＭＬ形式で記述された印刷設定である。従ってテキストで表現できる為、図６（Ａ）のように視覚的に記述することができる。
【００５８】
図６（Ａ）のＰＴはレイアウト設定として２−ｕｐが指定された印刷設定の一例を表している。ＰＴの標準的な記載内容はＰｒｉｎｔＳｃｈｅｍａと呼ばれるスキーマにより規定されており、Ｎ−ｕｐに関する設定項目も存在する。なお、ＰｒｉｎｔＳｃｈｅｍａは一般的に公開されている仕様である。ＰＴにはＮ−ｕｐ設定としてＦＤＳに影響を及ぼすＪｏｂＮＵｐＡｌｌＤｏｃｕｍｅｎｔｓＣｏｎｔｉｇｕｏｕｓｌｙと、ＦＤに影響を及ぼすＤｏｃｕｍｅｎｔＮＵｐが存在する。これらはＰｒｉｎｔＳｃｈｅｍａにより規定されており、プリンタドライバはこれら二つの印刷設定を排他的に取り扱う必要があるが、どちらの設定を優先させるかはプリンタドライバにより異なる。ここではどちらの設定が優先されてもいいように、どちらの印刷設定にも２−ｕｐが指定されている。
【００５９】
印刷設定には他の設定項目も数多く存在するが、本実施例に関連のあるＮ−ｕｐのみについて説明した。また、設定項目によってはＦＤＳとＦＤだけではなくＦＰにも影響を及ぼすものもある。
【００６０】
図６（Ｂ）は図６（Ａ）のＰＴに前述したプレビュー済フラグを格納したＰＴの一例を示している。ＰＴに格納するプレビュー済フラグはＰｒｉｎｔＳｃｈｅｍａで規定されていない独自の情報であるため、プライベートな名前空間を追加する必要がある。図６（Ｂ）ではプライベートな名前空間プレフィックスを“ｎｓ００００”としている。格納するプレビュー済フラグはＰｒｉｎｔＳｃｈｅａｍａのフレームワークを利用してＰｒｏｐｅｒｔｙの値として表現している。ここではＰｒｏｐｅｒｔｙのｎａｍｅ属性として“ｎｓ００００：ＰｒｅｖｉｅｗＦｉｌｔｅｒＰｒｏｃｅｓｓ”と記述している。また値として“Ｄｏｎｅ”というｓｔｒｉｎｇ値を記述することで、プレビュー済フラグを表現している。ＰＴに“ｎｓ００００：ＰｒｅｖｉｅｗＦｉｌｔｅｒＰｒｏｃｅｓｓ”が存在しない場合、或いは、“ｎｓ００００：ＰｒｅｖｉｅｗＦｉｌｔｅｒＰｒｏｃｅｓｓ”が存在しその値が“Ｄｏｎｅ”以外であれば、プレビューを行っていないと判断できる。
【００６１】
図６においてはプレビュー済フラグを格納するのに、フレームワークのＰｒｏｐｅｒｔｙを用いたが、この他にもＦｅａｔｕｒｅ／Ｏｐｔｉｏｎを用いても良いことは言うまでもない。また、プレビュー済フラグを示すプライベートな名前空間を用意し、当該名前空間の有無でプレビュー済フラグを表現してもよい。ＰＴはＸＭＬで記載されているため、ＰｒｉｎｔＳｃｈｅｍａに則っていれば、この他のどのような表現でもプレビュー済フラグを格納しても構わない。
【００６２】
＜参照用ＰｒｉｎｔＴｉｃｋｅｔ取得処理＞
フィルターパイプラインの各フィルターにおいて、印刷設定情報を取得するには前述したようにＸＰＳのＰＴをマージする必要がある。ＸＰＳ文書の各パートはＰＴを持つことが可能だが、逆に持たないことも可能である。また、たとえＸＰＳパートがＰＴを持っていたとしても、図６（Ａ）で例示されるＰＴの様にＮ−ｕｐの情報しか記載されていなく、不完全なＰＴである可能性がある。従ってＦＤＳのＰＴを取得する際もユーザのデフォルト印刷設定のＰＴとのマージ処理が必要である。ここでデフォルト印刷設定のＰＴには、プリンタドライバで扱える全ての設定項目が格納されている。従ってマージ後のＰＴも全ての印刷設定項目を含む。
【００６３】
図９はＦＤＳのＰＴとユーザのデフォルト印刷設定のＰＴをマージし参照用ＰＴを取得する処理のフローチャートの一例である。図９のフローチャートに係るプログラムは、データ処理装置の記憶部１４４のハードディスクに記憶されており、記憶部１４４のＲＡＭに適時読み出されて中央制御部１４１のＣＰＵにより実行される。
【００６４】
まずＳ２０１でユーザのデフォルト印刷設定を格納したデフォルトＰＴを取得する。続いてＳ２０３でＸＰＳ文書のＦＤＳを取得する。続いてＳ２０５でＦＤＳのＰＴを取得する。Ｓ２０７ではＦＤＳのＰＴが取得できたかどうかを判定し、取得できていればＳ２１１に移り、取得できなければＳ２０９に移る。Ｓ２１１では取得したＦＤＳのＰＴとデフォルトＰＴをマージしたＰＴを参照用ＰＴとし終了する。Ｓ２０９ではＦＤＳにＰＴが存在しなかったため、デフォルトＰＴを参照用ＰＴとし終了する。
【００６５】
ここで、全ての印刷設定項目とは、少なくともアプリケーションが設定可能な全ての設定項目のことを指しており、プレビュー済フラグのようなプリンタドライバ内部の設定項目はこれに含まれないものとする。
このようにプリンタドライバが扱える全ての設定項目を含む参照用ＰＴを取得することができる。
【００６６】
＜レイアウトフィルター処理＞
図８を用いてレイアウトフィルターの処理について説明する。図８はレイアウトフィルターの処理を示すフローチャートの一例である。図８のフローチャートに係るプログラムは、データ処理装置の記憶部１４４のハードディスクに記憶されており、記憶部１４４のＲＡＭに適時読み出されて中央制御部１４１のＣＰＵにより実行される。
【００６７】
まずＳ１０１で前述したように参照用ＰＴを取得する。続いてＳ１０３で参照用ＰＴにプレビュー済フラグが格納されているかどうかを判断し、格納されていればＳ１２１に移り、格納されていなければＳ１０５に移る。
【００６８】
Ｓ１０５ではＦＤを取得し、Ｓ１０７でＦＤからＰＴを取得する。Ｓ１０９でＦＤのＰＴを取得できたか判断し、取得できればＳ１１１に移り、取得できなければＳ１１３に移る。Ｓ１１１では参照用ＰＴに取得できたＦＤのＰＴをマージする。続くＳ１１３では参照用ＰＴの印刷設定情報にレイアウト設定がされているか判断し、レイアウト設定がされていればＳ１４１に移り、レイアウト設定がされていなければＳ１３１に移る。
【００６９】
Ｓ１３１からＳ１３５まではレイアウト処理を行わないで入力のＸＰＳデータをプレビューフィルターに出力するのみである。Ｓ１３１では取得済みのＦＤＳをプレビューフィルターに出力し、Ｓ１３３では取得済みのＦＤをプレビューフィルターに出力し、Ｓ１３５では入力から残りのＸＰＳパートを取得しプレビューフィルターに出力し、終了する。
【００７０】
Ｓ１４１からＳ１４５は入力のＸＰＳデータにレイアウト処理を行いプレビューフィルターに出力する。Ｓ１４１では取得済みのＦＤＳをプレビューフィルターに出力し、Ｓ１４３では取得済みのＦＤをプレビューフィルターに出力する。Ｓ１４５では入力から残りのＸＰＳパートを順次取得し、ＦＰのレイアウト処理を行ったレイアウト済みのＦＰを作成してプレビューフィルターに出力する。ここで前述したようにＰＴに格納されるレイアウト設定はＦＤＳに影響を及ぼすものと、ＦＤに影響を及ぼすものがあるため、必要に応じてＦＤもプレビューフィルターに出力する。このように新たに作成されたレイアウト済みのＦＰをプレビューフィルターに送信し、全てのＦＰをプレビューフィルターに出力した後に終了する。
【００７１】
Ｓ１２１とＳ１２３ではプレビュー済みの印刷ジョブは既にレイアウト処理は行われている為、レイアウト処理は行わない。Ｓ１２１では入力されたＦＤＳをプレビューフィルターに出力する。続いてＳ１２３では残りのＸＰＳパートを入力から順次取得しプレビューフィルターに出力した後、終了する。これにより出力したＸＰＳデータは次のフィルター（プレビューフィルター）に送信される。
【００７２】
このようにＰＴに格納されたプレビュー済フラグを参照することで、プレビュー後に同一のレイアウト処理を重複して行わないようにすることができる。
【００７３】
＜プレビューフィルター処理＞
図１０を用いてプレビューフィルターの処理について説明する。図１０はプレビューフィルターの処理を示すフローチャートの一例である。図１０のフローチャートに係るプログラムは、データ処理装置の記憶部１４４のハードディスクに記憶されており、記憶部１４４のＲＡＭに適時読み出されて中央制御部１４１のＣＰＵにより実行される。
【００７４】
まずＳ４０１で前述したように参照用ＰＴを取得する。続いてＳ４０３で参照用ＰＴにプレビュー済フラグが格納されているかどうかを判断し、格納されていればＳ４４１に移り、格納されていなければＳ４０５に移る。
【００７５】
Ｓ４０５では参照用ＰＴの印刷設定情報のプレビュー設定がＯＮかどうかを判定し、ＯＮでなければＳ４４１に移り、ＯＮであればＳ４１１に移る。
【００７６】
Ｓ４１１からＳ４２５まではプレビュー用ＸＰＳ文書を作成するための処理となる。Ｓ４１１では取得済みのＦＤＳがＰＴを持たなければ、ＦＤＳにＰＴを付加する。続くＳ４１３ではＦＤＳのＰＴにプレビュー済フラグを格納する。続くＳ４１５ではプレビュー制御モジュールを起動する。続くＳ４１７ではプレビュー用ＸＰＳ文書を作成し取得済みのＦＤＳを追加する。なお、プレビュー用ＸＰＳ文書は、レイアウト処理されたＸＰＳ文書にプレビュー済みフラグが付加されたＸＰＳ文書である。続くＳ４２１では入力から次のＸＰＳパートを取得し、取得したＸＰＳパートをキャッシュした後に、プレビュー用ＸＰＳ文書に追加する。Ｓ４２３では取得したＸＰＳパートが最終かどうか判断し、最終であればＳ４５１に移り、最終でなければＳ４２５に移る。取得したＸＰＳパートが最終である場合、ＸＰＳデータは一切出力せず、Ｓ４５１でフィルターパイプラインの各フィルターに動作の終了を通知し、印刷キューから印刷ジョブが削除されるように処理する。Ｓ４２５ではプレビュー制御モジュールから印刷続行通知があったかどうか判断し、通知がなければＳ４２１に移りプレビュー用ＸＰＳ文書の作成を継続し、通知があればＳ４３１に移る。
【００７７】
Ｓ４３１からＳ４３５はプレビュー用ＸＰＳ文書を作成中に、ユーザから印刷開始が指示された場合の処理である。Ｓ４３１では取得済みのＦＤＳを印刷コマンドフィルターに出力し、Ｓ４３３ではキャッシュ済みのＸＰＳパートを順次印刷コマンドフィルターに送信する。続くＳ４３５では入力から残りのＸＰＳパートを順次取得し印刷コマンドフィルターに出力し終了する。
【００７８】
Ｓ４４１とＳ４４３ではプレビュー済みの印刷ジョブは既にプレビュー処理は行われている為、プレビュー処理は行わない。Ｓ４４１では入力されたＦＤＳを印刷コマンドフィルターに出力する。続いてＳ４４３では残りのＸＰＳパートを入力から順次取得し印刷コマンドフィルターに出力した後、終了する。これにより出力したＸＰＳデータは次のフィルター（印刷コマンドフィルター）に送信される。
【００７９】
ここではプレビュー用ＸＰＳ文書を作成中に、入力のＸＰＳパートをキャッシュし、作成中に印刷続行通知があった場合はキャッシュからＸＰＳを印刷コマンドフィルターに出力するように記述したが、キャッシュしなくてもよい。ＸＰＳパートをキャッシュしない場合は、作成中のプレビュー用ＸＰＳ文書からＸＰＳパートを読込み、印刷コマンドフィルターに出力するようにすればよいことは明らかである。
【００８０】
このようにすることで、プレビュー用ＸＰＳファイルにプレビュー済フラグを格納することが可能となる。また、プレビュー用ＸＰＳファイルを作成中であっても、印刷開始指示に応じて、印刷コマンドを作成する為にＸＰＳデータを出力することができる。また、プレビュー済みのＸＰＳデータを再度プレビューすることを抑制できる。
【００８１】
＜プレビュー制御モジュールの処理＞
図１１を用いてプレビュー制御モジュールの処理について説明する。図１１はプレビュー制御モジュールの処理を示すフローチャートの一例である。
【００８２】
まずＳ３５１で前述したプレビューウィンドウを表示する。図１１のフローチャートに係るプログラムは、データ処理装置の記憶部１４４のハードディスクに記憶されており、記憶部１４４のＲＡＭに適時読み出されて中央制御部１４１のＣＰＵにより実行される。
【００８３】
Ｓ３０１からＳ３１１までイベント処理ループとなる。Ｓ３０１はイベント処理ループの開始端であり、続くＳ３０３でイベントを取得し、続くＳ３０５でイベントが印刷開始（印刷指示）かどうか判定する。イベントが印刷開始であればＳ３２１に移り、印刷開始でなければＳ３０７に移る。Ｓ３０７ではイベントが印刷中止かどうか判定し、印刷中止であればＳ３３１に移り、印刷中止でなければＳ３０９に移る。Ｓ３０９では印刷開始と印刷中止以外のイベントの処理を行う。例えば図４を用いて前述したようにプレビューウィンドウを介して発生するイベントが表示ページの切り替えであれば、プレビューウィンドウのプレビュー表示領域の内容を再描画する。また、タイマーイベントの処理にあたり、スプールされているページ数の表示を変更することもできる。このようにＳ３０９で行う処理はさまざまである。続くＳ３１１はイベント処理ループの終端でありＳ３０１に戻る。
【００８４】
Ｓ３２１からＳ３２５は印刷開始処理である。Ｓ３２１でプレビュー用ＸＰＳ文書がプレビューフィルターにより作成中であるかどうか判定し、作成中であればＳ３２５に移り、作成が完了していればＳ３２３に移る。Ｓ３２５ではプレビューしている内容の印刷ジョブが印刷キュー内に残っている為、プレビューフィルターに印刷続行を通知した後、Ｓ３４１に移る。Ｓ３２３では、既に印刷ジョブは印刷キューから削除されているために、キューに新たな印刷ジョブを作成し、プレビュー用ＸＰＳ文書の内容を入力とし、新たな印刷ジョブのＸＰＳ文書をスプールファイルに出力した後、Ｓ３４１に移る。
【００８５】
ここで、プレビュー制御モジュールによる印刷ジョブ作成手順について説明する。まず、ＯＳに印刷ジョブの追加を通知し、ＯＳからＸＰＳスプールファイル２０５のパスを取得する。次に、ＸＰＳスプールファイル２０５に、印刷ジョブに対応するプレビュー用ＸＰＳ文書の内容をコピーする。次に、ＯＳに追加した印刷ジョブのスケジューリングを依頼する。
【００８６】
Ｓ３３１とＳ３３３は印刷キャンセル処理である。Ｓ３３１でプレビュー用ＸＰＳ文書がプレビューフィルターにより作成中であるかどうか判定し、作成中であればＳ３３３に移り、作成が完了していればＳ３４１に移る。Ｓ３３３ではプレビューしている内容の印刷ジョブが印刷キュー内に残っている為、当該印刷ジョブをキャンセルする。プレビュー用ＸＰＳ文書の作成が完了していれば、プレビューしている内容の印刷ジョブは印刷キュー内に存在しないため、印刷ジョブのキャンセルは不要である。
Ｓ３４１ではプレビュー用ＸＰＳ文書を削除し終了する。
【００８７】
このようにすることで、プレビュー中の印刷ジョブが存在する場合は、ユーザの印刷開始の指示に即座に従い、プリンタによる印刷を開始できる。また、もとの印刷ジョブごとにプレビュー用ＸＰＳ文書を持つ為、同時に複数のプレビュー機能を提供することができる。
【００８８】
以上説明したように、本実施形態によれば次のような効果が得られる。
（１）プレビューアから印刷開始を指示しても同一のレイアウト処理は一回しか行わない為、コンピュータの負荷が軽減する。
（２）プレビュー用ＸＰＳ文書の作成が終了していれば、プレビュー中でも印刷キュー中の後続の印刷ジョブを処理できる。
【００８９】
〔第２実施形態〕
第１実施形態では、印刷プレビュー後に実印刷を行うにあたり、印刷プレビュー時に作成したレイアウト処理済みのプレビュー用ＸＰＳ文書をそのまま利用して実印刷を継続できるように構成した。これによって、実印刷時には、レイアウト処理済みのプレビュー用ＸＰＳ文書に対して必要な残りの処理だけを行えば良いことになるため、印刷プレビュー時と実印刷時とでレイアウト処理を重複して行うことがなくなる。
【００９０】
一方で、印刷プレビューを表示するにあたり、印刷内容の事前確認や印刷ミスの事前防止を目的とした使い勝手向上のために、表示内容を加工してからプレビュー表示するような技術が従来より提供されている。前述したＣＤ−Ｒ領域表示機能等もこれに該当し、印刷プレビュー用に生成された印刷イメージに対してＣＤ−Ｒ領域の内外を識別するための境界線の追加や濃淡調整等の加工処理を施し、加工後の印刷イメージを表示することによって機能を実現している。ＸＰＳ文書を扱うプリンタドライバにおいて言えば、ＣＤ−Ｒ領域表示機能を実現するためには、プレビュー制御モジュールにおいてプレビュー用ＸＰＳ文書内の各ページの印刷イメージを加工することになる。
【００９１】
このため、第１実施形態の構成下でＣＤ−Ｒ領域表示機能を実現する場合には、加工済みのプレビュー用ＸＰＳ文書をそのまま利用して実印刷を継続してしまうことになるため、実印刷の結果についてもＣＤ−Ｒ領域表示が施されてしまうという課題がある。
【００９２】
そこで本実施形態では、プレビュー制御モジュールがプレビュー表示を行うにあたりプレビュー用ＸＰＳ文書内の各ページの印刷イメージを加工した場合には、各ページの印刷イメージを加工前の状態に戻してから実印刷を継続できるように構成する。
【００９３】
なお、第１実施形態と共通する部分、例えば図１、図２などについてはその説明を省略する。ただし、図１１の処理は第１実施形態に特有であり、本実施形態では図１１に代えて図１５の処理が実行される。
【００９４】
具体的には、プレビュー制御モジュール２１９は、プレビューフィルター２１５により起動されると、プレビュー用ＸＰＳ文書２２１を読込み、プレビュー表示すべきページ（例えば１ページ目）について後述するプレビュー表示処理を行う。またプレビュー制御モジュール２１９は、ユーザの指示に従い表示するページを切り替える際にも同様にプレビュー表示処理を行う。
【００９５】
さらに、プレビュー制御モジュール２１９は、プレビュー用ＸＰＳ文書２２１が完成した後にユーザから印刷開始の指示を受けた場合には、後述するプレビュー用ＸＰＳ文書リセット処理を行い、その後にプレビュー用ＸＰＳ文書２２１のデータを用いて新規の印刷ジョブを作成し終了する。
【００９６】
＜プレビュー表示処理＞
次に、本実施形態におけるプレビュー制御モジュール２１９が行うプレビュー表示処理の概要について説明する。
【００９７】
先ず、プレビュー制御モジュール２１９は、プレビュー用ＸＰＳ文書からプレビュー表示を行うページの印刷設定情報（ＰＴ）を取得する。
【００９８】
続いて、プレビュー制御モジュール２１９は、上記取得したＰＴを参照してプレビュー表示を行うページの印刷設定がＣＤ−Ｒ印刷か否かを判断し、ＣＤ−Ｒ印刷が設定されていた場合には、ＣＤ−Ｒ領域表示のために印刷イメージを加工する。具体的には、例えば、ＣＤ−Ｒの内側に該当する部分と外側に該当する部分との境界に線を引くための描画命令やＣＤ−Ｒの外側に位置する画像の濃度を下げるための描画命令をＦＰに追加する。
【００９９】
続いて、プレビュー制御モジュール２１９は、上記加工した印刷イメージを印刷プレビューとして表示する。
【０１００】
＜プレビュー用ＸＰＳ文書リセット処理＞
次に、本実施形態におけるプレビュー制御モジュール２１９が行うプレビュー用ＸＰＳ文書リセット処理の概要について説明する。
【０１０１】
先ず、プレビュー制御モジュール２１９は、プレビュー用ＸＰＳ文書から各ＦＰを取得する。
【０１０２】
続いて、プレビュー制御モジュール２１９は、ＣＤ−Ｒ領域表示のために追加された描画命令がＦＰに存在するか否かを判断し、ＣＤ−Ｒ領域表示のために追加された描画命令が存在する場合は当該描画命令を削除する。
【０１０３】
＜ＣＤ−Ｒ領域表示を含む印刷プレビュー画面の例＞
図１２は本実施形態におけるプレビュー制御モジュール２１９によって提供される印刷プレビュー画面のうち、特にＣＤ−Ｒ領域表示を施した印刷プレビュー画面１２００の一例を示した図である。
【０１０４】
図１２において“１２０１”は、ＣＤ−Ｒの内側に該当する部分と外側に該当する部分との境界を示している。
“１２０２”は、印刷イメージのうちＣＤ−Ｒの内側に出力される領域を示している。
“１２０３”は、印刷イメージの濃度を下げて表示することによって、印刷イメージのうちＣＤ−Ｒの外側に出力される領域を示している。
【０１０５】
＜ＣＤ−Ｒ領域表示を行うＦｉｘｅｄＰａｇｅの例＞
次に、図１３を用いて本実施形態におけるプレビュー制御モジュール２１９がＣＤ−Ｒ領域表示のために追加する描画命令について説明する。
【０１０６】
前述したようにＦＰとは、１ページの文書内容をＸＭＬ形式で記述したものである。従ってテキストで表現できるため、図１３（Ａ）のように視覚的に記述することができる。
【０１０７】
図１３（Ａ）は、レイアウトフィルター２１３によるレイアウト処理を介して、プレビューフィルター２１５により格納されたプレビュー用ＸＰＳ文書２２１に含まれているＦＰの一例を示している。
【０１０８】
図１３（Ｂ）は、図１３（Ａ）に示すＦＰの印刷イメージに対してＣＤ−Ｒ領域表示を行うために描画命令を追加したＦＰの一例を示している。図１３（Ｂ）の例では、プレビュー制御モジュール２１９が追加した上記描画命令を識別できるようにしておくために、プライベート名前空間に属する属性情報を各描画命令に対して付加している。具体的には、ＦｉｘｅｄＰａｇｅのルート要素において、プレフィックスが“ｎｓ００００”となるプライベートの名前空間を宣言しておき、各描画命令の属性情報として上記名前空間に属する“ｎｓ００００：ｏｗｎｅｒ”属性を定義し、属性値として“Ｐｒｅｖｉｅｗｅｒ”を指定している。これにより、当該描画命令の作成者がプレビュー制御モジュール２１９であることを識別できるようになる。
なお、描画命令を識別するための手法は上記に限定されるものではない。
【０１０９】
＜ＣＤ−Ｒ印刷設定がなされたＰｒｉｎｔＴｉｃｋｅｔの例＞
図１４は、ＣＤ−Ｒ印刷設定がなされているＰＴの一例を示す図である。
ＰＴの標準的な記載内容はＰｒｉｎｔＳｃｈｅｍａと呼ばれるスキーマにより規定されており、「用紙の種類」「給紙方法」「用紙サイズ」に関する設定項目も定義されている。
【０１１０】
ＰｒｉｎｔＳｃｈｅｍａでは“ｎａｍｅ”属性の値が“ｐｓｆ：ＰａｇｅＭｅｄｉａＴｙｐｅ”となる“ｐｓｆ：Ｆｅａｔｕｒｅ”要素が「用紙の種類」として定義されている。
【０１１１】
図１４の例では、上記“ｐｓｆ：Ｆｅａｔｕｒｅ”要素の子要素である“ｐｓｆ：Ｏｐｔｉｏｎ”要素の“ｎａｍｅ”属性の値として“ｎｓ００００：Ｄｉｓｃ”を指定することによってＣＤ−Ｒメディア設定として扱われることを示している。
【０１１２】
＜プレビュー制御モジュールの処理＞
図１５は、本実施形態におけるプレビュー制御モジュール２１９の処理を示すフローチャートの一例である。同図において第１実施形態で示した図１１と同様の処理には同一のステップ番号を示し、その説明を省略する。
【０１１３】
ステップＳ５０１で、詳細は後述するが、プレビュー制御モジュール２１９は、プレビュー表示処理により、表示すべきページ（例えば１ページ目）の印刷プレビューを表示する。
【０１１４】
ステップＳ５０２で、プレビュー制御モジュール２１９は、Ｓ３０３により取得したイベントがプレビュー表示するページの切り替えか否かを判別する。
【０１１５】
この判別の結果、Ｓ３０３により取得したイベントがプレビュー表示するページの切り替えであると判別した場合は、ステップＳ５０３へ進む。また、そうでないとプレビュー制御モジュール２１９が判別した場合にはステップＳ３０９へ進む。
【０１１６】
ステップＳ５０３に進むと、プレビュー制御モジュール２１９は、プレビュー表示処理により、Ｓ３０３により取得したイベントでユーザが指定したページの印刷プレビューを表示する。
【０１１７】
ステップＳ５０４で、詳細は後述するが、プレビュー制御モジュール２１９は、プレビュー用ＸＰＳ文書リセット処理により、プレビュー用ＸＰＳ文書２２１を元の状態に戻す。
【０１１８】
＜プレビュー表示処理フローの一例＞
図１６は、図１５に示したステップＳ５０１、ならびに、ステップＳ５０３のプレビュー表示処理の詳細処理例である。
【０１１９】
なお、Ｓ６０１〜Ｓ６０７は各ステップを示す。また、各ステップは、データ処理装置１０２のＣＰＵが外部記憶装置等から制御プログラムをメモリにロードして実行することで実現される。
【０１２０】
まず、ステップＳ６０１で、詳細は後述するが、プレビュー制御モジュール２１９は、ＦｉｘｅｄＰａｇｅ処理用ＰｒｉｎｔＴｉｃｋｅｔ取得処理により、プレビュー表示を行うページの印刷設定情報（ＰＴ）を取得する。
【０１２１】
次に、ステップＳ６０２で、プレビュー制御モジュール２１９は、ステップＳ６０１により取得したＰＴを参照して用紙の種類の設定内容を取得する。具体的には、“ｎａｍｅ”属性の値が“ｐｓｆ：ＰａｇｅＭｅｄｉａＴｙｐｅ”となる“Ｆｅａｔｕｒｅ”要素を検索し、その子要素である“ｐｓｆ：Ｏｐｔｉｏｎ”要素の内容を取得する。
【０１２２】
次に、ステップＳ６０３で、プレビュー制御モジュール２１９は、ステップＳ６０２により取得した“ｐｓｆ：Ｏｐｔｉｏｎ”要素を参照して、用紙の種類の設定がＣＤ−Ｒ設定になっているか否かを判別する。具体的には、“ｐｓｆ：Ｏｐｔｉｏｎ”要素の“ｎａｍｅ”属性の値が“ｎｓ００００：Ｄｉｓｃ”であるか否かを判別する。
【０１２３】
この判別の結果、用紙の種類の設定がＣＤ−Ｒ設定になっていると判別した場合は、ステップＳ６０４へ進む。また、そうでないとプレビュー制御モジュール２１９が判別した場合にはステップＳ６０７へ進む。
【０１２４】
ステップＳ６０４に進むと、プレビュー制御モジュール２１９は、プレビュー表示を行うページのＦＰを参照し、ＣＤ−Ｒ強調表示のための描画命令が既にＦＰに追加されているか否かを判別する。
【０１２５】
この判別の結果、ＣＤ−Ｒ領域表示のための描画命令が既にＦＰに追加されていると判別した場合は、ステップＳ６０５へ進む。また、そうでないとプレビュー制御モジュール２１９が判別した場合にはステップＳ６０７へ進む。
【０１２６】
ステップＳ６０５に進むと、プレビュー制御モジュール２１９は、当該ページのＦＰにＣＤ−Ｒ領域表示のための描画命令（プレビュー表示固有の描画命令）を追加する。
【０１２７】
次に、ステップＳ６０６で、プレビュー制御モジュール２１９は、ステップＳ６０５により追加した描画命令に対して、当該描画命令の作成者がプレビュー制御モジュール２１９であることを識別するためのフラグを追加する。
【０１２８】
ステップＳ６０７に進むと、プレビュー制御モジュール２１９は、当該ページのＦＰを用いてプレビュー表示を行い、本処理を終了する。
【０１２９】
なお、ＣＤ−Ｒのメディアの領域を表示のための描画命令の例で説明したが、グリッド（線）や目盛りを表示するための描画命令にも適用できる。また、文書画像のフチなし印刷時に、拡大された文書画像のうちメディアに印刷される領域を表示するための描画命令にも適用できる。
【０１３０】
＜プレビュー用ＸＰＳ文書リセット処理フローの一例＞
図１７は、図１５に示したステップＳ５０４のプレビュー用ＸＰＳ文書リセット処理の詳細処理例である。
【０１３１】
なお、Ｓ８０１〜Ｓ８０４は各ステップを示す。また、各ステップは、データ処理装置１０２のＣＰＵが外部記憶装置等から制御プログラムをメモリにロードして実行することで実現される。
【０１３２】
ステップＳ８０１〜ステップＳ８０４はプレビュー用ＸＰＳ文書２２１に含まれる各ページに対して処理を行うページ処理ループである。
【０１３３】
ステップＳ８０１はページ処理ループの開始端であり、続くステップＳ８０２〜ステップＳ８０３の処理をプレビュー用ＸＰＳ文書２２１に含まれる先頭ページのＦＰから順に行っていく。
【０１３４】
次に、ステップＳ８０２で、プレビュー制御モジュール２１９は、ＣＤ−Ｒ領域表示のために追加された描画命令が当該ページのＦＰに存在するか否かを判別する。
【０１３５】
この判別の結果、ＣＤ−Ｒ領域表示のために追加された描画命令が当該ページのＦＰに存在すると判別した場合は、ステップＳ８０３へ進む。また、そうでないとプレビュー制御モジュール２１９が判別した場合にはステップＳ８０４へ進む。
【０１３６】
ステップＳ８０３に進むと、プレビュー制御モジュール２１９は、当該ページのＦＰに存在するＣＤ−Ｒ領域表示のための描画命令を削除する。
【０１３７】
ステップＳ８０４はページ処理ループの終端であり、プレビュー用ＸＰＳ文書２２１に含まれる最終ページのＦＰに対して処理が完了するまでステップＳ８０１に戻る処理を繰り返す。一方、最終ページのＦＰに対して処理が完了している場合には本処理を終了する。
【０１３８】
＜ＦｉｘｅｄＰａｇｅ処理用ＰｒｉｎｔＴｉｃｋｅｔ取得処理フローの一例＞
図１８は、図１６に示したステップＳ６０１のＦｉｘｅｄＰａｇｅ処理用ＰｒｉｎｔＴｉｃｋｅｔ取得処理の詳細処理例である。
【０１３９】
なお、Ｓ７０１〜Ｓ７１３は各ステップを示す。また、各ステップは、データ処理装置１０２のＣＰＵが外部記憶装置等から制御プログラムをメモリにロードして実行することで実現される。
【０１４０】
まず、ステップＳ７０１で、プレビュー制御モジュール２１９は、ユーザのデフォルト印刷設定を格納したデフォルトＰＴを取得する。なお、本ステップにより取得したデフォルトＰＴを暫定のＦＰ処理用ＰＴとする。
【０１４１】
次に、ステップＳ７０２で、プレビュー制御モジュール２１９は、プレビュー用ＸＰＳ文書２２１からＦＤＳを取得する。
【０１４２】
次に、ステップＳ７０３で、プレビュー制御モジュール２１９は、ステップＳ７０２により取得したＦＤＳに関連付けられているＰＴを取得する。
【０１４３】
次に、ステップＳ７０４で、プレビュー制御モジュール２１９は、ステップＳ７０３によりＦＤＳに関連付けられているＰＴを取得できたか否かを判別する。
【０１４４】
この判別の結果、ＦＤＳに関連付けられているＰＴを取得できたと判別した場合は、ステップＳ７０５へ進む。また、そうでないとプレビュー制御モジュール２１９が判別した場合にはステップＳ７０６へ進む。
【０１４５】
ステップＳ７０５に進むと、プレビュー制御モジュール２１９は、暫定のＦＰ処理用ＰＴに対して、ステップＳ７０３により取得したＦＤＳに関連付けられているＰＴをマージする。なお、本ステップによりマージされたＰＴを暫定のＦＰ処理用ＰＴとする。
【０１４６】
ステップＳ７０６に進むと、プレビュー制御モジュール２１９は、プレビュー用ＸＰＳ文書２２１からプレビュー表示すべきページが属しているＦＤを取得する。
【０１４７】
次に、ステップＳ７０７で、プレビュー制御モジュール２１９は、ステップＳ７０６により取得したＦＤに関連付けられているＰＴを取得する。
【０１４８】
次に、ステップＳ７０８で、プレビュー制御モジュール２１９は、ステップＳ７０７によりＦＤに関連付けられているＰＴを取得できたか否かを判別する。
【０１４９】
この判別の結果、ＦＤに関連付けられているＰＴを取得できたと判別した場合は、ステップＳ７０９へ進む。また、そうでないとプレビュー制御モジュール２１９が判別した場合にはステップＳ７１０へ進む。
【０１５０】
ステップＳ７０９に進むと、プレビュー制御モジュール２１９は、暫定のＦＰ処理用ＰＴに対して、ステップＳ７０７により取得したＦＤに関連付けられているＰＴをマージする。なお、本ステップによりマージされたＰＴを暫定のＦＰ処理用ＰＴとする。
【０１５１】
ステップＳ７１０に進むと、プレビュー制御モジュール２１９は、プレビュー用ＸＰＳ文書２２１からプレビュー表示すべきページのＦＰを取得する。
【０１５２】
次に、ステップＳ７１１で、プレビュー制御モジュール２１９は、ステップＳ７１０により取得したＦＰに関連付けられているＰＴを取得する。
【０１５３】
次に、ステップＳ７１２で、プレビュー制御モジュール２１９は、ステップＳ７１１によりＦＰに関連付けられているＰＴを取得できたか否かを判別する。
【０１５４】
この判別の結果、ＦＰに関連付けられているＰＴを取得できたと判別した場合は、ステップＳ７１３へ進む。また、そうでないとプレビュー制御モジュール２１９が判別した場合には暫定のＦＰ処理用ＰＴを最終的なＦＰ処理用ＰＴと確定し、本処理を終了する。
【０１５５】
ステップＳ７１３に進むと、プレビュー制御モジュール２１９は、暫定のＦＰ処理用ＰＴに対して、ステップＳ７１１により取得したＦＰに関連付けられているＰＴをマージし、マージされたＰＴを最終的なＦＰ処理用ＰＴと確定し、本処理を終了する。
【０１５６】
以上のように本実施形態によれば、プレビュー制御モジュールがプレビュー表示を行うにあたりプレビュー用ＸＰＳ文書内の各ページの印刷イメージを加工した場合であっても、印刷プレビュー後に、当該プレビュー用ＸＰＳ文書を用いて実印刷処理を継続できるようになる。
【０１５７】
これにより、印刷プレビュー時と実印刷時とでレイアウト処理を重複して行うことがなくなるといった第１実施形態における効果を得られながらも、従来より提供してきたＣＤ−Ｒ領域表示機能を実現することができる。
【０１５８】
従って、ＣＤ−Ｒメディアに印刷する場合に、ユーザはＣＤ−Ｒ上に印刷される内容を事前に正確に確認できるようになるため、印刷装置にセットする専用トレイを汚してしまうことも防ぐことができるようになり、より使い勝手の良い印刷プレビュー機能を提供することができる。
【０１５９】
〔第３実施形態〕
第２実施形態では、プレビュー制御モジュールがプレビュー表示を行うにあたりプレビュー用ＸＰＳ文書内の各ページの印刷イメージを加工した場合には、
各ページの印刷イメージを加工前の状態に戻してから実印刷を継続できるように構成した。これによって、従来より提供してきたＣＤ−Ｒ領域表示機能を実現しながらも、印刷プレビュー時と実印刷時とでレイアウト処理を重複して行わないようになる。
【０１６０】
本実施形態では、プレビュー制御モジュールがプレビュー表示を行うにあたりプレビュー用ＸＰＳ文書内の各ページの印刷イメージを加工した場合に、プレビュー制御モジュールが各ページの印刷イメージを加工前の状態に戻すことなく実印刷を継続できるように構成する。
【０１６１】
なお、第２実施形態と共通する部分、例えば図１、図２などについてはその説明を省略する。ただし、図１５の処理は第２実施形態に特有であり、本実施形態では図１５に代えて図１９の処理が実行される。また、図１７の処理は第２実施形態に特有であり、本実施形態では図１７の処理は実行されない。
【０１６２】
具体的には、プレビュー制御モジュール２１９は、プレビュー用ＸＰＳ文書２２１が完成した後にユーザから印刷開始の指示を受けた場合には、第２実施形態におけるプレビュー用ＸＰＳ文書リセット処理を行わずに、プレビュー用ＸＰＳ文書２２１のデータを用いて新規の印刷ジョブを作成し終了する。
【０１６３】
一方、印刷コマンドフィルター２１７は、プレビューフィルター２１５から出力されたＸＰＳデータを入力として受け取ると、後述する印刷コマンドフィルター処理に従い、ＸＰＳデータをプリンタが解釈可能な印刷コマンドに変換し出力する。
【０１６４】
＜プレビュー制御モジュールの処理＞
図１９は、本実施形態におけるプレビュー制御モジュール２１９の処理を示すフローチャートの一例である。同図は第２実施形態で示した図１５の処理をのうちステップＳ５０４の処理だけを省いたものであるため説明を省略する。
【０１６５】
＜印刷コマンドフィルター処理フローの一例＞
図２０は、本実施形態における印刷コマンドフィルター２１７の処理を示すフローチャートの一例である。
【０１６６】
なお、Ｓ９０１〜Ｓ９１１は各ステップを示す。また、各ステップは、データ処理装置１０２のＣＰＵが外部記憶装置等から制御プログラムをメモリにロードして実行することで実現される。
【０１６７】
ステップＳ９０１〜ステップＳ９１１はＸＰＳデータに含まれる各ドキュメントに対して処理を行うドキュメント処理ループである。
【０１６８】
ステップＳ９０１はドキュメント処理ループの開始端であり、続くステップＳ９０２〜ステップＳ９１０の処理をＸＰＳデータに含まれる先頭ドキュメントのＦＤから順に行っていく。
【０１６９】
ステップＳ９０２〜ステップＳ９１０は当該ＦＤに含まれる各ページに対して処理を行うページ処理ループである。
【０１７０】
ステップＳ９０２はページ処理ループの開始端であり、続くステップＳ９０３〜ステップＳ９０９の処理を当該ＦＤに含まれる先頭ページのＦＰから順に行っていく。
【０１７１】
次に、ステップＳ９０３で、印刷コマンドフィルター２１７は、ＦｉｘｅｄＰａｇｅ処理用ＰｒｉｎｔＴｉｃｋｅｔ取得処理により、当該ページの印刷設定情報（ＰＴ）を取得する。
【０１７２】
ステップＳ９０４〜ステップＳ９０８は当該ページのＦＰに含まれる各描画命令に対して処理を行う描画命令処理ループである。
【０１７３】
ステップＳ９０４は描画命令処理ループの開始端であり、続くステップＳ９０５〜ステップＳ９０７の処理をＦＰに含まれる先頭の描画命令から順に行っていく。
【０１７４】
次に、ステップＳ９０５で、印刷コマンドフィルター２１７は、ＦＰに含まれる描画命令を取得する。
【０１７５】
次に、ステップＳ９０６で、印刷コマンドフィルター２１７は、ステップＳ９０５により取得した描画命令がプレビュー表示を行うためにプレビュー制御モジュールによって格納された描画命令であるか否かを判別する。具体的には、ＦｉｘｅｄＰａｇｅのルート要素において、プレフィックスが“ｎｓ００００”となるプライベートの名前空間を宣言されているか否か、ならびに、描画命令の属性情報として上記名前空間に属する“ｎｓ００００：ｏｗｎｅｒ”属性が定義され、属性値として“Ｐｒｅｖｉｅｗｅｒ”が指定されているか否かを判別する。
【０１７６】
この判別の結果、プレビュー制御モジュールによって格納された描画命令であると判別した場合は、ステップＳ９０８へ進む。また、そうでない（プレビュー表示固有の描画命令以外の描画命令）と印刷コマンドフィルター２１７が判別した場合にはステップＳ９０７へ進む。
【０１７７】
ステップＳ９０７に進むと、印刷コマンドフィルター２１７は、ステップＳ９０５により取得した描画命令をプリンタが解釈可能な印刷コマンドに変換する。
【０１７８】
ステップＳ９０８は描画命令処理ループの終端であり、当該ＦＰに含まれる最終の描画命令に対して処理が完了するまでステップＳ９０４に戻る処理を繰り返す。一方、最終の描画命令に対して処理が完了している場合にはステップＳ９０９へ進む。
【０１７９】
ステップＳ９０９に進むと、印刷コマンドフィルター２１７は、ステップＳ９０７により変換された印刷コマンドを出力する。
【０１８０】
ステップＳ９１０はページ処理ループの終端であり、当該ＦＤに含まれる最終ページのＦＰに対して処理が完了するまでステップＳ９０２に戻る処理を繰り返す。一方、最終ページのＦＰに対して処理が完了している場合にはステップＳ９１１へ進む。
【０１８１】
ステップＳ９１１はドキュメント処理ループの終端であり、ＸＰＳデータに含まれる最終ドキュメントのＦＤに対して処理が完了するまでステップＳ９０１に戻る処理を繰り返す。一方、最終ドキュメントのＦＤに対して処理が完了している場合には本処理を終了する。
【０１８２】
〔第４実施形態〕
第１実施形態では、印刷プレビュー後に実印刷を行うにあたり、印刷プレビュー時に作成したレイアウト処理済みのプレビュー用ＸＰＳ文書をそのまま利用して実印刷を継続できるように構成した。これによって、実印刷時には、レイアウト処理済みのプレビュー用ＸＰＳ文書に対して必要な残りの処理だけを行えば良いことになるため、印刷プレビュー時と実印刷時とでレイアウト処理を重複して行うことがなくなる。
【０１８３】
ここで、印刷プレビューの表示中にその場で印刷設定の変更を受け付け、変更した印刷設定に応じて印刷処理を実行する技術が従来より提供されている。従来技術では、印刷プレビュー後の実印刷時に実印刷用の印刷イメージを最初から生成しなおす構成であったため、印刷プレビュー中に変更された印刷設定に応じて印刷処理を行うことができていた。
【０１８４】
一方で、第１実施形態の構成下で印刷プレビューの表示中にその場で印刷設定の変更を受け付ける場合には問題がある。
【０１８５】
具体的には、第１実施形態では、印刷プレビュー時に作成したレイアウト処理済みのプレビュー用ＸＰＳ文書をそのまま利用して実印刷を継続するため、印刷プレビュー中に変更された印刷設定の内容次第では、処理済みのレイアウトと変更後の印刷設定との間に矛盾が生じる。たとえば、Ａ４用紙に対して２ｉｎ１の割付印刷のレイアウト処理を施したプレビュー用ＸＰＳ文書を印刷プレビューにて表示し、プレビュー表示中に出力用紙の設定をＡ４からＢ５に変更するようなケース等が挙げられる。ユーザは当然実印刷結果としてＢ５用紙のサイズにフィットする２ｉｎ１の割付印刷を期待しているわけだが、第１実施形態の構成に従ってプレビュー用ＸＰＳ文書をそのまま利用して実印刷を継続してしまうと、Ａ４用紙のサイズにフィットするような２ｉｎ１の割付印刷をレイアウトすることになる。このため、Ａ４用紙とはサイズも縦横比も異なるＢ５用紙には印刷イメージが収まらずに印字欠けを引き起こす、或いは、文書自体は何とかＢ５用紙内に収まったとしてもレイアウト位置が一辺に偏ってしまう等、所望する印刷結果を得られないことになる。
【０１８６】
そこで本実施形態では、第１実施形態の構成下で印刷プレビュー表示中の印刷設定変更機能を提供するにあたり、プレビュー用ＸＰＳ文書に対して既に施されている印刷処理（たとえばレイアウト処理）に影響を与えない範囲内で印刷設定の変更を受け付けるように構成する。
【０１８７】
なお、第１実施形態と共通する部分、例えば図１、図２などについてはその説明を省略する。ただし、図１１の処理は第１実施形態に特有であり、本実施形態では図１１に代えて図２５の処理が実行される。
【０１８８】
具体的には、レイアウトフィルター２１３は、印刷設定情報に基づきページのレイアウト処理を行った後、後述する処理済みフラグ格納処理を行う。
【０１８９】
一方、プレビュー制御モジュール２１９は、プレビューフィルター２１５により起動されると、プレビュー用ＸＰＳ文書２２１を読込み、プレビュー表示すべきページ（例えば１ページ目）について後述する設定可能値一覧表示処理を行う。またプレビュー制御モジュール２１９は、ユーザの指示に従い表示するページを切り替える際にも同様に設定可能値一覧表示処理を行う。
【０１９０】
さらに、プレビュー制御モジュール２１９は、ユーザの指示により印刷設定の変更を受けると後述する印刷設定更新処理を行う。
【０１９１】
＜処理済みフラグ格納処理＞
次に、本実施形態におけるレイアウトフィルター２１３が行う処理済みフラグ格納処理の詳細について説明する。
【０１９２】
先ず、レイアウトフィルター２１３は、参照用ＰｒｉｎｔＴｉｃｋｅｔ取得処理により取得したＰＴに対して、実際に印刷設定情報に基づいて行ったレイアウト処理について処理済みフラグを格納する。具体的には、たとえば、“ｎａｍｅ”属性の値が“ｐｓｆ：ＪｏｂＮｕｐＡｌｌＤｏｃｕｍｅｎｔｓＣｏｎｔｉｇｕｏｕｓｌｙ”となる“ｐｓｆ：Ｆｅａｔｕｒｅ”要素を参照して２ｉｎ１の割付印刷処理を行ったのであれば、当該ＰＴのルート要素において、プレフィックスが“ｎｓ００００”となるプライベートの名前空間を宣言する。そして、当該“ｐｓｆ：Ｆｅａｔｕｒｅ”要素の属性情報として上記名前空間に属する“ｎｓ００００：ｌａｙｏｕｔｆｉｌｔｅｒｐｒｏｃｅｓｓ”属性を定義し、属性値として“ｄｏｎｅ”を指定する。これにより、レイアウトフィルター２１３が２ｉｎ１の割付印刷を処理済みであることを識別できるようになる。
【０１９３】
続いて、レイアウトフィルター２１３は、処理済みのレイアウト処理を行った際の前提条件となる印刷設定について、上記と同様の処理済みフラグを格納する。具体的には、たとえば、２ｉｎ１の割付印刷処理を行うにあたり、用紙設定に基づいてレイアウト位置やサイズを決定したのであれば、用紙設定に相当する要素、すなわち、“ｎａｍｅ”属性の値が“ｐｓｆ：ＰａｇｅＭｅｄｉａＳｉｚｅ”となる“ｐｓｆ：Ｆｅａｔｕｒｅ”要素について、上記同様の属性情報を付加する。これにより、レイアウトフィルター２１３が用紙設定に基づいてレイアウト処理を行ったことを識別できるようになる。
【０１９４】
＜設定可能値一覧表示処理＞
次に、本実施形態におけるプレビュー制御モジュール２１９が行う設定可能値一覧表示処理の概要について説明する。
【０１９５】
先ず、プレビュー制御モジュール２１９は、プレビュー用ＸＰＳ文書からプレビュー表示を行うページの印刷設定情報（ＰＴ）を取得する。
【０１９６】
続いて、プレビュー制御モジュール２１９は、上記取得したＰＴを参照して設定変更を受け付けるべき印刷設定について、レイアウトフィルター２１３が当該印刷設定に基づいてレイアウト処理済みを行ったか否かを判断する。ここで、当該印刷設定に基づいてレイアウト処理済みを行っている場合には、当該印刷設定の設定変更を受け付けないようにする。一方、当該印刷設定に基づいてレイアウト処理済みを行ってはいない場合には、上記取得したＰＴを用いて取得したＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓ（以下ＰＣ）に基づいて設定変更可能な選択肢を決定し、その選択肢の一覧をプレビュー画面に表示する。なお、ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓとは、ＰＴを用いて印刷設定を行うにあたり、プリンタやプリンタドライバの能力情報、具体的には設定可能な設定値の情報等をＸＭＬ形式で記述したものである。ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓは、ＰＴと同様に、ＰｒｉｎｔＳｃｈｅｍａと呼ばれるスキーマにより既定されている。
【０１９７】
＜処理済みフラグ格納処理後のＰｒｉｎｔＴｉｃｋｅｔの例＞
図２１は、本実施形態におけるレイアウトフィルター２１３が、処理済みフラグ格納処理を終えた後のＰＴの一例を示す図である。
【０１９８】
図２１（Ａ）は、通常印刷の設定がなされているＰＴの一例を示している。図２１（Ａ）の例では、割付印刷の設定がなされていなかったため、レイアウトフィルター２１３により割付印刷のレイアウト処理が行われない。ゆえに、割付印刷に相当する要素、すなわち、“ｎａｍｅ”属性の値が“ｐｓｆ：ＪｏｂＮｕｐＡｌｌＤｏｃｕｍｅｎｔｓＣｏｎｔｉｇｕｏｕｓｌｙ”となる“ｐｓｆ：Ｆｅａｔｕｒｅ”要素に対して処理済みフラグが付加されていない。また、同様に用紙設定についても処理済みフラグが付加されていない。
【０１９９】
図２１（Ｂ）は、割付印刷として２ｉｎ１設定がなされているＰＴの一例を示している。図２１（Ｂ）の例では、割付印刷として２ｉｎ１の設定がなされているため、レイアウトフィルター２１３により割付印刷のレイアウト処理が行われる。ゆえに、割付印刷に相当する要素、すなわち、“ｎａｍｅ”属性の値が“ｐｓｆ：ＪｏｂＮｕｐＡｌｌＤｏｃｕｍｅｎｔｓＣｏｎｔｉｇｕｏｕｓｌｙ”となる“ｐｓｆ：Ｆｅａｔｕｒｅ”要素に対して処理済みフラグが付加されている。また、同様に用紙設定についても処理済みフラグが付加されていることから、２ｉｎ１の割付印刷を処理するに際し、用紙設定に基づいてレイアウトを決定していたであろう事が示されている。
【０２００】
＜ＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓの例＞
図２２は、本実施形態におけるプレビュー制御モジュール２１９が印刷設定の設定変更を受け付けるに際し、設定可能な選択肢を決定する際に取得するＰＣの一例を示す図である。図２２の例では、用紙設定に相当する“ｎａｍｅ”属性の値が“ｐｓｆ：ＰａｇｅＭｅｄｉａＳｉｚｅ”となる“ｐｓｆ：Ｆｅａｔｕｒｅ”要素の子要素として複数の“ｐｓｆ：Ｏｐｔｉｏｎ”要素が存在している。これによりプリンタ２３１がサポートする用紙を識別することができる。さらに、“ｐｓｆ：Ｏｐｔｉｏｎ”要素の属性情報として、“ｃｏｎｓｔｒａｉｎｅｄ”属性が定義されている。“ｃｏｎｓｔｒａｉｎｅｄ”属性は、“ｐｓｆ：Ｏｐｔｉｏｎ”要素にて表される用紙が現在選択可能か否かを示している。具体的には、属性値が“ｐｓｋ：Ｎｏｎｅ”の場合には、“ｐｓｆ：Ｏｐｔｉｏｎ”要素にて表される用紙が現在選択可能であることを示している。一方、属性値が“ｐｓｋ：ＰｒｉｎｔＴｉｃｋｅｔＳｅｔｔｉｎｇｓ”の場合には、“ｐｓｆ：Ｏｐｔｉｏｎ”要素にて表される用紙が現在選択不可であることを示している。図２２の例では、具体的にプリンタ２３１が「Ａ５」「Ａ４」「Ｂ５」「Ｌ判」「２Ｌ判」の５つの用紙をサポートしていることを示しており、その全ての用紙が現在選択可能であることを示している。
【０２０１】
＜印刷プレビュー画面の例＞
図２３は本実施形態におけるプレビュー制御モジュール２１９によって提供される印刷プレビュー画面のうち、特に通常印刷の設定がなされていた場合の印刷プレビュー画面２３００の一例を示した図である。図２３の例では、用紙の種類、給紙方法、及び、出力用紙の設定変更が可能となっている。
【０２０２】
図２３において“２３０１”は、印刷プレビュー画面において設定変更可能な用紙設定の一覧を示している。具体的に「Ａ５」「Ａ４」「Ｂ５」「Ｌ判」「２Ｌ判」の５つの用紙が選択可能となっている。
【０２０３】
図２４は本実施形態におけるプレビュー制御モジュール２１９によって提供される印刷プレビュー画面のうち、特に割付印刷として２ｉｎ１の設定がなされていた場合の印刷プレビュー画面２４００の一例を示した図である。図２４の例では、用紙の種類、給紙方法、及び、出力用紙の設定変更が可能となっている。
【０２０４】
図２４において“２４０１”は、印刷プレビュー画面において設定変更可能な用紙設定の一覧を示している。具体的には、現在設定されている用紙（本例では「Ａ４」）しか選択できないようになっている。
【０２０５】
＜プレビュー制御モジュールの処理＞
図２５は、本実施形態におけるプレビュー制御モジュール２１９の処理を示すフローチャートの一例である。同図において第１実施形態で示した図１１と同様の処理には同一のステップ番号を示し、その説明を省略する。
【０２０６】
ステップＳ１００１で、詳細は後述するが、プレビュー制御モジュール２１９は、設定可能値一覧表示処理により、表示すべきページ（例えば１ページ目）において設定変更可能な印刷設定ならびにその選択肢を印刷プレビュー画面上に表示する。
【０２０７】
次に、ステップＳ１００２で、プレビュー制御モジュール２１９は、Ｓ３０３により取得したイベントが印刷設定の変更か否かを判別する。
【０２０８】
この判別の結果、Ｓ３０３により取得したイベントが印刷設定の変更であると判別した場合は、ステップＳ１００３へ進む。また、そうでないとプレビュー制御モジュール２１９が判別した場合にはステップＳ１００４へ進む。
【０２０９】
ステップＳ１００３に進むと、詳細は後述するが、プレビュー制御モジュール２１９は、印刷設定更新処理により、プレビューＸＰＳ文書２２１に含まれる当該ページのＰＴを更新する。
【０２１０】
ステップＳ１００４に進むと、プレビュー制御モジュール２１９は、Ｓ３０３により取得したイベントがプレビュー表示するページの切り替えか否かを判別する。
【０２１１】
この判別の結果、Ｓ３０３により取得したイベントがプレビュー表示するページの切り替えであると判別した場合は、ステップＳ１００５へ進む。また、そうでないとプレビュー制御モジュール２１９が判別した場合にはステップＳ３０９へ進む。
【０２１２】
ステップＳ１００５に進むと、プレビュー制御モジュール２１９は、設定可能値一覧表示処理により、Ｓ３０３により取得したイベントでユーザが指定したページにおいて設定変更可能な印刷設定ならびにその選択肢を印刷プレビュー画面上に表示する。
【０２１３】
＜設定可能値一覧表示処理フローの一例＞
図２６は、図２５に示したステップＳ１００１、ならびに、ステップＳ１００５の設定可能値一覧表示処理の詳細処理例である。
【０２１４】
なお、Ｓ１１０１〜Ｓ１１０６は各ステップを示す。また、各ステップは、データ処理装置１０２のＣＰＵが外部記憶装置等から制御プログラムをメモリにロードして実行することで実現される。
【０２１５】
まず、ステップＳ１１０１で、詳細は後述するが、プレビュー制御モジュール２１９は、設定可能値一覧取得処理により、プレビュー表示を行うページにおいて設定可能な用紙の種類の一覧を取得する。
【０２１６】
次に、ステップＳ１１０２で、プレビュー制御モジュール２１９は、ステップＳ１１０１により取得した用紙の種類の一覧を印刷プレビュー画面に表示する。
【０２１７】
次に、ステップＳ１１０３で、プレビュー制御モジュール２１９は、設定可能値一覧取得処理により、プレビュー表示を行うページにおいて設定可能な給紙方法の一覧を取得する。
【０２１８】
次に、ステップＳ１１０４で、プレビュー制御モジュール２１９は、ステップＳ１１０３により取得した給紙方法の一覧を印刷プレビュー画面に表示する。
【０２１９】
次に、ステップＳ１１０５で、プレビュー制御モジュール２１９は、設定可能値一覧取得処理により、プレビュー表示を行うページにおいて設定可能な出力用紙の一覧を取得する。
【０２２０】
次に、ステップＳ１１０６で、プレビュー制御モジュール２１９は、ステップＳ１１０５により取得した出力用紙の一覧を印刷プレビュー画面に表示し、本処理を終了する。
【０２２１】
＜設定可能値一覧取得処理フローの一例＞
図２７は、図２６に示したステップＳ１１０１、ステップＳ１１０３、ならびに、ステップＳ１１０５の設定可能値一覧取得処理の詳細処理例である。
【０２２２】
なお、Ｓ１２０１〜Ｓ１２０５は各ステップを示す。また、各ステップは、データ処理装置１０２のＣＰＵが外部記憶装置等から制御プログラムをメモリにロードして実行することで実現される。
【０２２３】
まず、ステップＳ１２０１で、プレビュー制御モジュール２１９は、ＦｉｘｅｄＰａｇｅ処理用ＰｒｉｎｔＴｉｃｋｅｔ取得処理により、プレビュー表示を行うページの印刷設定情報（ＰＴ）を取得する。
【０２２４】
次に、ステップＳ１２０２で、プレビュー制御モジュール２１９は、ステップＳ１２０１により取得したＰＴを参照して設定可能値一覧を取得すべき印刷設定についてレイアウト処理済フラグが付加されているか否かを判別する。具体的には、たとえば用紙の種類の設定可能値一覧を取得したい場合には、ＰＴのルート要素において、プレフィックスが“ｎｓ００００”となるプライベートの名前空間を宣言されているか否か、ならびに、“ｎａｍｅ”属性の値が“ｐｓｆ：ＰａｇｅＭｅｄｉａＴｙｐｅ”となる“Ｆｅａｔｕｒｅ”要素の属性情報として上記名前空間に属する“ｎｓ００００：ｌａｙｏｕｔｆｉｌｔｅｒｐｒｏｃｅｓｓ”属性が定義され、属性値として“ｄｏｎｅ”が指定されているか否かを判別する。
【０２２５】
この判別の結果、レイアウト処理済フラグが付加されていると判別した場合は、ステップＳ１２０５へ進む。また、そうでないとプレビュー制御モジュール２１９が判別した場合にはステップＳ１２０３へ進む。
【０２２６】
ステップＳ１２０３に進むと、プレビュー制御モジュール２１９は、ステップＳ１２０１により取得したＰＴを用いて、現在の印刷設定下におけるＰＣを取得し、本処理を終了する。
【０２２７】
次に、ステップＳ１２０４で、プレビュー制御モジュール２１９は、ステップＳ１２０３により取得したＰＴを参照して設定可能値一覧を取得する。
【０２２８】
ステップ１２０５に進むと、プレビュー制御モジュール２１９は、ステップＳ１２０１により取得したＰＴを参照して設定可能値一覧を取得すべき印刷設定の内容を唯一の設定可能値として取得し、本処理を終了する。
【０２２９】
＜印刷設定更新処理フローの一例＞
図２８は、図２５に示したステップＳ１００３の印刷設定更新処理の詳細処理例である。
なお、Ｓ１３０１〜Ｓ１３０５は各ステップを示す。また、各ステップは、データ処理装置１０２のＣＰＵが外部記憶装置等から制御プログラムをメモリにロードして実行することで実現される。
【０２３０】
まず、ステップＳ１３０１で、プレビュー制御モジュール２１９は、プレビュー用ＸＰＳ文書２２１からプレビュー表示すべきページのＦＰを取得する。
【０２３１】
次に、ステップＳ１３０２で、プレビュー制御モジュール２１９は、ステップＳ１３０１により取得したＦＰに関連付けられているＰＴを取得する。
【０２３２】
次に、ステップＳ１３０３で、プレビュー制御モジュール２１９は、ステップＳ１３０２によりＦＰに関連付けられているＰＴを取得できたか否かを判別する。
【０２３３】
この判別の結果、ＦＰに関連付けられているＰＴを取得できたと判別した場合は、ステップＳ１３０５へ進む。また、そうでないとプレビュー制御モジュール２１９が判別した場合にはステップＳ１３０４へ進む。
【０２３４】
ステップＳ１３０４に進むと、プレビュー制御モジュール２１９は、印刷設定が何もなされていないＰＴを生成し、ステップＳ１３０１により取得したＦＰに関連付ける。印刷設定が何もなされていないＰＴとは、具体的には、たとえば、ルート要素だけが存在するＰＴを指す。
【０２３５】
ステップＳ１３０５に進むと、プレビュー制御モジュール２１９は、ユーザから受け付けた印刷設定の変更内容をプレビュー表示すべきページのＦＰに関連付けられているＰＴに反映し、本処理を終了する。
【０２３６】
本実施形態によれば、第１実施形態の構成下で印刷プレビュー表示中の印刷設定変更機能を提供するにあたり、プレビュー用ＸＰＳ文書に対して既に施されている印刷処理（例えばレイアウト処理）に影響を与えない範囲内で印刷設定の変更を受け付けることができる。
【０２３７】
これにより、印刷プレビュー時と実印刷時とでレイアウト処理を重複して行うことがなくなるといった第１実施形態における効果を得られながらも、従来より提供してきた印刷設定変更機能を実現することができる。従って、印刷プレビュー表示中にアプリケーションで設定した印刷設定の内容を簡単に確認できるようになる。さらに、一定の範囲内ではあるが、印刷設定の間違いに気づいた場合に印刷設定を変更することができるようになり、より使い勝手の良い印刷プレビュー機能を提供することができる。
【０２３８】
なお、本発明は、必ずしも本実施形態に限定されるものではなく、種々の形態での実施が可能である。
【０２３９】
〔第５実施形態〕
以下、図２９に示すメモリマップを参照して本発明に係る情報処理装置で読み取り可能なデータ処理プログラムの構成について説明する。
【０２４０】
図２９は、本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【０２４１】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０２４２】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０２４３】
本実施形態における図８〜図１１、図１５〜図２０、及び、図２５〜図２８に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０２４４】
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０２４５】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０２４６】
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０２４７】
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【０２４８】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０２４９】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバやｆｔｐサーバ等も本発明の請求項に含まれるものである。
【０２５０】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０２５１】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。例えばそのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行う。そして、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２５２】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込ませる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２５３】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組合せを含む）が可能であり、それらを本発明の範囲から排除するものではない。
【０２５４】
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
【図面の簡単な説明】
【０２５５】
【図１】本発明の実施形態に係わる印刷システムの一例を示すブロック図
【図２】本発明の実施形態に係わるプリンタドライバ一例を示すブロック図
【図３】本発明の実施形態に係わる印刷設定ダイアログの一例を示す図
【図４】本発明の実施形態に係わるプレビューウィンドウの一例を示す図
【図５】ＸＰＳの論理構造の概念図
【図６】本発明の実施形態に係わるプレビュー済フラグの格納方法の一例を示す図
【図７】本発明の実施形態に係わる印刷キュー内の印刷ジョブとプレビューの関係を示す概念図
【図８】本発明の実施形態に係わるレイアウトフィルターの処理を示すフローチャート
【図９】本発明の実施形態に係わる参照用ＰｒｉｎｔＴｉｃｋｅｔを取得する処理のフローチャート
【図１０】本発明の実施形態に係わるプレビューフィルターの処理を示すフローチャート
【図１１】本発明の実施形態に係わるプレビュー制御モジュールの処理を示すフローチャート
【図１２】本発明の第２実施形態に係わるＣＤ−Ｒ領域表示を含む印刷プレビュー画面の一例を示す図である。
【図１３】本発明の第２実施形態に係わるＣＤ−Ｒ領域表示を行うＦｉｘｅｄＰａｇｅの例を示す図である。
【図１４】本発明の第２実施形態に係わるＣＤ−Ｒ印刷設定がなされたＰｒｉｎｔＴｉｃｋｅｔの一例を示す図である。
【図１５】本発明の第２実施形態に係わるプレビュー制御モジュールの処理の一例を示すフローチャートである。
【図１６】本発明の第２実施形態に係わるプレビュー表示処理の一例を示すフローチャートである。
【図１７】本発明の第２実施形態に係わるプレビュー用ＸＰＳ文書リセット処理の一例を示すフローチャートである。
【図１８】本発明の第２実施形態に係わるＦｉｘｅｄＰａｇｅ処理用ＰｒｉｎｔＴｉｃｋｅｔ取得処理の一例を示すフローチャートである。
【図１９】本発明の第３実施形態に係わるプレビュー制御モジュールの処理の一例を示すフローチャートである。
【図２０】本発明の第３実施形態に係わる印刷コマンドフィルターの処理の一例を示すフローチャートである。
【図２１】本発明の第４実施形態に係わる処理済みフラグ格納処理後のＰｒｉｎｔＴｉｃｋｅｔの一例を示す図である。
【図２２】本発明の第４実施形態に係わるＰｒｉｎｔＣａｐａｂｉｌｉｔｉｅｓの一例を示す図である。
【図２３】本発明の第４実施形態に係わる通常印刷の設定がなされていた場合の印刷プレビュー画面の一例を示す図である。
【図２４】本発明の第４実施形態に係わる割付印刷として２ｉｎ１の設定がなされていた場合の印刷プレビュー画面の一例を示す図である。
【図２５】本発明の第４実施形態に係わるプレビュー制御モジュールの処理の一例を示すフローチャートである。
【図２６】本発明の第４実施形態に係わる設定可能値一覧表示処理の一例を示すフローチャートである。
【図２７】本発明の第４実施形態に係わる設定可能値一覧取得処理の一例を示すフローチャートである。
【図２８】本発明の第４実施形態に係わる印刷設定更新処理の一例を示すフローチャートである。
【図２９】本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【符号の説明】
【０２５６】
１３０  プリンタドライバ
１３４  印刷コマンド生成部
２１１  ユーザインタフェースモジュール
２１３  レイアウトフィルター
２１５  プレビューフィルター
２１７  印刷コマンドフィルター
２１９  プレビュー制御モジュール
３０１  印刷設定ダイアログ
３２７  プレビュー印刷設定部
４０１  印刷プレビューウィンドウ
４０５  印刷開始ボタン
４０６  印刷中止ボタン
１２００  印刷プレビュー画面
２３００  印刷プレビュー画面
２４００  印刷プレビュー画面
【図１】
2008186254.tif 000003
【図２】
2008186254.tif 000004
【図３】
2008186254.tif 000005
【図４】
2008186254.tif 000006
【図５】
2008186254.tif 000007
【図６】
2008186254.tif 000008
【図７】
2008186254.tif 000009
【図８】
2008186254.tif 000010
【図９】
2008186254.tif 000011
【図１０】
2008186254.tif 000012
【図１１】
2008186254.tif 000013
【図１２】
2008186254.tif 000014
【図１３】
2008186254.tif 000015
【図１４】
2008186254.tif 000016
【図１５】
2008186254.tif 000017
【図１６】
2008186254.tif 000018
【図１７】
2008186254.tif 000019
【図１８】
2008186254.tif 000020
【図１９】
2008186254.tif 000021
【図２０】
2008186254.tif 000022
【図２１】
2008186254.tif 000023
【図２２】
2008186254.tif 000024
【図２３】
2008186254.tif 000025
【図２４】
2008186254.tif 000026
【図２５】
2008186254.tif 000027
【図２６】
2008186254.tif 000028
【図２７】
2008186254.tif 000029
【図２８】
2008186254.tif 000030
【図２９】
2008186254.tif 000031