(57)【特許請求の範囲】
【請求項１】
コンピュータを、
第１印刷用紙に集約される原稿のうち最初に割り付ける原稿の向きを表す第１方向と、前記第１印刷用紙の後に印刷される第２印刷用紙に集約される原稿のうち最初に割り付ける原稿の向きを表す第２方向とが一致するか否かを判断する判断部と、
前記第１方向と前記第２方向とが一致しない場合に、前記第２方向の向きの前記第２印刷用紙に、出力された原稿を指定された集約順序に従って割り付けた後に、前記第２印刷用紙を前記第１方向の向きに変更したと仮定した場合の原稿の並び順が前記集約順序と一致するように、前記第２印刷用紙に集約する原稿の出力順序を変更する変更部と、
変更された前記出力順序で前記原稿を出力する出力制御部、
として機能させるための印刷プログラム。
【請求項２】
前記コンピュータを、プリンタドライバと、原稿を前記プリンタドライバに送信する処理を制御するページ制御部として機能させ、
前記ページ制御部は、前記判断部と、前記変更部とを含み、
前記プリンタドライバは、前記出力制御部を含むこと、
を特徴とする請求項１に記載の印刷プログラム。
【請求項３】
前記コンピュータを、プリンタドライバと、原稿を前記プリンタドライバに送信する処理を制御するページ制御部として機能させ、
前記プリンタドライバは、前記判断部と、前記変更部と、前記出力制御部とを含むこと、
を特徴とする請求項１に記載の印刷プログラム。
【請求項４】
第１印刷用紙に集約される原稿のうち最初に割り付ける原稿の向きを表す第１方向と、前記第１印刷用紙の後に印刷される第２印刷用紙に集約される原稿のうち最初に割り付ける原稿の向きを表す第２方向とが一致するか否かを判断する判断部と、
前記第１方向と前記第２方向とが一致しない場合に、前記第２方向の向きの前記第２印刷用紙に、出力された原稿を指定された集約順序に従って割り付けた後に、前記第２印刷用紙を前記第１方向の向きに変更したと仮定した場合の原稿の並び順が前記集約順序と一致するように、前記第２印刷用紙に集約する原稿の出力順序を変更する変更部と、
変更された前記出力順序で前記原稿を出力する出力制御部と、
を備える情報処理装置。
【請求項５】
プリンタドライバと、原稿を前記プリンタドライバに送信する処理を制御するページ制御部とを備え、
前記ページ制御部は、前記判断部と、前記変更部とを含み、
前記プリンタドライバは、前記出力制御部を含むこと、
を特徴とする請求項４に記載の情報処理装置。
【請求項６】
プリンタドライバと、原稿を前記プリンタドライバに送信する処理を制御するページ制御部とを備え、
前記プリンタドライバは、前記判断部と、前記変更部と、前記出力制御部とを含むこと、
を特徴とする請求項４に記載の情報処理装置。
【請求項７】
請求項１から請求項３のいずれか１項に記載の印刷プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項８】
コンピュータを、
印刷用紙の向きを表す用紙方向と、前記印刷用紙に集約される原稿の向きのうち最も多い向きを表す原稿方向と、が一致するか否かを判断する判断部と、
前記用紙方向と前記原稿方向とが一致しない場合に、前記用紙方向の向きの前記印刷用紙に、出力された原稿を指定された集約順序に従って割り付けた後に、前記印刷用紙を前記原稿方向の向きに変更したと仮定した場合の原稿の並び順が、前記集約順序と一致するように、前記印刷用紙に集約する原稿の出力順序を変更する変更部と、
変更された前記出力順序で前記原稿を出力する出力制御部、
として機能させるための印刷プログラム。
【請求項９】
前記コンピュータを、プリンタドライバと、原稿を前記プリンタドライバに送信する処理を制御するページ制御部として機能させ、
前記ページ制御部は、前記判断部と、前記変更部とを含み、
前記プリンタドライバは、前記出力制御部を含むこと、
を特徴とする請求項８に記載の印刷プログラム。
【請求項１０】
前記コンピュータを、プリンタドライバと、原稿を前記プリンタドライバに送信する処理を制御するページ制御部として機能させ、
前記プリンタドライバは、前記判断部と、前記変更部と、前記出力制御部とを含むこと、
を特徴とする請求項８に記載の印刷プログラム。
【請求項１１】
印刷用紙の向きを表す用紙方向と、前記印刷用紙に集約される原稿の向きのうち最も多い向きを表す原稿方向と、が一致するか否かを判断する判断部と、
前記用紙方向と前記原稿方向とが一致しない場合に、前記用紙方向の向きの前記印刷用紙に、出力された原稿を指定された集約順序に従って割り付けた後に、前記印刷用紙を前記原稿方向の向きに変更したと仮定した場合の原稿の並び順が、前記集約順序と一致するように、前記印刷用紙に集約する原稿の出力順序を変更する変更部と、
変更された前記出力順序で前記原稿を出力する出力制御部と、
を備える情報処理装置。
【請求項１２】
プリンタドライバと、原稿を前記プリンタドライバに送信する処理を制御するページ制御部とを備え、
前記ページ制御部は、前記判断部と、前記変更部とを含み、
前記プリンタドライバは、前記出力制御部を含むこと、
を特徴とする請求項１１に記載の情報処理装置。
【請求項１３】
プリンタドライバと、原稿を前記プリンタドライバに送信する処理を制御するページ制御部とを備え、
前記プリンタドライバは、前記判断部と、前記変更部と、前記出力制御部とを含むこと、
を特徴とする請求項１１に記載の情報処理装置。
【請求項１４】
請求項８から請求項１０のいずれか１項に記載の印刷プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷プログラム、情報処理装置および記録媒体に関する。
【背景技術】
【０００２】
プリンタを用いて文書を印刷する際に、紙資源の節約を図りたいという高いニーズがある。そこで、プリンタドライバでは、印刷設定画面を通して、複数ページ(２、４、６、９、１６ページ)を１枚の紙に割り付けして印刷する集約印刷や、１枚の紙の表裏に印刷する両面印刷を設定することができる。また、この応用技術として、左上から右下にページを並べたり、右上から左下にページを並べたりすることにより、集約の順番を変更するレイアウト技術が確立されている。
【０００３】
しかし、集約印刷および両面印刷時に、プリンタドライバやプリントプロセッサで印刷するページの回転または縮小を行うと、パススルー系では文字や図形は回転、縮小せず、ユーザの意図しない印刷結果となるという問題があった。そこで、プリンタで集約印刷および両面印刷を行うことにより、このようなパススルー系で生じる問題を解決する技術が知られている。
【０００４】
特許文献１には、集約の割り付け配置をユーザの指示により設定する目的で、集約印刷など各種の設定処理項目の中から選択された処理を画像データに対して設定した結果を示すプレビュー画像を表示する画像処理装置が提案されている。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のようにプリンタで集約印刷および両面印刷を行うと、縦方向および横方向のページが入り混じった原稿方向混在文書の場合、表と裏とで異なるレイアウトになり、ユーザが意図するレイアウトで印刷されないという問題があった。
【０００６】
本発明は、上記に鑑みてなされたものであって、すべての印刷面でユーザが意図するレイアウトで印刷できる印刷プログラム、情報処理装置および記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、コンピュータを、第１印刷用紙に集約される原稿のうち最初に割り付ける原稿の向きを表す第１方向と、前記第１印刷用紙の後に印刷される第２印刷用紙に集約される原稿のうち最初に割り付ける原稿の向きを表す第２方向とが一致するか否かを判断する判断部と、前記第１方向と前記第２方向とが一致しない場合に、前記第２方向の向きの前記第２印刷用紙に、出力された原稿を指定された集約順序に従って割り付けた後に、前記第２印刷用紙を前記第１方向の向きに変更したと仮定した場合の原稿の並び順が前記集約順序と一致するように、前記第２印刷用紙に集約する原稿の出力順序を変更する変更部と、変更された前記出力順序で前記原稿を出力する出力制御部、として機能させるための印刷プログラムである。
【０００８】
また、本発明は、第１印刷用紙に集約される原稿のうち最初に割り付ける原稿の向きを表す第１方向と、前記第１印刷用紙の後に印刷される第２印刷用紙に集約される原稿のうち最初に割り付ける原稿の向きを表す第２方向とが一致するか否かを判断する判断部と、前記第１方向と前記第２方向とが一致しない場合に、前記第２方向の向きの前記第２印刷用紙に、出力された原稿を指定された集約順序に従って割り付けた後に、前記第２印刷用紙を前記第１方向の向きに変更したと仮定した場合の原稿の並び順が前記集約順序と一致するように、前記第２印刷用紙に集約する原稿の出力順序を変更する変更部と、変更された前記出力順序で前記原稿を出力する出力制御部と、を備える情報処理装置である。
【０００９】
また、本発明は、コンピュータを、印刷用紙の向きを表す用紙方向と、前記印刷用紙に集約される原稿の向きのうち最も多い向きを表す原稿方向と、が一致するか否かを判断する判断部と、前記用紙方向と前記原稿方向とが一致しない場合に、前記用紙方向の向きの前記印刷用紙に、出力された原稿を指定された集約順序に従って割り付けた後に、前記印刷用紙を前記原稿方向の向きに変更したと仮定した場合の原稿の並び順が、前記集約順序と一致するように、前記第２印刷用紙に集約する原稿の出力順序を変更する変更部と、変更された前記出力順序で前記原稿を出力する出力制御部、として機能させるための印刷プログラムである。
【００１０】
また、本発明は、印刷用紙の向きを表す用紙方向と、前記印刷用紙に集約される原稿の向きのうち最も多い向きを表す原稿方向と、が一致するか否かを判断する判断部と、前記用紙方向と前記原稿方向とが一致しない場合に、前記用紙方向の向きの前記印刷用紙に、出力された原稿を指定された集約順序に従って割り付けた後に、前記印刷用紙を前記原稿方向の向きに変更したと仮定した場合の原稿の並び順が、前記集約順序と一致するように、前記第２印刷用紙に集約する原稿の出力順序を変更する変更部と、変更された前記出力順序で前記原稿を出力する出力制御部と、を備える情報処理装置である。
【００１１】
また、本発明は、上記印刷プログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【００１２】
本発明によれば、すべての印刷面でユーザが意図するレイアウトで印刷できるという効果を奏する。
【図面の簡単な説明】
【００１３】
【図１】図１は、パススルーオブジェクトを含む原稿をプリンタ以外で回転および縮小させ、集約印刷した場合の印刷結果の一例を示す図である。
【図２】図２は、従来の方法による印刷指示送信処理の一例を示すフローチャートである。
【図３】図３は、従来の方法の印刷処理による処理結果の一例を説明する図である。
【図４】図４は、第１の実施形態にかかる情報処理装置が接続された印刷システムの全体構成図である。
【図５】図５は、Ｗｉｎｄｏｗｓ（登録商標）プリントアーキテクチャの動作順序を示す流れ図である。
【図６】図６は、ＰＣの構成を示すブロック図である。
【図７】図７は、ＰＣによる印刷指示送信処理の手順の一例を示すフローチャートである。
【図８】図８は、第１の実施形態の順序変更処理の手順の一例を示すフローチャートである。
【図９】図９は、原稿の順序を変更する処理を説明するための図である。
【図１０】図１０は、第２の実施形態の順序変更処理の手順の一例を示すフローチャートである。
【図１１】図１１は、原稿の順序を変更する処理を説明するための図である。
【図１２】図１２は、レイアウトを指定する指定画面の一例を示す図である。
【図１３】図１３は、すべての印刷用紙のプレビューを表示するプレビュー画面の一例を示す図である。
【図１４】図１４は、第１または第２の実施形態にかかる情報処理装置のハードウェア構成を示す説明図である。
【発明を実施するための形態】
【００１４】
以下に添付図面を参照して、この発明にかかる印刷プログラム、情報処理装置および記録媒体の一実施形態を詳細に説明する。
【００１５】
（第１の実施形態）
最初に、上述のパススルー系で生じる問題について図１を用いて説明する。図１は、パススルーオブジェクトを含む原稿をプリンタ以外で回転および縮小させ、集約印刷した場合の印刷結果の一例を示す図である。
【００１６】
パススルー系とは、アプリケーション自身がＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ：ページ記述言語）コードを直接生成してプリンタドライバ経由でプリンタに送信する処理系をいう。パススルー系では、特定のページで印刷属性が変わり、その印刷属性に対応させるためにプリンタドライバやプリントプロセッサによってページの回転または拡大縮小を実行した場合、パススルー対象データ以外のデータが回転または拡大縮小される。しかし、パススルー対象データは手を加えられることがないため、印刷結果としてパススルー対象データ以外のデータだけが回転または拡大縮小され、ユーザが意図するように出力されない。
【００１７】
図１では、２ページ目（２Ｐ）にパススルー対象データ（パススルーオブジェクト）が含まれる例が示されている。このような２ページの原稿を４ｉｎ１の集約で印刷すると、図１の右側で示すような期待する印刷結果（期待結果）は得られず、図１の中央に示すような印刷結果となる。
【００１８】
パススルー系で生じる上記問題の解決方法としては次のような方法が存在する。パススルーオブジェクトは、ＰＤＬコード生成時に特有のコードが付加される。この特有のコードを解析し、回転または縮小を行うようにコードを変更または追加することで、プリンタでの集約または両面印刷時に非パススルーオブジェクトと同様にパススルーオブジェクトを回転または縮小させることができる。
【００１９】
一方、上述のように、プリンタで集約印刷および両面印刷を行うことにより、パススルー系で生じる問題を解決する方法が知られている。この方法により生じる問題の詳細について以下に説明する。図２は、従来の方法による印刷指示送信処理の一例を示すフローチャートである。印刷指示送信処理とは、ユーザが印刷を指示してからプリンタに印刷データが渡るまでの処理を表す。
【００２０】
まず、プリンタドライバのＵＩ部は、ユーザにより指定された印刷設定を受付ける（ステップＳ１０１）。アプリケーションは、ユーザにより指定された印刷の指示（印刷命令）を受信する（ステップＳ１０２）。アプリケーションは、ＧＤＩ（Ｇｒａｐｈｉｃａｌ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）およびプリンタドライバに対して、印刷設定を格納するデータ構造体であるＤＥＶＭＯＤＥを渡す（ステップＳ１０３）。また、アプリケーションは、印刷が指示された描画データをＧＤＩコールでＧＤＩに渡す（ステップＳ１０４）。
【００２１】
ＧＤＩは、受け取った描画データをＥＭＦ（Ｅｎｈａｎｃｅｄ  Ｍｅｔａｆｉｌｅ  Ｆｏｒｍａｔ）データに変換し、変換したＥＭＦデータをスプーラに渡す（ステップＳ１０５）。スプーラは、ＥＭＦデータをスプールし、スプールファイルをプリントプロセッサに渡す（ステップＳ１０６）。
【００２２】
プリントプロセッサは、ＧＤＩに対して描画データをＧＤＩコールでＧＤＩに渡す（ステップＳ１０７）。ＧＤＩは、受け取った描画データをＤＤＩ（Ｄｅｖｉｃｅ  Ｄｒｉｖｅｒ  Ｉｎｔｅｒｆａｃｅ）コールに変換し、プリンタドライバの描画部に渡す（ステップＳ１０８）。描画部は、受け取った描画データをプリンタが解釈可能なＰＤＬの印刷データに変換し、スプーラに渡す（ステップＳ１０９）。スプーラは、受け取った印刷データ（ＲＡＷデータ）をプリンタに送信する（ステップＳ１１０）。
【００２３】
図３は、従来の方法の印刷処理による処理結果の一例を説明する図である。図３は、集約および両面印刷、集約順序「左上→右上→左下→右下」が設定され、原稿の方向が混在する全８ページの文書（原稿）の印刷結果の例を示している。
【００２４】
プリンタで集約印刷および両面印刷を行う場合、プリンタは、原稿を割り付ける印刷用紙の方向を、その印刷用紙に割り付ける最初のページ（図３では１ページ目、５ページ目）により決定する。このため、印刷用紙裏面では割り付ける最初のページである５ページ目の向きである横向きを基準に「左上→右上→左下→右下」で集約が行われる。このため、図３に示すように、全８ページの原稿方向混在文書（１〜４ページ目、６〜８ページ目：縦、５ページ目：横）を集約（４ｉｎ１）かつ両面印刷で印刷する場合、集約順序を「左上→右上→左下→右下」で設定したにも関わらず、用紙裏面は「右上→右下→左上→左下」で印刷されてしまう。
【００２５】
しかし、表裏で１枚となる両面印刷時には、ユーザは表面の向きである縦向きで用紙を閲覧し、裏面を閲覧する際には縦向きのまま裏返すことになる。このため、裏面はユーザが意図しない集約順序で印刷されたように見えるという問題が生じうる。
【００２６】
そこで、第１の実施形態では、すべての印刷面でユーザが意図するレイアウトで印刷されるように、集約する原稿のページの順番を変更する。
【００２７】
図４は、第１の実施形態にかかる情報処理装置が接続された印刷システムの全体構成図である。図４に示すように、印刷システムは、情報処理装置としてのＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）１００と、プリンタ２００ａと、プリンタ２００ｂ（以下、プリンタ２００と総称する。）とがネットワーク１８０により接続されている。
【００２８】
ＰＣ１００は、ユーザから印刷データの印刷の指示および集約印刷の指示等を受け付け、指示に従って印刷データを送信してプリンタ２００に印刷させる。プリンタ２００は、ＰＣ１００からの印刷指示に従って印刷データを印刷する。
【００２９】
次に、Ｗｉｎｄｏｗｓ（登録商標）プリントアーキテクチャを用いたＰＣ１００による印刷動作の流れの概要を説明する。図５は、Ｗｉｎｄｏｗｓプリントアーキテクチャの動作順序を示す流れ図である。図５に示すように、ＰＣ１００は、ユーザから印刷設定を受け付けるプリンタドライバのＵＩ部１０６ａと、ユーザから印刷命令を受け付けるアプリケーション１０４と、プリントプロセッサ１０７からの命令をプリンタドライバに送信するＧＤＩ１０５ａと、データの言語形式を変換するプリンタドライバの描画部１０６ｂと、印刷データを蓄積するスプーラ１０５ｂと、スプーラ１０５ｂから受け取った印刷データをプリンタドライバに送信する処理を制御するページ制御部として機能するプリントプロセッサ１０７と、を備え、プリンタ２００と接続されている。なお、各部の機能および構成の詳細については後述する。
【００３０】
まず、ＵＩ部１０６ａは、ユーザから印刷設定の変更を受け付ける（ステップＳ１）。アプリケーション１０４は、ユーザから印刷命令を受け付ける（ステップＳ２）。アプリケーション１０４は、ＤＥＶＭＯＤＥと呼ばれる印刷設定が入っている構造体（不図示）を、ＵＩ部１０６ａとの間で送受信することによりユーザの印刷設定を受け付ける（ステップＳ３、ステップＳ４）。ここで、アプリケーション１０４は、印刷設定と共に、印刷対象となる印刷データの指定を受け付ける。なお、印刷データは、アプリケーション１０４によりＥＭＦ形式で作成されたものである。
【００３１】
アプリケーション１０４は、ＧＤＩ１０５ａに印刷データの印刷命令をＧＤＩコールとして伝える（ステップＳ５）。ＧＤＩ１０５ａは、スプールデータとしてＥＭＦ形式の印刷データをスプーラ１０５ｂに渡す（ステップＳ６）。スプーラ１０５ｂは、アプリケーション１０４により作成された印刷データをすべてスプールすると、プリントプロセッサ１０７に印刷データをデスプールする通知を送信した上で、プリントプロセッサ１０７に印刷データをデスプールする（ステップＳ７）。
【００３２】
プリントプロセッサ１０７は、スプーラ１０５ｂから受信した印刷データを読み取ってページ毎に編集し、編集した内容をＧＤＩ１０５ａにＧＤＩコールとして伝える（ステップＳ８）。ここで、プリントプロセッサ１０７は、ＵＩ部１０６ａが受け付けた印刷設定に従って印刷データをデバイスコンテキストに描画し編集する。
【００３３】
ＧＤＩ１０５ａは、描画部１０６ｂにプリントプロセッサ１０７から受信したＧＤＩコールをＤＤＩコールとして伝える（ステップＳ９）。
【００３４】
描画部１０６ｂは、ＧＤＩ１０５ａから受信したＤＤＩコールを受信すると、印刷命令の対象となるＥＭＦ形式の印刷データをＲＡＷデータに変換し、変換したＲＡＷデータをスプーラ１０５ｂに送信する（ステップＳ１０）。
【００３５】
スプーラ１０５ｂは、描画部１０６ｂから受信したＲＡＷデータをプリンタ２００に送信する（ステップＳ１１）。
【００３６】
図６は、ＰＣ１００の構成を示すブロック図である。図６に示すように、ＰＣ１００は、処理部１０１と、記憶部１０２と、通信部１０３とを備えている。処理部１０１は、図示しない制御手段としてのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、ＲＯＭおよびメインメモリとなるＲＡＭを有するメモリ群とを含んで構成されている。ＰＣ１００の起動・実行時には、ＲＯＭおよび記憶部１０２からアプリケーション１０４と、ＯＳ１０５と、各種ドライバ（図６においては、プリンタドライバ１０６のみ記載）と、プリントプロセッサ１０７とが、メインメモリ上にロードされ展開されて、これらがＣＰＵにより実行される。
【００３７】
なお、ＰＣ１００は、キーボードやマウスなどの入力装置やディスプレイなどの出力装置等を備える通常のコンピュータを利用したハードウェア構成を有するが、図６においては説明の簡潔化のため省略している。
【００３８】
図６に示す処理部１０１内の機能ブロック（後述）は、プリンタ２００に対する印刷制御を実現するための主要部となる機能または手段である。
【００３９】
記憶部１０２は、様々な情報を記憶する記憶手段である。具体的にはＨＤＤ等である。記憶される情報には、プリンタドライバ１０６が有する機能を実現するための処理に関する情報（処理に用いる設定値や、設定値の変更をするための表示情報など、処理に必要なあらゆる情報）を定義した設定情報がある。
【００４０】
通信部１０３は、ネットワーク１８０を介して接続されたプリンタ２００と情報の送受信を行うネットワークＩ／Ｆである。
【００４１】
アプリケーション１０４は、ユーザが印刷を指示することができるソフトウェア（例えば、ワードプロセッサ）である。ユーザがアプリケーション１０４で編集したデータを印刷する場合、アプリケーション１０４が、ユーザによる印刷指示を受け付ける。この場合、アプリケーション１０４は、単体でプリンタ２００に対する印刷データの生成を行わず、上記印刷指示に応じた印刷要求と共に、印刷対象の情報を、ＧＤＩ１０５ａや、ＵＩ部（プリンタドライバ）１０６ａに対してＤＥＶＭＯＤＥで渡す。ＵＩ部１０６ａは、例えば、ユーザによる集約印刷および製本などの印刷設定を受け付け、ＤＥＶＭＯＤＥに設定する。
【００４２】
ＯＳ１０５は、ＰＣ１００のハードウェアとソフトウェアとを管理するプログラムである。ＯＳ１０５は、プログラムの起動、情報の読み込みや保存の制御等を行う。ＯＳのうち代表的なものとしては、ＭＳ  Ｗｉｎｄｏｗｓ（登録商標）等が知られている。また、ＯＳ１０５のＧＤＩ１０５ａは、アプリケーション１０４からＧＤＩコールで渡された設定情報を含む印刷要求と共に、印刷対象の情報（テキストデータ、グラフィック・データ、イメージ・データ等）を、ＤＤＩ（Ｄｅｖｉｃｅ  Ｄｒｉｖｅｒ  Ｉｎｔｅｒｆａｃｅ）コールでプリンタドライバ１０６に渡す。そして、プリンタドライバ１０６で生成された印刷データをスプーラ１０５ｂに蓄え、順次通信部１０３に供給してプリンタ２００に送る。
【００４３】
プリントプロセッサ１０７は、印刷データを処理する処理制御部としての機能を有し、スプーラ１０５ｂからスプールされた印刷データを受け取る。また、プリントプロセッサ１０７は、印刷する文書中のページ（原稿）の順番を、ユーザが意図した集約順序となるように変更する。そして、プリントプロセッサ１０７は、ＧＤＩ１０５ａに対して描画データをＧＤＩコールで渡す。プリントプロセッサ１０７は、判断部１０７ａと、変更部１０７ｂとを備えている。
【００４４】
判断部１０７ａは、原稿の順番の変更が必要か否かを判断する。例えば、判断部１０７ａは、基準となる印刷用紙（第１印刷用紙（例えば１枚目の印刷用紙））に集約される原稿のうち最初に割り付けられる原稿の向き（第１方向）と、第１印刷用紙の後に印刷される印刷用紙（第２印刷用紙）に集約される原稿のうち最初に割り付けられる原稿の向き（第２方向）とが一致するか否かを判断する。そして、判断部１０７ａは、第１方向と第２方向とが一致しない場合に、第２印刷用紙に集約する原稿の順番の変更が必要であると判断する。
【００４５】
変更部１０７ｂは、原稿の順番の変更が必要と判断された場合に、第２印刷用紙に集約する原稿を出力する順序を変更する。変更部１０７ｂは、第２方向の向きの第２印刷用紙に、出力された原稿を指定された集約順序に従って割り付けた後に、第２印刷用紙を第１方向の向きに変更したと仮定した場合の原稿の並び順が、集約順序と一致するように、第２印刷用紙に集約する原稿の出力順序を変更する。
【００４６】
プリンタドライバ１０６のＵＩ部１０６ａは、ユーザによる印刷設定を受け付けるユーザインタフェース（ＵＩ）を制御する。
【００４７】
プリンタドライバ１０６の描画部１０６ｂは、アプリケーション１０４で作成された印刷データをプリンタが理解可能な形式に変換する。例えば、描画部１０６ｂは、アプリケーション１０４からＥＭＦ形式で作成された印刷データを、ＲＡＷ形式に変換する。描画部１０６ｂは、変換したＲＡＷデータをスプーラ１０５ｂに出力する。また、変更部１０７ｂによって原稿の出力順序が変更された場合は、描画部１０６ｂは、変更された出力順序で原稿の印刷データ（ＲＡＷデータ）を出力する出力制御部として機能する。
【００４８】
次に、以上のように構成されたＰＣ１００によりプリンタ２００に印刷指示を送信する印刷指示送信処理の手順について説明する。図７は、ＰＣ１００による印刷指示送信処理の手順の一例を示すフローチャートである。
【００４９】
図７の印刷指示送信処理は、ステップＳ２０７の順序変更処理が追加された点が、図２の印刷指示送信処理と異なっている。その他のステップは図２と同様であるため説明を省略する。
【００５０】
ステップＳ２０７の順序変更処理では、プリントプロセッサ１０７が、原稿の順序の変更が必要か判断し、必要な場合に原稿の順序を変更する。図８は、第１の実施形態の順序変更処理の手順の一例を示すフローチャートである。
【００５１】
まず、判断部１０７ａは、印刷設定で指定された集約数が２以上であるか否かを判断する（ステップＳ３０１）。集約数とは、集約が指定されている場合に、１枚の印刷用紙に集約する原稿のページ数を表す。例えば４ｉｎ１の集約の場合は、集約数は４である。
【００５２】
集約数が２以上でない場合、すなわち、集約しない印刷設定の場合は（ステップＳ３０１：Ｎｏ）順序変更処理を終了する。集約数が２以上の場合（ステップＳ３０１：Ｙｅｓ）、判断部１０７ａは、原稿の全ページ数と集約数とから、集約印刷に必要な印刷用紙数Ｎを計算する（ステップＳ３０２）。例えば、原稿が８ページで、４ｉｎ１（集約数＝４）の場合は、印刷用紙数Ｎ＝２（８÷４）となる。
【００５３】
判断部１０７ａは、処理対象の原稿のページを表すｎ（初期値を０とする）に１を加算し（ステップＳ３０３）、ｎ枚目の印刷用紙の方向を決定する（ステップＳ３０４）。判断部１０７ａは、例えば、ｎ枚目の印刷用紙に最初に割り付けられる原稿の方向（横方向か縦方向か）を印刷設定（ＤＥＶＭＯＤＥ等）から取得し、取得した原稿の方向をｎ枚目の印刷用紙の方向として決定する。なお、印刷用紙の方向の決定方法はこれに限られるものではない。例えば、判断部１０７ａが、渡されたスプールファイルから、ｎ枚目の印刷用紙に最初に割り付けられる原稿のデータを取得し、取得した原稿の縦サイズおよび横サイズを比較して原稿の方向を求め、求めた原稿の方向をｎ枚目の印刷用紙の方向として決定してもよい。
【００５４】
判断部１０７ａは、ｎ＝１か否かを判断する（ステップＳ３０５）。ｎ＝１でない場合（ステップＳ３０５：Ｎｏ）、判断部１０７ａは、１枚目の印刷用紙の方向（第１方向）と、ｎ枚目の印刷用紙の方向（第２方向）とが一致するか否かを判断する（ステップＳ３０６）。
【００５５】
一致しない場合（ステップＳ３０６：Ｎｏ）、変更部１０７ｂは、ｎ枚目の印刷用紙に割り付ける原稿の順序を変更する（ステップＳ３０７）。原稿の順序を変更する処理の詳細は、図９を用いて後述する。
【００５６】
ステップＳ３０５でｎ＝１と判断された場合（ステップＳ３０５：Ｙｅｓ）、ステップＳ３０６で第１方向と第２方向とが一致すると判断された場合（ステップＳ３０６：Ｙｅｓ）、および、ステップＳ３０７で原稿の順序が変更された後、判断部１０７ａは、ｎ＝Ｎであるか否か、すなわち、印刷用紙の最終ページまで処理したか否かを判断する（ステップＳ３０８）。ｎ＝Ｎでない場合（ステップＳ３０８：Ｎｏ）、ステップＳ３０３に戻り処理を繰り返す。ｎ＝Ｎの場合（ステップＳ３０８：Ｙｅｓ）、順序変更処理を終了する。
【００５７】
次に、原稿の順序を変更する処理の詳細について説明する。図９は、原稿の順序を変更する処理を説明するための図である。図９は、図３と同様に集約かつ両面印刷、および、集約順序「左上→右上→左下→右下」が設定され、原稿の方向が混在する全８ページの文書（原稿）の印刷結果の例を示している。
【００５８】
本実施形態を用いれば、プリントプロセッサ１０７で文書中の原稿の順番を変更することによって、ユーザが意図するレイアウトで印刷することができる。図９の例では、プリントプロセッサ１０７の変更部１０７ｂが、裏面に印刷されるページの順番を５→６→７→８から６→８→５→７に変更する。これにより、ユーザにとって意図したレイアウトとなる印刷結果が得られる（図９の右下）。
【００５９】
プリントプロセッサ１０７は、すべての原稿（ページ）のデータを含むスプールファイルをスプーラ１０５ｂから渡される。従って、プリントプロセッサ１０７の変更部１０７ｂは、原稿の順序を任意に変更して出力することができる。変更部１０７ｂは、集約数および集約順序に応じて、変更する順序を決定する。例えば、集約数＝４、かつ、図９の矢印で示すような集約順序「左上→右上→左下→右下」の場合であれば、変更部１０７ｂは、原稿の順序をＡ→Ｂ→Ｃ→ＤからＢ→Ｄ→Ａ→Ｃに変更すればよい。また、例えば、集約数＝４、集約順序「左上→左下→右上→右下」の場合であれば、変更部１０７ｂは、原稿の順序をＡ→Ｂ→Ｃ→ＤからＢ→Ａ→Ｄ→Ｃに変更すればよい。
【００６０】
なお、これまでは、判断部１０７ａおよび変更部１０７ｂをプリントプロセッサ１０７に備える例を説明したが、プリンタドライバ１０６が判断部１０７ａおよび変更部１０７ｂを備えるように構成してもよい。
【００６１】
以上のように、第１の実施形態の情報処理装置によれば、印刷用紙に集約する最初の原稿の向きが、１枚目の印刷用紙の向きと一致しない場合に、集約する原稿のページの順番を変更する。これにより、すべての印刷面でユーザが意図するレイアウトで印刷することができる。
【００６２】
（第２の実施形態）
第２の実施形態では、印刷用紙ごとに、レイアウトがユーザにとって見やすくなるように原稿の順序を変更する。第２の実施形態では、プリントプロセッサ１０７の機能が第１の実施形態と異なる。また、第２の実施形態では、順序変更処理（図７のステップＳ２０７）が第１の実施形態と異なる。以下では、第１の実施形態と異なる点について説明する。
【００６３】
図１０は、第２の実施形態の順序変更処理の手順の一例を示すフローチャートである。第２の実施形態では、ステップＳ４０６の判定処理が、図８のステップＳ３０６の判定処理と異なっている。その他のステップＳ４０１からステップＳ４０５、ステップＳ４０７、ステップＳ４０８は、図８のステップＳ３０１からステップＳ３０５、ステップＳ３０７、ステップＳ３０８と同様であるため説明を省略する。
【００６４】
ステップＳ４０６では、判断部１０７ａは、ｎ枚目の印刷用紙の方向（以下、用紙方向という）と、ｎ枚目の印刷用紙に割り付けられる原稿の方向のうち、最も多い方向（以下、原稿方向という）とが一致するか否かを判断する（ステップＳ４０６）。
【００６５】
次に、原稿の順序を変更する処理の詳細について説明する。図１１は、原稿の順序を変更する処理を説明するための図である。図１１は、集約および両面印刷、集約順序「左上→右上→左下→右下」が設定され、原稿の方向が混在する全８ページの文書（原稿）の印刷結果の例を示している。また、図１１は、８ページの原稿それぞれの方向が、ＬＬＬＬＬＰＰＰ（Ｌは横向き（Ｌａｎｄｓｃａｐｅ）、Ｐは縦向き（Ｐｏｒｔｒａｉｔ））の場合の例を示している。
【００６６】
図１１に示すように、裏面には縦向きの原稿が３ページ割り付けされるため、裏面は縦向きにするほうがユーザにとって見やすいレイアウトとなる。図１１の例では、裏面の向きは、最初に割り付けられる原稿である５ページ目と同じ横向きに設定される。一方、原稿の方向のうち最も多い方向は縦向きである。従って、判断部１０７ａは、方向が一致しないと判断し（ステップＳ４０６：Ｎｏ）、変更部１０７ｂが原稿の順序を変更する。図１１の例の場合は、変更部１０７ｂは、裏面に印刷されるページの順番を５→６→７→８から６→８→５→７に変更する。なお、割り付けられる原稿の方向のうち最も多い方向が複数存在する場合は、いずれを採用するかは任意に決定できる。
【００６７】
なお、集約順序は、例えばＵＩ部１０６ａを用いてユーザが指定できるように構成してもよい。また、印刷用紙ごとのレイアウトをユーザが指定できるように構成してもよい。図１２は、レイアウトを指定する指定画面の一例を示す図である。図１２では、印刷用紙のページごとのプレビュー、集約順序、および、印刷用紙の用紙方向を指定可能な指定画面の例が示されている。
【００６８】
図１３は、すべての印刷用紙のプレビューを表示するプレビュー画面の一例を示す図である。図１３では、矢印表示チェックボックスをチェックすることにより、印刷用紙ごとに集約順序を表す矢印を表示するプレビュー画面の例が示されている。
【００６９】
次に、第１または第２の実施形態にかかる情報処理装置のハードウェア構成について図１４を用いて説明する。図１４は、第１または第２の実施形態にかかる情報処理装置のハードウェア構成を示す説明図である。
【００７０】
第１または第２の実施形態にかかる情報処理装置は、ＣＰＵ（ＣｅｎＴｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）５１などの制御装置と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）５２やＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）５３などの記憶装置と、ネットワークに接続して通信を行う通信Ｉ／Ｆ５４と、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）ドライブ装置などの外部記憶装置と、ディスプレイ装置などの表示装置と、キーボードやマウスなどの入力装置と、各部を接続するバス６１を備えており、通常のコンピュータを利用したハードウェア構成となっている。
【００７１】
第１または第２の実施形態にかかる情報処理装置で実行される印刷プログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅｃｏｒｄａｂｌｅ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録されてコンピュータプログラムプロダクトとして提供される。
【００７２】
また、第１または第２の実施形態にかかる情報処理装置で実行される印刷プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、第１または第２の実施形態にかかる情報処理装置で実行される印刷プログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【００７３】
また、第１または第２の実施形態の印刷プログラムを、ＲＯＭ５２等に予め組み込んで提供するように構成してもよい。
【００７４】
第１または第２の実施形態にかかる情報処理装置で実行される印刷プログラムは、上述した各部（判断部、変更部等）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ５１（プロセッサ）が上記記憶媒体から印刷プログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、上述した各部が主記憶装置上に生成されるようになっている。
【符号の説明】
【００７５】
１０１  処理部
１０２  記憶部
１０３  通信部
１０４  アプリケーション
１０５  ＯＳ
１０５ａ  ＧＤＩ
１０５ｂ  スプーラ
１０６  プリンタドライバ
１０６ａ  ＵＩ部
１０６ｂ  描画部
１０７  プリントプロセッサ
１０７ａ  判断部
１０７ｂ  変更部
【先行技術文献】
【特許文献】
【００７６】
【特許文献１】特開２００８−２２７５８４号公報
【図１】
0005699604.tif 000002
【図２】
0005699604.tif 000003
【図３】
0005699604.tif 000004
【図４】
0005699604.tif 000005
【図５】
0005699604.tif 000006
【図６】
0005699604.tif 000007
【図７】
0005699604.tif 000008
【図８】
0005699604.tif 000009
【図９】
0005699604.tif 000010
【図１０】
0005699604.tif 000011
【図１１】
0005699604.tif 000012
【図１２】
0005699604.tif 000013
【図１３】
0005699604.tif 000014
【図１４】
0005699604.tif 000015