(57)【要約】【課題】ＸＰＳ文書に対して複数のフィルタを適用したときに、ユーザが期待するレイアウトを得る。【解決手段】複数のフィルタ１５，１５，・・・を適用するフィルタパイプライン１３と、印刷データに適用するフィルタの選択を受け付けるフィルタ選択部２０とを備える。各フィルタ１５、１５，・・・は互いに独立であって、かつ、互いに異なる所定のフィルタ処理を行う。複数のフィルタが選択された場合、ＸＰＳ文書に対して、選択された複数のフィルタを、予め定められている優先順位に従って順次適用する。【選択図】図１
2008052361.tif 000002
【特許請求の範囲】
【請求項１】
ＸＰＳ（ＸＭＬ Ｐａｐｅｒ Ｓｐｅｃｉｆｉｃａｔｉｏｎ）仕様で記述された印刷データにフィルタ処理を施す印刷データ処理装置であって、
互いに独立であって、かつ、互いに異なる所定のフィルタ処理を行う、複数のフィルタ手段と、
前記複数のフィルタ手段の中から、前記印刷データに適用するフィルタ手段を選択する選択手段と、を備え、
前記選択手段で複数のフィルタ手段が選択された場合、前記印刷データに対して、当該選択された複数のフィルタ手段を、予め定められている優先順位に従って順次適用する、印刷データ処理装置。
【請求項２】
前記複数のフィルタ手段には、少なくとも、一枚の印刷用紙に複数ページを割り当てるＮ−ｕｐフィルタと、同一ページを複数枚印刷するコピー印刷フィルタとが含まれていて、
前記Ｎ−ｕｐフィルタは前記コピー印刷フィルタよりも優先順位が高いことを特徴とする請求項１記載の印刷データ処理装置。
【請求項３】
ＸＰＳ（ＸＭＬ Ｐａｐｅｒ Ｓｐｅｃｉｆｉｃａｔｉｏｎ）仕様で記述された印刷データにフィルタ処理を施す方法であって、
互いに独立であって、かつ、互いに異なる所定のフィルタ処理を行う複数のフィルタの中から、適用する複数のフィルタの選択を受け付けるステップと、
印刷データを取得するステップと、
前記取得した印刷データに対して、前記選択された複数のフィルタを、予め定められている優先順位に従って順次適用するステップと、を有する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＸＰＳ（ＸＭＬ Ｐａｐｅｒ Ｓｐｅｃｉｆｉｃａｔｉｏｎ）仕様に従って記述された印刷データに対してフィルタ処理を行うための技術に関する。
【背景技術】
【０００２】
ＸＰＳ仕様で記述された印刷データにフィルタ処理を適用する場合、ＸＰＳＤｒｖ Ｆｉｌｔｅｒ Ｐｉｐｅｌｉｎｅでは、ＸＰＳスプールファイルを読み込んでフィルタ処理を行い、最終フィルタの処理後、ラスタデータまたはＰＤＬ（Ｐａｇｅ
Ｄｅｓｃｒｉｐｔｉｏｎ Ｌａｎｇｕａｇｅ）を出力データとして生成することが仕様として定められている。また、ＸＰＳＤｒｖ Ｆｉｌｔｅｒ Ｐｉｐｅｌｉｎｅでは、複数のフィルタを適用する順序については制限がないので、印刷データに複数のフィルタを適用する場合に、その適用順序は自由である。
【非特許文献１】http://www.microsoft.com/whdc/device/print/XPSDrv_FilterPipe.mspx
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところが、複数のフィルタを適用する場合には、その適用順序に応じて出力レイアウトが異なる場合がある。
【０００４】
一方で、ユーザがフィルタ処理を選択する場合、特定のレイアウトになることを期待して、そのフィルタを選択している。従って、フィルタがいくつ選択された場合であっても、ユーザが期待するレイアウトと異なるレイアウトで出力されるのは好ましくない。
【０００５】
そこで、本発明の目的は、ＸＰＳ仕様に従って記述された印刷データに対して複数のフィルタ処理を適用したときに、ユーザが期待するレイアウトになるようにすることである。
【課題を解決するための手段】
【０００６】
本発明の一実施態様に従う印刷データ処理装置は、ＸＰＳ（ＸＭＬ Ｐａｐｅｒ Ｓｐｅｃｉｆｉｃａｔｉｏｎ）仕様で記述された印刷データにフィルタ処理を施すものであって、互いに独立であって、かつ、互いに異なる所定のフィルタ処理を行う、複数のフィルタ手段と、前記複数のフィルタ手段の中から、前記印刷データに適用するフィルタ手段を選択する選択手段と、を備え、前記選択手段で複数のフィルタ手段が選択された場合、前記印刷データに対して、当該選択された複数のフィルタ手段を、予め定められている優先順位に従って順次適用する。
【０００７】
これにより、複数のフィルタ手段を適用する場合でも、ユーザの選択順序などとは無関係に、適当なレイアウトが得られるように予め定められている優先順位に従って順次適用することにより、常にユーザが期待するレイアウトを得ることができる。
【０００８】
好適な実施形態では、前記複数のフィルタ手段には、少なくとも、一枚の印刷用紙に複数ページを割り当てるＮ−ｕｐフィルタと、同一ページを複数枚印刷するコピー印刷フィルタとが含まれていて、前記Ｎ−ｕｐフィルタは前記コピー印刷フィルタよりも優先順位が高い方が処理の効率が良い（フィルタ処理後にレイアウトの修正をする必要がない）。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の一実施形態に係る印刷データの処理システムについて、図面を参照して説明する。
【００１０】
図１は、本発明の一実施形態に係る印刷データの処理システムの構成図である。本システムは、ＸＰＳ仕様に従って記述された印刷データ（以下、ＸＰＳ文書と言うことがある）を処理して、プリンタに印刷を実行させる。
【００１１】
以下に説明する個々の構成要素または機能は、例えば汎用的なコンピュータシステムにおいて、所定のコンピュータプログラムを実行して実現することもできるし、またはＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ
Ｓｐｅｃｉｆｉｃ ＩｎｔｅｇｒａｔｅｄＣｉｒｃｕｉｔ）などのハードウェア回路で実現することもできる。あるいは、コンピュータプログラムとハードウェア回路の組み合わせにより実現することもできる。
【００１２】
本システムは、図１に示すように、パソコン本体１と、パソコン本体１に接続された入力装置２と、表示装置３と、プリンタ５とを備える。そして、パソコン本体１には、複数のフィルタ機能を有するフィルタ処理部１０と、フィルタの選択を受け付けるフィルタ選択部２０と、ＡＰ３０と、プリントスプーラ４０と、ＸＰＳスプールファイル記憶部５０とが実現されている。
【００１３】
ＸＰＳスプールファイル記憶部５０には、ＡＰ３０の指示に従って作成されたＸＰＳ文書が格納される。
【００１４】
プリントスプーラ４０は、ＸＰＳスプールファイル記憶部５０に対してＸＰＳ文書のスプールファイルを入出力する。
【００１５】
フィルタ処理部１０は、フィルタ設定を記憶したフィルタ設定記憶部１１と、フィルタ設定に従って、ＸＰＳ文書にフィルタ処理を施すフィルタパイプライン１３とを備える。フィルタパイプライン１３は、印刷データに対してフィルタ設定記憶部１１のフィルタ設定に従ってフィルタ処理を施して、プリンタ５へ送る。プリンタ５は、フィルタ処理が施された印刷データに従って印刷を行う。
【００１６】
フィルタパイプライン１３は、複数のフィルタ１５、１５、・・・を有する。各フィルタ１５、１５、・・・は、互いに独立している。また、各フィルタ１５、１５、・・・は、互いに異なる所定のフィルタ処理を行う。
【００１７】
フィルタパイプライン１３は、プリントスプーラ４０を介してＸＰＳスプールファイル記憶部５０からＸＰＳ文書で表現されている印刷データを取得する。そして、フィルタパイプライン１３は、ＸＰＳ文書で表現されている印刷データに対して、複数のフィルタ１５、１５、・・・を順次実行する。実行されるフィルタ１５は、ユーザによって選択された機能を実現するフィルタである。本実施形態では、例えば、以下のような機能のフィルタを備える。
【００１８】
フィルタとして実現される機能の例
（１）白紙節約・・・白紙ページが含まれているときに、白紙ページを省略する
（２）拡大縮小・・・所定の倍率で拡大または縮小する
（３）スタンプマーク・・・所定のマークをスタンプの様に重ねて印刷する
（４）逆順印刷・・・複数ページの印刷順序を逆転させる
（５）Ｎ−ｕｐ・・・一枚の印刷用紙に複数ページ（Ｎページ）を割り当てる
（６）１８０度回転・・・各ページを１８０度回転させて印刷する
（７）鏡面印刷・・・鏡に映したように左右反対に印刷する
（８）両面印刷・・・印刷用紙の両面に印刷を行う
（９）カラーモノクロ自動判定・・・ページ毎にモノクロとカラーを切り替えて印刷する
（10）コピー印刷・・・同一ページを指定された数枚印刷する
（11）部単位印刷・・・複数ページを部数単位に印刷する
（12）ヘッダ・フッタ・・・用紙の左上、右上などに印刷日付や印刷コンピュータ名を印刷データに上書きする
【００１９】
ここで、上述したような複数種類のフィルタ１５，１５・・・には、予め優先順位が定められている。従って、複数のフィルタ１５，１５・・・が選択された場合には、優先順位の高いものから順次実行される。複数のフィルタ１５、１５，・・・が実行される順序は、フィルタの選択された順序には依存しない。優先順位の詳細については後述する。
【００２０】
フィルタ設定記憶部１１には、各フィルタ１５，１５・・・の優先順位が記憶されている。さらに、フィルタ設定記憶部１１には、以下に説明する選択画面でユーザにより選択されたフィルタを示す選択情報が記憶されている。
【００２１】
フィルタ選択部２０は、例えば、フィルタの選択画面を表示装置３に表示させ、入力装置２からユーザの選択を受け付ける。そして、フィルタ選択部２０は、選択されたフィルタを示す選択情報をフィルタ設定記憶部１１に格納する。
【００２２】
図２は、フィルタの選択画面１００の一例を示す。
【００２３】
フィルタ選択画面１００は、同図に示すように、本システムでサポートしているフィルタ機能の一覧を表示する。そして、この中からユーザが所望するフィルタ機能の選択を受け付ける。一つ以上のフィルタ機能の選択を受け付けることができる。
【００２４】
次に、図３を用いてフィルタの優先順位について説明する。
【００２５】
図３は、複数のフィルタ１５、１５，・・・の優先順位を示す。つまり、同図に示すように、「白紙節約」が最も優先順位が高く、以下、「拡大縮小」、「スタンプマーク」と優先順位が下がり、最も優先順位が低いのが「ページ出力順序入れ替え」である。この優先順位は、複数のフィルタを組み合わせたときに得られるレイアウトが、一般にユーザが期待するレイアウトが得られるように予め定めたものである。
【００２６】
例えば、「白紙節約」を行った後「拡大縮小」を行った方が、白紙ページの拡大・縮小処理を行わなくてよいので「白紙節約」の優先順位が「拡大縮小」よりも高くなっている。しかしながら、「白紙節約」と「拡大縮小」の優先順位を逆転させても仕上がりのレイアウトには影響がないので、入れ替えてもよい。
【００２７】
また、「カラーモノクロ自動判定」の優先順位は「９」となっているが、他のフィルタにまったく影響を与えないので、優先順位はいくつでもよい。
【００２８】
「１８０度回転」、「鏡面印刷」及び「両面印刷」の３つは、相互の優先順位は問わないので、同じ優先順位としてもよいし、相互に入れ替えてもよい。
【００２９】
図４に、「Ｎ−ｕｐ」と「コピー印刷」が選択された場合のフィルタ適用順序の相違によるレイアウトの違いの一例を示す。
【００３０】
２ページを有する印刷データに対して、「Ｎ−ｕｐ」を行った後「コピー印刷」を行うと、左側に示すように、１枚の用紙に１ページ目と２ページ目が印刷されたものが２部できあがる。一方、「コピー印刷」を行った後「Ｎ−ｕｐ」を行うと、右側に示すように、１ページ目が２枚印刷された用紙と２ページ目が２枚印刷された用紙ができあがる。
【００３１】
「Ｎ−ｕｐ」と「コピー印刷」が選択された場合、一般にユーザが期待するのは左側のレイアウトであるので、本実施形態では、「Ｎ−ｕｐ」の優先順位を「コピー印刷」の優先順位よりも高くし、「Ｎ−ｕｐ」を「コピー印刷」よりも先に適用している。
【００３２】
図５に、本システムの処理手順を示すフローチャートを示す。
【００３３】
すなわち、まず、ユーザがフィルタ選択画面１００で適用するフィルタを選択する（Ｓ１）。ここで選択されたフィルタが、選択情報としてフィルタ設定記憶部１１に記憶される（Ｓ２）。
【００３４】
次に、プリントスプーラ４０がＸＰＳスプールファイル記憶部５０からＸＰＳ文書を読み出す（Ｓ３）。その後、フィルタ処理部１０が、読み出されたＸＰＳ文書を取得して、フィルタパイプライン１３がフィルタ設定記憶部１１を参照し、選択されたフィルタを、優先順位に従って適用する（Ｓ４）。
【００３５】
これにより、複数のフィルタを適用するときは、優先順位に従って適用順序が定まる。この優先順位を適切に予め定めておくことで、フィルタ処理後にレイアウトの修正をする必要がない。
【００３６】
上述した本発明の実施形態は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。
【図面の簡単な説明】
【００３７】
【図１】本発明の一実施形態に係る印刷データの処理システムの構成図である。
【図２】フィルタの選択画面の一例を示す。
【図３】複数のフィルタの優先順位を示す。
【図４】「Ｎ−ｕｐ」と「コピー印刷」が選択された場合のフィルタ適用順序の相違によるレイアウトの違いの一例を示す。
【図５】本システムの処理手順を示すフローチャートを示す。
【符号の説明】
【００３８】
１…パソコン本体、２…入力装置、３…表示装置、４…、５…プリンタ、１０…フィルタ処理部、１１…フィルタ設定記憶部、１３…フィルタパイプライン、１５…フィルタ、２０…フィルタ選択部、４０…プリントスプーラ、５０…スプールファイル記憶部。
【図１】
2008052361.tif 000003
【図２】
2008052361.tif 000004
【図３】
2008052361.tif 000005
【図４】
2008052361.tif 000006
【図５】
2008052361.tif 000007