JP5528081B2 - 情報処理装置の制御方法、情報処理装置、及び、プログラム - Google Patents

情報処理装置の制御方法、情報処理装置、及び、プログラム Download PDF

Info

Publication number
JP5528081B2
JP5528081B2 JP2009280720A JP2009280720A JP5528081B2 JP 5528081 B2 JP5528081 B2 JP 5528081B2 JP 2009280720 A JP2009280720 A JP 2009280720A JP 2009280720 A JP2009280720 A JP 2009280720A JP 5528081 B2 JP5528081 B2 JP 5528081B2
Authority
JP
Japan
Prior art keywords
image
area
size
main subject
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2009280720A
Other languages
English (en)
Other versions
JP2011123663A (ja
Inventor
和久 江渕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2009280720A priority Critical patent/JP5528081B2/ja
Priority to US12/949,339 priority patent/US8995013B2/en
Publication of JP2011123663A publication Critical patent/JP2011123663A/ja
Application granted granted Critical
Publication of JP5528081B2 publication Critical patent/JP5528081B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • H04N1/3872Repositioning or masking
    • H04N1/3873Repositioning or masking defined only by a limited number of coordinate points or parameters, e.g. corners, centre; for trimming
    • H04N1/3875Repositioning or masking defined only by a limited number of coordinate points or parameters, e.g. corners, centre; for trimming combined with enlarging or reducing

Description

本発明は、印刷装置に送信する印刷データを生成するプリンタドライバの印刷設定を行うユーザインタフェース画面の表示を制御する情報処理装置の制御方法、情報処理装置、及び、プログラムに関する。
プリンタドライバには、印刷設定等を行うためのユーザインタフェースが備えられている。このユーザインタフェースには、印刷設定に合わせた設定プレビューを表示してユーザによる印刷設定を補助するものがある。なお、設定プレビューとは、印刷設定で選択されている出力用紙サイズに対応する用紙を表す矩形領域を表示し、この矩形領域内に、印刷データを抽象化した画像を表示(出力)して、ユーザが印刷結果を事前に確認可能にするためのものである。この設定プレビューの表示の際、プリンタドライバは、予め用意された画像(元画像)を、印刷設定で選択されている出力用紙サイズを表す矩形領域に対応するサイズないしアスペクト比に調整して表示している。
画像を異なるサイズないしアスペクト比に調整する画像サイズ調整方法としては、従来より、元画像のトリミングや、拡大/縮小、あるいは拡大/縮小とトリミングを併用する方法などがある。
トリミングとは、元画像が出力先よりも大きい場合に、出力先よりも大きい部分を削除ないし不可視状態とし、元画像の縮尺を維持したまま一部を出力先に切り出す方法である。トリミングには、元画像における主要な構成要素(以下、主要被写体と記す)と出力先の中心をなるべく一致させて行う方法などもある(特許文献1)。
拡大/縮小とは、元画像の縦横各方向を拡大または縮小し、出力先にフィットするように変形し、変形後の画像をそのまま出力する方法である。
また、拡大縮小とトリミングを併用する方法とは、出力先の少なくとも一辺に一致し、もう一方の辺は、一致か、あるいははみ出すように元画像を拡大縮小し、拡大縮小後の画像が、出力先からはみ出す部分を削除ないし不可視状態とし、出力先に切り出す方法である(特許文献2)。
特開2004−023544号公報 特開2003−046763号公報
しかしながら、上記従来の画像サイズ調整方法では、元画像における主要被写体の欠損や無用な縮小、あるいは過度の変形により、画像全体ないし主要被写体の視認性が低下する可能性があった。
例えば、単純なトリミングでは、元画像上の主要被写体よりも出力先が小さい場合、主要被写体と出力先の中心を一致させたとしても、主要被写体の一部が欠損してしまう。また、拡大縮小とトリミングを併用する方法において、出力先の長辺が元画像の対応する辺よりも小さい場合は常に縮小が行われることになり、縮小しなくても主要被写体が出力先に収まるようなケースでは、無用な縮小が発生することになる。またあるいは、縦横別々に拡大縮小する調整方法の場合、アスペクト比によっては変形が過多になる。つまり、いずれの方法においても、画像の一部が欠損してしまったり、無用に縮小されたり、変形過多になってしまったりする可能性があった。
このような従来の画像調整方法を、プリンタドライバの設定プレビュー表示に適用すると、次のような問題が発生する。選択される出力用紙サイズによっては、設定プレビューにおいて、主要被写体の一部が欠損したり、無用に縮小されたり、変形過多になってしまう可能性があり、このような画像が印刷されてしまうのではないかといった誤解をユーザに与えてしまう恐れがあった。
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、主要被写体の欠損や、無用な縮小や、変形過多等となることを抑え、且つ不必要な余白を発生させず、任意のサイズ又はアスペクト比に調整した画像を、プリンタドライバの設定プレビューに表示する仕組みを提供することである。
本発明は、印刷装置に送信する印刷データを生成するプリンタドライバの印刷設定を行うユーザインタフェース画面の表示を制御する情報処理装置の制御方法であって、前記情報処理装置のプロセッサが、前記ユーザインタフェース画面の表示領域内に、前記印刷設定で設定されている出力用紙サイズに応じた出力領域を定め、予め決められた画像を前記出力領域のサイズに調整する調整ステップと、前記情報処理装置のプロセッサが、前記調整ステップでサイズ調整された画像を前記表示領域内の前記出力領域に表示する表示ステップとを有し、前記調整ステップでは、前記出力領域の少なくとも一辺のサイズが前記画像の対応する辺よりも大きい場合、前記画像を拡大処理し、予め設定されている前記画像内の主要被写体の分布する領域の欠損部分が最小となるように前記拡大後の画像をトリミングし、また、前記出力領域の各辺のサイズが前記画像の対応する辺以下で且つ前記主要被写体の分布する領域の対応する辺より大きい場合、前記画像を変倍することなく、前記主要被写体の分布する領域を欠損しないように前記画像をトリミングし、また、前記出力領域の各辺のサイズが前記画像の対応する辺以下で且つ前記主要被写体の分布する領域の対応する辺より大きくない場合、前記画像を縮小処理し、前記主要被写体の分布する領域の欠損部分が最小となるように前記縮小後の画像をトリミングすることを特徴とする。
本発明によれば、主要被写体の欠損や、無用な縮小や、変形過多となることを抑え、且つ不必要な余白を発生させないように調整した画像を、プリンタドライバの設定プレビューに表示することを可能にする。
本発明の一実施形態を示す印刷制御装置を適用可能な印刷システムの構成を示すブロック図である。 図1に示した印刷システムのソフトウェア(主にプリンタドライバ)の構成を示すブロック図である。 UIドライバ203によりディスプレイ101に表示されるプリンタドライバUI(印刷設定画面)の一例を示す図である。 UIドライバ203により実行されるプリンタドライバUIにおける設定プレビュー表示のための画像サイズ調整処理の一例を示すフローチャートである。 画像サイズ調整処理における画像処理を説明するための図である。 画像サイズ調整処理における画像処理を説明するための図である。 UIドライバ203により実行される元画像設定処理の一例を示すフローチャートである。
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
<実施形態1>
パーソナルコンピュータ上で動作する印刷制御プログラム、主にプリンタドライバのユーザインタフェースにおいて、本発明を適用した例を示す。
図1は、本発明の一実施形態を示す情報処理装置を適用可能な印刷システムの構成を示すブロック図である。
図1において、一般的に100がホストコンピュータ装置となる。101は、ディスプレイ(DSP)等の表示装置であり、プリンタドライバが提供する印刷設定ダイアログやプリンタステータス情報等を表示する。102はDSPCで、表示装置用のコントローラである。
103は、キーボード(KB)などのデータ入力装置であり、104はキーボードコントローラ(KBC)である。105はポインティングデバイス(PD)等の座標入力装置であり、106はポインティングデバイスコントローラ(PDC)である。
107は、装置全体の制御を司るCPU(プロセッサ)である。108は、ブートプログラムなどを記憶しているROMである。109は、オペレーションシステム(OS)、各アプリケーションプログラムやプリンタドライバプログラムをロードしたり、さらにはワークエリアとしても利用されるRAMである。
110は、OS、各アプリケーションプログラムとプリンタドライバプログラム、フォントデータを記憶しており、さらにはスプールファイル等を一時的に記憶するハードディスク装置(HDD)である。111はハードディスクコントローラ(HDC)である。
112は、可搬性記憶媒体の駆動装置であるフレキシブルディスク装置(FDD)である。113はフレキシブルディスクコントローラ(FDC)である。114はインタフェース(I/F)で、インタフェースケーブルを介してインクジェットプリンタ、昇華式プリンタ、レーザビームプリンタ等のプリンタ115に接続される。116は、各デバイスを接続するバスである。
ホストコンピュータ装置100に電源が投入されると、CPU107はROM108に格納されているブートプログラムに従って起動し、ハードディスク装置110からOSをロードし、ユーザの操作待ち状態になる。ユーザは、KB103又はPD105からアプリケーション等を介して印刷指示やプリンタドライバの印刷設定変更指示等の各種操作が可能である。そして、印刷指示やプリンタドライバの印刷設定変更指示を受けた場合、CPU107は、HDD110に格納されているプリンタドライバプログラムをRAM109にロードして実行する。また、CPU107は、プリンタドライバプログラムが自動的に起動するように設定されている場合も同様に、プリンタドライバプログラムを実行する。
図2は、図1に示した印刷システムのソフトウェア(主にプリンタドライバ)の構成を示すブロック図であり、図1と同一のものには同一の符号を付してある。
図2において、201はアプリケーションプログラム(以下、アプリケーション)で、KB103又はPD105から入力されるユーザ操作に応じて文書を作成する。また、アプリケーション201は、ユーザからの印刷指示を検知すると、上記文書を印刷するためにユーザインタフェースドライバ(以下、UIドライバ)203にプリンタシステムの機能を問い合わせる。その後、アプリケーション201は、OSのGDI202を含む印刷システムに印刷開始を通知する。なお、GDIは、Graphic Device Interfaceを示す。
ここでGDI202は、アプリケーション201から印刷開始の通知を受けると、UIドライバ203にアプリケーション201による印刷開始の印刷イベントを通知する。続いて、アプリケーション201は、印刷対象の文書の印刷データをGDI202に供給し印刷処理を続行する。GDI202を経由した印刷データはスプールファイル204に格納される。
プリントプロセッサ205は、スプールファイル204から印刷データを読み出す。プリントプロセッサ205により読み出された印刷データは、グラフィクスドライバ206を介した後、ランゲージモニタ207に送られる。
ランゲージモニタ207は、プリンタ115と双方向通信を行いながら、印刷データをプリンタ115へと送信する。ランゲージモニタ207は随時、プリンタ115が保持している状態の情報を受信する。また、ランゲージモニタ207は、プリンタ115から受信した情報や送信する印刷データを元に、現在のプリンタや印刷の状況をステータスモニタ(不図示)に伝え、ステータスモニタがその表示を行う。ステータスモニタは、プリンタや印刷の状況を表示するのみでなく、何らかの理由により印刷が中断されている場合は、対処選択肢をユーザに提示し、それに対するユーザからのレスポンス入力を受け取り、ランゲージモニタ207に伝達する。
なお、UIドライバ203は、後述する図3に示すようなプリンタドライバのユーザインタフェース(以下、プリンタドライバUI)としての印刷設定画面を、ディスプレイ101に表示して、KB103、PD105等からの印刷設定を受け付ける。即ち、UIドライバ203は、プリンタ115に送信する印刷データを生成するプリンタドライバの印刷設定を行うユーザインタフェース画面の表示や印刷設定入力等を制御する。
なお、図2の201〜203及び205〜207はプログラムモジュールであり、印刷実行時や印刷設定変更時に、CPU107が必要なプログラムをHDD110からRAM109にロードして実行することで実現される。なお、スプールファイル204は、一般的に印刷実行時にHDD110に生成される。
以下、図3を参照して、UIドライバ203により表示制御されるプリンタドライバUIについて説明する。
図3は、UIドライバ203によりディスプレイ101に表示されるプリンタドライバUI(印刷設定画面)の一例を示す図である。
図3に示すように、プリンタドライバUIには、ユーザからの印刷設定を補助するために設定プレビュー(レイアウト確認用のビュー)の表示領域1001が設けられている。
UIドライバ203は、設定プレビューとして、表示領域1001内に、出力用紙サイズ1004の設定に対応するアスペクト比の矩形領域(出力用紙を表す)1002を表示し、該矩形領域に印刷データを抽象化した画像1003を表示する。例えば、出力用紙サイズ1004に「L判」が設定されている場合、表示領域1001にL判用紙に対応したアスペクト比の矩形領域1002を表示し、矩形領域1002内に、画像1003を表示する。即ち、印刷データを抽象化した画像1003は、設定されている用紙サイズに対応するアスペクト比の矩形領域1002を表示領域内に定め、該矩形領域1002を出力先(出力領域)として表示される。
なお、プリンタドライバUIで写真印刷の設定がなされている(例えば1005で「写真印刷」が選択されている)場合、UIドライバ203は、図3(a)のように、印刷データを抽象化した画像1003として写真印刷データを抽象化した画像を表示する。
また、プリンタドライバUIで写真印刷以外の設定がなされている(例えば1005で「標準印刷」が選択されている)場合、UIドライバ203は、図3(b)のように、印刷データを抽象化した画像1003として文書印刷データを抽象化した画像を表示する。
このように表示される設定プレビューにより、ユーザは、印刷結果を視覚的に確認しながら、印刷設定することができる。
なお、図3(a)のように、設定プレビューとして、表示領域1001の矩形領域1002に、写真印刷データを抽象化した画像を表示する場合、UIドライバ203は、後述する図4に示すフローチャートに示す処理を実行する。この処理にて、UIドライバ203は、設定プレビューの元画像(写真印刷データを抽象化した画像)が出力先(出力用紙を表す矩形)に対して最適な大きさとなるよう、必要に応じて、元画像に、拡大、縮小、トリミング等の処理を施す。
次に、UIドライバ203により実行されるプリンタドライバUIにおける設定プレビュー表示のための画像サイズ調整処理について、図4〜図6を用いて説明する。なお、設定プレビューとは、上述したように、出力用紙を表す矩形領域を表示し、この矩形領域内に、印刷データを抽象化した画像を表示して、印刷結果を事前に確認するためのものである。
図4は、UIドライバ203により実行されるプリンタドライバUIにおける設定プレビュー表示のための画像サイズ調整処理の一例を示すフローチャートである。
UIドライバ203は、プリンタドライバUIの表示領域1001に設定プレビューを表示する際、本フローチャートの処理を開始する。
まず、UIドライバ203は、S301を実行する前に、表示領域1001のサイズ、出力用紙サイズのアスペクト比、印刷データを抽象化した画像(以下、元画像)のサイズ、元画像の主要被写体分布領域の位置及びサイズ等を取得しておく。さらに、UIドライバ203は、表示領域1001のサイズと出力用紙サイズのアスペクト比から矩形領域1002(設定プレビューの出力用紙を表す矩形(以下、出力先))のサイズを算出しておく。
なお、出力用紙を表す矩形のアスペクト比は、1004にて選択されている出力用紙サイズに応じて決定される。また、元画像は、予めプリンタドライバプログラム内に保持されている。さらに、元画像の主要被写体分布領域とは、元画像の印象を決定付ける要素(主要被写体)が分布する矩形領域であり、予め設定されてプリンタドライバプログラム内に保持されている。
S301では、UIドライバ203は、出力先の少なくとも一辺のサイズが、対応する元画像の辺よりも大きいか否かを判定する。そして、出力先の少なくとも一辺のサイズが対応する元画像の辺よりも大きいと判定した場合(S301でYes)、UIドライバ203は、S302に処理を進める。
S302では、UIドライバ203は、元画像を出力先に対して外接する大きさに拡大処理する。
さらに、S303において、UIドライバ203は、拡大後の画像(拡大画像)を表示する際に拡大画像の出力先の矩形からはみ出す部分(余剰部分)をトリミングする。このとき、UIドライバ203は、拡大画像内の主要被写体分布領域のトリミングによる欠損量(欠損部分)が最小となるように拡大画像を配置したうえで、上記余剰部分をトリミングする。即ち、主要被写体分布領域の欠損部分が最小となるように拡大画像をトリミングする。そして、UIドライバ203は、トリミング後の画像をプリンタドライバUIの表示領域1001内の矩形領域1002に表示するように制御する。
一方、上記S301にて、出力先の両辺のサイズともに元画像の各対応する辺以下(同じか、又は、それより小さい)と判定した場合(S301でNo)、UIドライバ203は、S304に処理を進める。
S304では、UIドライバ203は、出力先の各辺が元画像の主要被写体分布領域の各辺以上(同じか、又は、それより大きい)か否を判定する。そして、出力先の各辺が元画像の主要被写体分布領域の各辺以上と判定した場合(S304でYes)、UIドライバ203は、S305に処理を進める。
S305では、UIドライバ203は、元画像の拡大/縮小は行わず(元画像を変倍することなく)、元画像を表示する際に元画像の出力先の矩形からはみ出す部分(余剰部分)をトリミングする。このとき、UIドライバ203は、元画像内の主要被写体分布領域が欠損しないように配置したうえで、上記余剰部分をトリミングする。即ち、主要被写体分布領域を欠損しないように拡大画像をトリミングする。そして、UIドライバ203は、トリミング後の画像をプリンタドライバUIの表示領域1001内の矩形領域1002に表示するように制御する。
一方、S304にて、出力先の少なくとも一辺が、それと同方向の、元画像の主要被写体分布領域の辺よりも小さいと判定した場合(S304でNo)、UIドライバ203は、S306に処理を進める。
S306では、UIドライバ203は、元画像の主要被写体分布領域が出力先に対して内接する大きさとなるよう元画像を縮小した場合に、その縮小後の画像(縮小画像)の各辺が、出力先の各辺以上(同じか、又は、より大きい)か否を判定する。そして、縮小画像の各辺が出力先の各辺以上と判定した場合(S306でYes)、UIドライバ203は、S307に処理を進める。
S307では、UIドライバ203は、主要被写体分布領域が出力先に対して内接する大きさとなるよう元画像を縮小処理する。
次に、S308にて、UIドライバ203は、縮小後の画像(縮小画像)を表示する際に縮小画像の出力先の矩形からはみ出す部分(余剰部分)をトリミングする。この際、このとき、UIドライバ203は、縮小画像内の主要被写体分布領域が出力先に対して内接するように縮小画像を配置したうえで、上記余剰部分をトリミングする。即ち、主要被写体分布領域の欠損量が最小となるように縮小画像をトリミングする。そして、UIドライバ203は、トリミング後の画像をプリンタドライバUIの表示領域1001内の矩形領域1002に表示するように制御する。
一方、S306にて、元画像の主要被写体分布領域が出力先に対して内接する大きさとなるよう元画像を縮小した場合でも、その縮小後の画像の一辺が、それと同方向の、出力先の辺より小さいと判定した場合(S306でNo)、UIドライバ203は、S309に処理を進める。
S309では、UIドライバ203は、元画像が出力先に対して外接する大きさとなるよう元画像を縮小処理する。
次に、S310にて、UIドライバ203は、縮小後の画像(縮小画像)を表示する際に縮小画像の出力先の矩形からはみ出す部分(余剰部分)をトリミングする。この際、UIドライバ203は、縮小画像内の主要被写体分布領域の欠損が最小となるように縮小画像を配置したうえで、上記余剰部分をトリミングする。即ち、主要被写体分布領域の欠損量が最小となるように縮小画像をトリミングする。そして、UIドライバ203は、トリミング後の画像をプリンタドライバUIの表示領域1001内の矩形領域1002に表示するように制御する。
以下、具体例を用いて図4の画像サイズ調整処理をより具体的に説明する。
ここでは、UIドライバ203により表示制御されるプリンタドライバUIの表示領域1001を100×100ピクセル(pixel)として説明する。また、矩形領域1002の長辺を表示領域1001の一辺と同一サイズとなるように、矩形領域1002を表示し、その矩形領域1002内に画像1003を表示するものとする。即ち、ここでは、矩形領域1002を長辺が100ピクセルとなるように表示し、その矩形内に画像1003を表示するものとする。
図5は、画像サイズ調整処理における画像処理を説明するための図である。
図5(a)は、元画像の例を示す。
図5(b)は、出力先へプレビュー表示例(トリミング後の画像の例)を示す。
図5(a)に示す例では、元画像を、250×250ピクセルの画像とする。また、元画像の中心から±25ピクセルの範囲(50×50ピクセルの矩形)を主要被写体分布領域とする。
まず、図5(b)を用いて、アスペクト比3:2の用紙が出力用紙に設定されている場合を説明する。
アスペクト比3:2の用紙が出力用紙に設定されている場合、表示領域が100×100ピクセルであるため、図5(b)に示すように、100×67ピクセルの矩形を出力用紙の模式図として表示領域1001に表示することになる。即ち、出力先は100×67ピクセルの矩形領域となる。
この場合、出力先(100×67)の両辺が元画像(250×250)の両辺より小さいため、UIドライバ203は、図4のS301でNoと判定し、図4のS304を実行する。
図4のS304では、出力先(100×67)の両辺が元画像の主要被写体分布領域(50×50)の両辺より大きいため、UIドライバ203はYesと判定し、図4のS305を実行する。
図4のS305では、UIドライバ203は、元画像の拡大/縮小は行わず、元画像を表示する際に出力先の矩形からはみ出す部分(余剰部分)をトリミングする。このとき、元画像内の主要被写体が欠損しないように配置したうえで、余剰部分をトリミングする。このトリミング後の画像が図5(b)に対応する。
次に、図5(c)を用いて、アスペクト比3:1の用紙が出力用紙に設定されている場合を説明する。
アスペクト比3:1の用紙が出力用紙に設定されている場合、表示領域が100×100ピクセルであるため、図5(c)に示すように、100×33ピクセルの矩形を出力用紙の模式図として表示領域1001に表示することになる。即ち、出力先は100×33ピクセルの矩形領域となる。
この場合、出力先(100×33)の両辺が元画像(250×250)の両辺より小さいため、UIドライバ203は、図4のS301でNoと判定し、図4のS304を実行する。また、図4のS304でも、出力先(100×33)の一辺が元画像の主要被写体分布領域(50×50)の対応する辺より小さいため、UIドライバ203はNoと判定し、図4のS306を実行する。
主要被写体分布領域(50×50)が出力先(100×33)に対して内接する大きさとなるように元画像を縮小(即ち、33/50倍に縮小)した場合、縮小後の画像(縮小画像)は一辺165ピクセルの矩形となる。この縮小画像(165×165)の各辺は、出力先(100×33)の各辺より大きいため、UIドライバ203は図4のS306でYesと判定し、図4のS307を実行する。
図4のS307では、UIドライバ203は、元画像(250×250)を上記の「33/50」倍に縮小し、図4のS308を実行する。
図4のS308では、UIドライバ203は、縮小した後の画像(縮小画像)を表示する際に出力先の矩形からはみ出す部分(余剰部分)をトリミングする。このとき、縮小画像内の主要被写体分布領域が出力先に対して内接するよう配置したうえで、余剰部分をトリミングする。このトリミング後の画像が図5(c)に対応する。
次に、図5(d)を用いて、アスペクト比10:1の用紙が出力用紙に設定されている場合を説明する。
アスペクト比10:1の用紙が出力用紙に設定されている場合、表示領域が100×100ピクセルであるため、図5(d)に示すように、100×10ピクセルの矩形を出力用紙の模式図として表示領域1001に表示することになる。即ち、出力先は100×10ピクセルの矩形領域となる。
この場合、出力先(100×10)の両辺が元画像(250×250)の両辺より小さいため、UIドライバ203は、図4のS301でNoと判定し、図4のS304を実行する。また、図4のS304でも、出力先(100×10)の一辺が元画像の主要被写体分布領域(50×50)の対応する辺より小さいため、UIドライバ203はNoと判定し、図4のS306を実行する。
さらに、主要被写体分布領域(50×50)が出力先(100×10)に対して内接する大きさとなるように元画像を縮小(即ち、10/50倍に縮小)した場合、縮小後の画像(縮小画像)は一辺50ピクセルの矩形となる。この縮小画像(50×50)の一辺が出力先(100×10)の対応する辺より小さいため、UIドライバ203は図4のS306でNoと判定し、図4のS309を実行する。
図4のS309では、UIドライバ203は、元画像(250×250)が出力先(100×10)に対して外接する大きさとなるように元画像を縮小する。即ち、「100/250」倍に縮小する。
次に、図4のS310では、UIドライバ203は、縮小した後の画像(縮小画像)を表示する際に出力先の矩形からはみ出す部分(余剰部分)をトリミングする。このとき、縮小画像内の主要被写体分布領域の欠損量が最小となるよう配置したうえで、余剰部分をトリミングする。このトリミング後の画像が図5(d)に対応する。
本実施形態のプリンタドライバUIは、PD105等を用いた操作により拡大/縮小可能である。プリンタドライバUIを拡大/縮小することにより、表示領域1001も拡大/縮小される。
以下、プリンタドライバUIを拡大することにより、表示領域を300×300ピクセルに拡大したものとして説明を行う。即ち、以下の例では、矩形領域1002を長辺が300ピクセルとなるように表示し、その矩形内に画像1003を表示するものとする。
図6は、画像サイズ調整処理における画像処理を説明するための図であり、出力先へプレビュー表示例(トリミング後の画像の例)を示す。
図6を用いて、アスペクト比3:2の用紙が出力用紙に設定されている場合を説明する。
アスペクト比3:2の用紙が出力用紙に設定されている場合、表示領域が300×300ピクセルであるため、図6に示すように、300×200ピクセルの矩形を出力用紙の模式図として表示領域1001に表示することになる。即ち、出力先は300×200ピクセルの矩形領域となる。
この例では、出力先(300×200)の一辺が元画像(250×250)の対応する辺より大きいため、UIドライバ203は図4のS301でYesと判定し、図4のS302を実行する。
図4のS302では、UIドライバ203は、元画像(250×250)を、出力先(300×200)に対して外接する大きさに拡大する。即ち、元画像を「300/250」倍に拡大する。
さらに、図4のS303では、UIドライバ203は、拡大した後の画像(拡大画像)を表示する際に出力先の矩形からはみ出す部分(余剰部分)をトリミングする。このとき、拡大画像内の主要被写体分布領域が欠損しないように配置したうえで、余剰部分をトリミングする。このトリミング後の画像が図6に対応する。
以上に示したように、出力先の両辺ともに元画像の各対応する辺より小さい場合であっても、元画像の印象を決定付ける主要被写体の分布する領域が十分に収まる場合は、元画像を縮小することなくトリミングのみ行って表示する。これにより、元画像の視認性を不必要に低下させずに、設定プレビューとして表示する画像のサイズを調整することが可能となる。即ち、主要被写体の欠損や、無用な縮小や、変形過多等となることを抑え、且つ不必要な余白を発生させず、設定された出力用紙サイズに応じて調整した画像を、プリンタドライバの設定プレビューとして表示できる。これにより、どのような出力用紙サイズが設定されても、設定プレビューにおいて、主要被写体の一部が欠損したり、無用に縮小されたり、変形過多になってしまうことを抑えることができ、設定プレビューによりユーザに誤解を与えてしまう心配もなくなる。
また、上記のトリミングを行うと主要被写体分布領域が欠損してしまう場合には、主要被写体分布領域が出力先に収まる程度に元画像を縮小することで、元画像の視認性を低下させる画像の縮小を最低限に抑えることが可能となる。
また、上記の主要被写体分布領域を基準とした縮小では出力先に余白が発生してしまう場合には、出力先に外接するサイズへ元画像を縮小することで、出力先に余白のない、審美性を保った画像出力が保証される。
よって、ユーザは、印刷設定画面に表示される印刷データの模式画像により、リアルに印刷結果を事前確認しながら、容易に印刷設定を行うことができる。
<実施形態2>
上記実施形態1では、特定の画像(予め決められた画像)を元画像とし、該元画像の主要被写体分布領域の位置、大きさを特定する情報を、予め出力プログラムが保持しておく形態を示した。しかし、任意の画像を元画像としてユーザが設定し、該元画像に対して主要被写体分布領域の位置、大きさを特定する情報をユーザが設定する形態も考えられる。以下、この形態について、図7を用いて説明する。
本実施形態では、ユーザは、UIドライバ203に対して、元画像を、画像ファイルの保存場所などで指定可能とする。
例えば、ユーザは、まず、図3に示したプリンタドライバUIの「ユーティリティ」タブ1006をPD105で指示して、プリンタドライバUI上にユーティリティページ(不図示)を表示させる。さらにユーザは、ユーティリティページ上からの指示により、元画像を、画像ファイルの保存場所などで指定する。このような操作により、元画像を指定可能である。
図7は、UIドライバ203により実行される元画像設定処理の一例を示すフローチャートである。
UIドライバ203は、ユーザから元画像に設定したい画像が指定されたことを検知すると(S901でYes)、該指定された画像の各辺のサイズを取得する(S902)。
次に、UIドライバ203は、上記S901で指定された画像内の主要被写体の分布する領域(主要被写体分布領域)が指定されるまで待機する(S903)。この指定は座標値をKB103から入力する方法でもよいし、UIドライバ203が指定された元画像をディスプレイ101に表示し、この表示に対してPD105のカーソルをドラッグして矩形として指定する方法でもよい。
UIドライバ203は、ユーザから主要被写体分布領域が指定されたことを検出すると(S903でYes)、S904に処理を進める。
S904では、UIドライバ203は、上記S903で指示された主要被写体分布領域の位置及びサイズを取得する。
そして、UIドライバ203は、上記S901,S902で指定等された画像の情報を元画像の情報としてプリンタドライバプログラム内に保持させる(HDD110に記憶してもよい)。また、UIドライバ203は、上記S903,S904で指定等された主要被写体分布領域の情報を元画像の主要被写体分布領域の情報としてプリンタドライバプログラム内に保持させる(HDD110に記憶してもよい)。そして、UIドライバ203は、図4に示した画像サイズ調整処理を実行する(S905)。
以上示したように、本実施形態によれば、任意の元画像に対しても図4の画像サイズ調整処理を適用でき、画像の視認性を低下させることなく、かつ余白を発生させずに、設定プレビューとして表示する画像のサイズを調整することが可能となる。
よって、ユーザは、印刷設定画面に表示される、ユーザ指定画像により、印刷結果を事前確認しながら、容易に印刷設定を行うことができる。
<実施形態3>
上記実施形態2では、元画像に対して、主要被写体分布領域をユーザが指定する形態を示した。しかし、主要被写体分布領域を、元画像に対する画像認識により自動的に検出する形態も考えられる。
例えば、高周波部の輝度ヒストグラムを用いたり、人物であれば肌色などの特定色の分布を解析するといった一般的な画像認識により、まず主要被写体を検出する。そして、検出した主要被写体に外接する矩形を主要被写体が分布する領域として設定し、図4に示した画像サイズ調整処理を実行する。
本実施形態によれば、任意の元画像に対しても図4の画像サイズ調整処理を適用でき、画像の視認性を低下させることなく、かつ余白を発生させずに、設定プレビューとして表示する画像のサイズを自動的に調整することが可能となる。
<実施形態4>
上記実施形態1〜3は、プリンタドライバUI上の矩形領域1002(用紙外形に見立てた矩形)を出力先として画像1003を出力する形態を示した。しかし、印刷データの用紙への印刷出力を考慮し、矩形領域1002内部に存在する印字可能領域を表す矩形を出力先として画像1003を出力する形態も考えられる。
例えば、図3(a)の「フチなし全面印刷」1007にチェックがなされていない場合、UIドライバ203は、矩形領域1002内部に存在する印字可能領域を表す矩形を出力先として画像1003を出力する。
一方、図3(a)の「フチなし全面印刷」1007にチェックがなされている場合には、UIドライバ203は、上記実施形態1〜3に示したように、矩形領域1002を出力先として画像1003を出力する。
本形態のような応用により、元画像に対して、該画像の視認性を低下させることなく、かつ余白を発生させずに、様々な印刷設定に応じた出力先に合わせた画像サイズの調整を行うことが可能となる。
よって、ユーザは、印刷設定画面に表示される、ユーザ指定画像により、用紙上の印刷可能領域を考慮した印刷結果を事前確認しながら、容易に印刷設定を行うことができる。
<実施形態5>
上記実施形態1〜4は、表示装置(特に、プリンタドライバUI上の矩形領域)を出力先として図4の画像サイズ調整処理を行う形態を示した。しかし、画像を異なるアスペクト比の用紙に印刷出力することを考慮し、実際の用紙に印刷する場合に画像データを展開するメモリ領域等を出力先として、図4の画像サイズ調整処理を行うことも可能である。
例えば、画像サイズを調整する機能を持つアプリケーションソフトにおいて、図4の画像サイズ調整処理を適用することができる。これにより、例えばデジタルカメラなどで撮影した元画像に対し、視認性を低下させることなく、かつ余白を発生させずにサイズ調整された印刷物を生成することが可能となる。
また、任意のメモリ領域を出力先として、図4の画像サイズ調整処理を行うことが可能である。これにより、例えばデジタルカメラなどで撮影した元画像を、視認性を低下させることなく、かつ余白を発生させずに、サイズ調整することが可能となる。
<実施形態6>
上記実施形態1〜5は、出力先が矩形領域である構成について説明したが、出力先はどのような形状の領域であってもよい。例えば、矩形以外の多角形であってもよいし、円形や、ドーナツ型等であってもよい。
<実施形態7>
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
本発明の様々な例と実施例を示して説明したが、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
なお、上述した各実施形態及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
100 ホストコンピュータ装置
101 ディスプレイ
115 プリンタ
203 ユーザインタフェースドライバ(UIドライバ)
205 プリントプロセッサ
206 グラフィックスドライバ

Claims (7)

  1. 印刷装置に送信する印刷データを生成するプリンタドライバの印刷設定を行うユーザインタフェース画面の表示を制御する情報処理装置の制御方法であって、
    前記情報処理装置のプロセッサが、前記ユーザインタフェース画面の表示領域内に、前記印刷設定で設定されている出力用紙サイズに応じた出力領域を定め、予め決められた画像を前記出力領域のサイズに調整する調整ステップと、
    前記情報処理装置のプロセッサが、前記調整ステップでサイズ調整された画像を前記表示領域内の前記出力領域に表示する表示ステップとを有し、
    前記調整ステップでは、
    前記出力領域の少なくとも一辺のサイズが前記画像の対応する辺よりも大きい場合、前記画像を拡大処理し、予め設定されている前記画像内の主要被写体の分布する領域の欠損部分が最小となるように前記拡大後の画像をトリミングし、また、
    前記出力領域の各辺のサイズが前記画像の対応する辺以下で且つ前記主要被写体の分布する領域の対応する辺より大きい場合、前記画像を変倍することなく、前記主要被写体の分布する領域を欠損しないように前記画像をトリミングし、また、
    前記出力領域の各辺のサイズが前記画像の対応する辺以下で且つ前記主要被写体の分布する領域の対応する辺より大きくない場合、前記画像を縮小処理し、前記主要被写体の分布する領域の欠損部分が最小となるように前記縮小後の画像をトリミングすることを特徴とする情報処理装置の制御方法。
  2. 前記拡大処理は、前記画像が前記出力領域に外接する大きさとなるように前記画像を拡大することを特徴とする請求項1に記載の情報処理装置の制御方法。
  3. 前記縮小処理では、前記主要被写体の分布する領域が前記出力領域に内接する大きさとなるように前記画像を縮小した場合の縮小後の画像の各辺のサイズが前記出力領域の対応する辺以上の場合、前記主要被写体の分布する領域が前記出力領域に内接する大きさとなるように前記画像を縮小し、また、前記主要被写体の分布する領域が前記出力領域に内接する大きさとなるように前記画像を縮小した場合の縮小後の画像の少なくとも一辺のサイズが前記出力領域の対応する辺より小さい場合、前記画像が前記出力領域に外接する大きさとなるように前記画像を縮小することを特徴とする請求項1又は2に記載の情報処理装置の制御方法。
  4. 前記出力領域は、前記印刷設定で設定されている出力用紙サイズに対応する用紙を表す矩形領域であることを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置の制御方法。
  5. 前記出力領域は、前記印刷設定で設定されている出力用紙サイズに対応する用紙の印字可能領域を表す矩形領域であることを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置の制御方法。
  6. 印刷装置に送信する印刷データを生成するプリンタドライバの印刷設定を行うユーザインタフェース画面の表示を制御する情報処理装置であって、
    前記ユーザインタフェース画面の表示領域内に、前記印刷設定で設定されている出力用紙サイズに応じた出力領域を定め、予め決められた画像を前記出力領域のサイズに調整する調整手段と、
    前記調整手段でサイズ調整された画像を前記表示領域内の前記出力領域に表示する表示手段とを有し、
    前記調整手段は、
    前記出力領域の少なくとも一辺のサイズが前記画像の対応する辺よりも大きい場合、前記画像を拡大し、予め設定されている前記画像内の主要被写体の分布する領域の欠損部分が最小となるように前記拡大後の画像をトリミングし、また、
    前記出力領域の各辺のサイズが前記画像の対応する辺以下で且つ前記主要被写体の分布する領域の対応する辺より大きい場合、前記画像を変倍することなく、前記主要被写体の分布する領域を欠損しないように前記画像をトリミングし、また、
    前記出力領域の各辺のサイズが前記画像の対応する辺以下で且つ前記主要被写体の分布する領域の対応する辺より大きくない場合、前記画像を縮小し、前記主要被写体の分布する領域の欠損部分が最小となるように前記縮小後の画像をトリミングすることを特徴とする情報処理装置。
  7. 情報処理装置のプロセッサに、請求項1乃至5のいずれか1項に記載された情報処理装置の制御方法を実行させるためのプログラム。
JP2009280720A 2009-12-10 2009-12-10 情報処理装置の制御方法、情報処理装置、及び、プログラム Active JP5528081B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009280720A JP5528081B2 (ja) 2009-12-10 2009-12-10 情報処理装置の制御方法、情報処理装置、及び、プログラム
US12/949,339 US8995013B2 (en) 2009-12-10 2010-11-18 Information processing apparatus and control method for controlling display of a user interface screen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009280720A JP5528081B2 (ja) 2009-12-10 2009-12-10 情報処理装置の制御方法、情報処理装置、及び、プログラム

Publications (2)

Publication Number Publication Date
JP2011123663A JP2011123663A (ja) 2011-06-23
JP5528081B2 true JP5528081B2 (ja) 2014-06-25

Family

ID=44142562

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009280720A Active JP5528081B2 (ja) 2009-12-10 2009-12-10 情報処理装置の制御方法、情報処理装置、及び、プログラム

Country Status (2)

Country Link
US (1) US8995013B2 (ja)
JP (1) JP5528081B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102084582B1 (ko) 2012-02-24 2020-03-04 삼성전자 주식회사 화면에 표시된 개체의 크기 조정 방법 및 장치
JP6421967B2 (ja) * 2013-12-11 2018-11-14 株式会社大一商会 遊技機
JP6926763B2 (ja) * 2017-07-18 2021-08-25 富士フイルムビジネスイノベーション株式会社 画像処理装置及びプログラム
JP6528031B2 (ja) * 2017-10-31 2019-06-12 株式会社大一商会 遊技機
JP7129242B2 (ja) * 2018-06-27 2022-09-01 キヤノン株式会社 画像装置及び方法
JP7275511B2 (ja) * 2018-09-21 2023-05-18 富士フイルムビジネスイノベーション株式会社 情報処理装置およびプログラム
JP7358421B2 (ja) * 2021-06-29 2023-10-10 キヤノン株式会社 プログラム、情報処理装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3404422B2 (ja) * 1993-08-10 2003-05-06 ブラザー工業株式会社 ファクシミリ装置
US6310984B2 (en) * 1998-04-09 2001-10-30 Hewlett-Packard Company Image processing system with image cropping and skew correction
US6912311B2 (en) * 1998-06-30 2005-06-28 Flashpoint Technology, Inc. Creation and use of complex image templates
US6456305B1 (en) * 1999-03-18 2002-09-24 Microsoft Corporation Method and system for automatically fitting a graphical display of objects to the dimensions of a display window
US6449398B1 (en) * 1999-06-17 2002-09-10 Hewlett-Packard Company Method for correction adjustment of resized image aspect ratio mismatch
JP2003046763A (ja) * 2001-08-01 2003-02-14 Canon Inc 画像処理装置及び方法
JP3646931B2 (ja) * 2001-08-29 2005-05-11 セイコーエプソン株式会社 イメージレタッチプログラム
JP4143314B2 (ja) * 2002-03-15 2008-09-03 キヤノン株式会社 画像処理方法及びそれを実現する装置及びプリンタドライバ
JP3919565B2 (ja) * 2002-03-15 2007-05-30 キヤノン株式会社 印刷制御装置及び印刷制御方法
JP2004023544A (ja) * 2002-06-18 2004-01-22 Canon Inc 画像処理装置
JP2005094639A (ja) * 2003-09-19 2005-04-07 Konica Minolta Medical & Graphic Inc 画像出力システム、画像出力制御方法、その方法を実行するためのプログラム及びプログラムを格納した記録媒体
JP4533273B2 (ja) * 2005-08-09 2010-09-01 キヤノン株式会社 画像処理装置及び画像処理方法、プログラム
US8971667B2 (en) * 2006-10-23 2015-03-03 Hewlett-Packard Development Company, L.P. Digital image auto-resizing

Also Published As

Publication number Publication date
US20110141492A1 (en) 2011-06-16
JP2011123663A (ja) 2011-06-23
US8995013B2 (en) 2015-03-31

Similar Documents

Publication Publication Date Title
JP5528081B2 (ja) 情報処理装置の制御方法、情報処理装置、及び、プログラム
US7495803B2 (en) Method and system for creating print data of superimposed document and pattern page read from spool file
JP6357297B2 (ja) 表示制御プログラム、表示制御方法、表示装置および印刷システム
JP5539280B2 (ja) データ処理装置、データ処理方法およびプログラム
JP4444922B2 (ja) フォントダウンロード装置およびフォントダウンロードプログラム
US9251444B2 (en) Image forming apparatus, non-transitory computer-readable storage medium and print control method
JP4966533B2 (ja) 印刷システム、印刷方法、印刷プログラムおよび記録媒体
JP2000222156A (ja) 印刷出力制御装置、印刷出力制御方法及び印刷出力制御機能を有するプログラムを記録したコンピュータ読み取り可能な記録媒体
US20130063736A1 (en) Information processing apparatus, method, and program
JP2001063155A (ja) プリンタホスト、印刷コマンド生成装置およびプログラムが記憶されている記憶媒体
JP2005227865A (ja) 印刷制御装置、方法およびプログラム
JP2004102712A (ja) 印刷装置、印刷指示装置、画像形成装置、印刷方法およびプログラム
JP2010231377A (ja) アプリケーションの機能拡張方法およびシステムおよびプログラム
US7961341B2 (en) Print system, print data supplying device, and method for supplying print data to printer
US10583670B2 (en) Method for displaying objects based on display resolution, information processing apparatus for implementing method, and computer-readable medium storing instructions therefor
JP4481779B2 (ja) 印刷システム、印刷データ生成方法、及びプログラム
JP2009048467A (ja) 拡大縮小印刷方法
JP2004287496A (ja) 印刷データ生成プログラム、該プログラムを記録した記録媒体、クライアント装置及びサーバ
KR101279068B1 (ko) 용지의 인쇄가능 영역을 벗어나는 크기를 가지는워터마크를 크기수정하기 위한 방법 및 장치
JP5193744B2 (ja) 印刷設定用プログラム及び印刷制御装置
JP3695093B2 (ja) 印刷処理システム、印刷処理方法、印刷処理制御プログラムが記録されたコンピュータ読み取り可能な記録媒体、及び印刷処理システムに用いられるデータ変換装置
JP2001307122A (ja) 顔写真画像切り抜き方法
JP2009100012A (ja) 画像領域の設定
JP2008021081A (ja) プリンタドライバプログラム、画像形成システム
JPH0417024A (ja) 文書処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121120

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131029

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131112

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131225

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140318

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140415

R151 Written notification of patent or utility model registration

Ref document number: 5528081

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151