(57)【要約】【課題】ユーザへの不利益を抑えつつ，削除印刷機能の有効活用が期待できる技術を提供すること。【解決手段】削除印刷機能を利用する印刷指示を受け付けた際，プリンタドライバ４０は，印刷対象となる画像データのうち印刷不要なラインを取得する。そして，プリンタドライバ４０は，印刷不要なラインのライン数である削除ライン数が，印刷用紙を所定枚数減らすための基準ライン数よりも多いか否かを判断し，削除ライン数が基準ライン数よりも多い場合に，印刷対象となる画像データのうち印刷不要なラインを削除した画像データである削除画像データに基づく印刷データを生成する。【選択図】            図６
2015052898.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置に，
印刷対象となる画像データのうち印刷不要なラインを取得する取得処理と，
前記取得処理にて取得した前記印刷不要なラインのライン数である削除ライン数が，印刷用紙を所定枚数減らすための基準ライン数よりも多いか否かを判断する判断処理と，
前記判断処理にて前記削除ライン数が前記基準ライン数よりも多いと判断された場合に，印刷対象となる画像データのうち前記印刷不要なラインを削除した画像データである削除画像データに基づく印刷データを生成する生成処理と，
を実行させることを特徴とするプログラム。
【請求項２】
請求項１に記載するプログラムにおいて，
前記生成処理では，前記判断処理にて前記削除ライン数が前記基準ライン数よりも多いと判断された場合に，前記印刷不要なラインのうち用紙の削減に関与しないライン数が閾値よりも多いか否かを判断し，用紙の削減に関与しないライン数が閾値よりも多い場合に，前記削除画像データを印刷するか否かを問い合わせ，当該問い合わせに基づいて印刷が指示されたことあるいは用紙の削減に関与しないライン数が閾値よりも多くないことを条件として，前記削除画像データに基づく印刷データを生成することを特徴とするプログラム。
【請求項３】
請求項１または請求項２に記載するプログラムにおいて，
前記判断処理にて前記削除ライン数が前記基準ライン数よりも多いと判断されなかった場合に，前記削除画像データを印刷するか否かを問い合わせ，当該問い合わせに基づいて印刷が指示されたことを条件として，前記削除画像データに基づく印刷データを生成する第２生成処理を，前記情報処理装置に実行させることを特徴とするプログラム。
【請求項４】
請求項１から請求項３のいずれか１つに記載するプログラムにおいて，
前記判断処理にて前記削除ライン数が前記基準ライン数よりも多いと判断されなかった場合に，前記印刷不要なラインに空白ライン以外のラインとなる特定ラインが含まれているか否かを判断する特定判断処理と，
前記特定判断処理にて前記特定ラインが含まれていると判断された場合に，前記特定ラインを削除した画像データを印刷するか否かを問い合わせ，当該問い合わせに基づいて印刷が指示されたことを条件として，印刷対象となる画像データのうち少なくとも前記特定ラインを削除した画像データに基づく印刷データを生成する第３生成処理と，
を前記情報処理装置に実行させることを特徴とするプログラム。
【請求項５】
請求項１から請求項４のいずれか１つに記載するプログラムにおいて，
前記判断処理では，両面印刷であって前記所定枚数を１とした場合，印刷対象となる画像データのページ数が奇数であれば，前記印刷不要なライン数が１ページ分に相当するライン数よりも多い場合に前記削除ライン数が前記基準ライン数よりも多いと判断し，印刷対象となる画像データのページ数が偶数であれば，前記印刷不要なライン数が２ページ分に相当するライン数よりも多い場合に前記削除ライン数が前記基準ライン数よりも多いと判断することを特徴とするプログラム。
【請求項６】
請求項１から請求項５のいずれか１つに記載するプログラムにおいて，
印刷対象となる画像データを表示し，印刷不要なラインの指定を受け付ける指定処理を，前記情報処理装置に実行させることを特徴とするプログラム。
【請求項７】
請求項６に記載するプログラムにおいて，
前記指定処理にて印刷不要なラインが変更された場合に，変更前に指定された前記印刷不要なラインによって削減される用紙枚数と，変更後に指定された前記印刷不要なラインによって削減される用紙枚数とが異なることを条件として，用紙枚数の変化を通知する枚数通知処理を，前記情報処理装置に実行させることを特徴とするプログラム。
【請求項８】
請求項６または請求項７に記載するプログラムにおいて，
前記指定処理にて指定された前記印刷不要なラインのライン数に基づいて，用紙枚数の削減に必要な残りのライン数を通知するライン数通知処理を，前記情報処理装置に実行させることを特徴とするプログラム。
【請求項９】
印刷装置と通信する通信部と，
制御部と，
を備え，
前記制御部は，
印刷対象となる画像データのうち印刷不要なラインを取得する取得処理と，
前記取得処理にて取得した前記印刷不要なラインのライン数である削除ライン数が，印刷用紙を所定枚数減らすための基準ライン数よりも多いか否かを判断する判断処理と，
前記判断処理にて前記削除ライン数が前記基準ライン数よりも多いと判断された場合に，印刷対象となる画像データのうち前記印刷不要なラインを削除した画像データである削除画像データに基づく印刷データを生成し，当該印刷データを前記通信部を介して前記印刷装置に出力する出力処理と，
を実行することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，印刷装置を制御するプログラムおよび情報処理装置に関する。さらに詳細には，印刷対象の画像データから所定のラインを削除した印刷を印刷装置に行わせるプログラムおよび情報処理装置に関するものである。
【背景技術】
【０００２】
従来から，画像データの印刷技術として，印刷対象の画像データのうち印刷に必要な情報が書き込まれていないラインを削除し，削除したラインを詰めて残りのページのデータを繰り上げる削除印刷機能が知られている。削除印刷機能を利用することで，印刷に必要な用紙枚数を減らすことができ，用紙の節約が期待できる。
【０００３】
削除印刷機能に関する文献としては，例えば特許文献１がある。特許文献１には，ファクシミリ装置に関する技術であって，受信した画像データのうち連続した空白ラインを検知し，その連続した空白ラインを削除し，削除したラインを詰めて印刷する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平８−３４０４３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら，前記した従来の技術には，次のような問題があった。すなわち，削除印刷機能を利用する場合，削除するラインの合計が用紙１枚分に相当するライン数以上となれば用紙枚数を減らせるが，当該ライン数に満たないと，空白部分の削除による窮屈なレイアウトになった上で用紙枚数を減らせない状況に陥ってしまう。
【０００６】
本発明は，前記した従来の技術が有する問題点を解決するためになされたものである。すなわちその課題とするところは，ユーザへの不利益を抑えつつ，削除印刷機能の有効活用が期待できる技術を提供することにある。
【課題を解決するための手段】
【０００７】
この課題の解決を目的としてなされたプログラムは，情報処理装置に，印刷対象となる画像データのうち印刷不要なラインを取得する取得処理と，前記取得処理にて取得した前記印刷不要なラインのライン数である削除ライン数が，印刷用紙を所定枚数減らすための基準ライン数よりも多いか否かを判断する判断処理と，前記判断処理にて前記削除ライン数が前記基準ライン数よりも多いと判断された場合に，印刷対象となる画像データのうち前記印刷不要なラインを削除した画像データである削除画像データに基づく印刷データを生成する生成処理とを実行させることを特徴としている。
【０００８】
本明細書で開示されるプログラムは，印刷対象となる画像データのうち印刷不要なラインを取得する。印刷不要なラインの指定は，プレビュー表示等によってユーザに自由に選択させてもよいし，空白ラインの削除等の指定をあらかじめ印刷設定として受け付けてもよい。そして，本明細書で開示されるプログラムは，印刷不要なラインのライン数である削除ライン数が，印刷用紙を所定枚数減らすための基準ライン数よりも多い場合に，印刷対象となる画像データのうち印刷不要なラインを削除した画像データである削除画像データに基づく印刷データを生成する。基準ライン数は，削除印刷機能によって享受し得る用紙節約の利益の大きさによって異なり，例えば少なくとも用紙１枚分の削減を望む場合には，用紙１枚分のライン数にすればよい。また，最終の用紙に印刷される有効ライン数に応じて決定してもよい。また，用紙２枚分の削減を望む場合には，用紙２枚分のライン数にすればよい。基準ライン数は，ユーザ入力や印刷設定に応じた可変値であってもよいし，固定値であってもよい。
【０００９】
すなわち，本明細書で開示されるプログラムでは，印刷不要なラインのライン数である削除ライン数が基準ライン数よりも多いことを条件として，その印刷不要なラインを削除した画像データである削除画像データに基づく印刷データを生成する。これにより，印刷不要なラインが指定された印刷指示を受け付けた際，すなわち削除印刷機能を利用する印刷指示を受け付けた際に，用紙節約の利益を確実に受けることが期待できる。
【００１０】
また，前記生成処理では，前記判断処理にて前記削除ライン数が前記基準ライン数よりも多いと判断された場合に，前記印刷不要なラインのうち用紙の削減に関与しないライン数が閾値よりも多いか否かを判断し，用紙の削減に関与しないライン数が閾値よりも多い場合に，前記削除画像データを印刷するか否かを問い合わせ，当該問い合わせに基づいて印刷が指示されたことあるいは用紙の削減に関与しないライン数が閾値よりも多くないことを条件として，前記削除画像データに基づく印刷データを生成するとよい。用紙の削減に関与しないライン数は，例えば，削除ライン数から用紙１枚分のライン数を割った剰余値にすればよい。また，用紙１枚分のライン数から最終の用紙に印刷される有効ライン数を引いた値にしてもよい。用紙節約の利益が得られるとしても，用紙の削減に関与しないライン数が多すぎると必要以上に窮屈なレイアウトの印刷を強いられる可能性が高い。そのため，ユーザに印刷の要否を問い合わせる方が好ましい。
【００１１】
また，本明細書に開示されるプログラムは，前記判断処理にて前記削除ライン数が前記基準ライン数よりも多いと判断されなかった場合に，前記削除画像データを印刷するか否かを問い合わせ，当該問い合わせに基づいて印刷が指示されたことを条件として，前記削除画像データに基づく印刷データを生成する第２生成処理を，前記情報処理装置に実行させるとよい。削除ライン数が基準ライン数よりも多くない場合には，用紙節約の利益を得難い上に窮屈なレイアウトの印刷を強いられる。そのため，ユーザに印刷の要否を問い合わせる方が好ましい。
【００１２】
また，本明細書に開示されるプログラムは，前記判断処理にて前記削除ライン数が前記基準ライン数よりも多いと判断されなかった場合に，前記印刷不要なラインに空白ライン以外のラインとなる特定ラインが含まれているか否かを判断する特定判断処理と，前記特定判断処理にて前記特定ラインが含まれていると判断された場合に，前記特定ラインを削除した画像データを印刷するか否かを問い合わせ，当該問い合わせに基づいて印刷が指示されたことを条件として，印刷対象となる画像データのうち少なくとも前記特定ラインを削除した画像データに基づく印刷データを生成する第３生成処理とを前記情報処理装置に実行させるとよい。空白ライン以外のラインとなる特定ラインが印刷不要なラインに含まれている場合，ユーザが意図的にその特定ラインを削除した画像の印刷を望んでいる可能性がある。そのため，ユーザに特定ラインを削除した画像データの印刷の要否を問い合わせる方が好ましい。なお，第３生成処理による印刷データは，少なくとも特定ラインを削除した画像データに基づく印刷データであればよく，空白ラインを削除してもしなくてもよい。
【００１３】
また，前記判断処理では，両面印刷であって前記所定枚数を１とした場合，印刷対象となる画像データのページ数が奇数であれば，前記印刷不要なライン数が１ページ分に相当するライン数よりも多い場合に前記削除ライン数が前記基準ライン数よりも多いと判断し，印刷対象となる画像データのページ数が偶数であれば，前記印刷不要なライン数が２ページ分に相当するライン数よりも多い場合に前記削除ライン数が前記基準ライン数よりも多いと判断するとよい。両面印刷の場合，ページ数が奇数の場合と偶数の場合とで少なくとも１枚の用紙を削減できるライン数が異なる。そのため，判断処理では，ページ数を考慮する方が好ましい。
【００１４】
また，本明細書に開示されるプログラムは，印刷対象となる画像データを表示し，印刷不要なラインの指定を受け付ける指定処理を，前記情報処理装置に実行させるとよい。削除するラインをユーザが自由に指定できることで，利便性が高まる。
【００１５】
また，本明細書に開示されるプログラムは，前記指定処理にて印刷不要なラインが変更された場合に，変更前に指定された前記印刷不要なラインによって削減される用紙枚数と，変更後に指定された前記印刷不要なラインによって削減される用紙枚数とが異なることを条件として，用紙枚数の変化を通知する枚数通知処理を，前記情報処理装置に実行させるとよい。印刷不要なラインが変更された際，用紙枚数の変化を通知することで，ユーザによる好適な削除指定が期待できる。
【００１６】
また，本明細書に開示されるプログラムは，前記指定処理にて指定された前記印刷不要なラインのライン数に基づいて，用紙枚数の削減に必要な残りのライン数を通知するライン数通知処理を，前記情報処理装置に実行させるとよい。用紙枚数の削減に必要な残りのライン数を通知することで，ユーザによる好適な削除指定が期待できる。
【００１７】
また，本明細書には，印刷装置と通信する通信部と，制御部とを備え，前記制御部は，印刷対象となる画像データのうち印刷不要なラインを取得する取得処理と，前記取得処理にて取得した前記印刷不要なラインのライン数である削除ライン数が，印刷用紙を所定枚数減らすための基準ライン数よりも多いか否かを判断する判断処理と，前記判断処理にて前記削除ライン数が前記基準ライン数よりも多いと判断された場合に，印刷対象となる画像データのうち前記印刷不要なラインを削除した画像データである削除画像データに基づく印刷データを生成し，当該印刷データを前記通信部を介して前記印刷装置に出力する出力処理とを実行することを特徴とする情報処理装置が開示されている。
【発明の効果】
【００１８】
本発明によれば，ユーザへの不利益を抑えつつ，削除印刷機能の有効活用が期待できる技術が実現される。
【図面の簡単な説明】
【００１９】
【図１】実施の形態に係るプリントシステムの構成を示すブロック図である。
【図２】パーソナルコンピュータ（ＰＣ）に組み込まれたプログラムの構成を示すブロック図である。
【図３】プレビュー画面の構成を示す図である。
【図４】プレビュー画面の削除モードでの構成を示す図である。
【図５】削除画像のイメージを表示したプレビュー画面を示す図である。
【図６】実施の形態に係るプリンタドライバの印刷処理の手順を示すフローチャートである。
【図７】実施の形態に係るプリンタドライバの非空白削除処理の手順を示すフローチャートである。
【図８】実施の形態に係るプリンタドライバの残ライン数通知処理の手順を示すフローチャートである。
【図９】実施の形態に係るプリンタドライバの用紙枚数通知処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００２０】
以下，本発明にかかるプログラムおよび情報処理装置を具体化した実施の形態について，添付図面を参照しつつ詳細に説明する。
【００２１】
［プリントシステムの構成］
本形態のプリントシステム１００は，図１に示すように，プリンタ２と，プリンタ２を制御するパーソナルコンピュータ（ＰＣ）１とを備えている。プリントシステム１００では，ＰＣ１とプリンタ２とがＵＳＢケーブルを介して接続されている。ＰＣ１は，情報処理装置の一例である。プリンタ２は，印刷装置の一例である。
【００２２】
なお，プリントシステム１００を構成するプリンタおよびＰＣは各１台に限るものではなく，それぞれ複数台接続してもよい。また，ＰＣ１とプリンタ２との接続は，ＵＳＢケーブルに限らず，その他のシリアル通信ケーブル，パラレル通信ケーブル，有線ＬＡＮケーブル，さらには無線ＬＡＮ等の無線通信経路であってもよい。
【００２３】
ＰＣ１は，各種処理を実行するＣＰＵ１１と，当該ＰＣ１の起動時にＣＰＵ１１が行う起動処理のプログラム（ＢＩＯＳ）等を記憶したＲＯＭ１２と，ＣＰＵ１１が各種処理を行う際に一時的な記憶領域として利用されるＲＡＭ１３と，各種のプログラムやデータを記憶したハードディスクドライブ（ＨＤＤ）１４とを有するコントローラ３０を備えている。なお，図１中のコントローラ３０は，ＣＰＵ１１等，ＰＣ１の制御に利用されるハードウェアを纏めた総称であって，実際にＰＣ１に存在する単一のハードウェアと表すとは限らない。ＣＰＵ１１は，制御部の一例である。なお，コントローラ３０が制御部であってもよい。
【００２４】
また，ＰＣ１は，キーボードやマウス等からなる入力部１５と，液晶ディスプレイ等からなる表示部１６と，ＵＳＢインターフェース１７と，ネットワークインターフェース１８とを有している。ＵＳＢインターフェース１７はＵＳＢケーブルを介して接続された装置と通信を行うためのハードウェアである。ネットワークインターフェース１８はＬＡＮケーブルを介して接続された装置と通信を行うためのハードウェアである。
【００２５】
ＰＣ１のＨＤＤ１４には，図２に示すように，オペレーティングシステム（ＯＳ）５０と，アプリケーションプログラム６１（文書作成ソフト，作図ソフト，表計算ソフト，写真データ編集ソフト等）と，プリンタ２を制御するプリンタドライバ４０とが記憶されている。プリンタドライバ４０は，プログラムの一例である。なお，各種プログラムはＣＤ−ＲＯＭなどの記憶媒体に記憶されているものをインストールしてもよいし，ネットワーク上のサーバに記憶されているものをダウンロードしてインストールしてもよい。
【００２６】
ＰＣ１に組み込まれたアプリケーションプログラム６１は，プリンタドライバ４０に印刷指令を出力する機能を備えており，この機能によって原稿画像の画像データがプリンタドライバ４０に渡される。プリンタドライバ４０は，アプリケーションプログラム６１から渡された画像データに基づいて，プリンタ２で印刷するために必要なＰＤＬ形式の印刷データを生成する。プリンタドライバ４０が作成した印刷データは，ＵＳＢインターフェース１７を経由してプリンタ２へと送信される。
【００２７】
プリンタ２は，用紙に画像を形成する機能を有していればよく，その画像形成方式は，電子写真方式，インクジェット方式，その他の一般的な画像形成方式を採用していればよい。また，カラー画像及びモノクロ画像の画像形成が可能であっても，モノクロ画像のみの画像形成が可能であってもよい。
【００２８】
また，本形態のプリンタドライバ４０は，用紙に印刷される画像イメージのデータであるプレビューデータを生成し，そのプレビューデータを表示するプレビュー機能を有している。また，本形態のプリンタドライバ４０は，プレビュー機能を利用するか否かの設定を行う機能を有している。
【００２９】
具体的に，本形態のプリンタドライバ４０は，プレビュー機能を使用する場合，印刷データを生成する前に，プレビューデータを生成し，プレビューア４２を起動する。そして，プレビューア４２にプレビューデータを表示させる。一方，プレビュー機能を使用しない場合には，プレビューデータを生成せず，プレビューア４２を起動することなく，印刷データを生成してプリンタ２に送信する。プリンタドライバ４０の詳細については後述する。
【００３０】
なお，本明細書におけるプレビュー機能は，アプリケーションプログラム６１が具備している機能ではなく，前述したようにプリンタドライバ４０が具備する機能である。２ｉｎ１等の集約印刷やウォータマークの付与等の加工は，プリンタドライバ４０が印刷データを生成する際に行うこともあり，プリンタドライバ４０が行う加工はアプリケーションプログラム６１によるプレビューでは反映されない。一方，プリンタドライバ４０によるプレビューは，プリンタドライバ４０が行う加工を反映したプレビューデータを表示できる。そのため，プリンタドライバ４０によるプレビューは，アプリケーションプログラム６１によるプレビューと比較して，用紙に印刷される画像イメージをより正確に表示できる利点がある。
【００３１】
［プリンタドライバの構成］
続いて，プリンタドライバ４０の構成について，図２を参照しつつ説明する。なお，ＰＣ１には，オペレーティングシステム（ＯＳ）５０として，Microsoft Windows（登録商標）が組み込まれているものとする。
【００３２】
プリンタドライバ４０は，印刷ジョブの各種設定に関するユーザ入力を可能にするユーザインターフェースドライバ４１と，印刷イメージを表示部１６に表示するプレビューア４２と，印刷データおよびプレビューデータを生成するプリンタグラフィックスドライバ４３とを有している。
【００３３】
具体的に，ユーザインターフェースドライバ４１は，印刷の際の各種の属性をユーザに設定させる印刷設定画面を提供する。印刷設定画面では，用紙サイズ，用紙種類，印刷品質，印刷向き等の，一般的な印刷設定の他，プレビュー機能を利用するか否かの設定を行うことが可能である。また，ユーザインターフェースドライバ４１は，プレビュー機能を利用する場合に，プレビューア４２を起動する機能を有している。
【００３４】
プレビューア４２は，図３に示すようなプレビュー画面４２０を表示する。プレビュー画面４２０は，前述した印刷設定画面でユーザにより選択された印刷設定を反映した用紙１面分に相当する（両面印刷の場合はさらに用紙面単位に相当する）プレビューデータを表示するイメージ領域４２１と，表示対象のページを選択するページ選択領域４２２と，印刷指示を受け付ける印刷実行ボタン４２３と，印刷ジョブを中止するキャンセルボタン４２４と，印刷対象から削除する削除範囲を決定する削除モードへ移行する削除モードボタン４２５とを有している。
【００３５】
ページ選択領域４２２中で，イメージ領域４２１に表示中のページ番号には，下線が表示される。これにより，ユーザは，イメージ領域４２１に表示中のページ番号を把握できる。また，ページ選択領域４２２には，プレビューデータが生成された数分のページ番号が表示され，ユーザは，印刷ジョブを構成する総ページ数を把握できる。
【００３６】
印刷実行ボタン４２３が押下されると，プレビューア４２はプレビューデータに対応する印刷データをプリンタ２に送信する。一方，キャンセルボタン４２が押下されると，プレビューア４２はプレビューデータを消去する。そして，印刷実行ボタン４２３あるいはキャンセルボタン４２４が押下されると，プレビューア４２が終了する。
【００３７】
また，プレビューア４２は，印刷対象の画像データのうち印刷不要な範囲の指定を受け付け，指定された範囲を削除し，削除した範囲を詰めて残りのページのデータを繰り上げて表示する削除表示機能を有している。さらにプリンタドライバ４０は，プレビューア４２で指定された範囲を削除し，削除した範囲を詰めて残りのページのデータを繰り上げた印刷データを送信する削除印刷機能を有している。
【００３８】
プレビューア４２では，削除モードボタン４２５を押下して削除モードに移行することで，イメージ領域４２１に表示されているプレビューデータのうち印刷不要な範囲（以下，「削除範囲」とする）を指定できる。具体的に，プレビューア４２では，削除モードに移行すると，図４に示すように削除範囲を指定する枠４２８が表示される。枠４２８は，縦幅を自由に変更することができ，その位置も上下方向に自由に変更できる。なお，削除範囲の指定はライン単位で行うため，枠４２８の横幅は固定である。
【００３９】
また，図４に示すようにプレビューア４２では，削除モードに移行すると，削除モードボタン４２５，印刷実行ボタン４２３およびキャンセルボタン４２４が消去され，削除範囲を確定する削除決定ボタン４２６と，削除モードを解除するモード解除ボタン４２７が表示される。プレビューア４２では，ユーザによって枠４２８の位置および縦幅が調整され，削除決定ボタン４２６が押下されることで，削除範囲を確定する。プレビューア４２による削除範囲の受け付けは，指定処理の一例である。
【００４０】
削除範囲が確定すると，プレビューア４２は，削除モードを解除し，図５に示すように，削除範囲として確定した範囲を削除し，削除範囲を詰めて残りのページのデータを繰り上げた画像データをイメージ領域４２１に表示する。その後，削除モードボタン４２５が再度押下された場合には，削除範囲の更なる指定を受け付ける。
【００４１】
削除範囲が１つでも確定した状態でプレビューア４２の印刷実行ボタン４２３が押下されると，プリンタドライバ４０は，印刷対象の画像データのうち削除範囲として確定した範囲を削除し，削除範囲を詰めて残りのページのデータを繰り上げた印刷データを生成してプリンタ２に送信する。
【００４２】
プリンタグラフィックスドライバ４３は，印刷対象となる画像データの加工処理や，加工処理が反映された画像データに基づく，物理用紙単位（両面印刷の場合はさらに用紙面単位）のプレビューデータの生成処理や，加工処理が反映された画像データに基づく，物理用紙単位の印刷データの生成処理を行う。加工処理としては，例えば，ウォータマーク，ヘッダー，フッター等の合成，拡大，縮小等の倍率変更，画像回転，２ｉｎ１，４ｉｎ１等の集約等の，印刷設定画面で選択される印刷設定に対応する処理の他，前述した指定範囲の削除が該当する。
【００４３】
プレビューデータのファイル形式は，プレビューア４２で表示できるファイル形式であればよく，本形態ではビットマップ形式のファイルを圧縮した圧縮ファイル（例えばＪＰＥＧファイル）とする。なお，プレビューデータのファイル形式としては，非圧縮のビットマップファイルであってもよい。また，印刷データのファイル形式は，プリンタ２で印刷できるファイル形式であればよく，本形態ではＰＤＬファイルとする。
【００４４】
［印刷プレビュー方式］
続いて，印刷プレビュー方式について説明する。本形態のプリントシステム１００では，前述したようにプレビュー表示を行って印刷を行う方法である印刷プレビュー方式と，プレビュー表示を行わずに印刷を行う方法である直接印刷方式とがある。このうち，直接印刷方式は，一般的な印刷方式であり，説明を省略する。以下，印刷プレビュー方式での印刷手順について説明する。
【００４５】
印刷プレビュー方式にて印刷を行う場合には，先ず，アプリケーションプログラム６１がユーザからの印刷指示を受け付け，印刷開始通知を出力する。そして，ＯＳ５０がアプリケーションプログラム６１からその印刷開始通知を受け付け，アプリケーションプログラム６１から画像データの取得を開始する。
【００４６】
そして，ＯＳ５０は，取得した画像データに基づいてプリンタグラフィックスドライバ４３に対して描画命令を出力する。ＯＳ５０は，描画命令を出力した後は，プリンタグラフィックスドライバ４３が応答するまで待機する。
【００４７】
プリンタグラフィックスドライバ４３は，描画命令を受け付けると，その描画命令に従ってビットマップ形式の画像データを生成し，必要に応じてその画像データに画像回転等の加工を行う。さらに画像データに基づいて，プレビューア４２用のプレビューデータ（本形態ではＪＰＥＧデータ）を生成する。プレビューデータには，印刷対象となる画像データの他，ページ番号の情報が記憶される。プリンタグラフィックスドライバ４３は，プレビューデータの生成が完了すると，終了をＯＳ５０に応答する。プリンタドライバ４０は，上述のような物理用紙単位のプレビューデータの生成を，画像データを受け付ける度に行い，最終ページの画像データの処理が完了するまで繰り返す。
【００４８】
アプリケーションプログラム６１が最終ページの画像データの受け渡しを完了させると，取得終了通知を出力する。ＯＳ５０は，アプリケーションプログラム６１から取得終了通知を受け付けると，ユーザインターフェースドライバ４１に印刷終了イベントを発行する。ユーザインターフェースドライバ４１は，印刷終了イベントを受け付けると，プレビューア４２を起動する。
【００４９】
プレビューア４２は，起動後あるいは起動と同時に，プリンタグラフィックスドライバ４３が生成した全プレビューデータを取得し，先頭ページのプレビューデータをイメージ領域４２１に表示する。
【００５０】
その後，プレビューア４２は，ユーザからの，印刷指示あるいはキャンセル指示を受け付ける。プレビューア４２は，ユーザからの印刷指示を受け付けると，プレビューデータに基づく印刷データを生成し，プリンタ２に送信する。つまり，印刷プレビュー方式の場合，プレビューア４２からの指示によって，印刷データをプリンタ２に送信する。一方，プレビューア４２は，ユーザからのキャンセル指示を受け付けると，印刷ジョブを中止する。
【００５１】
［印刷処理］
続いて，前述した印刷プレビュー方式の印刷手順を実現するＰＣ１の印刷処理について，図６のフローチャートを参照しつつ説明する。図６は，プリンタドライバ４０によって実行される手順を示しており，プレビューア４２を介して印刷指示を受け付けたこと，すなわちプレビュー機能を利用する印刷指示を受け付けた後，プレビューデータを生成し，そのプレビューデータをプレビューア４２に表示した状態で，プレビューア４２の印刷実行ボタン４２３が押下されたことを契機に，ＣＰＵ１１によって実行される。なお，本形態の印刷処理では，少なくとも用紙１枚の削減を目標とし，あらかじめ目標の用紙枚数の削減が可能なライン数である基準ライン数として，１ページ分に相当するライン数が設定されているものとする。
【００５２】
印刷処理では，先ず，印刷対象となる画像データのうち印刷不要なラインデータ（以降，「削除対象」とする）のライン数である削除ライン数を取得する（Ｓ１０１）。具体的には，印刷実行ボタン４２３が押下される前にユーザ操作によって確定した削除範囲のライン数を取得する。削除範囲が複数確定している場合には，それらの削除範囲の総ライン数を取得する。削除範囲が１つも確定していない場合には，削除ライン数が０になる。Ｓ１０１は，取得処理の一例である。
【００５３】
次に，削除対象となるラインが有るか否かを判断する（Ｓ１０２）。Ｓ１０２では，Ｓ１０１で取得した削除ライン数が０より大きい場合に，削除対象となるラインが有ると判断する。削除対象となるラインが無ければ（Ｓ１０２：ＮＯ），ラインの削除を行うことなく，印刷対象の画像データに基づいて印刷データを生成する（Ｓ１５１）。Ｓ１５１の後は，Ｓ１５１で生成した印刷データをプリンタ２に送信し（Ｓ１２５），印刷処理を終了する。
【００５４】
削除対象となるラインが有る場合には（Ｓ１０２：ＹＥＳ），両面印刷が設定されているか否かを判断する（Ｓ１０３）。両面印刷では，印刷対象の画像データの総ページ数が奇数の場合と偶数の場合とで，１枚の用紙を削減できるライン数が異なる。そこで，両面印刷が設定されている場合には（Ｓ１０３：ＹＥＳ），印刷対象の画像データの総ページ数が偶数か否かを判断する（Ｓ１１１）。
【００５５】
総ページ数が偶数の場合には（Ｓ１１１：ＹＥＳ），少なくとも２ページ分に相当するライン数が削除されなければ用紙１枚を削減できない。そこで，基準ライン数を２ページ分に相当するライン数に変更する（Ｓ１１２）。一方，総ページ数が奇数の場合には（Ｓ１１１：ＮＯ），１ページ分に相当するライン数が削除されれば用紙１枚を削減できる。そのため，基準ライン数を変更しない。
【００５６】
Ｓ１１２の後，あるいは総ページ数が奇数の場合（Ｓ１１１：ＮＯ），あるいは両面印刷が設定されていない場合には（Ｓ１０３：ＮＯ），削除ライン数が基準ライン数よりも多いか否かを判断する（Ｓ１２１）。Ｓ１２１は，判断処理の一例である。
【００５７】
削除ライン数が基準ライン数よりも多い場合には（Ｓ１２１：ＹＥＳ），少なくとも１枚の用紙の削減が可能と判断できる。しかしながら，削除対象となるラインには，用紙の削減に関与しないラインも存在し得る。例えば，基準ライン数を６００ラインとし，削除ライン数が１０００ラインであった場合，削除ライン数のうち６００ラインは用紙の削除に関与するが，残りの４００ラインは用紙の削除に関与しない。この用紙の削除に関与しないラインが多すぎると，窮屈なレイアウトを強いる可能性が高まる。そこで，削除ライン数のうち用紙の削減に関与しないライン数として，余剰ライン数を計算する（Ｓ１２２）。具体的に余剰ライン数は，削除ライン数を基準ライン数で割った剰余値となる。
【００５８】
Ｓ１２２の後は，余剰ライン数が閾値よりも多いか否かを判断する（Ｓ１２３）。余剰ライン数が閾値よりも多くない場合には（Ｓ１２３：ＮＯ），印刷対象の画像データのうち削除範囲として確定したラインデータを削除し，削除範囲を詰めて残りのページのデータを繰り上げた画像データである削除画像データに基づく印刷データを生成する（Ｓ１２４）。Ｓ１２４は，生成処理の一例である。Ｓ１２４の後は，Ｓ１２４で生成した印刷データをプリンタ２に送信し（Ｓ１２５），印刷処理を終了する。
【００５９】
余剰ライン数が閾値よりも多い場合には（Ｓ１２３：ＹＥＳ），用紙の削除に関与しないラインが多いため，窮屈なレイアウトを強いる可能性があるという旨をユーザに通知するとともに，印刷対象の画像データのうち削除範囲として確定したラインデータを削除した画像を印刷するか，あるいは印刷をキャンセルするかをユーザに確認する（Ｓ１４１）。そして，ユーザが印刷実施を指示したか否かを判断する（Ｓ１４２）。印刷実施が指示された場合には（Ｓ１４２：ＹＥＳ），Ｓ１２４に移行して削除画像データに基づく印刷データを生成し，Ｓ１２５にてその印刷データをプリンタ２に送信して印刷処理を終了する。
【００６０】
印刷のキャンセルが指示された場合には（Ｓ１４２：ＮＯ），印刷をキャンセルし，印刷対象の画像データをプレビューア４２に再表示する（Ｓ１４３）。すなわち，削除範囲の再設定を可能にする。Ｓ１４３の後は，印刷処理を終了する。
【００６１】
一方，削除ライン数が基準ライン数よりも多くない場合には（Ｓ１２１：ＮＯ），用紙の削減ができないまま窮屈なレイアウトを強いられる可能性が高まるため，その旨をユーザに通知するとともに，印刷対象の画像データのうち削除範囲として確定したラインデータを削除した画像を印刷するか否かをユーザに確認する（Ｓ１３１）。そして，ユーザが印刷実施を指示したか否かを判断する（Ｓ１３２）。印刷実施が指示された場合には（Ｓ１３２：ＹＥＳ），Ｓ１２４に移行して削除画像データに基づく印刷データを生成し，Ｓ１２５にてその印刷データをプリンタ２に送信して印刷処理を終了する。Ｓ１３１，Ｓ１３２：ＹＥＳ，およびＳ１２４は，第２生成処理の一例である。
【００６２】
ラインデータを削除した画像の印刷実施が指示されなかった場合には（Ｓ１３２：ＮＯ），空白でないラインの削除を判断する非空白削除処理を実行する（Ｓ１３３）。図７に，Ｓ１３３の非空白削除処理の手順を示す。
【００６３】
非空白削除処理では，先ず，確定している削除範囲に，空白でないラインである非空白ラインが有るか否かを判断する（Ｓ１６１）。Ｓ１６１では，例えば，削除範囲内の各ラインデータについて，白以外の画素が所定数以上あれば空白でないラインと判断する。すなわち，印刷対象の画像データにユーザが意図的に削除したい情報があるか否かを判断する。Ｓ１６１は，特定判断処理の一例である。非空白ラインがなければ（Ｓ１６１：ＮＯ），ラインデータの削除を行うことなく，印刷対象の画像データに基づいて印刷データを生成する（Ｓ１７１）。Ｓ１７１の後は非空白削除処理を終了する。
【００６４】
非空白ラインが有れば（Ｓ１６１：ＹＥＳ），印刷対象の画像データにユーザが意図的に削除したい情報がある可能性があるため，その旨をユーザに通知するとともに，印刷対象の画像データのうち非空白ラインデータを削除した画像を印刷するか否かをユーザに確認する（Ｓ１６２）。そして，ユーザが非空白ラインを削除した画像の印刷実施を指示したか否かを判断する（Ｓ１６３）。印刷実施が指示されなかった場合には（Ｓ１６３：ＮＯ），Ｓ１７１に移行して印刷対象の画像データに基づく印刷データを生成し，印刷処理を終了する。
【００６５】
印刷実施が指示された場合には（Ｓ１６３：ＹＥＳ），削除範囲として確定されたラインデータのうち非空白ラインデータを削除した画像データに基づいて印刷データを生成する（Ｓ１６４）。これにより，ユーザが意図的に削除したい部分が削除された画像が印刷されることになる。Ｓ１６２，Ｓ１６３：ＹＥＳおよびＳ１６４は，第３生成処理の一例である。Ｓ１６４の後は非空白削除処理を終了する。
【００６６】
非空白削除処理の終了後は，図６に戻り，Ｓ１２５に移行してＳ１３３の非空白削除処理にて生成した印刷データをプリンタ２に送信する。Ｓ１２５の後は，印刷処理を終了する。
【００６７】
以上詳細に説明したように本形態のプレビュー印刷では，印刷不要なラインデータが指定された印刷指示を受け付けた際，印刷不要なラインデータのライン数である削除ライン数が基準ライン数よりも多く，余剰ライン数が閾値よりも少ない場合，あるいは余剰ライン数が閾値よりも多くてもユーザによる印刷実施の指示があった場合に，その印刷不要なラインデータを削除した画像データである削除画像データに基づく印刷データを生成する。これらの場合，用紙節約の利益を確実に受けることが期待できる。
【００６８】
［プレビューアの通知機能］
続いて，プレビューア４２の通知機能について説明する。プレビューア４２では，削除モードにて削除範囲を指定する際，用紙１枚分の削減に必要な残りライン数である残ライン数や，用紙枚数の増減を通知する。そこで，プレビューア４２の処理として，残ライン数を通知するための残ライン数通知処理と，用紙枚数の増減を通知する用紙枚数通知処理について説明する。
【００６９】
［残ライン数通知処理］
始めに，残ライン数通知処理について，図８のフローチャートを参照しつつ説明する。残ライン数通知処理は，削除モードにおいて枠４２８の縦幅が変更される度に，または，削除範囲が確定する，すなわち枠４２８の数が増える度に，ＣＰＵ１１によって実行される。なお，残ライン数通知処理で利用する基準ライン数は，印刷処理で利用した基準ライン数と同じである。
【００７０】
残ライン数通知処理では，先ず，印刷される画像の総ライン数を計算する（Ｓ２０１）。総ライン数は，次の式（１）によって求められる。
総ライン数＝１ページ当たりのライン数×総ページ数−削除ライン数    （１）
ここでの総ページ数は，既に確定している削除範囲があればその削除範囲を反映した後の総ページ数である。また，削除ライン数は，縦幅の変更後の枠４２８によって選択されている範囲のライン数である。
【００７１】
次に，両面印刷が設定されているか否かを判断する（Ｓ２０２）。両面印刷が設定されている場合には（Ｓ２０２：ＹＥＳ），印刷対象の画像データの総ページ数が偶数か否かを判断する（Ｓ２１１）。総ページ数が偶数の場合には（Ｓ２１１：ＹＥＳ），少なくとも２ページ分に相当するライン数が削除されなければ用紙１枚を削減できない。そこで，基準ライン数を２ページ分に相当するライン数に変更する（Ｓ２１２）。一方，総ページ数が奇数の場合には（Ｓ２１１：ＮＯ），１ページ分に相当するライン数が削除されれば用紙１枚を削減できるため，基準ライン数を変更しない。
【００７２】
Ｓ２１２の後，あるいは総ページ数が奇数の場合（Ｓ２１１：ＮＯ），あるいは両面印刷が設定されていない場合には（Ｓ２０２：ＮＯ），残ライン数を計算する（Ｓ２０３）。具体的に残ライン数は，総ライン数を基準ライン数で割った剰余値となる。Ｓ２０３の後は，算出された残ライン数をメッセージボックスに表示する（Ｓ２０４）。なお，Ｓ２０４は，メッセージボックスでの表示の他，プレビュー画面４２０の所定位置への表示や音声メッセージの出力であってもよい。Ｓ２０４は，ライン数通知処理の一例である。Ｓ２０４の後は，残ライン数通知処理を終了する。
【００７３】
［用紙枚数通知処理］
次に，用紙枚数通知処理について，図９のフローチャートを参照しつつ説明する。用紙枚数通知処理は，削除モードにおいて削除範囲が確定する，すなわち枠４２８の数が増える度に，または確定した削除範囲を示す枠４２８の縦幅が変更される度に，ＣＰＵ１１によって実行される。
【００７４】
用紙枚数通知処理では，先ず，確定した範囲を削除する前のページ数と，削除した後のページ数とを計算する（Ｓ２５１）。そして，削除前と削除後とでページ数に変更が有るか否かを判断する（Ｓ２５２）。ページ数に変更が無い場合には（Ｓ２５２：ＮＯ），用紙枚数の変更を通知することなく，用紙枚数通知処理を終了する。
【００７５】
ページ数に変更がある場合には（Ｓ２５２：ＹＥＳ），両面印刷が設定されているか否かを判断する（Ｓ２５３）。両面印刷が設定されていない場合には（Ｓ２５３：ＮＯ），印刷枚数の変更を通知する（Ｓ２５４）。すなわち，ページ数が増えた場合には，印刷に必要な用紙枚数が増えたことを，ページ数が減った場合には，印刷に必要な用紙枚数が減ったことを，メッセージボックスに表示する。なお，Ｓ２５４では，印刷枚数の変更に加え，何枚の増減があったかを通知するとよい。また，Ｓ２５４は，メッセージボックスの表示の他，プレビュー画面４２０の所定位置への表示や音声メッセージの出力であってもよい。Ｓ２５４は，枚数通知処理の一例である。Ｓ２５４の後は，用紙枚数通知処理を終了する。
【００７６】
一方，両面印刷が設定されている場合には（Ｓ２５３：ＹＥＳ），印刷枚数に変更があるか否かを判断する（Ｓ２６１）。具体的にＳ２６１では，変更後のページ数が偶数であれば，ページ数が１増加しても印刷枚数に変更が無い。また，変更後のページ数が奇数であれば，ページ数が１減少しても印刷枚数に変更が無い。そのため，これらの場合は（Ｓ２６１：ＮＯ），印刷枚数に変更が無いと判断され，用紙枚数の増減を通知することなく用紙枚数通知処理を終了する。一方，ページ数が増加した際，変更後のページ数が奇数の場合や，偶数でもページ数が２以上増加している場合には，印刷枚数に変更がある。また，ページ数が減少した際，変更後のページ数が偶数の場合や，奇数でもページ数が２以上減少している場合には，印刷枚数に変更がある。これらの場合は（Ｓ２６１：ＹＥＳ），用紙枚数に増減があると判断され，Ｓ２５４に移行して用紙枚数の変更を通知し，用紙枚数通知処理を終了する。
【００７７】
以上詳細に説明したように本形態のプレビューア４２では，残ライン通知処理によって，用紙枚数の削減に必要なライン数を通知することで，ユーザによる好適な削除指定が期待できる。また，用紙枚数通知処理によって，用紙枚数の変化を通知することでも，ユーザによる好適な削除指定が期待できる。
【００７８】
なお，本実施の形態は単なる例示にすぎず，本発明を何ら限定するものではない。したがって本発明は当然に，その要旨を逸脱しない範囲内で種々の改良，変形が可能である。例えば，印刷装置としてはプリンタに限るものではなく，コピー機，ＦＡＸ，あるいは印刷機能を有する複合機等であってもよい。また，情報処理装置としてはＰＣに限るものではなく，ワークステーション，スマートフォン，ＰＤＡ等であってもよい。
【００７９】
また，実施の形態では，プレビューア４２をプリンタドライバ４０に含めているが，プレビューデータを表示することに特化すれば，プレビューアはプリンタドライバ４０専用のモジュールである必要はなく，プレビューデータを読み出すことが可能なモジュールであればよい。例えば，プレビューデータのファイル形式がビットマップファイルであれば，ＯＳ５０が提供するビューアプログラムを起動し，そのビューアプログラムにプレビューデータを表示させてもよい。
【００８０】
また，実施の形態では，印刷プレビュー方式の際，プレビューデータをプレビューア４２で表示した後，印刷実行ボタン４２３の押下を契機にプレビューア４２が印刷データを生成しているが，印刷データの生成は，プリンタグラフィックスドライバ４３に行わせてもよい。この場合，プリンタグラフィックスドライバ４３は，例えば，プレビューア４２から削除範囲が指定された印刷データ生成指示を受け付け，その指示に従って印刷データを生成する。すなわち，本明細書において，プレビューア４２の処理として印刷データを生成する態様には，実施の形態のようにプレビューア４２自身が生成する態様の他，上述したような他のプログラムに生成を依頼し，他のプログラムで印刷データを生成する態様も含まれるものとする。
【００８１】
また，実施の形態のプレビューア４２は，１ページ単位でプレビューデータを表示しているが，複数ページの一覧表示ができるように構成してもよい。また，プレビューデータの拡大表示あるいは縮小表示ができるように構成してもよい。
【００８２】
また，実施の形態では，プレビューデータをビットマップあるいはその圧縮ファイルとしているが，これに限るものではない。例えば，ＸＭＬファイルやＰＤＦファイルであってもよい。
【００８３】
また，実施の形態では，基準ライン数を１ページ相当のライン数としているが，これに限るものではない。例えば，Ｎ枚の用紙削減を望む場合には基準ライン数はＮページ相当のライン数であってもよい。すなわち，基準ライン数は，削除印刷機能によって享受したい用紙節約の利益の大きさに応じて設定すればよい。また，最終ページの画像内容を考慮し，例えば，元々の画像データ量が最終の用紙の半分までしか無い場合には，その半分に相当するライン数を基準ライン数としてもよい。すなわち，最終の用紙に印刷される有効ライン数を基準ライン数としてもよい。
【００８４】
また，実施の形態では，余剰ライン数を，削除ライン数を基準ライン数で割った剰余値としているが，これに限るものではない。例えば，用紙１枚分のライン数から最終の用紙に印刷される有効ライン数を引いた値にしてもよい。
【００８５】
また，実施の形態では，基準ライン数が用紙１枚分の削減に必要なライン数であるため，両面印刷において，印刷対象となる画像データのページ数が奇数であれば１ページ分に相当するライン数を基準ライン数とし，偶数であれば２ページ分に相当するライン数を基準ライン数としているが，前述のようにＮ枚の用紙削減を望む場合には，印刷対象となる画像データのページ数が奇数であれば２（Ｎ−１）＋１ページ分に相当するライン数を基準ライン数とし，偶数であれば２Ｎページ分に相当するライン数を基準ライン数とすればよい。
【００８６】
また，実施の形態では，印刷不要なラインデータとなる削除範囲を，プレビューア４２を介してユーザ操作によって自由に決定しているが，削除範囲の取得方法はこれに限るものではない。例えば，印刷設定として，所定ライン数以上の空白ラインを削除する項目を用意し，ユーザインターフェースドライバ４１が提供する印刷設定画面を介してその項目が設定されている場合に，印刷対象の画像データのうち所定ライン数以上の空白ラインが連続する領域を削除範囲に決定してもよい。
【００８７】
また，実施の形態の印刷処理では，削除ライン数が基準ライン数よりも多くない場合に（Ｓ１２１：ＮＯ），Ｓ１３１〜Ｓ１３３の処理によって印刷データを生成しているが，Ｓ１３１〜Ｓ１３３はなくてもよい。すなわち，削除ライン数が基準ライン数よりも多くない場合は，印刷を中止してもよい。
【００８８】
また，実施の形態の非空白削除処理では，非空白ラインが無い場合や（Ｓ１６１：ＮＯ），印刷実施が指示されなかった場合に（Ｓ１６３：ＮＯ），Ｓ１７１として印刷対象の画像データに基づく印刷データを生成しているが，プレビュー再表示や印刷中止であってもよい。
【００８９】
また，実施の形態の印刷処理では，削除ライン数が基準ライン数よりも多い場合に（Ｓ１２１：ＹＥＳ），Ｓ１２２〜Ｓ１２３およびＳ１４１〜Ｓ１４３によって，余剰ラインの多少に応じた処理を行っているが，Ｓ１２２〜Ｓ１２３およびＳ１４１〜Ｓ１４３はなくてもよい。すなわち，削除ライン数が基準ライン数よりも多い場合は，余剰ラインの多少に拘らずＳ１２４に移行して，削除画像データに基づく印刷データを生成するとしてもよい。
【符号の説明】
【００９０】
１      パーソナルコンピュータ（ＰＣ）
２      プリンタ
４０    プリンタドライバ
４２    プレビューア
５０    ＯＳ
６１    アプリケーションプログラム
【図１】
2015052898.tif 000003
【図２】
2015052898.tif 000004
【図３】
2015052898.tif 000005
【図４】
2015052898.tif 000006
【図５】
2015052898.tif 000007
【図６】
2015052898.tif 000008
【図７】
2015052898.tif 000009
【図８】
2015052898.tif 000010
【図９】
2015052898.tif 000011