以下、本発明を実施するための最良の形態について図面を用いて説明する。なお、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
(実施形態1)
図1は、本実施形態における画像処理装置100の構成を示す図である。画像処理装置の一例としてMFP(Multi Function Peripheral)を例に説明するが、本実施形態における画像処理装置はこれに限らず、プリンタ等のSFP(Single Function Peripheral)であってもよい。
CPU101はROM102やHDD104に格納された制御プログラムを読み出して画像処理装置100全体の制御行う。ROM102は、例えば後述するフローチャートに係る処理を実行するための制御プログラムなどの情報を格納する。RAM103はCPU101の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD104はROM102と同様に、例えば制御プログラムなどの情報を格納する。
操作部105は表示部(例えばタッチパネル機能を有する液晶表示部)やキーボードを備える。操作部105は各種操作画面を表示したり、操作部105を介してユーザに入力された情報をCPU101に伝えたりする。
スキャナ108は原稿を読み取り、画像データ(原稿画像)を生成する。プリンタ107は操作部105を介して入力されたユーザの指示や外部I/F106を介して外部装置から入力されたコマンドに基づいて、シートに印刷処理を実行する。
外部I/F106はネットワーク110を介して外部のPC(Personal Computer)やサーバ装置と通信を行う。
次に操作部105に表示される各操作画面について説明する。
ユーザが不図示のコピーボタンを押下することで、図2に示すコピー画面200が操作部105に表示される。ユーザはコピー画面200においてコピーに関する様々な印刷設定を行うことができる。
印刷設定として、例えばスキャナ108で読み取った画像データを印刷するシートを選択することができる。ユーザが印刷で使用するシートを選択したい場合には、シート選択ボタン202をタッチ操作などで選択(押下)する。ユーザがシート選択ボタン202を選択すると、図3に示すシート選択画面300が操作部105に表示される。シート選択画面300においてユーザがボタン301を選択すると、印刷で使用するシートが自動と設定される。この自動とは、印刷される画像データのサイズに基づいて、適切なサイズのシートを不図示の給紙カセットから選択されることを示す。また、シート選択画面300においてユーザがボタン302〜305を選択すると、それぞれに対応するサイズのシートが印刷で使用するシートとして選択される。
他の印刷設定として、例えばスキャナ108で生成した原稿画像を、拡大もしくは縮小してシートに印刷するための所望の印刷倍率を設定することができる。ユーザが所望の印刷倍率を設定したい場合には、ユーザはコピー画面200の倍率ボタン201を選択する。ユーザが倍率ボタン201を選択すると、図4に示す倍率設定画面400が操作部105に表示される。倍率設定画面400において、401〜409は、シートのサイズに応じた倍率を設定するためのボタンである。ユーザは原稿のサイズと印刷で使用するシートのサイズとに基づいて、401〜409の中から所望のボタン(所望の印刷倍率)を選択すればよい。410は等倍の設定を行うためのボタンである。また、操作部105を介して411に任意の値を入力することにより、ユーザは401〜410で示す倍率以外の所望の印刷倍率を設定することができる。
ここで、シート選択画面300において印刷で使用するシートとしてA3を、倍率設定画面400において印刷倍率として141%をユーザが選択したとする。すると、操作部105に表示されるコピー画面は、図5に示すコピー画面500となる。図2のコピー画面200とは異なり、コピー画面500は501と502がユーザの設定した印刷設定に変更されている。なお、印刷設定として印刷で使用するシートの選択、印刷倍率の設定を例に説明したが、原稿混載、ページ集約、綴じ代など、他にも様々な設定が可能である。例えば綴じ代の設定を行いた場合には、綴じ代ボタン203を選択することで、不図示の綴じ代設定画面が表示され、綴じ代の位置や綴じ代の大きさを設定することができる。
次に、スキャナ108で生成した原稿画像の全領域がシートに印刷される場合と、原稿画像の一部がシートに印刷されない場合の具体例を説明する。
まず、原稿画像の全領域が印刷される場合について説明する。ユーザがスキャナ108にA4Rの原稿をセットし、更に印刷設定として印刷で使用するシートをA3、印刷倍率を141%と設定したとする。このとき、ユーザの指示に応じてスキャナ108はA4Rの原稿を読み取り、ユーザに設定された印刷倍率に基づいて原稿画像を生成する。ここで生成される原稿画像のサイズは、図6(A)で示すようにA3サイズとなる。図6(B)は、印刷で使用するシートを示すシート画像と、スキャナ108が生成した原稿画像とのサイズを比較する図である。図6(B)では、シート画像を破線で示し、原稿画像を実線で示しているが、原稿画像とシート画像のサイズは一致するので、シート画像と原稿画像が重なって示されている。図6(B)では、原稿画像の全領域がシートに印刷されることになる。
次に、原稿画像の一部がシートに印刷されない場合について説明する。ユーザがスキャナ108にA4の原稿をセットし、更に印刷設定として印刷で使用するシートをA3、印刷倍率を141%と設定したとする。このとき、ユーザの指示に応じてスキャナ108はA4の原稿を読み取り、ユーザに設定された印刷倍率に基づいて原稿画像を生成する。ここで生成される原稿画像のサイズは、図7(A)で示すようにA3縦向きとなる。図7(B)は、印刷で使用するシートを示すシート画像と、スキャナ108が生成した原稿画像とのサイズを比較する図である。図7(B)では、図6(B)と同様にシート画像を破線で示し、原稿画像を実線で示すが、図6(B)とは異なり、原稿画像とシート画像のサイズは一致しない。従って、原稿画像の一部の領域はシートに印刷されないことになる。
本実施形態では、図7(B)で示すように原稿画像の一部の領域がシートに印刷されない場合に、原稿画像のどの領域が印刷され、原稿画像のどの領域が印刷されないかをユーザが認識できるように、それぞれの領域を区別可能に表示する。以降はこの表示に関して説明する。
ユーザがコピーの指示を行うと、CPU101は原稿画像の全領域が印刷されるか否かを判定する。この判定について、図8を用いて説明する。図8は原稿画像と印刷で使用するシートを示し、pxとpyはそれぞれ印刷で使用するシートの横の長さと縦の長さを、また、ixとiyはそれぞれ原稿画像の縦の長さと原稿画像の横の長さを示す。図8において、px≧ixかつpy≧iyであれば、原稿画像の全領域が印刷されるとCPU101は判定する。一方、px<ixまたはpy<iyであれば、原稿画像の一部の領域は印刷されないとCPU101は判定する。
原稿画像の全領域が印刷されるとCPU101が判定した場合には、図9に後述するプレビュー画面900のような表示を行うことなく、ユーザの指示に基づいて印刷を実行する。一方、原稿画像の一部の領域は印刷されないとCPU101が判定した場合は、印刷を実行せずに、原稿画像のどの領域が印刷され、原稿画像のどの領域が印刷されないかをユーザに通知するための画面を操作部105に表示する。このとき操作部105に表示される画面の一例を、図9に示す。
図9(A)のプレビュー画面900は、原稿画像のどの領域が印刷され、原稿画像のどの領域が印刷されないかをユーザに通知するために操作部105に表示される画面である。なお、コピーの実行に関して、ユーザはスキャナ108にA4の原稿をセットし、更に印刷設定として印刷で使用するシートをA3、印刷倍率を141%と設定したとする。
901は、印刷で使用するシートを示すシート画像であり、A3のシートを示す。902は、スキャナ108が生成した原稿画像を示す。本実施形態では、シート画像と原稿画像の両方を表示する。原稿のサイズはA4だが、プレビュー画面900では印刷倍率が141%と設定されているので、原稿画像のサイズはA3縦向きとなる。プレビュー画面900では、シート画像901と原稿画像902とを重畳して表示することで、原稿画像のどの領域がシートに印刷され、原稿画像のどの領域がシートに印刷されないかを区別可能にすることができる。
領域903は、原稿画像902のシートに印刷されない領域を示す。本実施形態では、領域903を網掛け表示することで強調表示しているので、ユーザは領域903が印刷されない領域だと認識することができる。なお、強調表示の方法は網掛け表示に限定されるものではなく、枠の色を変えるなど他の方法であってもよい。また、シート画像901と原稿画像902とを重畳して表示することにより、シート画像901と重なっていない領域が原稿画像902のシートに印刷されない領域だとわかるため、領域903の強調表示はしなくても構わない。
904は、印刷で使用するシートを変更するためのボタンである。プレビュー画面900では、印刷で使用するシートとして設定されているA3が強調表示されている。ボタン904のいずれかを選択することで、ユーザは印刷で使用するシートを変更することができる。このシートの変更に関しては、後述する図9(B)を用いて説明する。なお、ボタン904でシートを選択するときには、画像処理装置100がサポートしているすべてのシートを選択可能な構成にしてもよく、不図示の給紙カセットにセットされているシートの中から所望のシートを選択できるようにしてもよい。プレビュー画面900では、画像処理装置100に備えられた4つの給紙カセットにセットされているシートの中からシートを選択する例を示している。
905は、シート選択画面300や倍率設定画面400で設定された印刷設定を示す。905のうち、「原稿」はスキャナ108が読み取る原稿のサイズを、「倍率」は印刷倍率を、「出力」は印刷で使用するシートのサイズを示す。906は、コピーの実行を指示するためのボタンである。
次に、ボタン904を用いた印刷で使用するシートの変更について説明する。プレビュー画面900において、ユーザが印刷で使用するシートをA3からA4Rに変更したとする。このとき、操作部105に表示される画面を図9(B)のプレビュー画面910に示す。911は、変更後のシートを示すシート画像であり、A4Rのシートを示す。そして領域912は、原稿画像のシートに印刷されない領域を示す。プレビュー画面900と比較して、印刷で使用するシートがA3よりも小さいA4Rに変更されたため、領域912が領域903よりも大きくなっている。
次に、原稿画像に対して実行するレイアウト編集処理について説明する。あるユーザがA4の原稿を拡大してA3のシートにコピーしたいと考え、シート選択画面300において印刷で使用するシートとしてA3を、倍率設定画面400において印刷倍率として141%を設定したとする。しかしながら、スキャナ108にA4の向きで原稿をセットしてしまうと、図7で示したように原稿画像の全領域がA3のシートに印刷されないことになってしまう。これを防ぐためには、ユーザはA4の原稿をA4の向きではなくA4Rの向きでセットすれば、原稿画像の全領域が印刷されることになる。しかしながら、一般的なユーザは、拡大印刷するときに所望の結果を得るためにどのようにスキャナ108に原稿をセットすればよいのかわからないこともあると考えられる。そこで本実施形態では、原稿画像の全領域が印刷されない場合に、直感的な操作で原稿画像のレイアウトを編集し、所望の印刷結果を得られる仕組みをユーザに提供することを更なる目的とする。
図10は、本実施形態におけるレイアウト編集処理を説明する図である。
図10(A)のプレビュー画面1000は、プレビュー画面900と同様の画面であり、操作部105に表示される。1001はシート画像を示し、1002は原稿画像を示す。1003は、原稿画像のシートに印刷されない領域を示す。また、本実施形態では、操作部105はタッチパネルで構成されていて、ユーザはタッチ、ドラッグ、フリックなどの各種操作の入力が可能である。
1004はユーザが原稿画像1002をタッチしている様子を示す。ユーザが原稿画像1002をタッチすると、原稿画像1002が選択状態になり、レイアウト編集処理を受け付ける状態になる。原稿画像1002が選択状態になると、原稿画像1002が強調表示される(プレビュー画面1000では枠が太くなっている)。
本実施形態では、プレビュー画面1000において、ユーザは原稿画像を時計回りに90°あるいは反時計回りに90°回転させて、原稿画像とシート画像との向きを合わせることで、原稿画像の全領域を印刷できるようになる。ここでは、ユーザが原稿画像を反時計回りに90°回転させる場合について説明する。ユーザが原稿画像を反時計回りに90°回転させる場合には、図10(B)のプレビュー画面1010に示すように、ユーザはタッチした原稿画像を回転させるためのドラッグ操作を入力する。本実施形態では、画像処理装置100のCPU101はドラッグ操作の始点と終点を検出し、検出した始点と終点とに基づいて後述する回転処理を実行する。
図11〜図13は、回転処理について説明する図である。
本実施形態では、図11で示すように、原稿画像とシート画像をそれぞれ4つの領域に分割し、原稿画像に対するドラッグ操作が原稿画像のどの領域から開始し、そしてシート画像のどの領域で終了したかを検知する。そして検知した領域がどの領域であるかに基づいて、回転処理を実行する。
図12は、ドラッグ操作の始点と終点との組み合わせのそれぞれについて、CPU101が実行する回転処理について定義した図である。「−」と定義されている場合は、回転処理が実行されないことを示す。なお、図12には「左上にシフト」「右下にシフト」など原稿画像をシフトするシフト処理についても定義しているが、このシフト処理に関しては後述する図13と図14で説明する。
プレビュー画面1010で示すようにユーザが原稿画像に対するドラッグ操作を入力すると、ドラッグ操作の始点は領域A、終点は領域bとCPU101は検知する。図12によると、始点が領域A、終点が領域bである場合は、原稿画像を270°回転させるための指示が入力されたとCPU101は判定する。なお、図12の回転角度は時計回りの回転角度を示している。
次に、原稿画像をシフトするシフト処理について説明する。図13(A)は、プレビュー画面1010の一部を抜き出した図である。図13(A)に示すドラッグ操作が入力された場合には、図12によると、CPU101は原稿画像を270°回転させる回転処理を実行する。回転処理が原稿画像の中心点1301を基準に実行されると、原稿画像を270°回転させたあとのレイアウトは、図13(B)となる。図13(B)では、原稿画像のシートに印刷されない領域が残ったままになっているため、ユーザは原稿画像をドラッグ操作などで更に移動させるという手間がかかってしまう。本実施形態におけるシフト処理は、このユーザの手間を軽減するものである。
図13(A)に示すドラッグ操作が入力された場合には、図12によると、CPU101は原稿画像を270°回転させる回転処理を実行するとともに、左上にシフトを行うと定義されている。左上にシフトとは、シート画像の左上の頂点1302と、回転後の原稿画像の左上の頂点1303との位置が一致するようにシフトすることである。このシフト処理を実行することによって、回転処理後の原稿画像は図14のように表示されるため、ユーザは図13(B)から図14にするための操作を行う手間が軽減される。また、図14の1401で示すように、ドラッグ操作に基づいて印刷設定が「270°回転」と「左上シフト」に変更されていることがわかる。このように、画像処理装置100の操作に詳しくないユーザであったとしても、所望の印刷結果を得るために直感的な操作で簡単に印刷設定を変更することができる。また、図14においてユーザがコピーの実行を指示すると、1401に示す変更後の印刷設定に基づいて印刷が実行され、その印刷結果は図14に示す通りのレイアウトとなる。
なお、図12の「左下にシフト」は、シート画像の左下の頂点と回転処理後の原稿画像の左下の頂点の座標とが一致するようにシフトすることである。「右下にシフト」は、シート画像の右下の頂点と回転処理後の原稿画像の右下の頂点の座標とが一致するようにシフトすることである。「右上にシフト」は、シート画像の右上の頂点と回転処理後の原稿画像の右上の頂点の座標とが一致するようにシフトすることである。
次に、原稿画像の回転以外のレイアウト編集処理として、原稿画像の変倍処理について説明する。図15のプレビュー画面1500は、ユーザがスキャナ108にA3の原稿をセットし、更に印刷設定として印刷で使用するシートをA4R、印刷倍率を100%(等倍)と設定し、印刷の指示を行った場合に操作部105に表示される画面である。破線で示す1501がシート画像であり、実線で示す1502が原稿画像である。そして網掛け表示で示す領域が、原稿画像1502のシートに印刷されない領域である。このとき、ユーザは原稿画像を縮小することで、原稿画像の全領域をシートに印刷することができる。
原稿画像の変倍処理を、図16を用いて説明する。ユーザが原稿画像をタッチすると、図16(A)のプレビュー画面1600のように、原稿画像が強調表示され、レイアウト編集処理を受け付ける状態となる。なお、上述した回転処理と変倍処理とを区別するために、画像処理装置100のCPU101は、原稿画像がレイアウト編集処理を受け付ける状態のときに、ユーザがどの領域を操作するかに基づいて回転処理と変倍処理のどちらを実行するかを切り換える。具体的には、1601〜1604で示す原稿画像の各頂点に対してユーザの操作が行われた場合には、CPU101は変倍処理を実行する。
図16(B)のプレビュー画面1610は、変倍処理の具体例な方法を説明する図である。プレビュー画面1610では、ユーザは原稿画像の頂点1604をタッチし、そのまま原稿画像の対角線上をドラッグする。そしてCPU101は、原稿画像の対角線の長さをZ、ドラッグ操作による原稿画像の対角線上の移動距離をLとして、「変倍率=(Z−L)/Z*100(%)」と算出する。縮小の場合はL>0のため、変倍率<100%となり、拡大の場合はL<0のため、変倍率はL>100%となる。この変倍率に基づいて、原稿画像に対する変倍処理が実行される。変倍処理が実行されると、シート画像と変倍処理が実行された原稿画像とが操作部105に表示される。
プレビュー画面1610において、変倍率が70%となるようにドラッグ操作を行うと、変倍処理実行後には、図17に示すようにシート画像と変倍処理が実行された原稿画像とのサイズが一致する。本実施形態では、ユーザのドラッグ操作によって算出される変倍率が70%にある程度近い場合(例えば65%〜75%)は、変倍率を70%と見なして変倍処理を実行する。これにより、ユーザが正確なドラッグ操作を行わなくても、シート画像と変倍処理が実行された原稿画像とのサイズが一致するように変倍処理を実行することができるため、ユーザの操作性が向上する。図17の1701はユーザのドラッグ操作に基づいて変更された印刷設定を示して、倍率が「70%」に変更されていることがわかる。
なお、プレビュー画面1610ではユーザが頂点1604をドラッグしたときに原稿画像の左上の頂点1601を基準に変倍処理を実行しているが、他の頂点1604をドラッグしたとしても、本実施形態では頂点1601を基準に変倍処理を実行する。つまり、本実施形態では、変倍処理を実行するときには、シート画像の頂点と位置が一致している原稿画像の頂点を基準とする。複数一致する場合は、いずれを基準にしても構わない。仮に原稿画像の頂点がシート画像の頂点と位置がまったく一致していない場合には、本実施形態では原稿画像の右上の頂点を基準にすることとする。
次に、原稿画像のレイアウト編集処理の他の例として、原稿画像をユーザのドラッグ操作で移動させる移動処理について説明する。図18(A)のプレビュー画面1800は、ユーザがスキャナ108にA4の原稿をセットし、更に印刷設定として印刷で使用するシートをA3、印刷倍率を141%と設定し、印刷の指示を行った場合に操作部105に表示される画面である。破線で示す1801がシート画像であり、実線で示す1802が原稿画像である。そして網掛け表示で示す領域が、原稿画像1802のシートに印刷されない領域である。
ユーザは移動処理を実行するために、まず原稿画像をタッチする。すると、プレビュー画面1800のように原稿画像が強調表示され、レイアウト編集処理を受け付ける状態となる。なお、上述した回転処理及び変倍処理と区別するために、本実施形態ではユーザが2本の指でドラッグ操作を行った場合、つまり、画像処理装置100のCPU101が2点のタッチを検知した場合に移動処理を実行することとする。
図18(B)のプレビュー画面1810で示すように、ユーザが2本の指で原稿画像を上に移動させるドラッグ操作を行ったとする。すると図19に示すように、原稿画像が上に移動して原稿画像1802のシートに印刷されない領域の位置が変化する。これにより、原稿画像の全領域がシートに印刷されない場合であっても、ユーザは所望の領域をシートに印刷することができる。図19の1901はユーザのドラッグ操作に基づいて変更された印刷設定を示して、印刷設定が「上シフト」に変更されていることがわかる。なお、本実施形態では移動処理として原稿画像を上に移動させる例を説明したが、ユーザは任意の方向に原稿画像を移動させることができる。
以上、原稿画像のレイアウト編集処理として、回転処理、変倍処理、移動処理の3つについて説明した。しかしながら、これらのレイアウト編集処理は原稿画像だけではなく、シート画像に対しても実行することができる。
図20(A)のプレビュー画面2000は、ユーザがスキャナ108にA4の原稿をセットし、更に印刷設定として印刷で使用するシートをA3、印刷倍率を141%と設定したときに操作部105に表示される画面である。2001はシート画像を、2002は原稿画像を示す。原稿画像に対してレイアウト編集処理を実行する場合には、ユーザはまず原稿画像をタッチすると説明したが、シート画像に対してレイアウト編集処理を実行したい場合には、ユーザはシート画像をタッチすればよい。
プレビュー画面2000においてユーザがシート画像2001をタッチすると、図20(B)のプレビュー画面2010のようにシート画像が強調表示され、レイアウト編集処理を受け付ける状態となる。なお、シート画像と原稿画像の重なっている領域をタッチした場合には、本実施形態では原稿画像をタッチしたとみなすこととする。シート画像に対するレイアウト編集処理は、上述した原稿画像に対する回転処理、変倍処理、移動処理と同様の処理のため、説明は省略する。なお、シート画像に対するレイアウト編集処理によって印刷で使用するシートのサイズが変更された場合には、変更後のサイズのシートを用いて印刷が実行される。
次に本実施形態におけるプレビュー画面の表示及びレイアウト編集処理について、図21のフローチャートを用いて説明する。なお、図21のステップS2101〜S2108の各ステップは、画像処理装置100が備えるCPU101がROM102等のメモリに格納されたプログラムをRAM103に展開して実行することによって処理される。
ユーザが図3のシート選択画面300や倍率設定画面400などで所望の印刷設定を行い、不図示の実行ボタンでコピーの実行を指示したとする。するとステップS2101において、CPU101は、スキャナ108が原稿を読み取って生成した原稿画像の全領域がシートに印刷されるか否かを判定する。この判定は、図8で説明したように原稿画像のサイズと印刷で使用するシートのサイズとを比較することで行われる。ステップS2101において原稿画像の全領域が印刷されるとCPU101が判定すると、ステップS2108に進みプリンタ107が印刷を実行する。一方、ステップS2101において原稿画像の全領域が印刷されないとCPU101が判定すると、ステップS2102に進む。
ステップS2102において、操作部105は原稿画像のどの領域がシートに印刷されないかをユーザに通知するために、プレビュー画面を表示する。このとき表示されるプレビュー画面は、図9(A)のプレビュー画面900のように、シート画像と原稿画像とを重畳して表示することで、原稿画像のどの領域が印刷されないかを区別可能にする。また、プレビュー画面900の領域903のように、原稿画像のシートに印刷されない領域を強調表示してもよい。
次にステップS2103において、CPU101はレイアウト編集処理の対象として原稿画像が選択されたか否かを判定する。本実施形態では、ステップS2102で表示されたプレビュー画面において、原稿画像がタッチされた場合に原稿画像が選択されたとCPU101が判定する。ステップS2103において原稿画像が選択されたとCPU101が判定すると、ステップS2104に進み、原稿画像に対するレイアウト編集処理が実行される。ステップS2104の原稿画像に対するレイアウト編集処理については、後述する図22のフローチャートを用いて説明する。一方、ステップS2103において原稿画像が選択されていないとCPU101が判定すると、ステップS2105に進む。
次にステップS2105において、CPU101はレイアウト編集処理の対象としてシート画像が選択されたか否かを判定する。本実施形態では、ステップS2103で表示されたプレビュー画面において、シート画像がタッチされた場合にシート画像が選択されたとCPU101が判定する。ステップS2105においてシート画像が選択されたとCPU101が判定すると、ステップS2106に進み、シート画像に対するレイアウト編集処理が実行される。ステップS2106のシート画像に対するレイアウト編集処理については、後述する図23のフローチャートを用いて説明する。一方、ステップS2105においてシート画像が選択されていないとCPU101が判定すると、ステップS2107に進む。
次にステップS2107において、CPU101は印刷を開始するか否かを判定する。本実施形態では、不図示の実行ボタンやプレビュー画面900のボタン906がユーザによって選択された場合に、印刷を開始するとCPU101が判定する。ステップS2107において印刷を開始するとCPU101が判定すると、ステップS2108に進みプリンタ107が印刷を実行する。一方、ステップS2107において印刷を開始しないとCPU101が判定すると、ステップS2103に戻る。
なお、本実施形態では図21のステップS2101で原稿画像の全領域が印刷される場合にはプレビュー画面を表示せずに印刷を実行すると説明したが、本実施形態はこれに限定されるものではない。他には、例えばステップS2101の判定を行わずに、原稿画像の全領域が印刷されるか否かに関わらず印刷の実行前にプレビュー画面を表示する構成にしてもよい。
次に、図21のステップS2104の原稿画像のレイアウト編集処理について、図22のフローチャートを用いて説明する。なお、図22のステップS2201〜S2210の各ステップは、画像処理装置100が備えるCPU101がROM102等のメモリに格納されたプログラムをRAM103に展開して実行することによって処理される。
まずステップS2201において、CPU101は、ステップS2102で表示したプレビュー画面において原稿画像を選択状態にする。本実施形態では、図10(A)のプレビュー画面1000のように原稿画像が選択されていることをユーザに通知するために、原稿画像を強調表示する。また本実施形態では、原稿画像が選択状態になっているということは、原稿画像がレイアウト編集処理を受け付ける状態である。
次にステップS2202において、CPU101は回転処理の操作を受け付けたか否かを判定する。回転処理とは、図10〜図14で説明したように原稿画像を回転する処理である。本実施形態では、原稿画像の領域であって、頂点以外の領域に1本の指でユーザが操作を行った場合に、回転処理の操作を受け付けたとCPU101が判定する。ステップS2202において回転処理の操作を受け付けたとCPU101が判定すると、ステップS2203に進み、CPU101はユーザの操作に基づいて図10〜図14で説明した原稿画像の回転処理を実行する。回転処理を実行すると、CPU101は当該回転処理に基づいて印刷設定を変更する。また、CPU101は操作部105が表示するプレビュー画面を回転処理実行後のプレビュー画面となるように更新し、図14の1401のように変更後の印刷設定を表示する。一方、ステップS2202において回転処理の操作を受け付けていないとCPU101が判定すると、ステップS2204に進む。
次にステップS2204において、CPU101は変倍処理の操作を受け付けたか否かを判定する。変倍処理とは、図15〜図17で説明したように原稿画像を拡大もしくは縮小する処理である。本実施形態では、原稿画像の頂点に1本の指でユーザが操作を行った場合に、変倍処理の操作を受け付けたとCPU101が判定する。ステップS2204において変倍処理の操作を受け付けたとCPU101が判定すると、ステップS2205に進み、CPU101はユーザの操作に基づいて図15〜図17で説明した原稿画像の変倍処理を実行する。変倍処理を実行すると、CPU101は当該変倍処理に基づいて印刷設定を変更する。また、CPU101は操作部105が表示するプレビュー画面を変倍処理実行後のプレビュー画面となるように更新し、図17の1701のように変更後の印刷設定を表示する。一方、ステップS2204において変倍処理の操作を受け付けていないとCPU101が判定すると、ステップS2206に進む。
次にステップS2206において、CPU101は移動処理の操作を受け付けたか否かを判定する。移動処理とは、図18、図19で説明したように原稿画像を任意の方向に移動させる処理である。本実施形態では、原稿画像に対して2本の指でユーザが操作を行った場合に、移動処理の操作を受け付けたとCPU101が判定する。ステップS2206において移動処理の操作を受け付けたとCPU101が判定すると、ステップS2207に進み、CPU101はユーザの操作に基づいて図18、図19で説明した原稿画像の移動処理を実行する。移動処理を実行すると、CPU101は当該移動処理に基づいて印刷設定を変更する。また、CPU101は操作部105が表示するプレビュー画面を移動処理実行後のプレビュー画面となるように更新し、図19の1901のように変更後の印刷設定を表示する。一方、ステップS2206において移動処理の操作を受け付けていないとCPU101が判定すると、ステップS2208に進む。
次にステップS2208において、CPU101はシート画像が選択されたか否かを判定する。シート画像が選択されたとCPU101が判定すると、ステップS2209に進み原稿画像の選択状態を解除し、そして図21のステップS2105に進む。一方、シート画像が選択されていないとCPU101が判定すると、ステップS2210に進む。
次にステップS2210において、CPU101は印刷を開始するか否かを判定する。本実施形態では、不図示の実行ボタンやプレビュー画面900のボタン906がユーザによって選択された場合に、印刷を開始するとCPU101が判定し、図21のステップS2108に進む。一方、印刷を開始しないとCPU101が判定した場合には、ステップS2202に戻る。
次に、図21のステップS2106のシート画像のレイアウト編集処理について、図23のフローチャートを用いて説明する。なお、図23のステップS2301〜S2310の各ステップは、画像処理装置100が備えるCPU101がROM102等のメモリに格納されたプログラムをRAM103に展開して実行することによって処理される。
まずステップS2301において、CPU101は、ステップS2102で表示したプレビュー画面においてシート画像を選択状態にする。本実施形態では、図20(B)のプレビュー画面2010のようにシート画像が選択されていることをユーザに通知するために、シート画像を強調表示する。また本実施形態では、シート画像が選択状態になっているということは、シート画像がレイアウト編集処理を受け付ける状態である。
次にステップS2302において、CPU101は回転処理の操作を受け付けたか否かを判定する。回転処理とは、シート画像を回転する処理である。本実施形態では、シート画像の領域であって、頂点以外の領域に1本の指でユーザが操作を行った場合に、回転処理の操作を受け付けたとCPU101が判定する。ステップS2302において回転処理の操作を受け付けたとCPU101が判定すると、ステップS2303に進み、CPU101はユーザの操作に基づいてシート画像の回転処理を実行する。回転処理を実行すると、CPU101は操作部105が表示するプレビュー画面を回転処理実行後のプレビュー画面となるように更新する。一方、ステップS2302において回転処理の操作を受け付けていないとCPU101が判定すると、ステップS2304に進む。
次にステップS2304において、CPU101は変倍処理の操作を受け付けたか否かを判定する。変倍処理とは、シート画像を拡大もしくは縮小する処理である。本実施形態では、シート画像の頂点に1本の指でユーザが操作を行った場合に、変倍処理の操作を受け付けたとCPU101が判定する。ステップS2304において変倍処理の操作を受け付けたとCPU101が判定すると、ステップS2305に進み、CPU101はユーザの操作に基づいてシート画像の変倍処理を実行する。変倍処理を実行すると、CPU101は操作部105が表示するプレビュー画面を変倍処理実行後のプレビュー画面となるように更新する。一方、ステップS2304において変倍処理の操作を受け付けていないとCPU101が判定すると、ステップS2306に進む。
次にステップS2306において、CPU101は移動処理の操作を受け付けたか否かを判定する。移動処理とは、シート画像を任意の方向に移動させる処理である。本実施形態では、シート画像に対して2本の指でユーザが操作を行った場合に、移動処理の操作を受け付けたとCPU101が判定する。ステップS2306において移動処理の操作を受け付けたとCPU101が判定すると、ステップS2307に進み、CPU101はユーザの操作に基づいてシート画像の移動処理を実行する。移動処理を実行すると、CPU101は操作部105が表示するプレビュー画面を移動処理実行後のプレビュー画面となるように更新する。一方、ステップS2306において移動処理の操作を受け付けていないとCPU101が判定すると、ステップS2308に進む。
次にステップS2308において、CPU101は原稿画像が選択されたか否かを判定する。原稿画像が選択されたとCPU101が判定すると、ステップS2309に進みシート画像の選択状態を解除し、そして図21のステップS2103に進む。一方、シート画像が選択されていないとCPU101が判定すると、ステップS2310に進む。
次にステップS2310において、CPU101は印刷を開始するか否かを判定する。本実施形態では、不図示の実行ボタンやプレビュー画面900のボタン906がユーザによって選択された場合に、印刷を開始するとCPU101が判定し、図21のステップS2108に進む。一方、印刷を開始しないとCPU101が判定した場合には、ステップS2302に戻る。
以上のように、本実施形態によれば、原稿画像やシート画像にドラッグ操作を行うことで印刷設定を変更することができるため、所望の印刷結果を得るためにユーザはより簡易な操作で印刷設定を変更することができる。
(実施形態2)
実施形態1は、スキャナ108で1枚の原稿をコピーするときの処理について説明したが、当然ながらコピーは複数枚数の原稿に対して実行されることもある。本実施形態は、複数枚数の原稿をコピーする場合に、ユーザが同一サイズの原稿に対して何度もレイアウトを編集する手間を軽減させることを目的とする。
図24(A)のプレビュー画面2400は、操作部105に表示される画面であり、原稿画像の一部が印刷されないことが分かる。プレビュー画面2400においてユーザが原稿画像を左に90°回転させる回転処理を行った場合、図24(B)のプレビュー画面2410が表示される。そしてプレビュー画面2410においてユーザが実行を指示すると、図24(C)のプレビュー画面2420の2421のように、同一サイズの原稿に対して同じレイアウトの編集を適用するか否かをユーザに選択させる。プレビュー画面2420においてユーザがYesを選択すると、ユーザの操作に基づいて編集されたレイアウトを保持しておいて、以降のA4サイズの原稿についてはプレビュー画面2400を表示せずに保持したレイアウトでコピーを実行する。
次に本実施形態におけるプレビュー画面の表示及びレイアウト編集処理について、図25のフローチャートを用いて説明する。なお、図25の各ステップは、画像処理装置100が備えるCPU101がROM102等のメモリに格納されたプログラムをRAM103に展開して実行することによって処理される。また、図21のフローチャートと同様の番号のステップは、図21のフローチャートと同様の処理を行うため説明を省略する。
まずステップS2501において、CPU101は変数Nに1を設定する。そしてステップS2502において、スキャナ108はN枚目の原稿を読み取り、ステップS2101においてCPU101は原稿画像の全領域が印刷されるか否かを判定する。
ステップS2101において原稿画像の全領域が印刷されないと判定されると、ステップS2503に進み、CPU101は保持しているレイアウトを適用するか否かを判定する。N枚目の原稿画像のサイズと同じサイズの原稿画像に対して既にレイアウト編集処理が実行されていて、その編集されたレイアウトが画像処理装置に保持されている場合には、ステップS2503において保持するレイアウトを適用すると判定される。一方、N枚目の原稿画像のサイズに対応する編集されたレイアウトが画像処理装置に保持されていない場合には、ステップS2102に進み、操作部105はプレビュー画面2400のような画面を表示し、ユーザにレイアウトの編集を促す。
レイアウト編集処理が実行され、そして印刷が指示されると、ステップS2504において、CPU101はN枚目の原稿画像で編集されたレイアウトを以降の同一サイズの原稿画像にも適用するか否かを判定する。本実施形態では、プレビュー画面2420においてユーザがYesを選択した場合に、編集されたレイアウトを以降の同一サイズの原稿画像にも適用すると判定され、ステップS2505に進む。一方、プレビュー画面2420においてユーザがNoを選択した場合には、編集されたレイアウトを以降の同一サイズの原稿画像に適用しないと判定され、ステップS2108に進む。
次にステップS2505において、CPU101はN枚目の原稿画像で編集されたレイアウトをROM102などのメモリに保持する。ここで保持したレイアウトが、N枚目の原稿画像と同一サイズの原稿画像にも適用されることになる。
ステップS2108において印刷が実行されると、CPU101はスキャナ108のすべての原稿を読み取ったか否かを判定する。スキャナ108のすべての原稿を読み取った場合には、本フローチャートが示す処理を終了し、スキャナ108のすべての原稿を読み取っていない場合には、ステップS2507に進み、変数Nの値を1増やしてステップS2502に戻る。
以上のように本実施形態によれば、複数枚数の原稿をスキャナ108で読み取る場合に、同一サイズの原稿に対しては一度編集したレイアウトをそのまま適用することができるため、ユーザが何度もレイアウトを編集する手間を軽減することができる。
なお、ステップS2505で保持するレイアウトは、ある特定のサイズに対するレイアウトには限らない。スキャナ108には同一サイズの原稿が複数枚数セットされるとは限らず、例えばA4とA3のように複数のサイズの原稿がセットされる場合がある。この場合でも、本実施形態の画像処理装置は、ステップS2505において複数のサイズそれぞれに対応するレイアウトを保持することができる。
(実施形態3)
実施形態1と実施形態2では、原稿画像の全領域が印刷されない例として、原稿画像のサイズと印刷で使用するシートのサイズとが一致しない場合について説明した。しかしながら、原稿画像のサイズと印刷で使用するシートのサイズとが一致していても、印刷設定によっては原稿画像の全領域が印刷されない場合がある。本実施形態では、原稿画像のサイズと印刷で使用するシートのサイズとが一致していても原稿画像の全領域が印刷されない場合の例として、印刷設定として綴じ代が設定された場合を説明する。
ユーザがスキャナ108にA4の原稿をセットし、印刷設定として印刷で使用するシートをA4、印刷倍率を100%と設定し、更に綴じ代の設定として左に10mmと設定したとする。ユーザがコピーの実行を指示すると、操作部105には図26に示すプレビュー画面2600が表示される。プレビュー画面2600は上述した実施形態1及び実施形態2と同様にシート画像と原稿画像とを表示するが、綴じ代の設定がなされているため、領域2601に綴じ代の領域が示される。
領域2602は原稿画像のシートに印刷されない領域を示す。ここでは原稿画像と印刷で使用するシートのサイズは一致しているが、綴じ代の設定がされているため、領域2602が発生する。プレビュー画面2600によると、印刷すべき画像の一部が領域2602に含まれるので、ユーザはレイアウト編集処理を実行することが望ましい
本実施形態におけるレイアウト編集処理について説明する。なお、レイアウト編集処理を行うためにユーザが入力するドラッグ操作は実施形態1及び実施形態2と同様なので、説明は省略する。
プレビュー画面2600においてユーザが変倍処理を行うと、図27(A)のプレビュー画面2700にようにレイアウトが変更される。プレビュー画面2700では、ユーザが倍率85%の変倍処理を行ったことにより、原稿画像の全領域がシート画像に含まれる。図27(A)の2701はユーザのドラッグ操作に基づいて変更された印刷設定を示して、倍率が「85%」に変更されていることがわかる。
また、プレビュー画面2600においてユーザが移動処理を行うと、図27(B)のプレビュー画面2710のようにレイアウトが変更される。プレビュー画面2710では、ユーザが左に原稿画像を移動させたことにより、印刷すべき画像がシート画像に含まれている。また、ユーザが原稿画像を左に移動させたことにより、綴じ代の領域が10mから5mmに変更されている。図27(B)の2711はユーザのドラッグ操作に基づいて変更された印刷設定を示して、綴じ代の設定が「左に5mm」に変更されていることがわかる。
以上のように本実施形態によれば、原稿画像のサイズと印刷で使用するシートのサイズとが一致していない場合に限らず、綴じ代などの印刷設定によって原稿画像の全領域が印刷されない場合であっても、ユーザはレイアウト編集処理を実行することができる。また、レイアウト編集処理の結果に応じて、自動的に印刷設定を変更することもできる。
(その他の実施形態)
上述した実施形態1〜3は、画像処理装置100のスキャナ108を用いたコピー実行時の処理について説明したが、本発明を適用できる形態はこれに限るものではない。他の例として、PCにインストールされたプリンタドライバなど、印刷の設定を行う各種ソフトウェア上でも本発明を適用することができる。この場合、印刷されるコンテンツ(文章、図、写真など)のサイズと、印刷で使用すると選択されたシートのサイズとを比較し、当該コンテンツの全領域がシートに印刷されない場合には、当該コンテンツとシートを示すシート画像とを重畳して表示すればよい。更に、本発明で説明したレイアウト編集処理を実行してもよい。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。