(57)【要約】【課題】画像処理装置において、画像の視認性の確保および記録媒体の無駄な使用の防止の双方を実現するための技術を提案すること。【解決手段】印刷データ１２１０は、印刷データ１０００が、非印字領域が削減され、また、オブジェクトが縮小されるように更新された、印刷データの一例である。印刷データ１２１０が4in1で印刷されるようにラスターデータが生成されると、当該ラスターデータでは、符号１２１４として示された部分が１枚目の用紙における余白を構成する。したがって、印刷データ１２１０が再度更新される。印刷データ１２２０は、印刷データ１２１０が、オブジェクトを拡大されるように更新された後の印刷データの一例である。【選択図】図１２
2020175593.tif 000002
【特許請求の範囲】
【請求項１】
印刷データを展開することによってラスターデータを生成する展開手段と、
前記ラスターデータの最終頁に余白が発生するか否かを判定する判定手段と、
前記余白が発生する場合に、ラスターデータにおいて印字領域が含まれる範囲が縮小または拡大されるように、前記印刷データを更新する更新手段と、
更新された印刷データに従った印刷処理の開始を決定する決定手段とを備える、画像処理装置。
【請求項２】
前記決定手段は、前記判定手段がラスターデータの最終頁に余白が発生しないと判定したこと、所与の回数前記更新手段が印刷データを更新したこと、および、前記更新手段による印刷データの更新の前後でラスターデータに相違がなかったこと、の少なくとも１つを条件として、更新された印刷データに従った印刷処理の開始を決定する、請求項１に記載の画像処理装置。
【請求項３】
前記展開手段によって生成されたラスターデータから１以上のオブジェクトを検出する検出手段をさらに備え、
前記更新手段は、前記検出手段によって検出されたオブジェクトごとに、前記縮小または前記拡大のための印刷データの更新を実施する、請求項１または請求項２に記載の画像処理装置。
【請求項４】
前記更新手段は、前記印刷データの一度の更新において１のオブジェクトについて、前記縮小または前記拡大のための印刷データの更新を実施する、請求項３に記載の画像処理装置。
【請求項５】
前記更新手段は、前記印刷データの一度の更新において２以上のオブジェクトについて、前記縮小または前記拡大のための印刷データの更新を実施する、請求項３に記載の画像処理装置。
【請求項６】
前記検出手段は、オブジェクトごとに視認性の良さのレベルを設定し、
前記更新手段は、各オブジェクトの視認性の良さのレベルに従って、オブジェクトごとに、前記縮小または前記拡大のための印刷データの更新を実施するか否かを決定する、請求項３〜請求項５のいずれか１項に記載の画像処理装置。
【請求項７】
前記検出手段は、オブジェクトの、サイズおよび印字部分と非印字部分との割合の少なくとも一方に従って、オブジェクトの視認性の良さのレベルを設定する、請求項６に記載の画像処理装置。
【請求項８】
前記更新手段は、前記印刷データの印刷についての設定が用紙節約を優先するものであるのか視認性を優先するものであるのかによって、前記縮小のための印刷データの更新と前記拡大のための印刷データの更新とのいずれを先に実施するかを決定する、請求項１〜請求項７のいずれか１項に記載の画像処理装置。
【請求項９】
前記更新手段は、
前記設定が用紙節約を優先するものである場合、前記縮小のための印刷データの更新を実施した後、前記拡大のための印刷データの更新を実施し、
前記設定が視認性を優先するものである場合、前記拡大のための印刷データの更新を実施した後、前記縮小のための印刷データの更新を実施する、
請求項８に記載の画像処理装置。
【請求項１０】
前記縮小のための印刷データの更新は、印刷データにおける、非印字領域の空白もしくは行間の削減、または、文字、画像もしくは図形の縮小を含み、
前記拡大のための印刷データの更新は、印刷データにおける、文字、画像、または図形の拡大を含む、請求項１〜請求項９のいずれか１項に記載の画像処理装置。
【請求項１１】
前記決定手段によって開始を決定された印刷処理を実行する印刷手段をさらに備える、請求項１〜請求項１０のいずれか１項に記載の画像処理装置。
【請求項１２】
印刷データを展開することによってラスターデータを生成するステップと、
前記ラスターデータの最終頁に余白が発生するか否かを判定するステップと、
前記余白が発生する場合に、ラスターデータにおいて印字領域が含まれる範囲が縮小または拡大されるように、前記印刷データを更新するステップと、
更新された印刷データに従った印刷処理の開始を決定するステップとを備える、画像処理方法。
【請求項１３】
１以上のプロセッサーによって実行されることにより、前記１以上のプロセッサーに請求項１２に記載の画像処理方法を実施させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、印刷データが印刷処理用に展開されたときに当該印刷データを印刷される記録媒体において余白が生じ得るときの処理に関する。
【背景技術】
【０００２】
従来のＭＦＰ（Multi-Functional  Peripheral）等の画像処理装置において、生じ得る余白に収まるように画像を縮小する等して、印刷データを印刷される記録媒体における余白を削減し、これにより、記録媒体の無駄な使用を防止するための技術が種々提案されてきた。
【０００３】
たとえば、特開２００９−８３２３３号公報（特許文献１）は、記録媒体の両面に画像を記録する画像記録装置において、記録媒体が無駄に消費されることを抑制するための技術を提案する。
【０００４】
特開２００５−２１９２９４号公報（特許文献２）は、印刷装置において、最終頁に余白が多い場合に、その最終頁の印刷を抑制することにより用紙の無駄を防止する技術を提案する。
【０００５】
特開２０１６−８７９３２号公報（特許文献３）は、印刷装置において、ユーザーによる余白節約モードや余白削減率の指定を必要とすることなく、印刷物の見栄えまたは利用目的を考慮した余白削減を実現する技術を提案する。
【０００６】
特開２０１４−２７３３５号公報（特許文献４）は、画像処理装置において、印刷対象の画像を、用紙を無駄に使用することなく、かつ、視認性の良いレイアウトで印刷するための技術を提案する。
【０００７】
特開２０００−３１８２３０号公報（特許文献５）は、印刷装置において、用紙中の印刷部分の比率を高めることにより、用紙資源を効率的に利用するための技術を提案する。
【０００８】
特開２０００−２５２９７号公報（特許文献６）は、ユーザーの労力を要することなく、かつ、画像を縮小することなく、記録用紙の使用量を低減するための技術を提案する。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００９−８３２３３号公報
【特許文献２】特開２００５−２１９２９４号公報
【特許文献３】特開２０１６−８７９３２号公報
【特許文献４】特開２０１４−２７３３５号公報
【特許文献５】特開２０００−３１８２３０号公報
【特許文献６】特開２０００−２５２９７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、印刷対象の画像などの印刷データに対して処理が施されても、2in1等の集約印刷が行なわれた場合に、結局、出力される記録媒体に大きな余白が生じる場合がある。たとえば、余白を調整して印刷データにおける頁数が３頁に抑えられたとしても、当該印刷データが2in1で出力された場合、１枚目の用紙には印刷データの１頁目と２頁目が印刷され、２枚目の用紙には印刷データの３頁目のみが印刷される。この場合、２枚目の用紙にはその半分の領域において余白が生じ、十分に余白を削減することができない。すなわち、従来の技術によっては、印刷データにおいて余白を削減しようとしても、結局のところ、画像の縮小によりその視認性を損ねるのみで、十分に記録媒体の無駄な使用を防止することができなかった。
【００１１】
本開示は、係る実情に鑑み考え出されたものであり、その目的は、画像処理装置において、画像の視認性の確保および記録媒体の無駄な使用の防止の双方を実現するための技術を提案することである。
【課題を解決するための手段】
【００１２】
本開示のある局面に従うと、印刷データを展開することによってラスターデータを生成する展開手段と、ラスターデータの最終頁に余白が発生するか否かを判定する判定手段と、余白が発生する場合に、ラスターデータにおいて印字領域が含まれる範囲が縮小または拡大されるように、印刷データを更新する更新手段と、更新された印刷データに従った印刷処理の開始を決定する決定手段とを備える、画像処理装置が提供される。
【００１３】
決定手段は、判定手段がラスターデータの最終頁に余白が発生しないと判定したこと、所与の回数更新手段が印刷データを更新したこと、および、更新手段による印刷データの更新の前後でラスターデータに相違がなかったこと、の少なくとも１つを条件として、更新された印刷データに従った印刷処理の開始を決定してもよい。
【００１４】
画像処理装置は、展開手段によって生成されたラスターデータから１以上のオブジェクトを検出する検出手段をさらに備えていてもよい。更新手段は、検出手段によって検出されたオブジェクトごとに、縮小または拡大のための印刷データの更新を実施してもよい。
【００１５】
更新手段は、印刷データの一度の更新において１のオブジェクトについて、縮小または拡大のための印刷データの更新を実施してもよい。
【００１６】
更新手段は、印刷データの一度の更新において２以上のオブジェクトについて、縮小または拡大のための印刷データの更新を実施してもよい。
【００１７】
検出手段は、オブジェクトごとに視認性の良さのレベルを設定してもよい。更新手段は、各オブジェクトの視認性の良さのレベルに従って、オブジェクトごとに、縮小または拡大のための印刷データの更新を実施するか否かを決定してもよい。
【００１８】
検出手段は、オブジェクトの、サイズおよび印字部分と非印字部分との割合の少なくとも一方に従って、オブジェクトの視認性の良さのレベルを設定してもよい。
【００１９】
更新手段は、印刷データの印刷についての設定が用紙節約を優先するものであるのか視認性を優先するものであるのかによって、縮小のための印刷データの更新と拡大のための印刷データの更新とのいずれを先に実施するかを決定してもよい。
【００２０】
更新手段は、設定が用紙節約を優先するものである場合、縮小のための印刷データの更新を実施した後、拡大のための印刷データの更新を実施し、設定が視認性を優先するものである場合、拡大のための印刷データの更新を実施した後、縮小のための印刷データの更新を実施してもよい。
【００２１】
縮小のための印刷データの更新は、印刷データにおける、非印字領域の空白もしくは行間の削減、または、文字、画像もしくは図形の縮小を含んでいてもよい。拡大のための印刷データの更新は、印刷データにおける、文字、画像、または図形の拡大を含んでいてもよい。
【００２２】
画像処理装置は、決定手段によって開始を決定された印刷処理を実行する印刷手段をさらに備えていてもよい。
【００２３】
本開示の他の局面に従うと、印刷データを展開することによってラスターデータを生成するステップと、ラスターデータの最終頁に余白が発生するか否かを判定するステップと、余白が発生する場合に、ラスターデータにおいて印字領域が含まれる範囲が縮小または拡大されるように、印刷データを更新するステップと、更新された印刷データに従った印刷処理の開始を決定するステップとを備える、画像処理方法が提供される。
【００２４】
本開示のさらに他の局面に従うと、１以上のプロセッサーによって実行されることにより、１以上のプロセッサーに上記画像処理方法を実施させるプログラムが提供される。
【発明の効果】
【００２５】
本開示によれば、ラスターデータにおいて最終頁に余白の有無が判定されるため、より確実に、余白の有効利用のための判定が実施される。ラスターデータの最終頁に余白がある場合、ラスターデータにおける、印字領域を含む範囲が縮小または拡大されるように、印刷データが更新される。このため、必要に応じて、印刷に使用される用紙の無駄を省くことができ、また、印刷される画像の視認性の向上を図ることができる。
【図面の簡単な説明】
【００２６】
【図１】本開示に係る画像処理装置を含む画像処理システムの一例を示す図である。
【図２】画像処理装置１のハードウェア構成を示す図である。
【図３】画像処理装置１の機能構成を説明するための図である。
【図４】コンピューター２のハードウェア構成の一例を示す図である。
【図５】画像処理装置１が、印刷データを印刷する場合に、当該印刷データの調整の要否の判定を含む処理の一例のフローチャートである。
【図６】２種類のデータにおける余白が異なり得る場合の一例を示す図である。
【図７】ラスターデータにおいて検出されるオブジェクトに付与される情報を説明するための図である。
【図８】ラスターデータにおいて検出されたオブジェクトの具体例を示す図である。
【図９】図５のステップＳ２０（原稿調整処理）のサブルーチンのフローチャートである。
【図１０】図５のステップＳ２０（原稿調整処理）のサブルーチンのフローチャートである。
【図１１】更新前の印刷データに従ったラスターデータを示す図である。
【図１２】更新による印刷データの変化の一例を示す図である。
【図１３】印刷データ１２２０が4in1で印刷されるために生成されたラスターデータの一例を示す図である。
【図１４】更新による印刷データの変化の他の例を示す図である。
【図１５】印刷データ１４２０が4in1で印刷されるために生成されたラスターデータの一例を示す図である。
【図１６】印刷データの更新による、ラスターデータにおいて印字領域が含まれる範囲の変化を説明するための図である。
【図１７】コンピューター２が印刷データを更新する画像処理システムにおいて実施される処理の一例のフローチャートである。
【図１８】図１７のステップＳＢ１１０（文書の更新を指示）のサブルーチンのフローチャートである。
【図１９】図１７のステップＳＢ１１０（文書の更新を指示）のサブルーチンのフローチャートである。
【発明を実施するための形態】
【００２７】
以下に、図面を参照しつつ、画像処理装置の一実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらの説明は繰り返さない。
【００２８】
［用語の定義］
本明細書では、各用語を以下のように定義する。
【００２９】
印刷データ：印刷されるファイル（ＰＤＦファイル等）
印刷データの展開：印刷されるファイルのラスターデータの生成
印字領域：ラスターデータにおいて印字情報を含む領域
印字情報：背景に対して異なる色で印刷される情報
非印字領域：ラスターデータにおいて印字情報を含まない領域
行間：非印字領域の中の文字オブジェクト内の領域
空白：非印字領域の中の文字オブジェクトとは独立した領域
余白：非印字領域のうち、印刷される用紙の後端まで続く部分
［画像処理システム］
図１は、本開示に係る画像処理装置を含む画像処理システムの一例を示す図である。画像処理システムは、画像処理装置１と、画像処理装置１にＰＤＦ（Portable Document Format）ファイルなどのファイルの印刷を指示するコンピューター２とを含む。以下、画像処理装置１とコンピューター２のそれぞれの構成を説明する。
【００３０】
（画像処理装置１）
図２は、画像処理装置１のハードウェア構成を示す図である。図１および図２を参照して、画像処理装置１の構成を説明する。
【００３１】
画像処理装置１の一例は、ＭＦＰ、すなわち、コピー、ネットワークプリンティング、スキャナー、ファクシミリ、およびドキュメントサーバーの中の複数の機能を集約した装置である。画像処理装置１は、操作パネル１１、スキャナー装置１３、プリンター装置１４、ステープル、パンチ等の処理を行うフィニッシャー装置１５、ネットワークインターフェイス（Ｉ／Ｆ）１６、ドキュメントフィーダー１７、給紙装置１８、ＣＰＵ（Central  Processing  Unit）２０、ＲＯＭ（Read  Only  Memory）２１、ＲＡＭ（Random  Access  Memory）２２、記憶装置２３、および、ＵＳＢ（Universal  Serial  Bus）インターフェース２３Ａを含む。
【００３２】
操作パネル１１は、操作装置１１ａとディスプレイ１１ｂとを含む。操作装置１１ａは、数字、文字、および記号などを入力するための複数のキー、投稿文を作成したいときに押下されるコメントキー、押下された各種のキーを認識するセンサ、および認識したキーを示す信号をＣＰＵ２０に送信する送信用回路を含む。
【００３３】
ディスプレイ１１ｂは、メッセージまたは指示を与えるための画面、ユーザーが設定内容および処理内容を入力するための画面、および、画像処理装置１で形成された画像および処理の結果を示す画面などを表示する。ディスプレイ１１ｂは、タッチパネルであってもよい。すなわち、ディスプレイ１１ｂと操作装置１１ａの少なくとも一部とが一体的に構成されていてもよい。ディスプレイ１１ｂはユーザーが指で触れたタッチパネル上の位置を検知し、検知結果を示す信号をＣＰＵ２０に送信する機能を備えている。
【００３４】
画像処理装置１は、ネットワークＩ／Ｆ１６を介して、外部機器（たとえば、パーソナルコンピューター）と通信可能である。外部機器には、画像処理装置１に対して指令を与えるためのドライバープログラムがインストールされていてもよい。これにより、ユーザーは、外部機器を使用して、画像処理装置１を遠隔的に操作できる。
【００３５】
スキャナー装置１３は、写真、文字、絵などの画像情報を原稿から光電的に読取って画像データを取得する。取得された画像データ（濃度データ）は、図示しない画像処理部においてデジタルデータに変換され、周知の各種画像処理を施された後、プリンター装置１４やネットワークＩ／Ｆ１６に送られ、画像の印刷やデータの送信に供されるか、または、後の利用のために記憶装置２３に格納される。
【００３６】
プリンター装置１４は、スキャナー装置１３により取得された画像データ、ネットワークＩ／Ｆ１６により外部機器から受信した画像データ、または記憶装置２３に格納されている画像を、用紙またはフィルムなどの記録シートに印刷する。一例では、プリンター装置１４は、電子写真方式で画像形成するために、感光体ドラムなどを含む。給紙装置１８は、画像処理装置１本体の下部に設けられており、印刷対象の画像に適した記録シートをプリンター装置１４に供給するために用いられている。
【００３７】
プリンター装置１４によって画像が印刷された記録シートつまり印刷物に対して、フィニッシャー装置１５は、モード設定に応じてステープル、パンチなどの処理を実施した後、印刷物をトレイ２４に排出する。
【００３８】
ネットワークＩ／Ｆ１６は、送信部および受信部を含み、パーソナルコンピューター（ＰＣ）などの外部機器とデータのやりとりを行うための装置である。ネットワークＩ／Ｆ１６の一実現例は、ＮＩＣ（Network  Interface  Card）、モデム、または、ＴＡ（Terminal  Adapter）である。
【００３９】
ＣＰＵ２０は、画像処理装置１の全体を統括的に制御し、通信機能、プリント機能、スキャン機能、ファイル送信機能、およびブラウザー機能等の基本機能を制御する。
【００４０】
ＲＯＭ２１は、ＣＰＵ２０の動作プログラム等を格納するメモリーである。
ＲＡＭ２２は、ＣＰＵ２０が動作プログラムに基づいて動作する際の作業領域を提供するメモリーであり、ＣＰＵ２０は、ＲＯＭ２１等から動作プログラムをロードするとともに種々のデータをロードして、作業を行う。
【００４１】
記憶装置２３は、例えばハードディスクドライブ（ＨＤＤ）などの不揮発性の記憶デバイスにより構成されており、各種のアプリケーション、スキャナー装置１３で読み取られた原稿の画像データ等を格納する。
【００４２】
ＵＳＢインターフェース２３Ａは、画像処理装置１に対して着脱可能なＵＳＢメモリー２３Ｘのインターフェースである。ＣＰＵ２０は、ＵＳＢインターフェース２３Ａを介して、ＵＳＢメモリー２３Ｘに格納された情報を読出す。ＣＰＵ２０は、また、ＵＳＢインターフェース２３Ａを介して、ＵＳＢメモリー２３Ｘに情報を書き込む。
【００４３】
（画像処理装置の機能構成）
図３は、画像処理装置１の機能構成を説明するための図である。画像処理装置１の機能の少なくとも一部が図３に示される。一実現例では、図３に示された機能は、ＣＰＵ２０が所与のプログラムを実行することによって実現される。たとえば、コンピューター２は、所与の形式のファイル（たとえば、ＰＤＦファイルまたはＴＩＦＦファイル）を直接プリンターに送信して印刷するためのアプリケーションをインストールされている。当該アプリケーションの一例は、PageScope（登録商標）Direct Printである。画像処理装置１のＣＰＵ２０は、受信したファイル（印刷データ）を、更新し、プリンター装置１４に更新後の印刷データを印刷させることができる。
【００４４】
図３に示された機能は、２以上のプロセッサーによって実現されても良い。
図３に示されるように、画像処理装置１は、ＲＩＰ（Raster Image Processing）部３１０と、更新判定部３２０と、オブジェクト処理部３３０と、データ更新部３４０とを含む。ＲＩＰ部３１０は、印刷データのラスターデータを生成する。
【００４５】
更新判定部３２０は、印刷データの更新の要否を判定する。オブジェクト処理部３３０は、ラスターデータから１以上のオブジェクトを検出し、また、オブジェクトの属性を生成する。
【００４６】
データ更新部３４０は、印刷データを更新する。データ更新部３４０は、ラスターデータ内の空白を削減する空白削減部３４１、オブジェクトを縮小する縮小処理部３４２、および、オブジェクトを拡大する拡大処理部３４３を含む。
【００４７】
ラスターデータ内の画像において生成される余白の状態など、所与の条件が満たされると、ＲＩＰ部３１０によって生成されたラスターデータはプリンター装置１４に送られる。プリンター装置１４は、ラスターデータに従って、用紙に画像を形成する。
【００４８】
（情報処理装置）
図４は、コンピューター２のハードウェア構成の一例を示す図である。図１および図４を参照して、コンピューター２の構成を説明する。
【００４９】
コンピューター２は、ＣＰＵ２０１と、ＲＡＭ２０２と、記憶装置２０３と、ディスプレイ２０４と、入力装置２０５と、ネットワークＩ／Ｆ２０６とを含む。
【００５０】
ＣＰＵ２０１は、所与のプログラムを実行することによってコンピューター２を制御する。ＲＡＭ２０２は、ＣＰＵ２０１に作業領域を提供する。記憶装置２０３は、アプリケーションプログラムを含む、情報を記憶する。
【００５１】
ディスプレイ２０４は、たとえば有機ＥＬ（organic electro-luminescence）ディスプレイによって実現され、ＣＰＵ２０１からの指示に従って情報を表示する。入力装置２０５は、たとえばキーボードおよび／またはマウスによって実現され、ＣＰＵ２０１へ入力される情報を受け付ける。ネットワークＩ／Ｆ２０６は、たとえばネットワークカードによって実現され、コンピューター２を画像処理装置１を含む他の機器と通信させる。
【００５２】
［原稿の調整要否の判定］
図５は、画像処理装置１が、印刷データを印刷する場合に、当該印刷データの調整の要否の判定を含む処理の一例のフローチャートである。一実現例では、図５の処理は、画像処理装置１に印刷指示が入力されたことによって開始され、ＣＰＵ２０が所与のプログラムを実行することによって実現される。印刷指示は、コンピューター２を含む外部機器から入力されても良いし、操作パネル１１を操作されることによって入力されても良い。
【００５３】
ステップＳ１０にて、ＣＰＵ２０は、印刷データのラスターデータを生成する。
ステップＳ１２にて、ＣＰＵ２０は、後述するステップＳ２０における原稿調整処理の実行回数が所与の閾値Ｔｈ１以上であるか否かを判断する。ＣＰＵ２０は、原稿調整処理の実行回数がＴｈ１以上であると判断するとステップＳ１８へ制御を進め（ステップＳ１２にてＹＥＳ）、当該回数がまだＴｈ１に到達していないと判断するとステップＳ１４へ制御を進める（ステップＳ１２にてＮＯ）。
【００５４】
ステップＳ１４にて、ＣＰＵ２０は、最新の２回のステップＳ１０のそれぞれで生成されたラスターデータの間に相違があるか否かを判断する。ＣＰＵ２０は、相違があると判断するとステップＳ１６へ制御を進め（ステップＳ１４にてＹＥＳ）、相違が無いと判断するとステップＳ１８へ制御を進める（ステップＳ１４にてＮＯ）。
【００５５】
たとえば、２回目のステップＳ１４では、１回目のステップＳ１０で生成されたラスターデータと、２回目のステップＳ１０で生成されたラスターデータとの間の、相違の有無が判断される。なお、以降特記される場合を除き、「ラスターデータ」とは最新のラスターデータを意味する。ステップＳ１０におけるラスターデータの生成回数が２回未満である場合には、ステップＳ１４からステップＳ１６へ制御が進められる。
【００５６】
ステップＳ１４における「相違」は、「所与の基準以上の相違」であってもよい。一実現例では、ステップＳ１４において、ＣＰＵ２０は、「用紙の天地方向において連続する非印字領域が所与の量以上増えた」場合に、２つのラスターデータの間で相違があっったと判断し、そうではない場合に、２つのラスターデータの間で相違がないと判断してもよい。
【００５７】
なお、本実施の形態では、用紙の天地方向が、当該画像を形成される用紙の搬送方向と同じで方向とされている。このため、「用紙の天地方向」が「用紙の搬送方向」と同義で使用される場合がある。なお、用紙の天地方向が用紙の搬送方向と異なる場合がある。この場合、余白は、用紙の天地方向における後端まで連続する空白ではあるが、用紙の搬送方向における後端まで連続する空白では無い。
【００５８】
ステップＳ１６にて、ＣＰＵ２０は、ラスターデータの最終頁に余白が無いか否かを判断する。ＣＰＵ２０は、ラスターデータの最終頁に余白が無いと判断するとステップＳ１８へ制御を進め（ステップＳ１６にてＹＥＳ）、最終頁に余白が有ると判断するとステップＳ２０へ制御を進める（ステップＳ１６にてＮＯ）。ステップＳ１６において、ＣＰＵ２０は、用紙の天地方向に沿って所与の長さ以上連続する余白（用紙の最終頁の終端まで連続する非印字領域）が存在する場合に「余白がある」と判断し、そうではない場合に「余白は無い」と判断しても良い。
【００５９】
「ラスターデータの最終頁の余白」は、印刷データの最終頁の余白と等しい場合もあれば、異なる場合もある。たとえば、１頁の印刷データについて、当該印刷データが片面印刷される場合には、印刷データの最終頁の余白とラスターデータの最終頁の余白とは等しい。
【００６０】
上記の２種類の余白が異なり得る場合の一例は、印刷データが両面印刷される場合である。たとえば、１頁の印刷データが両面印刷される場合、ラスターデータの最終頁は１枚目の用紙の裏面を意味し、ラスターデータの最終頁の余白は１枚目の用紙の裏面全体に相当する部分を意味する。一方、印刷データの最終頁の余白は、ラスターデータの１枚目の用紙の表面の余白に相当する部分を意味する。したがって、印刷データの最終頁の余白とラスターデータの最終頁の余白とは相違する。
【００６１】
上記の２種類のデータにおける余白が異なり得る場合の他の例は、印刷データが集約印刷される場合である。図６は、２種類のデータにおける余白が異なり得る場合の一例を示す図である。たとえば、図６の（Ａ）に示されるように、印刷データ６００が３頁の画像６０１，６０２，６０３を含む場合を想定する。画像６０１，６０２，６０３のそれぞれは、印刷データの１頁目，２頁目，３頁目のそれぞれの画像を表す。画像６０３における斜線部分は、画像６０３における余白を表す。
【００６２】
図６の（Ｂ）には、画像６０１，６０２，６０３が4in1に従って１枚の用紙に印刷される場合のレイアウトの一例が示される。矢印ＳＦは用紙の天地方向（たとえば、用紙が送られる方向）を表す。なお、4in1では、元の印刷データが、矢印ＳＦ方向とこれに直交する方向とのそれぞれで５０％の寸法に縮小され、これにより、元の印刷データの２５％の面積で出力される。
【００６３】
図６の（Ｂ）の例では、用紙６１０は、４つの領域６１１，６１２，６１３，６１４に分割される。領域６１２は、領域６１１に対して、矢印ＳＦが示す方向に交わる方向に配置される。領域６１３は、領域６１１に対して、矢印ＳＦが示す方向に沿う方向に配置される。
【００６４】
領域６１１，６１２，６１３のそれぞれには、画像６０１，６０２，６０３のそれぞれが印刷される。領域６１４は、印刷データの４頁目の画像が印刷される領域であり、印刷データ６００は４頁目の画像を含まないので、領域６１４には画像は印刷されない。図６の（Ｂ）の場合、用紙６１０における余白は、斜線で示される部分、すなわち、領域６１３において画像６０３の余白に相当する部分および領域６１４全体である。
【００６５】
図６の（Ｃ）には、画像６０１，６０２，６０３が4in1に従って１枚の用紙に印刷される場合のレイアウトの他の例が示される。矢印ＳＦは用紙が送られる方向を表す。図６の（Ｃ）の例では、用紙６２０は、４つの領域６２１，６２２，６２３，６２４に分割される。領域６２２は、領域６２１に対して、矢印ＳＦが示す方向に沿う方向に配置される。領域６２３は、領域６２１に対して、矢印ＳＦが示す方向に交わる方向に配置される。
【００６６】
領域６２１，６２２，６２３のそれぞれには、画像６０１，６０２，６０３のそれぞれが印刷される。領域６２４は、印刷データの４頁目の画像が印刷される領域であり、印刷データ６００は４頁目の画像を含まないので、領域６２４には画像は印刷されない。図６の（Ｃ）の場合、用紙６２０における余白は、斜線で示される部分、すなわち、領域６２３において画像６０３の余白に相当する部分および領域６２４全体である。
【００６７】
図５に戻って、ステップＳ１８にて、ＣＰＵ２０は、ラスターデータを印刷することを決定して、図５の処理を終了させる。一実現例では、ステップＳ１８にて、ＣＰＵ２０は、ラスターデータを印刷キューに登録する。これにより、当該ラスターデータの画像は、プリンター装置１４によって用紙に印刷される。
【００６８】
ステップＳ２０にて、ＣＰＵ２０は、印刷データを調整するための処理（原稿調整処理）を実行する。原稿調整処理の内容は、図９および図１０を参照して後述する。その後、制御はステップＳ１０へ戻される。
【００６９】
以上図５を参照して説明された処理では、ステップＳ１２、ステップＳ１４、およびステップＳ１６における判断の結果に従って、原稿調整処理が実施されるか否かが判断される。特に、ステップＳ１６では、印刷データのラスターデータの最終頁に余白が生じるか否かが判断される。すなわち、印刷データではなくラスターデータに対して判断がなされることにより、用紙における実際の余白の有無に従って原稿調整処理が実施され得る。
【００７０】
図５の処理では、ステップＳ２０の後、制御はステップＳ１０へ戻される。これにより、原稿調整処理における調整後の印刷データについて、再びラスターデータが生成され、ステップＳ１２、ステップＳ１４、およびステップＳ１６における判断が再度実施される。これにより、ステップＳ２０の後で再び生成されたラスターデータにおいて余白が発生しないと判断されると（ステップＳ１６にてＮＯ）、当該ラスターデータに従った印刷処理の実行が決定される（ステップＳ１８）。
【００７１】
なお、図５の例では、ステップＳ１２、ステップＳ１４、およびステップＳ１６のすべての判断の結果がＹＥＳである場合にステップＳ１８が実行されるが、これらの少なくとも１つの判断の結果がＹＥＳであることを条件としてステップＳ１８が実行されてもよい。
【００７２】
［ラスターデータにおけるオブジェクト］
本開示では、ラスターデータにおいて所与の基準に従った余白が発生すると原稿調整処理において印刷データが調整される。印刷データの調整は、たとえば、印刷データから１以上のオブジェクトを検出し、オブジェクトごとに実施されてもよい。
【００７３】
図７は、ラスターデータにおいて検出されるオブジェクトに付与される情報を説明するための図である。図７には、各オブジェクトに付与される属性および属性値の具体例が示される。図７に示されるように、本開示では、各オブジェクトに第１属性と第２属性とが割り当てられる。第１属性は、「非印字領域」と「印字領域」とを含む。第１属性が「非印字領域」である場合の第２属性は、「行間」と「空白」とを含む。第１属性が「印字領域」である場合の第２属性は、「文字」と「表」と「図形」と「イメージ」とを含む。以下、各属性の定義の一例を説明する。
【００７４】
「非印字領域」は、印字部分を含まないオブジェクトを意味する。「印字領域」は、印字部分を含むオブジェクトを意味する。
【００７５】
「印字領域」のうち、「文字」は文字を含むオブジェクトを、「表」は表を含むオブジェクトを、「図形」はアプリケーションによって描画された画像オブジェクトを、「イメージ」は撮像装置によって生成された画像オブジェクトを、それぞれ意味する。
【００７６】
「非印字領域」のうち、「行間」は「文字」オブジェクト内の行間を含むオブジェクトを、「空白」は「文字」オブジェクトなどの他の種類のオブジェクトに対して独立したオブジェクトを、それぞれ意味する。
【００７７】
ＣＰＵ２０は、たとえば、ステップＳ１０において生成されたラスターデータにおいて、オブジェクトを検出する。一実現例では、ＣＰＵ２０は、第２属性「行間」，「空白」，「文字」，「表」，「図形」，「イメージ」のそれぞれに対して予め定められたパターン情報を利用して、ラスターデータから第２属性「行間」，「空白」，「文字」，「表」，「図形」，「イメージ」のそれぞれに分類されるオブジェクトを検出する。
【００７８】
図７には、７種類の属性値「位置」「高さ」「サイズ」「視認性」「フォントサイズ」「修飾」および「調整範囲」が示される。「位置」は、用紙におけるオブジェクトの印刷位置を表す。印刷位置の記述には、たとえば、オブジェクトが外接する長方形が利用される。長方形の一辺は用紙の搬送方向（用紙の天地方向）に沿い、他辺は用紙の搬送方向に直交する方向に沿う。印刷位置は、当該長方形の４つの角の中の予め定められた１つの角（たとえば、搬送方向において最も用紙の先端から遠く、かつ、搬送方向に直交する方向の一方側に位置する角）の座標として表される。
【００７９】
「高さ」は、用紙においてオブジェクトが占める領域の搬送方向における長さを表す。「サイズ」は、オブジェクトが占める領域の天地方向および天地方向に直交する方向のそれぞれの寸法を表す。「サイズ」は、オブジェクトが外接する長方形の隣接する２辺のそれぞれの長さによって表されても良い。
【００８０】
「視認性」は、所与の基準においてオブジェクトごとに設定されるオブジェクトの見易さ（たとえば、オブジェクトの内容を見て理解することの容易さ）のレベルを表す。
【００８１】
「フォントサイズ」は、オブジェクトに含まれる文字のフォントサイズを表す。「修飾」は、オブジェクトにおいて文字に対する修飾（下線など）を含むか否かを表す。「調整範囲」は、オブジェクトに対して調整が許容される事項を表す。一実現例では、オブジェクトが文字を含まない場合には、当該オブジェクトが印刷されるサイズだけでなく当該オブジェクトが印刷される方向も調整可能であるが、オブジェクトが文字を含む場合には、当該オブジェクトが印刷されるサイズは調整可能であるが、オブジェクトが印刷される方向は調整可能ではない。
【００８２】
図７の「○」と「×」は、オブジェクトごとに割り振られた第１属性と第２属性との組み合わせに従って、当該７種類の属性値の中のどの属性値が設定されるかを表す。「○」は、設定される属性値を表し、「×」は、設定されない属性値を表す。たとえば、図７では、第１属性が「非印字領域」であり第２属性が「行間」である場合、属性値「位置」，「高さ」に対して「○」が示され、属性値「サイズ」，「視認性」，「フォントサイズ」，「修飾」，「調整範囲」に対して「×」が示されている。このことは、第１属性が「非印字領域」であり第２属性が「行間」であるオブジェクトには、属性値「位置」，「高さ」の値が設定され、属性値「サイズ」，「視認性」，「フォントサイズ」，「修飾」，「調整範囲」の値が設定されないことを意味する。なお、第１属性が「非印字領域」のオブジェクトに対して属性値「サイズ」の値は設定されないが、第１属性が「非印字領域」のオブジェクトのサイズの設定は可能であってもよい。
【００８３】
ＣＰＵ２０は、検出されたオブジェクトのそれぞれに、各オブジェクトの第２属性について設定されるべき属性値を設定する。一実現例では、ＣＰＵ２０は、ラスターデータを生成する際に、印刷データの各オブジェクトがラスターデータのどの位置に配置されるかを紐付ける情報を生成する。ＣＰＵ２０は、ラスターデータにおいて検出された各オブジェクトに関連付けられた印刷データ中のオブジェクトを特定する。そして、ＣＰＵ２０は、特定された印刷データ中のオブジェクトの情報（たとえば、ＰＤＦデータやＨＴＭＬ（HyperText Markup Language）データ内のタグ情報）から、ラスターデータ内のオブジェクトに設定する属性値を取得する。たとえば、印刷データにおいて、文字オブジェクトの情報は、文字のフォントサイズを含む。ＣＰＵ２０は、ラスターデータにおいて検出された文字オブジェクトのフォントサイズの値を、印刷データに含まれるフォントサイズに基づいて設定する。
【００８４】
一例では、ラスターデータにおいて検出された文字オブジェクトが、印刷データにおいてフォントサイズが「１２ポイント」である文字オブジェクトに対応する場合を想定する。ラスターデータが印刷データを等倍で出力するために生成された場合には、ＣＰＵ２０は、ラスターデータにおいて検出された文字オブジェクトのフォントサイズの値として「１２ポイント」を設定する。ラスターデータが印刷データを4in1で出力するために生成された場合には、ＣＰＵ２０は、ラスターデータにおいて検出された文字オブジェクトのフォントサイズの値として「６ポイント」を設定する。
【００８５】
他の例では、ラスターデータにおいて検出された行間オブジェクトが、印刷データにおいて行間「１０ポイント」の文字オブジェクトに対応する場合を想定する。ラスターデータが印刷データを等倍で出力するために生成された場合には、ＣＰＵ２０は、ラスターデータにおいて検出された行間オブジェクトの高さの値として「１０ポイント」を設定する。ラスターデータが印刷データを4in1で出力するために生成された場合には、ＣＰＵ２０は、ラスターデータにおいて検出された文字オブジェクトの高さの値として「５ポイント」を設定する。
【００８６】
［印刷データにおいて検出されるオブジェクトの具体例］
図８は、ラスターデータにおいて検出されたオブジェクトの具体例を示す図である。図８の例では、ラスターデータは１頁分の画像を含む。図８の画像９００は、ラスターデータが対応する１頁分の画像の具体例を表す。
【００８７】
画像９００は、印刷されるオブジェクトとともに、実線の枠と破線の枠とが示される。実線の枠は、印字領域に属するオブジェクトを表す。破線の枠は、非印字領域に属するオブジェクトを表す。以下に、画像９００において検出されたオブジェクトの中の一部について、第２属性の割り当ての具体例を説明する。
【００８８】
オブジェクト９０１，９０３，９１２は、空白オブジェクトである。オブジェクト９０２，９０４，９０８，９０９は文字オブジェクトである。オブジェクト９０７は、イメージオブジェクトである。オブジェクト９１０，９１１は行間オブジェクトである。
【００８９】
ＣＰＵ２０は、各オブジェクトに対して第１属性および第２属性を付与する。ＣＰＵ２０は、さらに、各オブジェクトに対して、各オブジェクトが印刷データにおいて対応するオブジェクトの情報に基づいて属性値を設定する。設定される属性値の種類は、第２属性に従って特定される。
【００９０】
以下に、一部のオブジェクトについて、各オブジェクトに設定される属性値の具体例を説明する。
【００９１】
情報９０２１は、オブジェクト９０２に対して設定された属性値を模式的に表す。より具体的には、情報９０２１は、オブジェクト９０２に付与された第１属性「印字領域」と、第２属性「（種類：）文字」とを含み、さらに、「視認性」について設定された属性値「よい」と、「調整範囲」について設定された属性値「サイズ、…」とを含む。
【００９２】
情報９０７１は、オブジェクト９０７に対して設定された属性値を模式的に表す。より具体的には、情報９０７１は、オブジェクト９０７に付与された第１属性「印字領域」と、第２属性「（種類：）画像」とを含み、さらに、「視認性」について設定された属性値「悪い」と、「調整範囲」について設定された属性値「サイズ、方向…」とを含む。
【００９３】
情報９０８１は、オブジェクト９０８に対して設定された属性値を模式的に表す。より具体的には、情報９０８１は、オブジェクト９０８に付与された第１属性「印字領域」と、第２属性「（種類：）文字」とを含み、さらに、「視認性」について設定された属性値「悪い」と、「調整範囲」について設定された属性値「サイズ、…」とを含む。
【００９４】
［視認性のレベルの設定］
各オブジェクトの属性値「視認性」の設定について説明する。本明細書では、属性値「視認性」の値を「視認性レベル」とも言う。
【００９５】
ＣＰＵ２０は、ラスターデータ内の各オブジェクトの視認性レベルを、各オブジェクトが対応する印刷データ内のオブジェクトの情報を用いて算出し、算出されたレベルを属性値「視認性」の値として設定する。
【００９６】
一例では、視認性レベルは、印刷データ内のオブジェクトのフォントサイズに基づいて算出される。より具体的には、印刷データ内のオブジェクトのフォントサイズが予め定められた閾値（たとえば、６ポイント）を超える場合には当該オブジェクトの視認性レベルは「よい」であり、当該閾値以下である場合には当該オブジェクトの視認性レベルは「悪い」である。視認性レベルは、「よい」と「悪い」以外に、３以上の段階で表現されてもよい。閾値は、第２属性ごとに設定されていてもよい。さらに、ラスターデータ内の各オブジェクトに設定される属性値は、オブジェクトの色を含んでいてもよく、上記閾値は、オブジェクトの色に従って設定されていてもよい。
【００９７】
他の例では、視認性レベルは、印刷データ内のオブジェクトのサイズに基づいて算出される。より具体的には、印刷データ内のオブジェクトのサイズ（縦および横の長さの双方）が予め定められた閾値を超える場合には当該オブジェクトの視認性レベルは「よい」であり、当該閾値以下である場合には当該オブジェクトの視認性レベルは「悪い」である。
【００９８】
他の例では、視認性レベルは、オブジェクトが外接する矩形における中間調画像のマトリクスデータについて、所定のアルゴリズムに従った計算の結果として取得された数値に基づいて設定されてもよい。利用されるアルゴリズムは、統計学に従って構築されたもの、人工知能を用いて構築されたもの、などを含む公知あらゆるものであってもよい。また、利用されるアルゴリズムは、所与の手法（たとえば、文献「"A Foreground/Background Separation Algorithm for Image Compression"，Patrice Y. Simardら、平成３１年２月１５日検索、［online］、インターネット、＜ＵＲＬ：https://www.microsoft.com/en-us/research/wp-content/uploads/2016/08/Simard_Malvar_SLIm_DCC2004.pdf＞」に記載されたもの）に従ってラスターデータ内のオブジェクトのフォアグラウンド領域の面積とバックグラウンド領域の面積との比（印字部分と非印字部分との割合）に基づいて設定されてもよい。
【００９９】
［原稿調整処理］
図９および図１０は、図５のステップＳ２０（原稿調整処理）のサブルーチンのフローチャートである。以下、原稿調整処理の内容を説明する。
【０１００】
ステップＳ２００にて、ＣＰＵ２０は、ステップＳ１０において生成されたラスターデータにおいてオブジェクトを検出し、検出されたオブジェクトのそれぞれに属性値を設定する。各オブジェクトに設定される属性値の種類は、各オブジェクトに対して付与された属性（第１属性および第２属性）に基づく。
【０１０１】
ステップＳ２０２にて、ＣＰＵ２０は、画像処理装置１における印刷設定が「用紙節約」および「視認性」のいずれを優先させるものであるかを判定する。印刷設定は、画像処理装置１に対して設定されていてもよいし、印刷ジョブごとに設定されてもよい。ＣＰＵ２０は、たとえば、ユーザーによる操作装置１１ａの操作に応じて印刷設定を取得してもよい。ＣＰＵ２０は、印刷設定が「用紙節約」を優先させる場合にはステップＳ２０４へ制御を進め、印刷設定が「視認性」を優先させる場合にはステップＳ２１６へ制御を進める。
【０１０２】
ステップＳ２０４にて、ＣＰＵ２０は、印刷データにおいて非印字領域の削減が可能であるか否かを判断する。一例では、ＣＰＵ２０は、ラスターデータにおいて用紙の天地方向に沿って予め定められた閾値以上の連続した非印字領域が存在しているか否かを判断し、そのような連続した非印字領域が存在している場合には非印字領域の削減が可能であり、存在していない場合には非印字領域の削減は可能ではないと判断する。ＣＰＵ２０は、非印字領域の削減が可能であると判断するとステップＳ２０６へ制御を進め（ステップＳ２０４にてＹＥＳ）、そうではないと判断するとステップＳ２０８へ制御を進める（ステップＳ２０４にてＮＯ）。
【０１０３】
ステップＳ２０６にて、ＣＰＵ２０は、非印字領域に対応する印刷データ内の領域が削減されるように印刷データを更新して、図５へ制御を戻す。なお、ステップＳ２０６にて、たとえば、ＣＰＵ２０は、印刷データを、ラスターデータ内の行間オブジェクトに対応する部分を削減するように更新してもよい。この場合、一例では、ＣＰＵ２０は、印刷データにおいて行間として設定されているポイント数を低減することによって、当該印刷データを更新する。他の例では、ＣＰＵ２０は、印刷データにおいて文字を含む２つの行の間に配置された空白の行数を低減するように、当該印刷データを更新する。
【０１０４】
ステップＳ２０８にて、ＣＰＵ２０は、オブジェクトの縮小が可能か否かを判断する。一例では、ＣＰＵ２０は、視認性レベルの値として「よい」を有するオブジェクトがラスターデータ内にあるか否かを判断し、そのようなオブジェクトがあると判断するとステップＳ２０８へ制御を進め（ステップＳ２０８にてＹＥＳ）、そのようなオブジェクトが無いと判断するとステップＳ２１２へ制御を進める（ステップＳ２０８にてＮＯ）。
【０１０５】
ステップＳ２１０にて、ＣＰＵ２０は、印刷データを、当該印刷データ内のオブジェクトを縮小するように更新し、その後、制御を図５へ戻す。この場合、一例では、ＣＰＵ２０は、印刷データ内のオブジェクトであって、ラスターデータ内の視認性レベルの値として「よい」を有するオブジェクトに対応するものを縮小する。たとえば、ラスターデータ内で視認性レベルの値「よい」を有する文字オブジェクトがある場合、ＣＰＵ２０は、当該文字オブジェクトに対応する印刷データ内のオブジェクトを縮小するように当該印刷データを更新する。
【０１０６】
ステップＳ２１０における縮小の一例は、フォントサイズの低減である。縮小の他の例は、画像オブジェクトのサイズの縮小である。ステップＳ２１０における縮小に関して、一回の縮小においてフォントなどのサイズを縮小する割合（８０％など）が予め設定されていてもよい。縮小の対象となるオブジェクトは、属性値「調整範囲」の値として「サイズ」または「フォントサイズ」を設定されているものに限定されてもよい。縮小される度合いは、オブジェクトの種類（文字、画像、など）ごとに設定されていてもよい。
【０１０７】
ステップＳ２１２にて、ＣＰＵ２０は、ラスターデータの視認性がオブジェクトの拡大により向上し得るか否かを判断する。たとえば、ラスターデータにおいて、属性値「視認性」の値として「悪い」を設定されているオブジェクトがある場合、ラスターデータの視認性はオブジェクトの拡大により向上し得ると判断される。ＣＰＵ２０は、ラスターデータの視認性がオブジェクトの拡大により向上し得ると判断するとステップＳ２１４へ制御を進め（ステップＳ２１２にてＹＥＳ）、そうでなければそのまま図５へ制御を戻す（ステップＳ２１２にてＮＯ）。
【０１０８】
ステップＳ２１４にて、ＣＰＵ２０は、印刷データを、属性値「視認性」の値として「悪い」を設定されているオブジェクトに対応する印刷データ内のオブジェクトを拡大するように更新する。拡大の一例は、文字オブジェクトにおける文字のポイント数の拡大である。他の例は、画像の拡大である。一回の拡大においてフォントなどのサイズを拡大する割合（１２０％など）が予め設定されていてもよい。拡大される度合いは、オブジェクトの種類（文字、画像、など）ごとに設定されていてもよい。
【０１０９】
以上、図９では、余白を削減するために、３つの手段（非印字領域の削減、オブジェクトの縮小、および、オブジェクトの拡大）が提示される。
【０１１０】
図１０には、ステップＳ２１６以降の制御が示される。図１０における「ステップＳ２１６，Ｓ２１８」「ステップＳ２２０，Ｓ２２２」および「ステップＳ２２４，Ｓ２２６」のそれぞれの制御は、図９における「ステップＳ２１２，Ｓ２１４」「ステップＳ２０４，Ｓ２０６」および「ステップＳ２０８，Ｓ２１０」のそれぞれの制御に相当する。すなわち、図１０のステップＳ２１６〜Ｓ２２６の制御の群には、ステップＳ２０４〜Ｓ２１４の制御の群に含まれる制御内容がそれらの順序を変更されて配置されている。特に、ステップＳ２１６の制御はステップＳ２１２の制御に対応するため、図９および図１０では、これらの制御に共通の符号（Ｃ）が付されている。同様に、ステップＳ２２０とステップＳ２０４には共通の符号（Ａ）が付され、ステップＳ２２４とステップＳ２０８には共通の符号（Ｂ）が付されている。
【０１１１】
より具体的には、ステップＳ２１６にてオブジェクトの拡大によりラスターデータの視認性が向上し得ると判断されると、ステップＳ２１８にて、印刷データが、ラスターデータ内のオブジェクトに対応するオブジェクトが拡大されるように更新される。ステップＳ２２０にて非印字領域の削減が可能であると判断されると、ステップＳ２２２にて、印刷データが、ラスターデータ内の非印字領域に対応する領域が削減されるように更新される。ステップＳ２２４にてオブジェクトの縮小が可能であると判断されると、ステップＳ２２６にて、印刷データが、ラスターデータ内の（縮小可能な）オブジェクトに対応するオブジェクトが縮小されるように更新される。
【０１１２】
以上より、図９および図１０に示された原稿調整処理では、印刷設定が「用紙節約」を優先させるものである場合（ステップＳ２０４〜Ｓ２１４）、非印字領域の削減（ステップＳ２０４，Ｓ２０６）およびオブジェクトの縮小（ステップＳ２０８，Ｓ２１０）が、オブジェクトの拡大（ステップＳ２１２，Ｓ２１４）より優先して実施される。一方、印刷設定が「視認性」を優先させるものである場合（ステップＳ２１６〜Ｓ２２６）、オブジェクトの拡大（ステップＳ２２２４，Ｓ２２６）が、非印字領域の削減（ステップＳ２２０，Ｓ２２２）およびオブジェクトの縮小（ステップＳ２２４，Ｓ２２６）より優先して実施される。
【０１１３】
図９および図１０に示された原稿調整処理は、図５のステップＳ１６において最終頁に余白が無いと判断されるまで繰り返し実施される。すなわち、本開示に従った画像処理装置１では、原稿調整処理は、ラスターデータの最終頁に余白が無いと判断されるという条件が成立するまで繰り返されてもよい。また、図５においてステップＳ１２の制御として説明されたように、原稿調整処理は、所与の回数実施されたという条件が成立するまで繰り返されてもよい。さらに、図５においてステップＳ１４の制御として説明されたように、更新の前後で印刷データまたは当該印刷データから生成されたラスターデータに変更がなかったという条件が成立するまで繰り返されても良い。上記３つの条件のうち複数の条件が成立するまで繰り返されても良い。
【０１１４】
［原稿調整処理の具体例］
図１１〜図１５を参照して、原稿調整処理による印刷データの更新の具体例を説明する。まず、図１１を参照して、更新前の印刷データに従った印刷について説明する。
【０１１５】
図１１は、更新前の印刷データに従ったラスターデータを示す図である。図１１の印刷データ１０００は、画像１００１〜１００５を含む。
【０１１６】
ラスターデータ１１００は、印刷データ１０００から生成されたラスターデータである。ラスターデータ１１００は、印刷データ１０００を4in1で印刷するためのデータであり、画像１１１０，１１２０を含む。画像１１１０は、１枚目の用紙に印刷される画像を表す。画像１１２０は、２枚目の用紙に印刷される画像を表す。ラスターデータの画像１１１０は、印刷データの画像１００１〜１００４を含む。ラスターデータの画像１１２０は、印刷データの画像１００５のみを含む。ラスターデータの画像１１２０は、最終頁に該当する。ラスターデータの画像１１２０には、左下および右半分に余白を含む。したがって、図５の処理において印刷データ１０００のラスターデータが生成された場合、（ステップＳ１２，Ｓ１４の判断の結果がＮＯであることを条件として）ステップＳ１６からステップＳ２０へと制御が進められ、調整処理が実施される。
【０１１７】
（印刷設定が「用紙節約」を優先するものである場合）
図１２および図１３を参照して、印刷設定が「用紙節約」を優先するものである場合の印刷データの更新の具体例を説明する。
【０１１８】
図１２は、更新による印刷データの変化の一例を示す図である。図１２には、印刷データ１０００に加え、印刷データ１２１０，１２２０が示される。
【０１１９】
印刷データ１２１０は、印刷データ１０００が、非印字領域が削減され、また、オブジェクトが縮小されるように更新された、印刷データの一例である。印刷データ１２１０は、画像１２１１〜１２１３を含む。画像１２１１〜１２１３のそれぞれは等倍で１頁分の画像を構成する。符号１２１４は、印刷データ１２１０が4in1で印刷される際の４頁目（ラスターデータでは、１枚目の用紙の左下に位置する部分）を仮想的に表す。
【０１２０】
印刷データ１２１０では、たとえば、印刷データ１０００の非印字領域が削減（行間が縮小）されることにより、画像１２１１における行間が画像１００１における行間より狭い。また、印刷データ１０００のオブジェクトが縮小されたことにより、画像１２１２における文字列「Ｌｘｘｘｘ」，「Ｍｘｘｘｘ」のそれぞれが、画像１００３，１００４で示されていたよりも小さいフォントサイズで示されている。
【０１２１】
図１２の例では、印刷データ１２１０が4in1で印刷されるようにラスターデータが生成されると、当該ラスターデータでは、符号１２１４として示された部分が１枚目の用紙における余白を構成する。したがって、印刷データ１２１０が再度更新される。
【０１２２】
印刷データ１２２０は、印刷データ１２１０が、オブジェクトを拡大されるように更新された後の印刷データの一例である。印刷データ１２２０は、画像１２２１〜１２２４を含む。画像１２２１〜１２２４のそれぞれは等倍で１頁分の画像を構成する。画像１２２１〜１２２４では、画像１２１１〜１２１３に表示されていた文字が拡大されている。
【０１２３】
印刷データ１２１０が３頁分の画像しか含まなかったのに対し、印刷データ１２２０は４頁分の画像１２２１〜１２２４を含む。したがって、画像１２２１〜１２２４が4in1で印刷されるように印刷データ１２２０のラスターデータが生成されると、当該ラスターデータは余白を含まない（または、印刷データ１２１０のラスターデータにおいて生じていたものよりは生じるは余白は小さい）。画像処理装置１は、印刷データ１０００を印刷データ１２１０へと更新し、さらに、印刷データ１２２０へと更新した後、印刷データ１２２０の印刷処理の開始を決定する。
【０１２４】
図１３は、印刷データ１２２０が4in1で印刷されるために生成されたラスターデータの一例を示す図である。図１３のラスターデータ１３００は、１頁分の画像１３１０を含む。印刷データ１２２０を構成する４頁分の画像１２２１〜１２２４が用紙の１頁に集約されて印刷されていることを表す。
【０１２５】
以上説明されたように、画像処理装置１は、単にオブジェクトを縮小することによって用紙を節約することのみを想定する従来の装置とは異なり、オブジェクトを縮小することによって用紙を節約した上で、用紙の余白を有効利用するためにオブジェクトの拡大をも実施し得る。また、画像処理装置１は、ラスターデータにおいて余白の有無を判断するため、印刷データに実際に使用される用紙において発生し得る余白に応じた処理を実施し得る。
【０１２６】
（印刷設定が「視認性」を優先するものである場合）
図１４および図１５を参照して、印刷設定が「視認性」を優先するものである場合の印刷データの更新の具体例を説明する。
【０１２７】
図１４は、更新による印刷データの変化の他の例を示す図である。図１４には、印刷データ１０００に加えて、印刷データ１４１０，１４２０が示される。
【０１２８】
印刷データ１４１０は、画像１４１１〜１４１９を含む。印刷データ１４１０は、印刷データ１０００が、オブジェクトを拡大されるように更新された後の印刷データの一例である。たとえば、画像１４１１〜１４１４では、画像１００１〜１００３内の文字が拡大されて示され、また、画像１４１７〜１４１９では、画像１００９内の文字が拡大されて示されている。
【０１２９】
印刷データ１４１０は、９頁分の画像を含む。したがって、印刷データ１４１０が4in1で印刷されるようにラスターデータが生成されると、ラスターデータの３頁目には印刷データの９頁目の画像しか含まれない。すなわち、ラスターデータの３頁目には比較的大きな余白が発生することが想定される。これにより、印刷データ１４１０はさらに更新される。
【０１３０】
印刷データ１４２０は、画像１４２１〜１４２７を含む。印刷データ１４２０は、印刷データ１４１０が、非印字領域を削減されるように更新された後の印刷データの一例である。たとえば、画像１４２１では、画像１４１１よりも行間が削減されている。
【０１３１】
印刷データ１４２０は、７頁分の画像を含む。したがって、印刷データ１４２０が4in1で印刷されるようにラスターデータが生成されると、ラスターデータの２頁目において発生する余白は４分の１頁分と想定され、印刷データ１４１０（９頁分）のラスターデータの最終頁において発生することが想定された余白（４分の３頁分）よりも小さい。画像処理装置１は、印刷データ１０００を印刷データ１４１０へと更新し、さらに、印刷データ１４２０へと更新した後、印刷データ１４２０の印刷処理の開始を決定する。
【０１３２】
図１５は、印刷データ１４２０が4in1で印刷されるために生成されたラスターデータの一例を示す図である。図１５のラスターデータ１５００は、１頁目の画像１５１０と、２頁目の画像１５２０とを含む。画像１５１０は、印刷データ１４２０の最初の４頁分の画像１４２１〜１４２４が用紙の１頁に集約されて印刷されていることを表す。画像１５２０は、印刷データ１４２０の残りの３頁分の画像１４２５〜１４２７が用紙の１頁に集約されて印刷されていることを表す。
【０１３３】
以上説明されたように、画像処理装置１は、視認性の向上のためにオブジェクトを拡大するように印刷データを更新した後（印刷データ１４１０）、用紙の節約のために非印字領域を削減するように印刷データを更新する（印刷データ１４２０）。画像処理装置１は、用紙の節約のために、非印字領域の削減に代えて、または、非印字領域の削減とともに、オブジェクトを縮小するように印刷データを更新しても良い。すなわち、画像処理装置１は、単に視認性向上のためだけに印刷データを更新するのではなく、可能な限り用紙節約のためにも印刷データを更新し得る。
【０１３４】
（ラスターデータにおける印字領域が含まれる範囲）
次に、ラスターデータにおける印字領域の拡大と縮小について説明する。図１６は、印刷データの更新による、ラスターデータにおいて印字領域が含まれる範囲の変化を説明するための図である。図１６には、図１４の印刷データ１４１０を4in1で印刷するために生成されたラスターデータ１６００が示される。
【０１３５】
＜ラスターデータにおける印字領域の拡大＞
図１４を参照して説明されたように、印刷データが、オブジェクトを拡大するように更新されると、印刷データから生成されるラスターデータは、図１１のラスターデータ１１００から図１６のラスターデータ１６００へと変化する。
【０１３６】
図１１のラスターデータ１１００は、印刷データの画像１１１１〜画像１１１４によって構成される１頁分の画像１１１０と、印刷データの画像１１２１によって構成される０．２５頁分の画像１１２０とを含む。すなわち、ラスターデータ１１００において印字領域が含まれる範囲は用紙の１．２５頁分（１頁分＋０．２５頁分）である。
【０１３７】
一方、図１６のラスターデータ１６００は、印刷データ１４１０の画像１４１１〜画像１４１４によって構成される１頁分の画像１６１０と、印刷データ１４１０の画像１４１５〜画像１４１９によって構成される１頁分の画像１６２０と、印刷データ１４１０の画像１４１９によって構成される０．２５頁分の画像１６３０とを含む。すなわち、ラスターデータ１６００において印字領域が含まれる範囲は用紙の２．２５頁分（１頁分＋１頁分＋０．２５頁分）である。
【０１３８】
以上より、ラスターデータが図１１のラスターデータ１１００から図１６のラスターデータ１６００へと変化した場合、ラスターデータにおける印字領域が含まれる範囲は、用紙の１．２５頁分から２．２５頁分へと拡大される。すなわち、印刷データが、オブジェクトを拡大するように更新されると、ラスターデータにおける印字領域が含まれる範囲は拡大する。
【０１３９】
＜ラスターデータにおける印字領域の縮小＞
図１４を参照して説明されたように、印刷データが、非印字領域を削減するように更新されると、印刷データから生成されるラスターデータは、図１６のラスターデータ１６００から図１５のラスターデータ１５００へと変化する。
【０１４０】
図１５のラスターデータ１５００は、印刷データの画像１４２１〜画像１４２４によって構成される１頁分の画像１５１０と、印刷データの画像１４２５〜画像１４２７によって構成される０．７５頁分の画像１１２０とを含む。すなわち、ラスターデータ１１００において印字領域が含まれる範囲は用紙の１．２５頁分（１頁分＋０．７５頁分）である。
【０１４１】
以上より、ラスターデータが図１６のラスターデータ１６００から図１５のラスターデータ１５００へと変化した場合、ラスターデータにおける印字領域が含まれる範囲は、用紙の２．２５頁分から１．７５頁分へと縮小される。すなわち、印刷データが、非印字領域を削減するように更新されると、ラスターデータにおける印字領域が含まれる範囲は縮小する。なお、印刷データが、オブジェクトを縮小するように更新されても、ラスターデータにおける印字領域が含まれる範囲は縮小する。
【０１４２】
［画像処理システムの構成の変形例］
図１７は、コンピューター２が印刷データを更新する画像処理システムにおいて実施される処理の一例のフローチャートである。図１７の例では、コンピューター２における、アプリケーションとプリンタードライバーとのデータのそれぞれにおける処理が示される。アプリケーションの一例は、文書作成用アプリケーションである。他の例は、所与の形式の文書を閲覧するためのブラウザーアプリケーションである。
【０１４３】
以下、図１７を参照して、アプリケーションとプリンタードライバーのそれぞれにおける処理の流れを説明する。アプリケーション側の処理の各ステップには、「ステップＳＡ１００」等の「ＳＡ」を含む符号が付される。プリンタードライバー側の処理の各ステップには、「ステップＳＢ１００」等の「ＳＢ」を含む符号が付される。一実現例では、アプリケーションおよびプリンタードライバーのいずれもが、ＣＰＵ２０１が所与のプログラムを実行することによって実現される。なお、アプリケーションおよびプリンタードライバーによって実現される機能は、２以上のプロセッサーによって実現されても良い。
【０１４４】
ステップＳＡ１００にて、ＣＰＵ２０１は、プリンタードライバーに対して、文書の印刷を指示する。ステップＳＡ１００は、たとえば、アプリケーションがユーザーから、当該アプリケーションが処理対象としている文書の印刷指示を受け付けたときに実施される。文書の一例は、文書作成用アプリケーションが作成している文書ファイルである。他の例は、ブラウザーアプリケーションが閲覧対象としている文書ファイルである。図１７に示された例では、当該文書が「印刷データ」の一例である。
【０１４５】
ステップＳＢ１００〜ＳＢ１０６において、ＣＰＵ２０１は、図５のステップＳ１０〜Ｓ１６に相当する制御を実行する。すなわち、ステップＳＢ１００にて、ＣＰＵ２０１は、対象となっている文書のラスターデータを生成する。
【０１４６】
ステップＳＢ１０２にて、ＣＰＵ２０１は、対象となっている文書の更新指示（後述するステップＳＢ１０８）の出力回数が閾値Ｔ１以上であるか否かを判断する。ＣＰＵ２０１は上記指示の出力回数がＴ１以上であると判断するとステップＳＢ１１２へ制御を進め（ステップＳＢ１０２にてＹＥＳ）、そうでなければステップＳＢ１０４へ制御を進める（ステップＳＢ１０２にてＮＯ）。
【０１４７】
ステップＳＢ１０４にて、ＣＰＵ２０１は、最新の２回のステップＳＢ１００のそれぞれで生成された２つのラスターデータの間に相違があるか否かを判断する。ＣＰＵ２０１は、相違があると判断するとステップＳＢ１８へ制御を進め（ステップＳ１４にてＹＥＳ）、相違が無いと判断するとステップＳ１６へ制御を進める（ステップＳ１４にてＮＯ）。
【０１４８】
たとえば、２回目のステップＳＢ１０４では、１回目のステップＳＢ１００で生成されたラスターデータと、２回目のステップＳＢ１００で生成されたラスターデータとの間の、相違の有無が判断される。なお、以降特記される場合を除き、「ラスターデータ」とは最新のラスターデータを意味する。ステップＳＢ１００におけるラスターデータの生成回数が２回未満である場合には、ステップＳＢ１０４からステップＳＢ１０６へ制御が進められる。
【０１４９】
ステップＳＢ１０４における「相違」は、「所与の基準以上の相違」であってもよい。一実現例では、ステップＳＢ１０４において、ＣＰＵ２０１は、「用紙が送られる方向に連続する非印字領域が所与の量以上増えた」場合に、２つのラスターデータの間で相違があっったと判断し、そうではない場合に、２つのラスターデータの間で相違がないと判断してもよい。
【０１５０】
ステップＳＢ１０６にて、ＣＰＵ２０１は、ラスターデータの最終頁に余白が無いか否かを判断する。ＣＰＵ２０１は、ラスターデータの最終頁に余白が無いと判断するとステップＳＢ１０８へ制御を進め（ステップＳＢ１０６にてＹＥＳ）、最終頁に余白が有ると判断するとステップＳＢ１１０へ制御を進める（ステップＳＢ１０６にてＮＯ）。ステップＳＢ１０６において、ＣＰＵ２０１は、用紙の天地方向に沿って所与の長さ以上連続する余白（用紙の終端まで連続する非印字領域）が存在することを条件として、「余白がある」と判断しても良い。
【０１５１】
ステップＳＢ１０８にて、ＣＰＵ２０１は、ラスターデータの印刷の実行を決定する。一実現例では、ステップＳＢ１０８にて、ＣＰＵ２０１は、画像処理装置１へラスターデータを送信し、当該ラスターデータの印刷を指示する。
【０１５２】
ステップＳＢ１１０にて、ＣＰＵ２０１は、アプリケーションに対して文書の更新を指示する。ステップＳＢ１１０の処理内容は、図１８および図１９を参照して後述される。
【０１５３】
ステップＳＢ１１０における指示に応じて、アプリケーションとしてのＣＰＵ２０１は、ステップＳＡ１０２にて文書を更新（修正）する。
【０１５４】
ステップＳＡ１０４にて、ＣＰＵ２０１は、更新後の文書をプリンタードライバーへ送信する。
【０１５５】
プリンタードライバーとしてのＣＰＵ２０１は、ステップＳＢ１００にて、更新後の文書のラスターデータを生成する。
【０１５６】
図１８および図１９は、図１７のステップＳＢ１１０（文書の更新を指示）のサブルーチンのフローチャートである。以下、ステップＳＢ１１０の画像処理装置の内容を説明する。
【０１５７】
図１８および図１９に示された処理は、図９および図１０に示された処理に相当する。図１８および図１９に示されたステップＳＢ２００〜ステップＳＢ２２６の各ステップは、図９および図１０に示されたステップＳ２００〜ステップＳ２２６の各ステップに相当する。たとえば、ステップＳＢ２００において、ＣＰＵ２０１は、ステップＳ２００と同様に、ステップＳＢ１００にて生成されたラスターデータにおいてオブジェクトを検出し、検出されたオブジェクトのそれぞれに属性値を設定する。
【０１５８】
なお、図９のステップＳ２０６，Ｓ２１０，Ｓ２１４においてＣＰＵ２０が印刷データを更新していたのに対し、ステップＳＢ２０６，ＳＢ２１０，ＳＢ２１４のそれぞれにおいて、ＣＰＵ２０１は、文書の更新（非印字領域の削減、オブジェクトの縮小、または、オブジェクトの拡大）をアプリケーションに対して指示する。
【０１５９】
また、図１０のステップＳ２１８，Ｓ２２２，Ｓ２２６のそれぞれにおいてＣＰＵ２０が印刷データを更新していたのに対し、ステップＳＢ２１８，ＳＢ２２２，ＳＢ２２６ののそれぞれにおいて、ＣＰＵ２０１は、文書の更新（オブジェクトの拡大、非印字領域の削減、または、オブジェクトの縮小）をアプリケーションに対して指示する。
【０１６０】
［その他の変形例］
以上説明された実施の形態では、図５等を参照して説明されたように、ステップＳ２０（図９および図１０のステップＳ２００〜ステップＳ２２６）において印刷データが更新される。ラスターデータに複数のオブジェクトが含まれる場合、一回の印刷データの更新において、複数のオブジェクトについての更新（非印字領域の削減、オブジェクトの縮小、または、オブジェクトの拡大）が実施されてもよいし、１つのオブジェクトについての更新（非印字領域の削減、オブジェクトの縮小、または、オブジェクトの拡大）のみが実施されてもよい。一例では、更新の対象となるオブジェクトは、オブジェクトの属性値（サイズなど）に従って決定される。
【０１６１】
以上説明された実施の形態では、印刷データをラスターデータに変換し、ラスターデータに基づいて最終頁の余白の有無を判定するようにしたが、これに限らず、ラスターデータに変換することなく（生成することなく）、印刷データの各オブジェクトの天地方向の長さ、配置等に基づいて、ラスターデータに変換した際のトータルの印字領域の長さを推定して最終頁の余白の有無を判定するようにしてもよい。
【０１６２】
今回開示された各実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。また、実施の形態および各変形例において説明された発明は、可能な限り、単独でも、組合わせても、実施することが意図される。
【符号の説明】
【０１６３】
１  画像処理装置、２  コンピューター、１１  操作パネル、１１ａ  操作装置、１１ｂ，２０４  ディスプレイ、１３  スキャナー装置、１４  プリンター装置、１５  フィニッシャー装置、１７  ドキュメントフィーダー、１８  給紙装置、２０，２０１  ＣＰＵ。
【図１】
2020175593.tif 000003
【図２】
2020175593.tif 000004
【図３】
2020175593.tif 000005
【図４】
2020175593.tif 000006
【図５】
2020175593.tif 000007
【図６】
2020175593.tif 000008
【図７】
2020175593.tif 000009
【図８】
2020175593.tif 000010
【図９】
2020175593.tif 000011
【図１０】
2020175593.tif 000012
【図１１】
2020175593.tif 000013
【図１２】
2020175593.tif 000014
【図１３】
2020175593.tif 000015
【図１４】
2020175593.tif 000016
【図１５】
2020175593.tif 000017
【図１６】
2020175593.tif 000018
【図１７】
2020175593.tif 000019
【図１８】
2020175593.tif 000020
【図１９】
2020175593.tif 000021