(57)【要約】【課題】  異なる用紙節約機能を実行する画像出力装置に、同一の出力結果が得られるよう出力指示を送信すること。【解決手段】  情報処理装置の情報処理方法は、出力装置が実行可能な記録媒体への出力に関する第１の節約機能に関する情報を取得する取得工程と、第１の節約機能に基づいて、適用されるべき記録媒体への出力に関する第２の節約機能を出力装置が実行可能ではないと判定した場合に、第２の節約機能を適用された場合の出力が得られるように、第１の節約機能に対応する出力指示を生成する生成工程と、生成した出力指示を出力装置に送信する送信工程と、を含む。【選択図】  図１
2020173553.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置の情報処理方法であって、
出力装置が実行可能な記録媒体への出力に関する第１の節約機能に関する情報を取得する取得工程と、
前記第１の節約機能に基づいて、適用されるべき記録媒体への出力に関する第２の節約機能を前記出力装置が実行可能ではないと判定した場合に、前記第２の節約機能を適用された場合の出力が得られるように、前記第１の節約機能に対応する出力指示を生成する生成工程と、
生成した前記出力指示を前記出力装置に送信する送信工程と、
を含むことを特徴とする情報処理方法。
【請求項２】
前記生成工程において、前記第１の節約機能に基づいて、前記出力装置が前記第２の節約機能を実行可能ではないと判定した場合に、前記出力指示に含まれるべき出力領域の上下のマージンに対応する長さと前記出力指示に含まれるべき出力オブジェクトの上下のオフセットに対応する長さとの少なくとも何れかを調整することで、前記第１の節約機能に対応する出力指示を生成することを特徴とする請求項１に記載の情報処理方法。
【請求項３】
前記第１の節約機能および前記第２の節約機能は、それぞれ前記出力領域の上下に配置された、出力オブジェクトを含まないラインデータと、白い出力オブジェクトのみを含むラインデータとを削除する第１の処理、および
前記出力領域の上下に配置された、出力オブジェクトを含まないラインデータを削除するが、前記出力領域の上下に配置された白い出力オブジェクトのみを含むラインデータは削除しない第２の処理、
のいずれかを実行する機能であることを特徴とする請求項２に記載の情報処理方法。
【請求項４】
前記第１の節約機能が前記第２の処理に対応し、前記第２の節約機能が前記第１の処理に対応する場合に、
前記生成工程において、前記出力領域の上下に配置された、白い出力オブジェクトのみを含むラインデータに対応する長さを、前記マージンに対応する長さに追加することで、前記第２の節約機能を適用された場合の出力が得られるように、前記第１の節約機能に対応する出力指示を生成することを特徴とする請求項３に記載の情報処理方法。
【請求項５】
前記第１の節約機能が前記第１の処理に対応し、前記第２の節約機能が前記第２の処理に対応する場合に、
前記生成工程において、前記出力領域の上下に配置された、白い出力オブジェクトのみを含むラインデータに対応する長さを、前記オフセットに対応する長さに追加することで、前記第２の節約機能を適用された場合の出力が得られるように、前記第１の節約機能に対応する出力指示を生成することを特徴とする請求項３または４に記載の情報処理方法。
【請求項６】
前記生成工程において、前記第１の節約機能に基づいて、前記出力装置が前記第２の節約機能を実行可能であると判定した場合に、前記出力指示に含まれるべき出力領域の上下のマージンに対応する長さと前記出力指示に含まれるべき出力オブジェクトの上下のオフセットに対応する長さとを調整せずに前記第１の節約機能に対応する前記出力指示を生成することを特徴とする請求項１から５のいずれか１項に記載の情報処理方法。
【請求項７】
表示手段に、前記第２の節約機能が適用された場合の出力のプレビューを含むプレビュー画面を表示させる表示工程をさらに有することを特徴とする請求項１から６のいずれか１項に記載の情報処理方法。
【請求項８】
前記表示工程において、白い出力オブジェクトを視認可能に表示することを特徴とする請求項７に記載の情報処理方法。
【請求項９】
前記プレビュー画面において、前記第２の節約機能の切替を検出する検出工程をさらに有し、
前記検出工程において、前記第２の節約機能が切り替えられたことが検出された場合、切り替えられた節約機能に基づいて前記プレビュー画面の表示が更新されることを特徴とする請求項７または８に記載の情報処理方法。
【請求項１０】
前記生成工程において、前記出力指示に特殊インクを使用する指示が含まれる場合には、節約機能を有効にせずに前記出力指示を生成することを特徴とする請求項１から９のいずれか１項に記載の情報処理方法。
【請求項１１】
保存手段に、前記送信工程において送信した前記出力指示に対応する前記第２の節約機能に関する情報を保存する保存工程をさらに有し、
前記生成工程において、前回の出力で前記保存手段が保存した前記第２の節約機能を、適用されるべき第２の節約機能として取得することを特徴とする請求項１から１０のいずれか１項に記載の情報処理方法。
【請求項１２】
前記記録媒体は、ロール紙であることを特徴とする請求項１から１１のいずれか１項に記載の情報処理方法。
【請求項１３】
出力装置が実行可能な記録媒体に関する第１の節約機能に関する情報を取得する取得手段と、
前記第１の節約機能に基づいて、適用されるべき記録媒体への出力に関する第２の節約機能を前記出力装置が実行可能ではないと判定した場合に、前記第２の節約機能を適用された場合の出力が得られるように、前記第１の節約機能に対応する出力指示を生成する生成手段と、
生成した前記出力指示を前記出力装置に送信する送信手段と、
を有することを特徴とする情報処理装置。
【請求項１４】
コンピュータに請求項１から１２の何れか１項に記載の情報処理方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理方法、情報処理装置、およびプログラムに関する。
【背景技術】
【０００２】
従来、画像出力装置より印刷物を出力する際に用紙節約処理を実行するものとして、用紙の空白領域と出力データ領域とを比較して、空白領域を節約する技術がある。例えば、特許文献１には、印刷設定に連続シートの長さを節約可能な設定が含まれるかどうかを判定し、用紙を節約可能な印刷設定があると判定された場合に、用紙を節約可能な印刷設定をユーザに通知する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５６９３０２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の情報処理装置では、異なる２種類の用紙節約機能を実行する２つの画像出力装置ＡおよびＢがある場合、例えば画像出力装置ＡとＢとで、実行する用紙節約機能が異なるため、意図した出力結果を簡単に得ることができない場合がある。
【０００５】
本発明は、上述の問題に鑑みて成されたものであり、画像出力装置に、ユーザの意図した出力結果が得られるよう出力指示を送信することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一態様によると、情報処理装置の情報処理方法であって、出力装置が実行可能な記録媒体への出力に関する第１の節約機能に関する情報を取得する取得工程と、前記第１の節約機能に基づいて、適用されるべき記録媒体への出力に関する第２の節約機能を前記出力装置が実行可能ではないと判定した場合に、前記第２の節約機能を適用された場合の出力が得られるように、前記第１の節約機能に対応する出力指示を生成する生成工程と、生成した前記出力指示を前記出力装置に送信する送信工程と、を含むことを特徴とする。
【発明の効果】
【０００７】
本発明によれば、画像出力装置に、ユーザの意図した出力結果が得られるよう出力指示を送信することができる。
【図面の簡単な説明】
【０００８】
【図１】一実施形態に係る情報処理装置を含む情報処理システムの一例を示す図。
【図２】一実施形態に係る、用紙節約機能を実行する前の出力データの概略図。
【図３】一実施形態に係る、用紙節約機能を実行した後の出力データの概略図。
【図４】一実施形態に係る、用紙節約機能を実行する前の白データを含む出力データの一例を示す図。
【図５】一実施形態に係る、用紙節約機能を実行する前の白データを含む出力データの一例を示す図。
【図６】一実施形態に係る、用紙節約機能Ａを実行した後の出力データの一例を示す図。
【図７】一実施形態に係る、用紙節約機能Ｂを実行した後の出力データの一例を示す図。
【図８】一実施形態に係る、出力データ送信処理の一例を示すフローチャート。
【図９】一実施形態に係る、用紙節約設定を取得する処理の一例を示すフローチャート。
【図１０】一実施形態に係る、画像出力装置の用紙節約情報を取得する処理の一例を示すフローチャート。
【図１１】一実施形態に係る、用紙節約コマンドを生成する処理の一例を示すフローチャート。
【図１２】一実施形態に係る、プレビュー表示処理の一例を示すフローチャート。
【図１３】一実施形態に係る、用紙節約機能Ａを実行した後の出力結果のプレビューを示すプレビュー画面の図。
【図１４】一実施形態に係る、用紙節約機能Ｂを実行した後の出力結果のプレビューを示すプレビュー画面の図。
【図１５】一実施形態に係る、用紙節約機能Ａの処理の一例を示すフローチャート。
【図１６】一実施形態に係る、上マージン追加処理の一例を示すフローチャート。
【図１７】一実施形態に係る、下マージン追加処理の一例を示すフローチャート。
【図１８】一実施形態に係る、画像出力装置Ｂで用紙節約機能Ａを実行した後の出力データの概略図。
【図１９】一実施形態に係る、用紙節約機能Ｂの処理の一例を示すフローチャート。
【図２０】一実施形態に係る、上オフセット追加処理の一例を示すフローチャート。
【図２１】一実施形態に係る、下オフセット追加処理の一例を示すフローチャート。
【図２２】一実施形態に係る、プレビュー表示処理の一例を示すフローチャート。
【図２３】一実施形態に係る、用紙節約機能Ｂを実行した後の出力結果のプレビューを示すプレビュー画面の図。
【図２４】一実施形態に係る、用紙節約機能の選択画面図。
【図２５】一実施形態に係る、用紙節約機能Ａを実行した後の出力結果のプレビューを示すプレビュー画面の図。
【図２６】一実施形態に係る、用紙節約機能を実行する前の白データを含む出力データの一例を示す図。
【図２７】一実施形態に係る、上マージン追加処理の一例を示すフローチャート。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る本発明を限定するものではなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１０】
＜第１の実施形態＞
［システム構成］
まず、図１を参照して、本発明の一実施形態に係る情報処理装置を含む画像処理システムの構成例を説明する。本実施形態に係る画像処理システムは、情報処理装置１００、画像出力装置１１０Ａ、および画像出力装置１１０Ｂがネットワーク１２０を介して接続されている。
【００１１】
情報処理装置１００は、ネットワーク１２０を介して、画像出力装置１１０Ａまたは１１０Ｂに、出力指示（記録指示）として出力データを送信することで、画像出力装置１１０Ａまたは１１０Ｂに出力データを出力させることができる。一例では、情報処理装置１００は、デスクトップＰＣ、ノートＰＣ、スマートフォン、およびタブレット端末の少なくとも何れかを含む。
【００１２】
画像出力装置１１０Ａおよび１１０Ｂは、印刷機能を備えるＭＦＰ（Multifunction Peripheral）などの画像処理装置である。なお、本実施形態において、画像出力装置１１０Ａは用紙節約機能Ａを、画像出力装置１１０Ｂとは異なる用紙節約機能Ｂを実行可能であるものとして説明を行う。また、本実施形態では、画像出力装置を総称して画像出力装置（出力装置）１１０と呼び、画像出力装置１１０は、画像出力装置１１０Ａおよび画像出力装置１１０Ｂの少なくとも何れかを含む。
【００１３】
なお、本実施形態では、画像処理システムにはネットワーク１２０で接続された情報処理装置１００、ならびに画像出力装置１１０が含まれるものとして説明を行うが、ネットワーク１２０は複数のネットワークを含んでもよい。すなわち、画像出力装置１１０は、情報処理装置１００とは異なるネットワークに属してもよく、一例ではインターネットを介して通信してもよい。
【００１４】
また、システムには１つ以上の画像出力装置１１０が含まれればよく、例えば３つ以上の画像出力装置１１０が含まれてもよい。
【００１５】
情報処理装置１００は、構成要素としてＣＰＵ１０１、ＲＡＭ（Random Access Memory）１０２、ＲＯＭ（Read Only Memory）１０３、ＨＤＤ（Hard Disk Drive）１０４、ディスプレイインタフェース（Ｉ／Ｆ）１０５、ネットワークＩ／Ｆ１０６を含む。これらの構成要素は、バス１０７によって相互通信可能に接続される。また、情報処理装置１００にはディスプレイ１０８が接続される。
【００１６】
ＣＰＵ１０１は、ＲＯＭ１０３またはＨＤＤ１０４に格納されている制御プログラムを実行し、情報処理装置１００の全体を制御する。ＲＡＭ１０２は、ＣＰＵ１０１の主メモリ、ワークエリアなどの一時記憶域として用いられる。ＨＤＤ１０４は、ＣＰＵ１０１によって実行されるプログラムに加え、画像出力装置１１０または１１１に送信される出力データや画像出力装置１１０の設定情報などの様々なデータを格納する。ＲＯＭ１０２は、オペレーティングシステム（ＯＳ）、プリンタドライバを含む各機能を実行するプログラム、ブートプログラム、各種のアプリケーション等を記憶する。また、ＲＯＭ１０２は、プリンタドライバのように出力データ（印刷データ）を生成するアプリケーションを記憶してもよい。なお、ＨＤＤ１０４として、フレキシブルディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＤＶＤ等の記憶媒体を用いてもよい。
【００１７】
ディスプレイＩ／Ｆ１０５は、ＣＰＵ１０１によってディスプレイ１０８を制御するためのインタフェースである。ディスプレイ１０８は、ＬＥＤパネルまたは液晶パネルを含む表示部である。ネットワークＩ／Ｆ１０６は、情報処理装置１００がネットワーク１２０を介してネットワーク上の少なくとも１つの画像出力装置１１０との通信を行うための有線または無線ネットワークインタフェースである。
【００１８】
［用紙節約機能］
用紙節約機能とは、画像出力装置１１０の少なくとも何れかが出力データをロール紙などの記録媒体に出力する際、出力データの上部と下部の空白領域を削除するようにカットする位置を制御して、用紙を節約する機能である。この機能では、情報処理装置１００は用紙節約機能を適用するよう指示する用紙節約コマンドを画像出力装置１１０に発行する。一般的には、情報処理装置１００は出力データを加工せず、出力データを受信した画像出力装置が用紙節約処理を行うのが一般的である。用紙節約処理は、情報処理装置１００による指示を受けた画像出力装置１１０によって実行される。
【００１９】
図２は、情報処理装置１００が送信する、用紙節約機能を実行する前の出力データの一例を示す概略図である。図２では、用紙外形２０１の中に出力領域（出力可能領域）２０２があり、その中に描画された縦縞の出力オブジェクト（図形）２０３と横縞の図形２０４とが重なっている。情報処理装置１００が図２のデータに用紙節約コマンドを付加して画像出力装置１１０に出力する場合、情報処理装置１００および画像出力装置１１０は以下のような処理を行う。なお、以下では、情報処理装置１００を各処理の主体として記載するが、実際は、情報処理装置１００内のＲＯＭ１２０に格納されたプリンタドライバまたは出力データ生成アプリケーションのプログラムをＣＰＵ１０１が実行することにより対応する機能が実行されるとよい。また、全ての処理は必ずしも一つのプロセス上で逐次的に実行されるものではなく、一度ＯＳ側に処理が移り、再度ＯＳから呼び出されるようなケースもあり得る。
【００２０】
情報処理装置１００は、以下のように出力データを設定する。まず、用紙外形２０１のサイズを取得し、出力データに設定する。次に、用紙外形２０１のサイズと出力可能領域２０２のサイズの差分である上下左右マージンを取得し、出力データに設定する。すなわち、マージンとは、出力する記録媒体と出力可能領域との間のマージンである。続いて、用紙節約処理の実行を画像出力装置１１０に指示する用紙節約コマンドを出力データに設定し、以下のページ内データの設定を行う。
【００２１】
ページ内データの設定では、出力可能領域２０２の上端から、ページ内で最も上にある図形の上端までの長さが上オフセットコマンドに変換される。図２の例では、出力可能領域２０２の上端から縦縞の図形２０３の上端までの長さが上オフセットコマンドに変換され、出力データに設定される。すなわち、オフセットコマンドは、出力可能領域に対する出力オブジェクトのオフセットを指定するコマンドである。
【００２２】
また、ページ内で最も上にある図形の上端からページ内で最も下にある図形の下端までが描画ラスタデータに変換される。図２の例では、縦縞の図形２０３の上端から横縞の図形２０４の下端までが描画ラスタデータとして出力データに設定される。
【００２３】
続いて、ページ内で最も下にある図形の下端から出力可能領域２０２の下端までの長さが下オフセットコマンドに変換される。図２の例では、横縞の図形２０４の下端から出力可能領域２０２の下端までの長さが下オフセットコマンドに変換され、出力データに設定される。以上のページ内データの設定が完了すると、情報処理装置１００は出力データを画像出力装置１１０に送信する。
【００２４】
次に、画像出力装置１１０は、受け取った出力データから、用紙外形２０１のサイズと出力可能領域２０２のサイズの差分である上下左右マージンを取得し、まずは、上マージン分のロール紙を紙送りする。次に、出力データから、出力可能領域２０２の上端から縦縞の図形２０３の上端まで長さに対応する上オフセットコマンドを取得する。上オフセットコマンドは、画像出力装置１００の用紙節約の対象となるため、削除され、紙送りされない。次に、縦縞の図形２０３の上端から横縞の図形２０４の下端までの描画ラスタデータを取得し、ロール紙に出力する。次に、横縞の図形２０４の下端から出力可能領域２０２の下端までの長さに対応する下オフセットコマンドを取得し、上オフセットコマンドと同様に削除され、紙送りされない。
【００２５】
以上の処理によって、図３に示すように、用紙外形３０１の中に出力可能領域３０２があり、その中に描画された縦縞の図形２０３と横縞の図形２０４が重なっている１ページのデータが、画像出力装置に出力される。なお、図３に示す出力データに対して、画像出力装置Ａが実行可能な用紙節約機能Ａを実行しても、画像出力装置Ｂが実行可能な用紙節約機能Ｂを実行しても、同等の出力結果が得られる。
【００２６】
図４は、情報処理装置１００が送信する、用紙節約機能を実行する前の出力データの一例を示す概略図である。図２の出力データと同様に、用紙外形２０１の中に出力可能領域２０２があり、その中に描画された縦縞の図形２０３と横縞の図形２０４が重なっている。また、一点鎖線で表示されている出力オブジェクト（図形）４０５および４０６は白データであり、図形４０５が縦縞の図形２０３に、図形４０６が横縞の図形２０４に重なっている。ここで、白データとは、枠線も中身も白色で描画された白い出力オブジェクトに対応するデータであり、ここでは一点鎖線表示となっているが、実際には一点鎖線も白線であるためは出力されない。なお、「白データ」とは完全な「白色」のデータに限定されない。図形２０３、２０４などの、出力可能領域２０２内に配置された図形は出力オブジェクトと呼ばれる。
【００２７】
［用紙節約機能Ａ］
この図４の出力データを、情報処理装置１００から画像出力装置１１０Ａに、用紙節約機能を有効にして出力する場合、情報処理装置１００と画像出力装置１１０Ａとは以下のように処理を行う。
【００２８】
情報処理装置１００は、用紙外形２０１のサイズを取得し、出力データに設定する。次に、用紙外形２０１のサイズと出力可能領域２０２のサイズの差分である上下左右マージンを取得し、出力データに設定する。続いて、用紙節約機能を有効にして出力するよう指示する用紙節約コマンドを出力データに設定し、ページ内データの設定を行う。
【００２９】
ページ内データの設定では、出力可能領域２０２の上端から一点鎖線で表示されている図形（オブジェクト）４０５の上端までの長さは、上オフセットコマンドに変換され、出力データに設定される。以降の画像が描画されている領域を設定する処理は、図形が描画されている部分について図５に抜き出した部分図を参照して説明する。
【００３０】
図５の例では、一点鎖線で表示されている図形４０５のみで構成されているライン５０１の白データが出力データに設定される。次に、縦縞の図形２０３と一点鎖線で表示されている図形４０５とで構成されているライン５０２のデータが出力データに設定され、縦縞の図形２０３と横縞の図形２０４とで構成されているライン５０３のデータが出力データに設定される。続いて、一点鎖線で表示されている図形４０６と横縞の図形２０４とで構成されているライン５０４のデータが出力データに設定され、一点鎖線で表示されている図形４０６のみで構成されているライン５０５のデータが出力データに設定される。
【００３１】
図４の説明に戻る。続いて、横縞の図形２０４の下端から出力可能領域２０２の下端までの長さは、下オフセットコマンドに変換され出力データに設定される。続いて、情報処理装置１００は出力データの設定を終了し、画像出力装置１１０Ａに送信する。
【００３２】
次に、画像出力装置１１０Ａは、受け取った出力データから、用紙外形２０１のサイズと出力可能領域２０２のサイズの差分である上下左右マージンを取得し、上マージン分のロール紙を紙送りする。次に、出力データから、出力可能領域２０２の上端から一点鎖線で表示されている図形４０５の上端までの長さに対応する上オフセットコマンドを取得し、上オフセットコマンドに対応する出力データを削除し、紙送りしない。次に、一点鎖線で表示されている図形４０５のみで構成されているライン５０１の白データは、画像出力装置１１０Ａにおいては、用紙節約の対象とならないので、削除されず、白データなので出力もされずに５０１のライン分のロール紙の用紙送りが行われる。例えば、５０２、５０３、５０４のラインデータには、描画データが含まれているので、ライン５０２は、縦縞の図形２０３の左端から一点鎖線で表示されている図形４０５の左端までの描画データがロール紙に出力される。同様に、ライン５０３は、縦縞の図形２０３の左端から横縞の図形２０４の右端まで、ライン５０４は、一点鎖線で表示されている図形４０６の右端から横縞の図形２０４の右端までの描画データがロール紙に出力され出力分の用紙送りがされる。
【００３３】
一点鎖線で表示されている図形４０６のみで構成されているライン５０５の白データは、画像出力装置１１０Ａにおいては、用紙節約の対象とならないので、削除されず、白データなので出力もされずに５０５のライン分のロール紙の用紙送りが行われる。次に、出力データから、一点鎖線で表示されている図形４０６の下端から出力可能領域２０２の下端までの長さに対応する下オフセットコマンドを取得し、対応する描画データを削除し、紙送りされない。
【００３４】
以上の処理によって、画像出力装置１１０Ａは、図６に示すように、用紙外形６０１の中に出力可能領域６０２があり、その中に描画された縦縞の図形２０３と横縞の図形２０４が重なっている１ページのデータを印刷する。なお、図形４０５および４０６は白データなので実際には出力されない。
【００３５】
すなわち、画像出力装置１１０Ａが実行する用紙節約機能Ａとは、出力データに描画データが含まれない上下オフセットは削除するが、白データのみのラインデータは削除しない、用紙を節約する機能である。用紙節約機能Ａは、白データスキップがＯＦＦの用紙節約機能とも呼ばれる。
【００３６】
［用紙節約機能Ｂ］
一方、この図４の出力データを、情報処理装置１００から画像出力装置１１０Ｂに、用紙節約機能を有効にして出力すると、情報処理装置１００と画像出力装置１１０Ｂは以下のような処理を行う。
【００３７】
情報処理装置１００が出力データを生成する処理ついては、前述の情報処理装置１００から画像出力装置１１０Ａに用紙節約機能を有効にして出力する場合の情報処理装置１００の処理と同じである。
【００３８】
画像出力装置１１０Ｂは、受け取った出力データから、用紙外形２０１のサイズと出力可能領域２０２のサイズの差分である上下左右マージンを取得し、まずは、上マージン分のロール紙を紙送りする。次に、出力データから、出力可能領域２０２の上端から一点鎖線で表示されている図形４０５の上端までの、上オフセットコマンドを取得し、対応する出力データを削除し、紙送りされない。次に、一点鎖線で表示されている図形４０５のみで構成されているライン５０１の白データは、画像出力装置１１０Ｂにおいては、用紙節約の対象となるので、削除され、ロール紙の用紙送りは行われない。例えば、５０２、５０３、５０４のラインデータには、描画データが含まれているので、ライン５０２は、縦縞の図形２０３の左端から一点鎖線で表示されている図形４０５の左端までのオブジェクトデータがロール紙に出力される。同様に、ライン５０３は、縦縞の図形２０３の左端から横縞の図形２０４の右端まで、ライン５０４は、一点鎖線で表示されている図形４０６の右端から横縞の図形２０４の右端までの描画データがロール紙に出力され出力分の用紙送りがされる。一点鎖線で表示されている図形４０６のみで構成されているライン５０５の白データは、画像出力装置１１０Ｂにおいては、用紙節約の対象となるので、削除され、ロール紙の用紙送りは行われない。次に、出力データから、一点鎖線で表示されている図形４０６の下端から出力可能領域２０２の下端までの、下オフセットコマンドを取得し、対応する出力データを削除するため、紙送りされない。
【００３９】
以上の処理によって、画像出力装置１１０Ｂは、図７に示すように、用紙外形７０１の中に出力可能領域７０２があり、その中に描画された縦縞の図形２０３と横縞の図形２０４が重なっている１ページの印刷を実行する。なお、図形４０５および４０６は白データなので実際には出力されない。
【００４０】
すなわち、画像出力装置１１０Ｂが実行する用紙節約機能Ｂとは、出力データに描画データが含まれない上下オフセットと、白データのみのラインデータを削除し、印刷しないことで用紙を節約する機能である。用紙節約機能Ｂは、白データスキップがＯＮの用紙節約機能とも呼ばれる。
【００４１】
［情報処理装置の処理例］
ここで、本実施形態の情報処理装置１００の処理フローについて、図８を参照して説明する。図８の処理は、ユーザ操作などによって情報処理装置１００に印刷処理の実行が指示されると、ＣＰＵ１０１がＲＯＭ１０３に格納されたプリンタドライバまたは出力データ生成アプリケーションのプログラムを実行することで実現される。また、全ての処理は必ずしも一つのプロセス上で逐次的に実行されるものではなく、一度ＯＳ側に処理が移り、再度ＯＳから呼び出されるようなケースもあり得る。
【００４２】
まず、Ｓ８０１で、ＣＰＵ１０１は情報処理装置１００の用紙節約設定を取得する。続いて、ＣＰＵ１０１は処理をＳ８０２に進め、出力先の画像出力装置１１０を選択する。一例では、画像出力装置１１０の選択は、情報処理装置１００がすでに有している画像出力装置１１０のリストをディスプレイ１０８に表示し、ディスプレイ１０８を介して入力されたユーザ操作に基づいて実行されてもよい。または、情報処理装置１００がネットワーク１２０上で公知のディスカバリプロトコルに従い画像出力装置１１０を探索し、情報処理装置１００が、最初に見つけた画像出力装置１１０など、所定のルールに従い選択を行ってもよい。
【００４３】
続いて、ＣＰＵ１０１は処理をＳ８０３に進め、画像出力装置１１０の用紙節約機能に関する情報を取得する。情報処理装置１００の用紙節約設定と画像出力装置１１０の用紙節約機能に関する情報とが確定すると、ＣＰＵ１０１は処理をＳ８０４に進め、用紙節約コマンドを含む出力設定を生成する。また、Ｓ８０５で出力データのプレビュー表示の有無に従いプレビュー画面を表示し、出力データを画像出力装置１１０に出力することで出力指示を行う。
【００４４】
図９は、図８のＳ８０１の情報処理装置の用紙節約設定を取得する処理の詳細な一例を示すフローチャートである。図９の処理は、ＣＰＵ１０１がＲＯＭ１０３に格納されたプログラムを実行することで実現される。
【００４５】
図９では、情報処理装置１００は、Ｓ９０１で過去に保存した用紙節約設定を取得し、続いてＳ９０２で過去の用紙節約設定の有無を判定する。一例では、過去に保存した用紙節約設定とは、前回の出力で使用した用紙節約設定などの出力履歴でありうる。過去の用紙節約設定を取得したと判定した場合（Ｓ９０２でＹｅｓ）、ＣＰＵ１０１は処理をＳ９０３に進め、その情報を用紙節約設定として設定し、処理をＳ９０５に進める。Ｓ９０１で用紙節約設定を取得しなかったと判定した場合（Ｓ９０２でＮｏ）、ＣＰＵ１０１は処理をＳ９０４に進めデフォルトの用紙節約設定を用紙節約設定として設定し、処理をＳ９０５に進める。
【００４６】
Ｓ９０５では、ＣＰＵ１０１は、情報処理装置１００の用紙節約設定を過去の用紙節約設定として保存する。これによって、次回以降、用紙節約設定を入力する手間を省くことができる。
【００４７】
図１０は、図８のＳ８０３にある、情報処理装置１００が画像出力装置１１０から用紙節約機能に関する情報を取得する処理の詳細な一例を示すフロー図である。図１０の処理は、ＣＰＵ１０１がＲＯＭ１０３に格納されたプログラムを実行することで実現される。
【００４８】
まず、Ｓ１００１で、情報処理装置１００と画像出力装置１１０とで通信を行い、画像出力装置１１０の用紙節約機能に関する情報を取得する。続いて、Ｓ１００２で、ＣＰＵ１０１は取得した用紙節約機能に関する情報が「白データスキップ」が有効か否かを示すかを判定する。
【００４９】
用紙節約機能情報に「白データスキップ」が無効であることを示す情報が含まれていると判定した場合（Ｓ１００２でＯＦＦ）、ＣＰＵ１０１は処理をＳ１００３に進め、画像出力装置１１０は用紙節約機能Ａを実行する画像出力装置１１０Ａであると判定する。その後、処理をＳ１００６に進める。用紙節約機能情報に「白データスキップ」が有効であることを示す情報が含まれていると判定した場合（Ｓ１００２でＯＮ）、ＣＰＵ１０１は処理をＳ１００４に進め、画像出力装置１１０は用紙節約機能Ｂを実行する画像出力装置１１０Ｂであると判定する。その後、処理をＳ１００６に進める。用紙節約機能情報に「白データスキップ」が有効であるか否かが判定できない場合（Ｓ１００２でＵｎｋｎｏｗｎ）、ＣＰＵ１０１は処理をＳ１００５に進め、用紙節約機能情報を取得した画像出力装置１１０は画像出力装置１１０Ｚであるとして設定する。その後、処理をＳ１００６に進める。
【００５０】
Ｓ１００６では、画像出力装置１１０の用紙節約機能情報を保存し、図１０の処理を終了する。
【００５１】
図１１は、用紙節約処理を決定するＳ８０４の詳細な一例を示すフロー図である。図１１の処理は、ＣＰＵ１０１がＲＯＭ１０３に格納されたプログラムを実行することで実現される。
【００５２】
まず、Ｓ１１０１で、ＣＰＵ１０１は用紙節約設定の有無を判定する。すなわち、用紙節約機能を有効にして出力データを送信するか否かを判定する。用紙節約設定があると判定すると（Ｓ１１０１でＹｅｓ）、ＣＰＵ１０１は処理をＳ１１０２に進め、用紙節約設定がないと判定すると（Ｓ１１０１でＮｏ）、処理をＳ１１０５に進める。
【００５３】
Ｓ１１０２では、ＣＰＵ１０１は情報処理装置１０１の用紙節約設定を取得し、何れの用紙節約設定であるかを判定する。用紙節約設定が用紙節約機能Ａであると判定した場合（Ｓ１１０２でＡ）、ＣＰＵ１０１は処理をＳ１１０３に進め、用紙節約機能Ａを実行するための用紙節約コマンドＡを生成する処理を実行する。用紙節約設定が用紙節約機能Ｂであると判定した場合（Ｓ１１０２でＢ）、ＣＰＵ１０１は処理をＳ１１０４に進め、用紙節約機能Ｂを実行するための用紙節約コマンドＢを生成する処理を実行する。
【００５４】
続いて、ＣＰＵ１０１は処理をＳ１１０５に進め、用紙節約コマンド以外の出力設定を設定し、図１１の処理を終了する。
【００５５】
図１２は、Ｓ８０５のプレビュー処理の詳細な一例を示すフロー図である。図１２の処理は、ＣＰＵ１０１がＲＯＭ１０３に格納されたプログラムを実行することで実現される。図１３は、用紙節約処理Ａの実際のプレビュー画面１３０１を、図１４は、用紙節約処理Ｂの実際のプレビュー画面１４０１を示す。
【００５６】
図１２のＳ１２０１で、出力データのプレビューの有無をチェックする。一例では、ユーザからプレビュー表示の指示があったか否かを判定する。ＣＰＵ１０１がＳ１２０１でプレビュー表示がＯＦＦであると判定すると（Ｓ１２０１でＯＦＦ）、ＣＰＵ１０１は処理をＳ１２０４に進め、画像出力装置に出力データを送信する出力処理が開始される。プレビュー表示がＯＮであると判定すると（Ｓ１２０１でＯＮ）、ＣＰＵ１０１は処理をＳ１２０２に進め、用紙節約設定に従って、対応するプレビュー表示を行う。すなわち、用紙節約設定がＡであれば図１３のプレビュー表示画面１３０１を表示し、用紙節約設定がＢであれば図１４のプレビュー表示画面１４０１を表示する。ここで、プレビュー表示画面１３０１または１４０１には、対応する用紙節約設定１３０２または１４０２も表示されうる。一例では、プレビュー表示画面では、出力されない白データも視認可能に表示されうる。これによって、ユーザに用紙節約設定を適用した場合に得られる出力を分かりやすく表示することができる。
【００５７】
情報処理装置１００は、Ｓ１２０２でプレビューを表示すると、Ｓ１２０３に処理を進め、出力送信指示を待つ。出力送信指示とは、例えば図１３の印刷ボタン１３０４または図１４の印刷ボタン１４０４ボタンの押下でありうる。Ｓ１２０３で印刷開始指示を受け付けると（Ｓ１２０３でＹｅｓ）、ＣＰＵ１０１は処理をＳ１２０４に進め、印刷開始指示を受け付けない場合（Ｓ１２０３でＮｏ）はＳ１２０３に処理を戻す。
【００５８】
Ｓ１２０３で、出力送信指示ではなく、例えば図１３の中止ボタン１３０３または図１４の中止ボタン１４０３の押下を検出すると、ＣＰＵ１０１は中止指示があったと判定し（Ｓ１２０３でＣａｎｃｅｌ）、図１２の処理を終了する。
【００５９】
これにより、ユーザは、出力する前に出力結果を確認することができ、消耗品の無駄もなくなり、所望の出力設定を実行した場合の出力結果を得ることができるようになる。
【００６０】
図１５は、Ｓ１１０３の、情報処理装置１００が用紙節約設定Ａに対応する用紙節約コマンドＡを生成する処理の詳細な一例を示すフローチャートである。図１５の処理は、ＣＰＵ１０１がＲＯＭ１０３に格納されたプログラムを実行することで実現される。
【００６１】
図１５のＳ１５０１で、Ｓ８０３で取得した画像出力装置１１０の用紙節約機能は何れの用紙節約機能であるのかを判別する。ＣＰＵ１０１が、画像出力装置１１０は画像出力装置Ａであると判定すると（Ｓ１５０１でＡ）、Ｓ１５０２に処理を進め、画像出力装置１１０に用紙節約コマンドＡを出力し、Ｓ１１０４の処理を終了する。
【００６２】
ＣＰＵ１０１が、画像出力装置１１０は画像出力装置Ｂであると判定すると（Ｓ１５０１でＢ）、処理をＳ１５０３に進め、用紙節約コマンドＢを出力した後、Ｓ１５０４で上部の白データを上マージンに追加する処理を行う。続いて、Ｓ１５０５で下部の白データを下マージンに追加する処理を行い、Ｓ１１０４の処理を終了する。すなわち、用紙節約機能Ｂを実行する画像出力装置１１０に、情報処理装置１００が用紙節約機能Ａを実行させる場合、用紙節約機能Ａを適用した場合に得られる出力が得られるように用紙節約コマンドＢのパラメータを調整する。
【００６３】
ＣＰＵ１０１が、画像出力装置１１０は画像出力装置Ｚであると判定すると（Ｓ１５０２でＺ）、用紙節約コマンドは出力せず、Ｓ１１０３の処理を終了する。
【００６４】
すなわち、図１５に示す処理では、画像出力装置１１０の提供する用紙節約機能情報に基づいて、発行する用紙節約コマンドに対応する用紙節約機能が画像出力装置１１０に実行可能であると判定すればそのまま用紙節約コマンドを生成する。また、画像出力装置１１０に実行可能ではないと判定した場合には、適用したい用紙節約機能を適用した場合に得られる出力を得られるように、マージン追加処理を行った、画像出力装置１１０が実行可能な用紙節約機能に対応する用紙節約コマンドを発行する。
【００６５】
図１６は、図１５のＳ１５０４の上マージン追加処理の詳細な一例を示すフローチャートである。図１６の処理は、ＣＰＵ１０１がＲＯＭ１０３に格納されたプログラムを実行することで実現される。なお、本実施形態では、出力データの上方向から、単位行（ライン）毎に上マージンに追加するか否かを判定するものとする。
【００６６】
まず、Ｓ１６０１で、ＣＰＵ１０１はオブジェクトデータの存在する領域ごとに出力データを分割するデータライン数をカウントするために、ライン情報をリセットする。次に、処理をＳ１６０２に進め、そのラインにオブジェクトデータが存在するかを確認する。ラインにオブジェクトデータが存在しないと判定すると（Ｓ１６０２でＮｏ）、ＣＰＵ１０１は処理をＳ１６０３に進め、次のラインに進む。ラインにオブジェクトデータが存在すると判定すると（Ｓ１６０２でＹｅｓ）、ＣＰＵ１０１は処理をＳ１６０４に進め、オブジェクトデータが白データであるかどうかを判定する。ライン上のオブジェクトデータが白データであると判定すると（Ｓ１６０４でＹｅｓ）、処理をＳ１６０５に進め、そのラインを上マージンに追加し、処理をＳ１６０３に進める。
【００６７】
ライン上のオブジェクトデータが白データではないと判定すると（Ｓ１６０４でＮｏ）、ＣＰＵ１０１は処理をＳ１６０６に進め、上マージンに追加したラインに関する情報に基づいて上マージンを調整し、上マージン情報を設定する。なお、本実施形態では、白オブジェクトを含むラインデータの幅を上マージンに追加するものとして説明を行うが、白オブジェクトを含むラインデータの幅に基づいて上マージンが調整されればよく、調整量は任意の計算式によって決定されうる。
【００６８】
例えば、図５の例では、ライン５０１は白データのみを含む領域であるため、上マージンに追加されるが、ライン５０２は非白データを含む領域であるため、上マージンには追加されない。結果として、ライン５０１の幅が上マージンに追加される。
【００６９】
図１７は、図１５のＳ１５０５の下マージン追加処理の詳細な一例を示すフローチャートである。図１７の処理は、ＣＰＵ１０１がＲＯＭ１０３に格納されたプログラムを実行することで実現される。なお、本実施形態では、出力データの上方向から、単位行（ライン）毎に下マージンに追加するか否かを判定するものとする。
【００７０】
まず、図１７のＳ１７０１で、ＣＰＵ１０１は、描画データの存在するデータライン数をカウントするために、ライン情報をリセットする。続いて、ＣＰＵ１０１は処理をＳ１７０２に進め、そのラインにオブジェクトデータが存在するか否かを判定する。ラインにオブジェクトデータが存在しないと判定すると（Ｓ１７０２でＮｏ）、ＣＰＵ１０１は処理をＳ１７０７に進める。ラインにオブジェクトデータが存在すると判定すると（Ｓ１７０２でＹｅｓ）、ＣＰＵ１０１は処理をＳ１７０３に進め、オブジェクトデータが白データであるかどうかを判定する。
【００７１】
ライン上のオブジェクトデータが白データであると判定すると（Ｓ１７０３でＹｅｓ）、処理をＳ１７０４に進め、そのラインを下マージンに追加し、処理をＳ１７０５に進め、次のラインに進め、処理をＳ１７０２に戻す。
【００７２】
ライン上のオブジェクトデータが白データではないと判定すると（Ｓ１７０３でＮｏ）、ＣＰＵ１０１は処理をＳ１７０６に進め、次のラインに進め、処理をＳ１７０１に戻す。
【００７３】
Ｓ１７０７では、そのラインが出力データの一番下、すなわちページエンドに到達したか否かを判定する。ページエンドに到達したと判定すると（Ｓ１７０７でＹｅｓ）、ＣＰＵ１０１は処理をＳ１７０８に進め、下マージンに追加したラインに関する情報に基づいて下マージンを調整し、下マージン情報を設定し、Ｓ１５０５の処理を終了する。ページエンドに到達していないと判定すると（Ｓ１７０７でＮｏ）、ＣＰＵ１０１は処理をＳ１７０５に進める。なお、本実施形態では、白オブジェクトを含むラインデータの幅を下マージンに追加するものとして説明を行うが、白オブジェクトを含むラインデータの幅に基づいて下マージンが調整されればよく、調整量は任意の計算式によって決定されうる。
【００７４】
次に、図４の出力データを例に、実際にどのようにマージン追加処理が実行されるか説明する。図４の出力データを、情報処理装置１００から画像出力装置１１０Ｂに、用紙節約機能Ａを実行させるように出力指示を送信する場合、情報処理装置１００は以下の処理を行う。
【００７５】
まず、Ｓ１５０４の上マージン追加処理では、白データの図形４０５の上端から縦縞の図形２０３の上端までを上マージンであると判定し、用紙外形２０１の上端から出力可能領域２０２の上端までの間の上マージンに追加する。また、Ｓ１５０５の下マージン追加処理では、横縞の図形２０４の下端から白データの図形４０６の下端までのサイズを下マージンであると判定し、用紙外形２０１の下端から出力可能領域２０２の下端までの間の下マージンに追加する。
【００７６】
次に、白データの図形４０５の上端から縦縞の図形２０３の上端までの白データと、横縞の図形２０４の下端から白データの図形４０６の下端までの白データは、マージンに変換される。したがって、ラインデータとしては削除されたものとみなし、縦縞の図形２０３の上端から横縞の図形２０４の下端までのデータをラインデータとして作成する。
【００７７】
次に、出力データを画像出力装置１１０Ｂに出力すると、画像出力装置１１０Ｂは以下の処理を行う。
【００７８】
まず、先に情報処理装置１００で作成された上マージン分のロール紙を送り、次に送られてくる上オフセットコマンド分のラインを、用紙節約の機能により無視する。これによりロール紙の紙送りは行われない。次に、実際に送られてきたラインデータを出力し、ラインデータが終了したら、以降の下オフセットコマンドは無視する。最後に、先に情報処理装置で作成された下マージン分のロール紙を送り、出力を終了すると、図１８の出力結果となる。なお、図１８では、説明のために図形４０５および４０６を一点鎖線で表示しているが、白データなので実際には出力されない。このように、画像出力装置１１０Ｂにおいても図１８のように、画像出力装置１１０Ａにおける用紙節約の出力結果、図６と同じ出力結果を得ることができる。
【００７９】
＜第２の実施形態＞
第１の実施形態では、情報処理装置１００から画像出力装置１１０Ｂに対して、用紙節約機能Ａを適用した場合の出力を得るための用紙節約コマンドＢを生成する処理の説明を行った。本実施形態では、情報処理装置１００から画像出力装置Ａに対して、用紙節約機能Ｂを適用した場合の出力を得るための用紙節約コマンドＡを生成する処理の説明を行う。なお、第１の実施形態と同様の構成または処理については同一の参照符号を用い、説明は省略する。
【００８０】
図４にある１ページの出力データを、情報処理装置１００で用紙節約コマンドを付加するのみで画像出力装置１１０Ａに送信してしまうと図６のような出力結果になってしまう。画像出力装置１１０Ａから、図７のような出力結果を得るために、本実施形態では、白データをマージンに変換する第１の実施形態とは異なり、白データをオフセットコマンドに変換する。
【００８１】
図１９は、用紙節約機能Ｂを実行させるＳ１１０４の処理の詳細な一例を示すフローチャートである。図１９の処理は、ＣＰＵ１０１がＲＯＭ１０３に格納されたプログラムを実行することで実現される。
【００８２】
まず、Ｓ１９０１で、ＣＰＵ１０１はＳ８０３で取得した画像出力装置１１０の用紙節約機能情報に基づき、画像出力装置１１０が何れの種類であるかを判定する。画像出力装置１１０が用紙節約機能Ａを実行する画像出力装置Ａであると判定した場合（Ｓ１９０１でＡ）、処理をＳ１９０２に進め、用紙節約コマンドＡを生成する。その後、処理をＳ１９０３に進め、上部の白データを上オフセットに追加する処理を行い、続いてＳ１９０４で下部の白データを下オフセットに追加する処理を行い、Ｓ１１０５の処理を終了する。続いて、Ｓ１９０５に処理を進め、Ｓ１１０４の処理を終了する。
【００８３】
画像出力装置１１０が用紙節約機能Ｂを実行する画像出力装置Ｂであると判定した場合（Ｓ１９０１でＢ）、ＣＰＵ１０１は処理をＳ１９０５に進め、用紙節約コマンドＢを生成し、Ｓ１１０５の処理を終了する。
【００８４】
画像出力装置１１０がタイプＺであると判定した場合（Ｓ１９０１でＺ）、ＣＰＵ１０１は用紙節約コマンドを出力せず、Ｓ１１０５の処理を終了する。
【００８５】
図２０は、図１９のＳ１９０３の処理の詳細な一例を示すフロー図である。図２０の処理は、ＣＰＵ１０１がＲＯＭ１０３に格納されたプログラムを実行することで実現される。
【００８６】
図２０は、図１９のＳ１９０３の上オフセット追加処理の詳細な一例を示すフローチャートである。図２０の処理は、ＣＰＵ１０１がＲＯＭ１０３に格納されたプログラムを実行することで実現される。なお、本実施形態では、出力データの上方向から、単位行（ライン）毎に上オフセットに追加するか否かを判定するものとする。
【００８７】
まず、Ｓ２００１で、ＣＰＵ１０１はオブジェクトデータの存在する領域ごとに出力データを分割するデータライン数をカウントするために、ライン情報をリセットする。次に、処理をＳ２００２に進め、そのラインにオブジェクトデータが存在するかを確認する。ラインにオブジェクトデータが存在しないと判定すると（Ｓ２００２でＮｏ）、ＣＰＵ１０１は処理をＳ２００３に進め、次のラインに進む。ラインにオブジェクトデータが存在すると判定すると（Ｓ２００２でＹｅｓ）、ＣＰＵ１０１は処理をＳ２００４に進め、オブジェクトデータが白データであるかどうかを判定する。ライン上のオブジェクトデータが白データであると判定すると（Ｓ２００４でＹｅｓ）、処理をＳ２００５に進め、そのラインを上オフセットに追加し、処理をＳ２００３に進める。
【００８８】
ライン上のオブジェクトデータが白データではないと判定すると（Ｓ２００４でＮｏ）、ＣＰＵ１０１は処理をＳ２００６に進め、上オフセットに追加したラインに関する情報に基づいて上オフセットを調整し、上オフセット情報を設定する。
【００８９】
例えば、図５の例では、ライン５０１は白データのみを含む領域であるため、上オフセットに追加されるが、ライン５０２は非白データを含む領域であるため、上オフセットには追加されない。結果として、ライン５０１の幅が上オフセットに追加される。
【００９０】
図２１は、図１９のＳ１９０４の下オフセット追加処理の詳細な一例を示すフローチャートである。図１７の処理は、ＣＰＵ１０１がＲＯＭ１０３に格納されたプログラムを実行することで実現される。なお、本実施形態では、出力データの上方向から、単位行（ライン）毎に下オフセットに追加するか否かを判定するものとする。
【００９１】
まず、図２１のＳ２１０１で、ＣＰＵ１０１は、描画データの存在するデータライン数をカウントするために、ライン情報をリセットする。続いて、ＣＰＵ１０１は処理をＳ２１０２に進め、そのラインにオブジェクトデータが存在するか否かを判定する。ラインにオブジェクトデータが存在しないと判定すると（Ｓ２１０２でＮｏ）、ＣＰＵ１０１は処理をＳ２１０７に進める。ラインにオブジェクトデータが存在すると判定すると（Ｓ２１０２でＹｅｓ）、ＣＰＵ１０１は処理をＳ２１０３に進め、オブジェクトデータが白データのみであるかどうかを判定する。
【００９２】
ライン上のオブジェクトデータが白データのみであると判定すると（Ｓ２１０３でＹｅｓ）、処理をＳ２１０４に進め、そのラインを下オフセットに追加し、処理をＳ２１０５に進め、次のラインに進め、処理をＳ２１０２に戻す。
【００９３】
ライン上のオブジェクトデータが白データのみではないと判定すると（Ｓ２１０３でＮｏ）、ＣＰＵ１０１は処理をＳ２１０６に進め、次のラインに進め、処理をＳ２１０１に戻す。
【００９４】
Ｓ２１０７では、そのラインが出力データの一番下、すなわちページエンドに到達したか否かを判定する。ページエンドに到達したと判定すると（Ｓ２１０７でＹｅｓ）、ＣＰＵ１０１は処理をＳ２１０８に進め、下オフセットに追加したラインに関する情報に基づいて下オフセットを調整し、下オフセット情報を設定し、Ｓ１９０４の処理を終了する。ページエンドに到達していないと判定すると（Ｓ２１０７でＮｏ）、ＣＰＵ１０１は処理をＳ２１０５に進める。
【００９５】
次に、図４の出力データを例に、実際にどのようにオフセット追加処理が実行されるか説明する。図４の出力データを、情報処理装置１００から画像出力装置１１０Ａに、用紙節約機能を有効にして出力する場合、情報処理装置１００は以下の処理を行う。
【００９６】
まず、Ｓ１９０３の上オフセット追加処理では、白データの図形４０５の上端から縦縞の図形２０３の上端までを上オフセットであると判定し、出力可能領域２０２の上端から白データの図形４０５の上端までの間の上オフセットに追加する。また、Ｓ１９０４の下オフセット追加処理では、横縞の図形２０４の下端から白データの図形４０６の下端までのサイズを下オフセットであると判定し、出力可能領域２０２の下端から白データの図形４０６の下端までの間の下オフセットに追加する。
【００９７】
次に、出力データの白データの図形４０５の上端から縦縞の図形２０３の上端までの白データと、横縞の図形２０４の下端から白データの図形４０６の下端までの白データは、オフセットに変換される。したがって、ラインデータとしては削除されたものとみなされ、縦縞の図形２０３の上端から横縞の図形２０４の下端までのデータをラインデータとして作成する。
【００９８】
出力データを画像出力装置１１０Ａに出力すると、画像出力装置１１０Ａは以下の処理を行う。
【００９９】
まず、先に情報処理装置１００で作成された上マージン分のロール紙を送り、次に送られてくる上オフセットコマンド分のラインを、用紙節約の機能により無視する。これによりロール紙の紙送りは行われない。次に、実際に送られてきたラインデータを出力し、ラインデータが終了したら、以降の下オフセットコマンドは無視する。最後に、先に情報処理装置で作成された下マージン分のロール紙を送り、出力を終了すると、図７の出力結果となる。なお、図７では、説明のために図形４０５および４０６を一点鎖線で表示しているが、白データなので実際には出力されない。このように、画像出力装置１１０Ａにおいても図７のように、用紙節約機能Ｂを適用した場合の出力を得ることができる。
【０１００】
＜第３の実施形態＞
第１の実施形態では、情報処理装置１００の過去の設定履歴や、画像出力装置１１０の接続によって、どの用紙節約機能を実行させるかを決定するが、一例では用紙節約機能をユーザが指定できてもよい。本実施形態では、用紙節約機能を実行した場合の出力データをプレビュー画面で確認しながら、用紙節約機能を切り替えることができる情報処理装置１００の処理を説明する。なお、本実施形態では、第１または第２の実施形態と同様の構成または処理については同一の参照符号を用い、説明を省略する。
【０１０１】
図２２は、本実施形態に係るＳ８０５の処理の詳細な一例を示すフローチャートである。図２２の処理は、ＣＰＵ１０１がＲＯＭ１０３に格納されたプログラムを実行することで実現される。
【０１０２】
出力を開始する前に、ＣＰＵ１０１はＳ１２０１でプレビュー画面を表示するか否かを判定する。プレビュー画面を表示すると判定した場合（Ｓ１２０１でＹｅｓ）、ＣＰＵ１０１は処理をＳ１２０２に進め、ディスプレイ１０８にプレビュー画面を表示する。
【０１０３】
続いて、ＣＰＵ１０１は処理をＳ２２０１に進め、用紙節約機能の切り替えが行われたか否かを判定する。用紙節約機能の切り替えが行われたとＣＰＵ１０１が判定すると（Ｓ２２０１でＹｅｓ）、ＣＰＵ１０１は処理をＳ２２０２に進め、用紙節約機能の切替処理を実行する。
【０１０４】
ここで、図２３を参照し、プレビュー表示と用紙節約機能の切替処理を説明する。図２３のプレビュー画面において、ユーザは用紙節約機能の切り替えを行うために、図２３の用紙節約切替ボタン２３０３を押下することにより、図２４に示すＵＩ画面２４０１を表示する。ユーザが用紙節約Ａのラジオボタン２４０２を選択し、ＯＫボタン２４０５を押下すると、図２５のように用紙節約Ａのプレビュー表示に切り替わる。同様に、図２５の用紙節約切替ボタン２３０３を押下することにより、図２４のＵＩ画面２４０１が表示され、用紙節約Ｂのラジオボタン２４０３を選択し、ＯＫボタン２４０５を押すことにより、図２３の用紙節約Ｂのプレビュー表示に更新される。すなわち、ＣＰＵ１０１がユーザからの用紙節約機能の切替指示を検出すると、プレビュー表示を更新する。
【０１０５】
図２２の説明に戻る。用紙節約機能の切り替えが行われていない場合（Ｓ２２０１でＮｏ）、ＣＰＵ１０１は１２０３に処理を進め、ユーザから出力送信指示を受付けたかを判定する。例えば、図２３または図２５の印刷ボタン２３０５を押すことにより、出力送信指示を受付けたと判定する。出力送信指示を受付けたと判定した場合（Ｓ１２０３でＹｅｓ）、ＣＰＵ１０１は処理をＳ１２０４に進め、出力送信指示を受付けていないと判定すると（Ｓ１２０３でＮｏ）、処理をＳ１２０２に戻す。Ｓ１２０４では、出力データを画像出力装置１１０に送信する。
【０１０６】
このように、用紙節約機能をユーザの操作によって切り替えることにより、指定の画像出力装置ＡまたはＢに対して、所望の用紙節約機能を適用するよう出力データを送信することができる。
【０１０７】
＜第４の実施形態＞
第１〜第３の実施形態では、白データのみのラインデータをマージンまたはオフセットに追加することで、適用すべき用紙節約機能ＡまたはＢを実現するよう出力指示を送信した。本実施形態では、オブジェクトデータがないラインをマージンまたはオフセットに追加するか否かを判定する情報処理装置の処理について説明する。なお、第１〜第３の実施形態と同様の構成または処理については同一の参照符号を用い、説明を省略する。
【０１０８】
図２６に、本実施形態に係る出力データの出力可能領域を抜き出した部分図を示す。ライン２６００は、出力可能領域の上端から上端のオブジェクトデータまでの幅である。ライン２６０１は、上端のオブジェクトデータの幅であり、ライン２６０２は、オブジェクトデータ間に位置する、オブジェクトデータが存在しないラインの幅である。ライン５０１より下は、図５と同様のため説明を省略する。
【０１０９】
このような出力データに対して、用紙節約機能Ａを実行すると、ライン２６００のみを削除する。一方、用紙節約機能Ｂを実行すると、ライン２６００、２６０１、２６０２、および５０１を削除する。そのため、用紙節約機能Ａを実行する画像出力装置Ａに対して、用紙節約機能Ｂを実行した場合に得られる出力結果と同様の出力を得るために、情報処理装置１００は図１５のＳ１５０４において、図２７に示す上マージン追加処理を行う。
【０１１０】
Ｓ１６０２で、オブジェクトデータがないと判断した場合、ＣＰＵ１０１は処理をＳ２７０１に進め、上マージンにすでにラインを追加したか否かを判定する。
【０１１１】
上マージンに追加されたラインがあると判定した場合（Ｓ２７０１でＹｅｓ）、ＣＰＵ１０１は処理をＳ１６０５に進め、ラインを上マージンに追加する。上マージンに既に追加されたラインがないと判定した場合（Ｓ２７０１でＮｏ）、ＣＰＵ１０１は処理をＳ１６０３に進め、次のラインを取得する。
【０１１２】
例えばライン２６００について処理を行うと、オブジェクトデータがないためＣＰＵ１０１はＳ２７０１に処理を進める。ライン２６００はページの最上部に位置するため、ライン２６００についてＳ２７０１の判定を行う際にはまだ上マージンにラインが追加されていない。そのため、ＣＰＵ１０１は処理をＳ１６０３に進める。その後、白データのみを含むライン２６０１はＳ１６０２でＹｅｓ、Ｓ１６０４でＹｅｓと判定され、Ｓ１６０５で上マージンに追加される。続いて、ライン２６０２について処理を行うと、オブジェクトデータがないためＣＰＵ１０１はＳ２７０１に処理を進める。Ｓ２７０１では、既にライン２６０１が上マージンに追加されているため、追加があるとして処理をＳ１６０５に進め、オブジェクトデータを含まないライン２６０２についても上マージンに追加する。
【０１１３】
これによって、用紙節約機能Ａを実行する画像出力装置であっても、ライン２６０１、２６０２を上マージンに含めた出力データを送信することができ、用紙節約機能Ｂを実行した場合と同様の出力結果を得ることができる。
【０１１４】
＜その他の実施形態＞
本実施形態では、用紙節約設定を決定した後に、出力設定を生成するものとして説明を行ったが、用紙節約設定以外の出力設定によって用紙節約設定が決定または変更されてもよい。例えば、出力設定で特殊インクを使用することが指定されている場合には、用紙節約機能を無効としてもよい。これによって、オブジェクトが含まれないラインや、白データに所定の特殊インクを使用して印刷するよう設定されている場合などに、用紙節約機能によって所望の出力結果が得られない状況が発生することを防ぐことができる。
【０１１５】
また、本実施形態では、画像出力装置１１０は、用紙節約機能Ａおよび用紙節約機能Ｂのいずれかを実行するものとして説明を行ったが、一例では用紙節約機能ＡおよびＢの両方を実行する画像出力装置１１０があってもよい。そのような場合、情報処理装置１００は、適用すべき用紙節約機能を指定する出力指示を行えばよい。
【０１１６】
また、用紙節約機能は２つ以上であればよい。そのような場合、情報処理装置１００が画像出力装置１１０から取得する用紙節約機能情報には、画像出力装置１１０が実行可能な２つ以上の用紙節約機能に関する情報が含まれてもよい。情報処理装置１００は、取得した用紙節約機能情報に基づいて、用紙節約設定を実行可能であるか否かを判定してよい。画像出力装置１１０が用紙節約設定を実行可能ではないが複数の用紙節約機能を実行できる場合には、ユーザ指定、画像出力装置１１０のデフォルト設定、または過去の出力履歴などの任意の情報に基づいて、画像出力装置１１０に実行させる用紙節約機能を決定してもよい。
【０１１７】
また、本実施形態では、記録媒体としてロール紙を例にとって説明を行ったが、プラスチックなどのロール状の記録媒体にも適用されうる。また、一例では、ガラス、金属、木材など、任意の材料で生成された記録媒体にも適用されてもよい。
【０１１８】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１１９】
１００：情報処理装置、１０１：ＣＰＵ、１０２：ＲＡＭ、１０３：ＲＯＭ、１０４：ＨＤＤ、１０５：ディスプレイＩ／Ｆ、１０６：ネットワークＩ／Ｆ、１０７：バス、１０８：ディスプレイ、１１０Ａ：画像処理装置Ａ、１１０Ｂ：画像処理装置Ｂ、１２０：ＬＡＮ、２０１：用紙外形、２０２：出力可能範囲、２０３：図形、２０４：図形
【図１】
2020173553.tif 000003
【図２】
2020173553.tif 000004
【図３】
2020173553.tif 000005
【図４】
2020173553.tif 000006
【図５】
2020173553.tif 000007
【図６】
2020173553.tif 000008
【図７】
2020173553.tif 000009
【図８】
2020173553.tif 000010
【図９】
2020173553.tif 000011
【図１０】
2020173553.tif 000012
【図１１】
2020173553.tif 000013
【図１２】
2020173553.tif 000014
【図１３】
2020173553.tif 000015
【図１４】
2020173553.tif 000016
【図１５】
2020173553.tif 000017
【図１６】
2020173553.tif 000018
【図１７】
2020173553.tif 000019
【図１８】
2020173553.tif 000020
【図１９】
2020173553.tif 000021
【図２０】
2020173553.tif 000022
【図２１】
2020173553.tif 000023
【図２２】
2020173553.tif 000024
【図２３】
2020173553.tif 000025
【図２４】
2020173553.tif 000026
【図２５】
2020173553.tif 000027
【図２６】
2020173553.tif 000028
【図２７】
2020173553.tif 000029