(57)【要約】【課題】全てのワークシートをまとめて印刷する際に、印刷用紙の増加を抑制しつつ、元のシート構成を極力維持する。【解決手段】複数のワークシートに情報が記述されたデータを解析して印刷設定情報を取得し、その印刷設定情報に基づいて、ワークシート毎に用紙を替える（ジョブ分割を行う）第１の出力形式で印刷する場合の第１の印刷枚数と、ワークシート間を詰める（ジョブ分割を抑制する）第２の出力形式で印刷する場合の第２の印刷枚数と、を算出し、第２の印刷枚数が第１の印刷枚数よりも少ない場合は、第２の出力形式に従って複数のワークシートのページの画像を順に配置した印刷データを生成し、第２の印刷枚数が第１の印刷枚数以上の場合は、第１の出力形式に従ってワークシート毎に用紙の先頭又は表面からページの画像を配置した印刷データを生成し、生成した印刷データを印刷エンジンに出力する。【選択図】図６
2018094772.tif 000002
【特許請求の範囲】
【請求項１】
複数のワークシートに情報が記述されたSpreadsheetのデータの印刷を制御する印刷制御装置であって、
前記データをラスタライズして、各々の前記ワークシートに記述された情報を用紙に印刷するための、ページ毎の画像を生成する画像処理部と、
前記複数のワークシートをまとめて印刷する際に、前記データを解析して、前記ワークシートの数と各々の前記ワークシートの前記ページの数と集約印刷及び／又は両面印刷に関する情報とを含む印刷設定情報を取得するデータ解析部と、
前記印刷設定情報に基づいて、前記ワークシート毎に用紙を替える第１の出力形式で印刷する場合の第１の印刷枚数と、前記ワークシート間を詰める第２の出力形式で印刷する場合の第２の印刷枚数と、を算出する印刷枚数算出部と、
前記第１の印刷枚数と前記第２の印刷枚数とを比較し、前記第２の印刷枚数が前記第１の印刷枚数よりも少ない場合は、前記第２の出力形式に従って、前記複数のワークシートのページの画像を順に配置した印刷データを生成し、前記第２の印刷枚数が前記第１の印刷枚数以上の場合は、前記第１の出力形式に従って、前記ワークシート毎に用紙の先頭又は表面からページの画像を配置した印刷データを生成し、生成した前記印刷データを印刷エンジンに出力する印刷制御部と、を備える、
ことを特徴とする印刷制御装置。
【請求項２】
前記印刷制御部は、前記第２の印刷枚数が前記第１の印刷枚数よりも少ない場合において、所定の前記ワークシートで用紙を替えて印刷しても前記第２の印刷枚数が増加しない場合は、前記所定のワークシートのページの画像を用紙の先頭又は表面から配置した印刷データを生成する、
ことを特徴とする請求項１に記載の印刷制御装置。
【請求項３】
前記印刷制御装置は、
前記第２の印刷枚数が前記第１の印刷枚数よりも少ない場合に、表示部に、前記第１の印刷枚数と前記第２の印刷枚数とを比較可能に表示する表示制御部を備える、
ことを特徴とする請求項１に記載の印刷制御装置。
【請求項４】
前記表示制御部は、前記表示部に、前記第２の印刷形式で印刷する場合の各用紙のページ構成を示すプレビュー画面を表示する、
ことを特徴とする請求項３に記載の印刷制御装置。
【請求項５】
前記表示制御部は、前記プレビュー画面に、前記第１の出力形式で印刷する場合の各用紙のページ構成と前記第２の出力形式で印刷する場合の各用紙のページ構成とを比較可能に表示する、
ことを特徴とする請求項４に記載の印刷制御装置。
【請求項６】
前記印刷制御部は、前記プレビュー画面で、所定のワークシートで用紙を替える指示が行われた場合において、前記所定のワークシートで用紙を替えて印刷しても前記第２の印刷枚数が増加しない場合は、前記所定のワークシートのページの画像を用紙の先頭又は表面から配置した印刷データを生成する、
ことを特徴とする請求項４又は５に記載の印刷制御装置。
【請求項７】
前記印刷制御部は、前記プレビュー画面で、所定のワークシートで用紙を替えない指示が行われた場合において、前記所定のワークシート以外の他のワークシートで用紙を替えて印刷しても前記第２の印刷枚数が増加しない場合は、前記他のワークシートのページの画像を用紙の先頭又は表面から配置した印刷データを生成する、
ことを特徴とする請求項４又は５に記載の印刷制御装置。
【請求項８】
複数のワークシートに情報が記述されたSpreadsheetのデータの印刷を制御する装置で動作する印刷制御プログラムであって、
前記装置に、
ＲＩＰ（Raster Image Processor）を備える画像処理部に、前記データをラスタライズさせ、各々の前記ワークシートに記述された情報を用紙に印刷するための、ページ毎の画像を生成させる画像生成処理、
前記複数のワークシートをまとめて印刷する際に、前記データを解析して、前記ワークシートの数と各々の前記ワークシートの前記ページの数と集約印刷及び／又は両面印刷に関する情報とを含む印刷設定情報を取得するデータ解析処理、
前記印刷設定情報に基づいて、前記ワークシート毎に用紙を替える第１の出力形式で印刷する場合の第１の印刷枚数と、前記ワークシート間を詰める第２の出力形式で印刷する場合の第２の印刷枚数と、を算出する印刷枚数算出処理、
前記第１の印刷枚数と前記第２の印刷枚数とを比較し、前記第２の印刷枚数が前記第１の印刷枚数よりも少ない場合は、前記第２の出力形式に従って、前記複数のワークシートのページの画像を順に配置した印刷データを生成し、前記第２の印刷枚数が前記第１の印刷枚数以上の場合は、前記第１の出力形式に従って、前記ワークシート毎に用紙の先頭又は表面からページの画像を配置した印刷データを生成し、生成した前記印刷データを印刷エンジンに出力する印刷制御処理、を実行させる、
ことを特徴とする印刷制御プログラム。
【請求項９】
前記印刷制御処理では、前記第２の印刷枚数が前記第１の印刷枚数よりも少ない場合において、所定の前記ワークシートで用紙を替えて印刷しても前記第２の印刷枚数が増加しない場合は、前記所定のワークシートのページの画像を用紙の先頭又は表面から配置した印刷データを生成する、
ことを特徴とする請求項８に記載の印刷制御プログラム。
【請求項１０】
前記装置に、更に、
前記第２の印刷枚数が前記第１の印刷枚数よりも少ない場合に、表示部に、前記第１の印刷枚数と前記第２の印刷枚数とを比較可能に表示させる表示制御処理を実行させる、
ことを特徴とする請求項８に記載の印刷制御プログラム。
【請求項１１】
前記表示制御処理では、前記表示部に、前記第２の印刷形式で印刷する場合の各用紙のページ構成を示すプレビュー画面を表示させる、
ことを特徴とする請求項１０に記載の印刷制御プログラム。
【請求項１２】
前記表示制御処理では、前記プレビュー画面に、前記第１の出力形式で印刷する場合の各用紙のページ構成と前記第２の出力形式で印刷する場合の各用紙のページ構成とを比較可能に表示させる、
ことを特徴とする請求項１１に記載の印刷制御プログラム。
【請求項１３】
前記印刷制御処理では、前記プレビュー画面で、所定のワークシートで用紙を替える指示が行われた場合において、前記所定のワークシートで用紙を替えて印刷しても前記第２の印刷枚数が増加しない場合は、前記所定のワークシートのページの画像を用紙の先頭又は表面から配置した印刷データを生成する、
ことを特徴とする請求項１１又は１２に記載の印刷制御プログラム。
【請求項１４】
前記印刷制御処理では、前記プレビュー画面で、所定のワークシートで用紙を替えない指示が行われた場合において、前記所定のワークシート以外の他のワークシートで用紙を替えて印刷しても前記第２の印刷枚数が増加しない場合は、前記他のワークシートのページの画像を用紙の先頭又は表面から配置した印刷データを生成する、
ことを特徴とする請求項１１又は１２に記載の印刷制御プログラム。
【請求項１５】
複数のワークシートに情報が記述されたSpreadsheetのデータの印刷を制御する装置を含むシステムにおける印刷制御方法であって、
前記装置は、
前記データをラスタライズして、各々の前記ワークシートに記述された情報を用紙に印刷するための、ページ毎の画像を生成する画像生成処理と、
前記複数のワークシートをまとめて印刷する際に、前記データを解析して、前記ワークシートの数と各々の前記ワークシートの前記ページの数と集約印刷及び／又は両面印刷に関する情報とを含む印刷設定情報を取得するデータ解析処理と、
前記印刷設定情報に基づいて、前記ワークシート毎に用紙を替える第１の出力形式で印刷する場合の第１の印刷枚数と、前記ワークシート間を詰める第２の出力形式で印刷する場合の第２の印刷枚数と、を算出する印刷枚数算出処理と、
前記第１の印刷枚数と前記第２の印刷枚数とを比較し、前記第２の印刷枚数が前記第１の印刷枚数よりも少ない場合は、前記第２の出力形式に従って、前記複数のワークシートのページの画像を順に配置した印刷データを生成し、前記第２の印刷枚数が前記第１の印刷枚数以上の場合は、前記第１の出力形式に従って、前記ワークシート毎に用紙の先頭又は表面からページの画像を配置した印刷データを生成し、生成した前記印刷データを印刷エンジンに出力する印刷制御処理と、を実行する、
ことを特徴とする印刷制御方法。
【請求項１６】
前記印刷制御処理では、前記第２の印刷枚数が前記第１の印刷枚数よりも少ない場合において、所定の前記ワークシートで用紙を替えて印刷しても前記第２の印刷枚数が増加しない場合は、前記所定のワークシートのページの画像を用紙の先頭又は表面から配置した印刷データを生成する、
ことを特徴とする請求項１５に記載の印刷制御方法。
【請求項１７】
前記装置は、更に、
前記第２の印刷枚数が前記第１の印刷枚数よりも少ない場合に、表示部に、前記第１の印刷枚数と前記第２の印刷枚数とを比較可能に表示する表示制御処理を実行する、
ことを特徴とする請求項１５に記載の印刷制御方法。
【請求項１８】
前記表示制御処理では、前記表示部に、前記第２の印刷形式で印刷する場合の各用紙のページ構成を示すプレビュー画面を表示する、
ことを特徴とする請求項１７に記載の印刷制御方法。
【請求項１９】
前記表示制御処理では、前記プレビュー画面に、前記第１の出力形式で印刷する場合の各用紙のページ構成と前記第２の出力形式で印刷する場合の各用紙のページ構成とを比較可能に表示する、
ことを特徴とする請求項１８に記載の印刷制御方法。
【請求項２０】
前記印刷制御処理では、前記プレビュー画面で、所定のワークシートで用紙を替える指示が行われた場合において、前記所定のワークシートで用紙を替えて印刷しても前記第２の印刷枚数が増加しない場合は、前記所定のワークシートのページの画像を用紙の先頭又は表面から配置した印刷データを生成する、
ことを特徴とする請求項１８又は１９に記載の印刷制御方法。
【請求項２１】
前記印刷制御処理では、前記プレビュー画面で、所定のワークシートで用紙を替えない指示が行われた場合において、前記所定のワークシート以外の他のワークシートで用紙を替えて印刷しても前記第２の印刷枚数が増加しない場合は、前記他のワークシートのページの画像を用紙の先頭又は表面から配置した印刷データを生成する、
ことを特徴とする請求項１８又は１９に記載の印刷制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷制御装置、印刷制御プログラム及び印刷制御方法に関し、特に、複数のワークシートに情報が記述されたデータの印刷を制御する印刷制御装置、当該印刷制御装置で動作する印刷制御プログラム及び印刷制御方法に関する。
【背景技術】
【０００２】
文書作成や表計算などの処理が可能なオフィススイート・アプリケーションは、オフィスワーク、教育、家庭など、あらゆる場面で一般的に使用されている。オフィススイート・アプリケーションの内の代表的な表計算アプリケーションとして、Microsoft（登録商標、以下省略）のExcel（登録商標、以下省略）が挙げられる。また、Apache OpenOfficeなど、同様の機能を有するアプリケーションも複数流通しており、これらの表計算アプリケーションはSpreadsheetと呼ばれる。
【０００３】
上記MicrosoftのExcelのような表計算アプリケーションで作成される、セルが並んだワークシートでは、ファイル内においてワークシート毎にデータをまとめることができ、印刷の際には、ワークシート毎に印刷する（ジョブを分割して印刷する）か、全てのワークシートをまとめて印刷する（ジョブを結合して印刷する）か、を選択することができる。
【０００４】
このようなジョブの結合に関して、例えば、下記特許文献１には、印刷装置に送信すべき印刷データを生成する情報処理装置であって、アプリケーションにより生成された印刷すべきデータを中間コード形式の印刷ジョブに変換し、該印刷すべきデータの印刷設定情報と関連付けて一時保存する中間コード変換手段と、前記異なる印刷すべきデータに対応する複数の中間コード形式の印刷ジョブを結合して１つの結合ジョブにする結合指示をする結合指示手段と、前記結合指示手段により複数の印刷ジョブを１つの結合ジョブにする結合指示がなされた場合に、複数の印刷ジョブの印刷設定情報を解析し、１つの印刷ジョブに対して１つしか設定できない情報を統一した結合ジョブ用の印刷設定情報を生成する設定統一手段と、を有する構成が開示されている。
【０００５】
また、下記特許文献２には、通信線を介して接続された情報処理装置であって、アプリケーションから取得した論理ページのデータを１以上の物理ページに割当て、物理ページごとの印刷データを生成するプリンタドライバが作動する情報処理装置から前記プリンタドライバで生成された印刷データを受信する通信部と、各物理ページの全領域に占める白紙領域の割合としての白紙率を、受信した印刷データに基づいて算出し、前記白紙率が予め定められた閾値を越えるか否かを判定し、白紙率が閾値を超える物理ページについて、その一つ前の物理ページとの内容的な連続性の有無に基づき、または、その物理ページの白紙部分でない領域の配置的特徴に基づき印刷データの生成を中断するか否かを判断する再レイアウト判定部と、再レイアウト判定部が印刷データの生成を中断すると決定した場合、その物理ページと前の物理ページとを単一の物理ページに割当て直した結合印刷データを前記プリンタドライバに要求して生成させ、生成された結合印刷データをプリンタドライバから受信するよう制御するページ結合制御部とを備える画像形成装置が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００１−１３４３９４号公報
【特許文献２】特開２００８−２９３１０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述したように、Excelのような表計算アプリケーションで作成したデータは、ワークシート毎に印刷するか、全てのワークシートをまとめて印刷するかを選択することができるが、全てのワークシートをまとめて印刷する場合（Excelの場合はブック印刷と呼ばれる。）は、各々のワークシートの印刷が完了した時点で一度印刷設定がリセットされ、次のワークシートの印刷時には別のジョブとして印刷が実行されるのが標準仕様となっている。
【０００８】
そのため、Ｎｉｎ１印刷（集約印刷）時において、前のシートのページ数がＮの倍数でない（すなわち、用紙全体にページが配置されない）場合や、両面印刷時において、前のシートのページ数が２の倍数でない（すなわち、用紙の表裏にページが配置されない）場合には、ワークシート同士の間に空ページが入ってしまい、印刷枚数が増加してしまうという問題が生じる。
【０００９】
この問題に対して、上記特許文献１では、複数の印刷要求を一つの印刷ジョブに結合するにあたり、複数の印刷ジョブを中間データの状態で結合し、結合による印刷設定の統一や印刷ジョブの取捨選択、印刷順序の編集等を行えるようにしている。しかしながら、特許文献１では、印刷出力時の状態は考慮しておらず、その情報をフィードバックしてジョブの結合を制御することは行われていないため、上記問題を解決することができない。
【００１０】
また、特許文献２では、ワークシート上のデータとして一部がはみ出してしまうようなケースに対して、そのデータが印刷ページ内に収まるように縮小し、縮小後の再レイアウト時に別ページであったデータの前後を確認し、前ページの文尾が文・句の区切りかを調べて連続性を判定し、また、ページが章の先頭か否かをユーザに指定させて、章の先頭であった場合は結合対象から外すように制御している。しかしながら、この技術では、内部で章分けされているデータについては必ず結合しないように制御しており、最終的な出力枚数は考慮していないため、やはり上記問題を解決することができない。
【００１１】
本発明は、上記問題点に鑑みてなされたものであって、その主たる目的は、全てのワークシートをまとめて印刷する際に、印刷用紙の増加を抑制しつつ、元のシート構成を極力維持することができる印刷制御装置、印刷制御プログラム及び印刷制御方法を提供することにある。
【課題を解決するための手段】
【００１２】
本発明の一側面は、複数のワークシートに情報が記述されたSpreadsheetのデータの印刷を制御する印刷制御装置であって、前記データをラスタライズして、各々の前記ワークシートに記述された情報を用紙に印刷するための、ページ毎の画像を生成する画像処理部と、前記複数のワークシートをまとめて印刷する際に、前記データを解析して、前記ワークシートの数と各々の前記ワークシートの前記ページの数と集約印刷及び／又は両面印刷に関する情報とを含む印刷設定情報を取得するデータ解析部と、前記印刷設定情報に基づいて、前記ワークシート毎に用紙を替える第１の出力形式で印刷する場合の第１の印刷枚数と、前記ワークシート間を詰める第２の出力形式で印刷する場合の第２の印刷枚数と、を算出する印刷枚数算出部と、前記第１の印刷枚数と前記第２の印刷枚数とを比較し、前記第２の印刷枚数が前記第１の印刷枚数よりも少ない場合は、前記第２の出力形式に従って、前記複数のワークシートのページの画像を順に配置した印刷データを生成し、前記第２の印刷枚数が前記第１の印刷枚数以上の場合は、前記第１の出力形式に従って、前記ワークシート毎に用紙の先頭又は表面からページの画像を配置した印刷データを生成し、生成した前記印刷データを印刷エンジンに出力する印刷制御部と、を備えることを特徴とする。
【００１３】
本発明の一側面は、複数のワークシートに情報が記述されたSpreadsheetのデータの印刷を制御する装置で動作する印刷制御プログラムであって、前記装置に、ＲＩＰ（Raster Image Processor）を備える画像処理部に、前記データをラスタライズさせ、各々の前記ワークシートに記述された情報を用紙に印刷するための、ページ毎の画像を生成させる画像生成処理、前記複数のワークシートをまとめて印刷する際に、前記データを解析して、前記ワークシートの数と各々の前記ワークシートの前記ページの数と集約印刷及び／又は両面印刷に関する情報とを含む印刷設定情報を取得するデータ解析処理、前記印刷設定情報に基づいて、前記ワークシート毎に用紙を替える第１の出力形式で印刷する場合の第１の印刷枚数と、前記ワークシート間を詰める第２の出力形式で印刷する場合の第２の印刷枚数と、を算出する印刷枚数算出処理、前記第１の印刷枚数と前記第２の印刷枚数とを比較し、前記第２の印刷枚数が前記第１の印刷枚数よりも少ない場合は、前記第２の出力形式に従って、前記複数のワークシートのページの画像を順に配置した印刷データを生成し、前記第２の印刷枚数が前記第１の印刷枚数以上の場合は、前記第１の出力形式に従って、前記ワークシート毎に用紙の先頭又は表面からページの画像を配置した印刷データを生成し、生成した前記印刷データを印刷エンジンに出力する印刷制御処理、を実行させることを特徴とする。
【００１４】
本発明の一側面は、複数のワークシートに情報が記述されたSpreadsheetのデータの印刷を制御する装置を含むシステムにおける印刷制御方法であって、前記装置は、前記データをラスタライズして、各々の前記ワークシートに記述された情報を用紙に印刷するための、ページ毎の画像を生成する画像生成処理と、前記複数のワークシートをまとめて印刷する際に、前記データを解析して、前記ワークシートの数と各々の前記ワークシートの前記ページの数と集約印刷及び／又は両面印刷に関する情報とを含む印刷設定情報を取得するデータ解析処理と、前記印刷設定情報に基づいて、前記ワークシート毎に用紙を替える第１の出力形式で印刷する場合の第１の印刷枚数と、前記ワークシート間を詰める第２の出力形式で印刷する場合の第２の印刷枚数と、を算出する印刷枚数算出処理と、前記第１の印刷枚数と前記第２の印刷枚数とを比較し、前記第２の印刷枚数が前記第１の印刷枚数よりも少ない場合は、前記第２の出力形式に従って、前記複数のワークシートのページの画像を順に配置した印刷データを生成し、前記第２の印刷枚数が前記第１の印刷枚数以上の場合は、前記第１の出力形式に従って、前記ワークシート毎に用紙の先頭又は表面からページの画像を配置した印刷データを生成し、生成した前記印刷データを印刷エンジンに出力する印刷制御処理と、を実行することを特徴とする。
【発明の効果】
【００１５】
本発明の印刷制御装置、印刷制御プログラム及び印刷制御方法によれば、全てのワークシートをまとめて印刷する際に、印刷用紙の増加を抑制しつつ、元のシート構成を極力維持することができる。
【００１６】
その理由は、印刷制御装置（印刷制御プログラム）は、複数のワークシートに情報が記述されたデータを解析して印刷設定情報を取得し、その印刷設定情報に基づいて、ワークシート毎に用紙を替える（ジョブ分割を行う）第１の出力形式で印刷する場合の第１の印刷枚数と、ワークシート間を詰める（ジョブ分割を抑制する）第２の出力形式で印刷する場合の第２の印刷枚数と、を算出し、第２の印刷枚数が第１の印刷枚数よりも少ない場合は、第２の出力形式に従って複数のワークシートのページの画像を順に配置した印刷データを生成し、第２の印刷枚数が第１の印刷枚数以上の場合は、第１の出力形式に従ってワークシート毎に用紙の先頭又は表面からページの画像を配置した印刷データを生成し、生成した印刷データを印刷エンジンに出力するからである。また、印刷制御装置（印刷制御プログラム）は、第２の印刷枚数が第１の印刷枚数よりも少ない場合において、所定のワークシートで用紙を替えて印刷しても第２の印刷枚数が増加しない場合は、所定のワークシートのページの画像を用紙の先頭又は表面から配置した印刷データを生成するからである。
【００１７】
このように、出力時の印刷枚数を予め算出することにより、ジョブ分割を抑制することによる印刷枚数の削減可否を判定することができる。そして、印刷枚数の削減可否に応じて、ジョブ分割を抑制するか否かを判断することにより、印刷用紙の削減とシート構成の維持とを両立させることができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施例に係る印刷システムの構成を示す模式図である。
【図２】本発明の一実施例に係る印刷システムの構成を示す模式図である。
【図３】本発明の一実施例に係るクライアント端末の構成を示すブロック図である。
【図４】本発明の一実施例に係るコントローラの構成を示すブロック図である。
【図５】本発明の一実施例に係る印刷装置の構成を示すブロック図である。
【図６】本発明の一実施例に係るコントローラの処理（全体処理）を示すフローチャート図である。
【図７】本発明の一実施例に係るコントローラの処理（合計ページ数算出処理）を示すフローチャート図である。
【図８】本発明の一実施例に係るコントローラの処理（ジョブ分割ありの印刷枚数算出処理）を示すフローチャート図である。
【図９】本発明の一実施例に係る印刷制御の一例（集約印刷でジョブ分割を行う場合）を示す模式図である。
【図１０】本発明の一実施例に係る印刷制御の一例（集約印刷でジョブ分割を抑制する場合）を示す模式図である。
【図１１】本発明の一実施例に係る印刷制御の一例（集約印刷でジョブ分割を抑制する場合のバリエーション）を示す模式図である。
【図１２】本発明の一実施例に係る印刷制御の一例（集約印刷でジョブ分割を抑制する場合のバリエーション）を示す模式図である。
【図１３】本発明の一実施例に係る印刷制御の一例（集約印刷でジョブ分割を抑制する場合のバリエーション）を示す模式図である。
【図１４】本発明の一実施例に係る印刷制御の一例（両面印刷の場合）を示す模式図である。
【図１５】本発明の一実施例に係る比較結果通知画面の一例を示す模式図である。
【図１６】本発明の一実施例に係るプレビュー画面の一例を示す模式図である。
【図１７】本発明の一実施例に係るプレビュー画面の他の例を示す模式図である。
【図１８】Spreadsheetのアプリケーション画面の一例を示す模式図である。
【図１９】２ｉｎ１印刷（標準設定）の一例を示す模式図である。
【図２０】２ｉｎ１印刷（ジョブ分割を抑制する設定）の一例を示す模式図である。
【図２１】４ｉｎ１印刷（標準設定）の一例を示す模式図である。
【図２２】４ｉｎ１印刷（ジョブ分割を抑制する設定）の一例を示す模式図である。
【図２３】両面印刷（標準設定）の一例を示す模式図である。
【図２４】両面印刷（ジョブ分割を抑制する設定）の一例を示す模式図である。
【図２５】本発明の一実施の形態に係る印刷制御方法（２ｉｎ１の場合）を説明する模式図である。
【図２６】本発明の一実施の形態に係る印刷制御方法（４ｉｎ１の場合）を説明する模式図である。
【図２７】本発明の一実施の形態に係る印刷制御方法（両面印刷の場合）を説明する模式図である。
【図２８】本発明の一実施の形態に係る印刷制御方法（両面印刷の場合）を説明する模式図である。
【発明を実施するための形態】
【００１９】
背景技術で示したように、ExcelのようなSpreadsheetでは、ファイル内においてワークシート毎にデータをまとめることができ、印刷の際には、ワークシート毎に印刷するか全てのワークシートをまとめて印刷するかを選択することができる。全てのワークシートをまとめて印刷する場合、各々のワークシートの印刷が完了した時点で一度印刷設定がリセットされ、次のワークシートの印刷時には別のジョブとして印刷が実行されるのが標準仕様となっているため、集約印刷時や両面印刷時などでは、ワークシート間に空ページが入ってしまい、印刷用紙が増加してしまう。
【００２０】
この問題に対して、近年のＭＦＰには、ジョブ分割を抑制する機能が設けられており、その機能を用いることにより、シート間に空ページを入れることなく、複数のワークシートのページを連続して印刷することができ、印刷用紙の増加を抑制することができる。しかしながら、各々のワークシートのページ構成によっては、ワークシート間を詰めて印刷しても印刷枚数を削減することができない場合が生じる。
【００２１】
この問題について、図１８乃至図２４を参照して説明する。以下、ワークシートをシートと略記する。図１８は、Excelのアプリケーション画面の一例であり、（ａ）はシート１、（ｂ）はシート２を示している。また、各シートの破線は印刷領域（破線で区切られた範囲が１ページとなる。）を示しており、シート１及びシート２の各々に３ページ分の情報が記述されている。
【００２２】
図１９及び図２０は、図１８の構成の２つのシートをまとめて印刷する際に２ｉｎ１印刷を指示した場合の出力例である。図１９に示すように、標準設定（各シートを１ジョブとして印刷する設定）の場合は、１枚目の用紙にシート１のページ１と２、２枚目の用紙にシート１のページ３、３枚目の用紙にシート２のページ１と２、４枚目の用紙にシート２のページ３が各々印刷され、印刷枚数は計４枚となる。一方、図２０に示すように、ジョブ分割を抑制する設定（シート間を詰めて印刷する設定）の場合は、１枚目の用紙にシート１のページ１と２、２枚目の用紙にシート１のページ３及びシート２のページ１、３枚目の用紙にシート２のページ２と３が各々印刷され、印刷枚数は計３枚となる。従って、図１８の構成の２つのシートに対して２ｉｎ１印刷を指示する場合は、ジョブ分割を抑制することにより、印刷枚数を１枚削減することができる。
【００２３】
また、図２１及び図２２は、図１８の構成の２つのシートをまとめて印刷する際に４ｉｎ１印刷を指示した場合の出力例である。図２１に示すように、標準設定の場合は、１枚目の用紙にシート１のページ１〜３、２枚目の用紙にシート２のページ１〜３が各々印刷され、印刷枚数は計２枚となる。一方、図２２に示すように、ジョブ分割を抑制する設定の場合は、１枚目の用紙にシート１のページ１〜３及びシート２のページ１、２枚目の用紙にシート２のページ２と３が各々印刷され、印刷枚数は計２枚となる。従って、図１８の構成の２つのシートに対して４ｉｎ１印刷を指示する場合は、ジョブ分割を抑制しても、印刷枚数を削減することはできない。
【００２４】
また、図２３及び図２４は、図１８の構成の２つのシートをまとめて印刷する際に両面印刷を指示した場合の出力例である。図２３に示すように、標準設定の場合は、１枚目の用紙の表裏にシート１のページ１と２、２枚目の用紙の表にシート１のページ３、３枚目の用紙の表裏にシート２のページ１と２、４枚目の用紙の表にシート２のページ３が各々印刷され、印刷枚数は計４枚となる。一方、図２４に示すように、ジョブ分割を抑制する設定の場合は、１枚目の用紙の表裏にシート１のページ１と２、２枚目の用紙の表裏にシート１のページ３及びシート２のページ１、３枚目の用紙の表裏にシート２のページ２と３が各々印刷され、印刷枚数は計３枚となる。従って、図１８の構成の２つのシートに対して両面印刷を指示する場合は、ジョブ分割を抑制することにより、印刷枚数を１枚削減することができる。
【００２５】
このように、各シートのページ構成及び印刷設定によって、ジョブ分割を抑制すれば印刷枚数を削減することができる場合もあれば、ジョブ分割を抑制しても印刷枚数を削減することができない場合もある。ここで、後者では、ジョブ分割を抑制しても用紙枚数を削減できないにもかかわらずシート間を詰めて印刷することになるが、シート間を詰めて印刷するとデータ作成時のアプリケーション画面の状態（シート毎に分離した状態）と一致しなくなり、出力物の使い勝手が悪化する。従って、ジョブ分割を抑制しても用紙枚数を削減できない場合は、シート毎の区切りは残した方が好ましい。
【００２６】
そこで、本発明の一実施の形態では、複数のシートに情報が記述されたSpreadsheetのデータの印刷を指示する際に、ジョブ分割を行って各シートを個別に印刷する（シート毎に用紙を替えて印刷する）場合の最終的な印刷枚数と、ジョブ分割を抑制して全シートをまとめて印刷する（シート間を詰めて印刷する）場合の最終的な印刷枚数と、を印刷実行前に予め算出し、印刷枚数が最小化される範囲で元のシート構成がなるべく維持されるように印刷を制御する。
【００２７】
具体的には、Spreadsheetのデータを解析して、印刷設定情報（シート数、シート毎のページ数、集約印刷や両面印刷に関する情報）を取得し、ジョブ分割を行う（シート毎に用紙を替える）第１の出力形式及びジョブ分割を抑制する（シート間を詰める）第２の出力形式の各々で印刷する場合の印刷枚数を算出し、ジョブ分割を抑制すれば印刷枚数を削減することができる場合は、第２の出力形式に従って複数のシートのページの画像を順に配置した印刷データを生成し、ジョブ分割を抑制しても印刷枚数を削減できない場合は、第１の出力形式に従ってシート毎に用紙の先頭又は表面からページの画像を配置した印刷データを生成する。
【００２８】
例えば、図２５に示すように、２シート（各３ページ）をまとめて２ｉｎ１印刷する場合において、（ａ）の様にジョブ分割を行って印刷するよりも、（ｂ）の様にジョブ分割を抑制して印刷する方が、印刷枚数を削減できる場合は、印刷枚数の削減を優先して、ジョブ分割を抑制する（ｂ）の出力形式を選択する。また、図２６に示すように、２シート（各３ページ）をまとめて４ｉｎ１印刷する場合において、（ａ）の様にジョブ分割を行って印刷しても、（ｂ）の様にジョブ分割を抑制して印刷しても、印刷枚数が変わらない場合は、オリジナルのシート構成を優先して、ジョブ分割を行う（ａ）の出力形式を選択する。
【００２９】
また、上記制御は、２ｉｎ１や４ｉｎ１などの集約機能を用いて印刷する場合に限らず、両面印刷機能を用いて印刷する場合にも適用することができる。例えば、図２７に示すように、２シート（各３ページ）をまとめて両面印刷する場合において、（ａ）の様にジョブ分割を行って印刷するよりも、（ｂ）の様にジョブ分割を抑制して印刷する方が、印刷枚数を削減できる場合は、印刷枚数の削減を優先して、ジョブ分割を抑制する（ｂ）の出力形式を選択する。また、図２８に示すように、２シート（３ページ及び４ページ）をまとめて両面印刷する場合において、（ａ）の様にジョブ分割を行って印刷しても、（ｂ）の様にジョブ分割を抑制して印刷しても、印刷枚数が変わらない場合は、オリジナルのシート構成を優先して、ジョブ分割を行う（ａ）の出力形式を選択する。
【００３０】
このように、出力状態を先に検出して印刷枚数を比較し、比較結果に基づいて印刷制御を行うことにより、印刷枚数を削減可能な場合は枚数削減を優先した出力形式に基づく印刷を、印刷枚数を削減可能でない場合はオリジナルのシート構成を優先した出力形式に基づく印刷を行うことができる。また、ジョブ分割を抑制することにより印刷枚数をどの程度削減できるかを表示したり、出力イメージはどのようになるかをプレビュー表示したりしてもよく、ジョブ分割を行うかジョブ分割を抑制するかなどをユーザが指定できるようにすることにより、ユーザが所望する出力形式で印刷を実行することができる。
【実施例】
【００３１】
上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の一実施例に係る印刷制御装置、印刷制御プログラム及び印刷制御方法について、図１乃至図１７を参照して説明する。図１及び図２は、本実施例の印刷システムの構成を示す模式図であり、図３乃至図５は、各々、クライアント端末、コントローラ、印刷装置の構成を示すブロック図である。また、図６乃至図８は、本実施例のコントローラの処理を示すフローチャート図であり、図９乃至図１４は、本実施例の印刷制御の一例を示す模式図、図１５乃至図１７は、本実施例のコントローラに表示される画面の一例を示す模式図である。
【００３２】
図１に示すように、本実施例の印刷システム１０は、クライアント端末２０とコントローラ３０と印刷装置４０などで構成される。これらはイーサネット（登録商標）、トークンリング、ＦＤＤＩ（Fiber-Distributed Data Interface）等の規格により定められるＬＡＮ（Local Area Network）やＷＡＮ（Wide Area Network）等の通信ネットワーク５０を介して接続されている。
【００３３】
なお、コントローラ３０と印刷装置４０とはＰＣＩ（Peripheral Component Interconnect）接続などの専用線で接続されていてもよい。また、図１では、印刷システム１０をクライアント端末２０とコントローラ３０と印刷装置４０とで構成したが、図２に示すように、コントローラ３０は印刷装置４０に内蔵される構成としてもよい。以下、図１の印刷システム１０を前提にして、各装置について説明する。
【００３４】
［クライアント端末］
クライアント端末２０は、パーソナルコンピュータなどのコンピュータ装置、スマートフォンやタブレットなどの携帯端末などであり、Spreadsheetのデータを作成してコントローラ３０に送信する。このクライアント端末２０は、図３（ａ）に示すように、制御部２１、記憶部２５、ネットワークＩ／Ｆ部２６、表示部２７、操作部２８などで構成される。
【００３５】
制御部２１は、ＣＰＵ（Central Processing Unit）２２と、ＲＯＭ（Read Only Memory）２３やＲＡＭ（Random Access Memory）２４などのメモリとで構成され、ＣＰＵ２２は、ＲＯＭ２３や記憶部２５に記憶した制御プログラムをＲＡＭ２４に展開して実行することにより、クライアント端末２０全体の動作を制御する。また、図３（ｂ）に示すように、上記制御部２１（ＣＰＵ２２）により、ＯＳ（Operating System）２１ａ、アプリケーション２１ｂ、ダイレクトプリントユーティリティ２１ｃなどが実行される。
【００３６】
ＯＳ２１ａは、Windows（登録商標）やMacOS（登録商標）、Android（登録商標）などであり、クライアント端末２０でアプリケーション２１ｂやダイレクトプリントユーティリティ２１ｃなどを動作可能にする。
【００３７】
アプリケーション２１ｂは、MicrosoftのExcelなどの表計算アプリケーション（Spreadsheet）であり、シート毎に表やグラフなどの情報が記述されたデータ（以下、Spreadsheetのデータとする。）を作成する。このSpreadsheetのデータには、シート数、シート毎のページ数、集約印刷や両面印刷に関する情報などの印刷設定情報が含まれる。
【００３８】
ダイレクトプリントユーティリティ２１ｃは、所定のフォルダ（例えば、記憶部２５内のフォルダ）を監視し、Spreadsheetのデータが所定のフォルダに保存されたら、コントローラ３０に当該データを送信してダイレクトプリントを指示する。
【００３９】
記憶部２５は、ＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）などで構成され、ＣＰＵ２２が各部を制御するためのプログラム、Spreadsheetのデータなどを保存する。
【００４０】
ネットワークＩ／Ｆ部２６は、ＮＩＣ（Network Interface Card）やモデムなどで構成され、クライアント端末２０を通信ネットワーク５０に接続し、Spreadsheetのデータを送信可能にする。
【００４１】
表示部２７は、液晶表示装置（ＬＣＤ：Liquid Crystal Display）や有機ＥＬ（electroluminescence）表示装置などで構成され、アプリケーション２１ｂの画面などを表示する。
【００４２】
操作部２８は、マウスやキーボードなどで構成され、アプリケーション２１ｂを用いたSpreadsheetのデータの作成、ダイレクトプリントの指示などの操作を可能にする。
【００４３】
なお、図３（ｂ）では、ダイレクトプリントユーティリティ２１ｃを用いて印刷指示を行う構成としたが、プリンタドライバを用いて印刷を指示することもできる。その場合は、制御部２１により、プリンタドライバが実行され、プリンタドライバは、アプリケーション２１ｂによって作成されたデータを、ＰＪＬ（Printer Job Language）やＰＳ（PostScript）、ＰＣＬ（Printer Control Language）等のページ記述言語で記述されたＰＤＬ（Page Description Language）データに変換してコントローラ３０に送信する。
【００４４】
［コントローラ］
コントローラ３０は、クライアント端末２０から受信したSpreadsheetのデータを処理し、印刷装置４０に印刷を指示する。このコントローラ３０は、図４（ａ）に示すように、制御部３１、記憶部３５、画像処理部３６、ネットワークＩ／Ｆ部３７、表示部３８、操作部３９などで構成される。
【００４５】
制御部３１は、ＣＰＵ３２と、ＲＯＭ３３やＲＡＭ３４などのメモリとで構成され、ＣＰＵ３２は、ＲＯＭ３３や記憶部３５に記憶した制御プログラムをＲＡＭ３４に展開して実行することにより、コントローラ３０全体の動作を制御する。また、図４（ｂ）に示すように、制御部３１は、データ解析部３１ａ、印刷枚数算出部３１ｂ、印刷制御部３１ｃ、表示制御部３１ｄなどとして機能する。
【００４６】
データ解析部３１ａは、複数のシートをまとめて印刷する際に、Spreadsheetのデータを受信して解析し、印刷設定情報を取得する。本実施例では、印刷設定情報として、シート数、シート毎のページ数に加えて、集約印刷や両面印刷に関する情報を取得する。
【００４７】
印刷枚数算出部３１ｂは、印刷設定情報に基づいて印刷枚数を算出し、算出した印刷枚数を印刷制御部３１ｃや表示制御部３１ｄに通知する。具体的には、シート数とシート毎のページ数とに基づき、各シートの印刷枚数を算出して加算することにより、ジョブ分割を行う場合の印刷枚数（第１の出力形式で印刷する場合の第１の印刷枚数）を算出する。また、印刷枚数算出部３１ｂは、シート数とシート毎のページ数とに基づいて全シートの合計ページ数を算出し、合計ページ数を集約数（両面印刷の場合は２）で除算することにより、ジョブ分割を抑制する場合の印刷枚数（第２の出力形式で印刷する場合の第２の印刷枚数）を算出する。なお、第１の出力形式は、シート毎に用紙を替えて印刷（言い換えると、各々のシートのページの画像を用紙の先頭又は表面から順に配置）する形式であり、第２の出力形式は、シート毎に用紙を替えずにシート間を詰めて印刷（言い換えると、複数のシートのページの画像を順に配置）する形式である。
【００４８】
印刷制御部３１ｃは、ジョブ分割を行う場合の印刷枚数（第１の出力形式で印刷する場合の第１の印刷枚数）とジョブ分割を抑制する場合の印刷枚数（第２の出力形式で印刷する場合の第２の印刷枚数）とを比較し、その比較結果に基づいて印刷データを生成する。具体的には、第１の印刷枚数と第２の印刷枚数とを比較し、ジョブ分割を抑制することにより印刷枚数を削減できる場合（第２の印刷枚数が第１の印刷枚数よりも少ない場合）は、第２の出力形式に従って複数のシートのページの画像を順に配置した印刷データを生成して印刷装置４０に出力する。その際、必要に応じて、所定のシートで用紙を替える指示が行われた場合において、所定のシートで用紙を替えて印刷しても第２の印刷枚数が増加しない場合は、所定のシートのページの画像を用紙の先頭又は表面から配置した印刷データを生成する。また、所定のシートで用紙を替えない指示が行われた場合において、所定のシート以外の他のシートで用紙を替えて印刷しても第２の印刷枚数が増加しない場合は、他のシートのページの画像を用紙の先頭又は表面から配置した印刷データを生成する。また、ジョブ分割を抑制しても印刷枚数を削減できない場合（第２の印刷枚数が第１の印刷枚数以上の場合）は、第１の出力形式に従ってシート毎に用紙の先頭又は表面からページの画像を配置した印刷データを生成して印刷装置４０に出力する。
【００４９】
表示制御部３１ｄは、第２の印刷枚数が第１の印刷枚数よりも少ない場合に、表示部３８に、第１の印刷枚数と第２の印刷枚数とを比較可能にする画面（後述する比較結果通知画面）を表示させたり、表示部３８に、ジョブ分割を抑制する場合（第２の印刷形式で印刷する場合）の各用紙のページ構成を示す画面（後述するプレビュー画面）を表示させたり、プレビュー画面に、ジョブ分割を行う場合（第１の印刷形式で印刷する場合）の各用紙のページ構成とジョブ分割を抑制する場合（第２の印刷形式で印刷する場合）の各用紙のページ構成とを比較可能に表示したりする。そして、ジョブ分割を抑制するか否か、ジョブ分割を抑制する場合は、どのシートで用紙を替えるか（用紙の先頭又は表面からページを配置するか）、どのシートで用紙を替えないか（空きを作らずに前のシートに続けてページを配置するか）などをユーザが指示できるようにする。
【００５０】
なお、上記データ解析部３１ａ、印刷枚数算出部３１ｂ、印刷制御部３１ｃ、表示制御部３１ｄはハードウェアとして構成してもよいし、制御部３１をデータ解析部３１ａ、印刷枚数算出部３１ｂ、印刷制御部３１ｃ、表示制御部３１ｄ（特に、データ解析部３１ａ、印刷枚数算出部３１ｂ、印刷制御部３１ｃ）として機能させる印刷制御プログラムとして構成し、当該印刷制御プログラムをＣＰＵ３２に実行させるようにしてもよい。
【００５１】
記憶部３５は、ＨＤＤやＳＳＤなどで構成され、ＣＰＵ３２が各部を制御するためのプログラム、クライアント端末２０から受信したSpreadsheetのデータ、印刷制御部３１ｃが生成した印刷データなどを保存する。
【００５２】
画像処理部３６は、ＲＩＰ（Raster Image Processor）を備え、制御部３１（印刷制御プログラム）の指示に従って、Spreadsheetのデータをラスタライズして、各々のシートに記述された情報を用紙に印刷するための、ページ毎の画像を生成し、生成した画像を印刷制御部３１ｃに転送して印刷データを生成可能にしたり、表示制御部３１ｄに転送してプレビュー画面を生成可能にしたりする。また、画像処理部３６は、必要に応じて、生成した画像に対して、スクリーン処理、階調補正、濃度バランス調整、細線化、網点処理などを行う。
【００５３】
ネットワークＩ／Ｆ部３７は、ＮＩＣやモデムなどで構成され、コントローラ３０を通信ネットワーク５０に接続し、Spreadsheetのデータを受信可能にし、印刷データを送信可能にする。
【００５４】
表示部３８は、液晶表示装置や有機ＥＬ表示装置などで構成され、印刷に関する各種画面を表示する。本実施例では、特に、上述した比較結果通知画面やプレビュー画面を表示する。
【００５５】
操作部３９は、マウスやキーボードなどで構成され、印刷に関する各種操作を可能にする。本実施例では、特に、上述した比較結果通知画面やプレビュー画面に対して、ジョブ分割を抑制するか否か、ジョブ分割を抑制する場合にどのシートで用紙を替えるか（又は用紙を替えないか）などを指定可能にする。
【００５６】
［印刷装置］
印刷装置４０は、ＭＦＰ（Multi-Functional Peripherals）や単機能プリンタなどであり、コントローラ３０から受信した印刷データに基づいて、用紙に印刷を行う。この印刷装置４０は、図５に示すように、制御部４１、記憶部４５、ネットワークＩ／Ｆ部４６、表示操作部４７、印刷部４８などで構成される。
【００５７】
制御部４１は、ＣＰＵ４２とＲＯＭ４３やＲＡＭ４４などのメモリとで構成され、ＣＰＵ４２は、ＲＯＭ４３や記憶部４５に記憶した制御プログラムをＲＡＭ４４に展開して実行することにより、印刷装置４０全体の動作を制御する。
【００５８】
記憶部４５は、ＨＤＤやＳＳＤなどで構成され、ＣＰＵ４２が各部を制御するためのプログラム、自装置の処理機能に関する情報、印刷データなどを記憶する。
【００５９】
ネットワークＩ／Ｆ部４６は、ＮＩＣやモデムなどで構成され、印刷装置４０を通信ネットワーク５０に接続し、コントローラ３０から印刷データを受信可能にする。
【００６０】
表示操作部４７は、表示部上に透明電極が格子状に配置された感圧式の操作部（タッチセンサ）を設けたタッチパネルなどであり、印刷処理に関する各種画面を表示し、印刷に関する各種操作を可能にする。
【００６１】
印刷部４８は、給紙部から供給される用紙に印刷データに基づく画像を印刷して排紙部に出力する印刷エンジンである。この印刷部４８は、例えば、印刷データに基づいてレーザ光を照射して露光する露光部と、感光体ドラムと現像部と帯電部と感光体クリーニング部と１次転写ローラとを備え、ＣＭＹＫの各色のトナー像を形成する画像形成部と、ローラによって回転され、画像形成部で形成されたトナー像を用紙に搬送する中間転写体として機能する中間ベルトと、中間ベルト上に形成されたトナー像を用紙に転写する２次転写ローラと、用紙に転写されたトナー像を定着させる定着部などで構成される。
【００６２】
なお、図１乃至図５は、本実施例の印刷システム１０の一例であり、各装置の構成や制御は適宜変更可能である。例えば、上記では、コントローラ３０が印刷装置４０を制御する場合について記載したが、コントローラ３０が印刷装置４０に内蔵される場合は、印刷装置４０の制御部４１をデータ解析部、印刷枚数算出部、印刷制御部、表示制御部として機能させる（ＣＰＵ４２に印刷制御プログラムを実行させる）ようにしてもよい。
【００６３】
以下、本実施例のコントローラ３０の動作について具体的に説明する。ＣＰＵ３２は、ＲＯＭ３３又は記憶部３５に記憶した印刷制御プログラムをＲＡＭ３４に展開して実行することにより、図６乃至図８のフローチャート図に示す各ステップの処理を実行する。なお、以下では、複数のシートをまとめて集約印刷する場合について主に記載する。
【００６４】
まず、コントローラ３０の制御部３１は、クライアント端末２０からSpreadsheetのデータを受信すると（Ｓ１００）、画像処理部３６に、各シートに記述された情報を用紙に印刷するための、ページ毎の画像を生成させる。なお、Spreadsheetのデータは、ＵＳＢ（Universal Serial Bus）メモリやＳＤ（Secure Digital）カードなどの可搬記憶媒体を介して取得してもよい。
【００６５】
次に、制御部３１（データ解析部３１ａ）は、Spreadsheetのデータを解析し、印刷設定情報（ここでは、シート数ｓと各シートのページ数Ｐｎと集約機能における集約数Ｎ）を取得する（Ｓ１１０）。
【００６６】
次に、制御部３１（印刷枚数算出部３１ｂ）は、集約数Ｎが２以上であるかを判断し（Ｓ１２０）、集約数Ｎが２未満（すなわち、集約機能を使用しない設定）であれば（Ｓ１２０のＮｏ）、制御部３１（印刷制御部３１ｃ）は、画像処理部３６が生成した各ページの画像を用紙の全面に配置した印刷データを生成し、ネットワークＩ／Ｆ部３７を介して印刷装置４０（印刷部４８）に出力して（Ｓ１９０）、一連の処理を終了する。
【００６７】
一方、集約数Ｎが２以上の場合は（Ｓ１２０のＹｅｓ）、制御部３１（印刷枚数算出部３１ｂ）は、Ｓ１１０で取得した印刷設定情報に基づいて、Spreadsheetのデータの全シートの合計ページ数ＴＰを算出する（Ｓ１３０）。図７は、このステップの詳細を示しており、まず、ｓにシート数を代入し（Ｓ１３１）、ｎに１、ＴＰに０を代入し（Ｓ１３２）、シート数ｓがｎよりも小さいかを判断する（Ｓ１３３）。ｓ≧ｎの場合は（Ｓ１３３のＮｏ）、Ｐｎにシートｎのページ数を代入し（Ｓ１３４）、ＴＰにシートｎのページ数Ｐｎを加算する（Ｓ１３５）。そして、ｎに１を加算し（Ｓ１３６）、Ｓ１３３に戻って、シート数ｓがｎよりも小さいかを判断する（Ｓ１３３）。ｓ≧ｎの場合は（Ｓ１３３のＮｏ）、同様の処理を繰り返し、ｓ＜ｎになったら（Ｓ１３３のＹｅｓ）、合計ページ数の算出処理を終了する。
【００６８】
図６に戻って、制御部３１（印刷枚数算出部３１ｂ）は、Ｓ１３０で算出した全シートの合計ページ数ＴＰをＳ１１０で取得した集約数Ｎで除算（余剰は切り上げ）して、ジョブ分割なし（ジョブ分割を抑制する）場合の印刷枚数Ｃｏｎｔを算出する（Ｓ１４０）。
【００６９】
続いて、制御部３１（印刷枚数算出部３１ｂ）は、Ｓ１１０で取得した印刷設定情報に基づいて、ジョブ分割あり（ジョブ分割を抑制しない）場合の印刷枚数ＤｉｖＴを算出する（Ｓ１５０）。図８はこのステップの詳細を示しており、まず、ｎに１、ＤｉｖＴに０を代入し（Ｓ１５１）、シート数ｓがｎよりも小さいかを判断する（Ｓ１５２）。ｓ≧ｎの場合は（Ｓ１５２のＮｏ）、ＤｉｖＴに、シートｎのページ数Ｐｎを集約数Ｎで除算した値（余剰を切り上げた値）を加算する（Ｓ１５３）。そして、ｎに１を加算し（Ｓ１５４）、Ｓ１５２に戻って、シート数ｓがｎよりも小さいかを判断する（Ｓ１５２）。ｓ≧ｎの場合は（Ｓ１５２のＮｏ）、同様の処理を繰り返し、ｓ＜ｎになったら（Ｓ１５２のＹｅｓ）、ジョブ分割ありの印刷枚数算出処理を終了する。
【００７０】
再び、図６に戻って、制御部３１（印刷制御部３１ｃ）は、ジョブ分割なしの印刷枚数Ｃｏｎｔが、ジョブ分割ありの印刷枚数ＤｉｖＴよりも小さいか（すなわち、ジョブ分割を抑制することにより印刷枚数を削減できるか）を判断する（Ｓ１６０）。
【００７１】
Ｃｏｎｔ＜ＤｉｖＴの場合は（Ｓ１６０のＹｅｓ）、ジョブ分割を抑制することにより印刷枚数を削減できるため、制御部３１（印刷制御部３１ｃ）は、画像処理部３６が生成した各ページの画像に基づいて、シート間を詰めてページの画像を配置した印刷データを生成する（Ｓ１７０）。一方、Ｃｏｎｔ≧ＤｉｖＴ（Ｃｏｎｔ＝ＤｉｖＴ）の場合は（Ｓ１６０のＮｏ）、ジョブ分割を抑制しても印刷枚数を削減できないため、制御部３１（印刷制御部３１ｃ）は、画像処理部３６が生成した各ページの画像に基づいて、シート毎に用紙を替えてページの画像を配置した印刷データを生成する（Ｓ１８０）。
【００７２】
その後、制御部３１（印刷制御部３１ｃ）は、ネットワークＩ／Ｆ部３７を介して、生成した印刷データを印刷装置４０（印刷部４８）に出力する（Ｓ１９０）。
【００７３】
その際、第２の印刷枚数が第１の印刷枚数よりも少ない場合は、印刷データを出力する前に、制御部３１（表示制御部３１ｄ）は、図１５に示すように、ジョブ分割なしの印刷枚数とジョブ分割ありの印刷枚数とを比較可能に表示する比較結果通知画面６０を表示部３８に表示させたり、図１６に示すように、ジョブ分割ありの場合の各用紙のページ構成とジョブ分割なしの場合の各用紙のページ構成とを比較可能に表示するプレビュー画面６１を表示部３８に表示させたり、図１７に示すように、更に用紙を替える（又は用紙を替えない）シートを選択可能にするプレビュー画面６１を表示部３８に表示させたりしてもよい。
【００７４】
なお、上記フローでは、Spreadsheetのデータを集約印刷する場合について記載したが、Spreadsheetのデータを両面印刷する場合は、印刷設定情報として両面印刷の有無を取得し、両面印刷の場合は集約印刷における集約数Ｎを２とした場合と同様の手順でジョブ分割又はジョブ分割の抑制を行うことができる。
【００７５】
以下、本実施例の印刷制御について、図９乃至図１３を参照して具体的に説明する。図９乃至図１３は、６ｉｎ１の集約印刷を行う場合の各用紙のページ構成を示す模式図である。
【００７６】
図９に示すように、シート１がページ１〜４、シート２がページ１〜５、シート３がページ１〜４で構成されるSpreadsheetのデータを６ｉｎ１で集約印刷する場合において、ジョブ分割を行う場合は、図９（ａ）に示すように、１枚目の用紙にシート１のページ１〜４、２枚目の用紙にシート２のページ１〜５、３枚目の用紙にシート３のページ１〜４が各々印刷され、印刷枚数は計３枚となる。一方、ジョブ分割を抑制する場合は、図９（ｂ）に示すように、１枚目の用紙にシート１のページ１〜４及びシート２のページ１と２、２枚目の用紙にシート２のページ３〜５及びシート３のページ１〜３、３枚目の用紙にシート３のページ４が各々印刷され、印刷枚数は計３枚となる。この場合、ジョブ分割を抑制しても、印刷枚数を削減することはできないため、図９（ａ）のようにジョブ分割を行って印刷が実行される。
【００７７】
また、図１０に示すように、シート１がページ１〜３、シート２がページ１と２、シート３がページ１〜３で構成されるSpreadsheetのデータを６ｉｎ１で集約印刷する場合において、ジョブ分割を行う場合は、図１０（ａ）に示すように、１枚目の用紙にシート１のページ１〜３、２枚目の用紙にシート２のページ１と２、３枚目の用紙にシート３のページ１〜３が各々印刷され、印刷枚数は計３枚となる。一方、ジョブ分割を抑制する場合は、図１０（ｂ）に示すように、１枚目の用紙にシート１のページ１〜３、シート２のページ１と２及びシート３のページ１、２枚目の用紙にシート３のページ２と３が各々印刷され、印刷枚数は計２枚となる。この場合、ジョブ分割を抑制することにより印刷枚数が削減できるため、図１０（ｂ）のようにジョブ分割を抑制して印刷が実行される。
【００７８】
上記図１０（ｂ）では、１枚目の用紙にシート１のページ１〜３、シート２のページ１と２及びシート３のページ１、２枚目の用紙にシート３のページ２と３が各々印刷されるようにシート間を詰めてページを配置したが、この構成では、１枚目の用紙にシート１〜３のページが混在することになり、元のシート構成が大きく変化する。一方、このSpreadsheetのデータの全シートの合計ページは８ページであり、２枚の印刷用紙に６ｉｎ１で配置可能なページ数は１２ページであり、４ページ分の空きがある。このようにページの空きがある場合は、印刷枚数が増加しない範囲で、任意のシートで用紙を替える（用紙の先頭からそのシートのページを配置する）ようにしてもよい。例えば、図１１（ａ）の構成（図１０（ａ）と同様）の場合に、図１１（ｂ）に示すように、１枚目の用紙のシート２のページ２の後ろを空きページにして、シート３で用紙を替えることにより、元のシート構成を極力維持することができる。
【００７９】
また、上記では、任意のシートで用紙を替える場合について記載したが、Spreadsheetのデータの印刷設定情報に用紙を替えるシートを指示する情報を含めたり、図１７に示すようなプレビュー画面６１で用紙を替えるシートを指示したりすることができる。例えば、図１２（ａ）の構成（図１０（ａ）と同様）において、シート２で用紙を替える指示がされている場合は、図１２（ｂ）に示すように、シート２で用紙を替え、２枚目の用紙にシート２のページ１と２及びシート３のページ１〜３を配置することができる。
【００８０】
また、上記では、用紙を替えるシートを指示する場合について記載したが、Spreadsheetのデータの印刷設定情報に用紙を替えない（空きを作らずに続けて印刷したい）シートを指示する情報を含めたり、図１７に示すようなプレビュー画面６１で用紙を替えないシートを指示したりすることができる。例えば、図１３（ａ）の構成において、シート３に対して用紙を替えない指示がされている場合は、図１３（ｂ）に示すように、シート３で用紙を替えない（シート２で用紙を替える）ようにし、２枚目の用紙にシート２のページ１と２及びシート３のページ１〜４を配置することができる。
【００８１】
なお、図９乃至図１３では、集約印刷として６ｉｎ１を例示したが、２ｉｎ１や４ｉｎ１、８ｉｎ１などの任意の集約印刷に対して、同様に、ジョブ分割を行うかジョブ分割を抑制するか、ジョブ分割を抑制する場合は、全てのシート間を詰めるか任意のシートで用紙を替えるか（又は用紙を替えないか）を設定することができる。
【００８２】
また、両面印刷の場合は、２ｉｎ１印刷の場合と同様に処理することができる。例えば、図１４に示すように、シート１がページ１と２、シート２がページ１、シート３がページ１、シート４がページ１で構成されるSpreadsheetのデータを両面印刷する場合において、ジョブ分割を行う場合は、図１４（ａ）に示すように、１枚目の用紙の表裏にシート１のページ１と２、２枚目の用紙の表にシート２のページ１、３枚目の用紙の表にシート３のページ１、４枚目の用紙の表にシート４のページ１が各々印刷され、印刷枚数は計４枚となる。一方、ジョブ分割を抑制する場合は、図１４（ｂ）に示すように、１枚目の用紙の表裏にシート１のページ１と２、２枚目の用紙の表裏にシート２のページ１及びシート３のページ１、３枚目の用紙の表にシート４のページ１が各々印刷され、印刷枚数は計３枚となる。この場合、ジョブ分割を抑制することにより印刷枚数が削減できるため、図１４（ｂ）のようにジョブ分割を抑制して印刷が実行される。また、図１４（ｃ）に示すように、シート３に対して用紙を替える指定がされている場合や、シート４に対して用紙を替えない指定がされている場合は、１枚目の用紙の表裏にシート１のページ１と２、２枚目の用紙の表にシート２のページ１、３枚目の用紙の表裏にシート３のページ１及びシート４のページ１が各々印刷される。また、集約印刷と両面印刷の双方を行う場合も、同様の手順で、ジョブ分割制御又はジョブ分割抑制制御を行うことができる。
【００８３】
なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨を逸脱しない限りにおいて、その構成や制御は適宜変更可能である。
【００８４】
例えば、上記実施例では、Spreadsheetについて記載したが、例えば、MicrosoftのWord（登録商標）やPowerPoint（登録商標）などで作成した複数のジョブを続けて印刷する場合などに対しても、本発明の印刷制御を同様に適用することができる。
【００８５】
また、上記実施例では、ダイレクトプリントを前提にして印刷指示を行うことから、コントローラ３０や印刷装置４０の表示部に比較結果通知画面やプレビュー画面を表示させたが、プリンタドライバを用いて印刷指示を行う場合は、プリンタドライバが本発明の印刷制御を行い、プリンタドライバによる印刷設定の際に比較結果通知画面やプレビュー画面を表示することも可能である。
【産業上の利用可能性】
【００８６】
本発明は、複数のワークシートに情報が記述されたデータの印刷を制御する印刷制御装置、当該印刷制御装置で動作する印刷制御プログラム、当該印刷制御プログラムを記録した記録媒体及び印刷制御装置を備えるシステムにおける印刷制御方法に利用可能である。
【符号の説明】
【００８７】
１０  印刷システム
２０  クライアント端末
２１  制御部
２１ａ  ＯＳ
２１ｂ  アプリケーション
２１ｃ  ダイレクトプリントユーティリティ
２２  ＣＰＵ
２３  ＲＯＭ
２４  ＲＡＭ
２５  記憶部
２６  ネットワークＩ／Ｆ部
２７  表示部
２８  操作部
３０  コントローラ
３１  制御部
３１ａ  データ解析部
３１ｂ  印刷枚数算出部
３１ｃ  印刷制御部
３１ｄ  表示制御部
３２  ＣＰＵ
３３  ＲＯＭ
３４  ＲＡＭ
３５  記憶部
３６  画像処理部
３７  ネットワークＩ／Ｆ部
３８  表示部
３９  操作部
４０  印刷装置
４１  制御部
４２  ＣＰＵ
４３  ＲＯＭ
４４  ＲＡＭ
４５  記憶部
４６  ネットワークＩ／Ｆ部
４７  表示操作部
４８  印刷部
５０  通信ネットワーク
６０  比較結果通知画面
６１  プレビュー画面
【図１】
2018094772.tif 000003
【図２】
2018094772.tif 000004
【図３】
2018094772.tif 000005
【図４】
2018094772.tif 000006
【図５】
2018094772.tif 000007
【図６】
2018094772.tif 000008
【図７】
2018094772.tif 000009
【図８】
2018094772.tif 000010
【図９】
2018094772.tif 000011
【図１０】
2018094772.tif 000012
【図１１】
2018094772.tif 000013
【図１２】
2018094772.tif 000014
【図１３】
2018094772.tif 000015
【図１４】
2018094772.tif 000016
【図１５】
2018094772.tif 000017
【図１６】
2018094772.tif 000018
【図１７】
2018094772.tif 000019
【図１８】
2018094772.tif 000020
【図１９】
2018094772.tif 000021
【図２０】
2018094772.tif 000022
【図２１】
2018094772.tif 000023
【図２２】
2018094772.tif 000024
【図２３】
2018094772.tif 000025
【図２４】
2018094772.tif 000026
【図２５】
2018094772.tif 000027
【図２６】
2018094772.tif 000028
【図２７】
2018094772.tif 000029
【図２８】
2018094772.tif 000030