(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0008】
以下、本発明を実施するための最良の形態について図面を用いて説明する。なお、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【0009】
(実施形態1)
図1は、本発明が実施される装置の一例としてのMFP(Multi Function Peripheral)のハードウェア構成を示す図である。
【0010】
図1において、システムバス110に対してCPU111、RAM112、ROM113、入力部114、表示制御部115、外部メモリI/F116、通信I/Fコントローラ117が接続される。また、タッチパネル118、ディスプレイ119、外部メモリ120が接続される。システムバス110に接続される各部は、システムバス110を介して互いにデータのやりとりを行うことができるように構成されている。
【0011】
ROM113は、不揮発性のメモリであり、画像データやその他のデータ、CPU111が動作するための各種プログラムなどが、それぞれ所定の領域に格納される。RAM112は、揮発性のメモリであり、CPU111の主メモリ、ワークエリア等の一時記憶領域として用いられる。CPU111は、例えばROM113に格納されるプログラムに従い、RAM112をワークメモリとして用いて、このMFP101の各部を制御する。なお、CPU101が動作するためのプログラムは、ROM113に格納されるのに限られず、外部メモリ(ハードディスク等)120に予め記憶しておいてもよい。
【0012】
入力部114は、ユーザ操作を受け付け、操作に応じた制御信号を生成し、CPU111に供給する。例えば、入力部114は、ユーザ操作を受け付ける入力デバイスとして、キーボードといった文字情報入力デバイス(不図示)や、マウス(不図示)やタッチパネル118といったポインティングデバイスなどを有する。なお、タッチパネル118は、例えば平面的に構成された入力部に対して接触された位置に応じた座標情報が出力されるようにした入力デバイスである。CPU111は、入力デバイスに対してなされたユーザ操作に応じて入力部114で生成され供給される制御信号に基づき、プログラムに従いこのMFP101の各部を制御する。これにより、MFP101に対し、ユーザ操作に応じた動作を行わせることができる。
【0013】
表示制御部115は、ディスプレイ119に対して画像を表示させるための表示信号を出力する。例えば、表示制御部115に対して、CPU111がプログラムに従い生成した表示制御信号が供給される。表示制御部115は、この表示制御信号に基づき表示信号を生成してディスプレイ119に対して出力する。例えば、表示制御部115は、CPU111が生成する表示制御信号に基づき、GUI(Graphical User Interface)を構成するGUI画面をディスプレイ119に表示させる。
【0014】
タッチパネル118はディスプレイ119と一体的に構成される。例えば、タッチパネル118を光の透過率がディスプレイ119の表示を妨げないように構成し、ディスプレイ119の表示面の上層に取り付ける。そして、タッチパネル118における入力座標と、ディスプレイ119上の表示座標とを対応付ける。これにより、あたかもユーザがディスプレイ119上に表示された画面を直接的に操作可能であるかのようなGUIを構成することができる。
【0015】
外部メモリI/F116には、例えばハードディスクやフロッピー(登録商標)ディスク、又はCDやDVD、メモリーカード等の外部メモリ120が装着可能になっている。CPU111の制御に基づき、装着された外部メモリ120からのデータの読み出しや、当該外部メモリ120に対するデータの書き込みを行う。通信I/Fコントローラ117は、CPU111の制御に基づき、例えばLANやインターネット、有線、無線等の各種ネットワーク102に対する通信を行う。ネットワーク102には、PCや他のMFP、プリンタ、サーバ等、様々な装置がMFP101と通信可能に接続される。
【0016】
スキャナ121は原稿を読み取り、画像データを生成する。プリンタ122は入力部114を介して入力されたユーザの指示や通信I/Fコントローラ117を介して外部装置から入力されたコマンドに基づいて、印刷処理を実行する。
【0017】
なお、CPU111はタッチパネル118への例えば以下の操作や状態を検出できる。タッチパネルを指やペンで触れたこと(以下、タッチダウンと称する)。タッチパネルを指やペンで触れている状態であること(以下、タッチオンと称する)。タッチパネルを指やペンで触れたまま移動していること(以下、ムーブと称する)。タッチパネルへ触れていた指やペンを離したこと(以下、タッチアップと称する)。タッチパネルに何も触れていない状態(以下、タッチオフと称する)等である。これらの操作や、タッチパネル上に指やペンが触れている位置座標はシステムバス110を通じてCPU111に通知され、CPU111は通知された情報に基づいてタッチパネル上にどのような操作が行なわれたかを判定する。ムーブについてはタッチパネル上で移動する指やペンの移動方向についても、位置座標の変化に基づいて、タッチパネル上の垂直成分・水平成分毎に判定できる。またタッチパネル上をタッチダウンから一定のムーブを経てタッチアップをしたとき、ストロークを描いたこととする。素早くストロークを描く操作をフリックと呼ぶ。フリックは、タッチパネル上に指を触れたままある程度の距離だけ素早く動かして、そのまま離すといった操作であり、言い換えればタッチパネル上を指ではじくように素早くなぞる操作である。CPU111は、所定距離以上を、所定速度以上でムーブしたことが検出され、そのままタッチアップが検出されるとフリックが行なわれたと判定できる。また、所定距離以上のムーブが検出され、そのままタッチオンが検出されている場合には、ドラッグが行なわれたと判定するものとする。タッチパネル118は、抵抗膜方式や静電容量方式、表面弾性波方式、赤外線方式、電磁誘導方式、画像認識方式、光センサ方式等、様々な方式のタッチパネルのうちいずれの方式のものを用いても良い。
【0018】
次に、MFP101が備えるプレビュー機能について説明する。本実施例において、プレビュー機能とは、RAM112もしくは外部メモリ120に保存された画像データをディスプレイ119に表示する機能である。CPU111は、この画像データから、ディスプレイ119で表示するのに適したフォーマットの画像データを生成する。以下ではディスプレイ119に表示するのに適したフォーマットの画像データをプレビュー画像と呼ぶ。尚、外部メモリ120の保存された画像データは、複数のページから構成されていてもよく、その場合にはページ毎にプレビュー画像が生成される。プレビュー機能は、プリンタ122による印刷前のプレビューに限らず、画像データの内容を確認する目的のあらゆる用途に適用することができる。
【0019】
MFP101は、一つ以上の方法により画像データをRAM112もしくは外部メモリ120に保存することができる。一つは、スキャナ121によって読み取られた原稿から生成された画像データを保存する方法である。又は、通信I/Fコントローラ117を介してネットワーク102上に接続されているPC等の外部装置から受信した画像データを保存する方法である。又は、外部メモリI/F116に装着された可搬型の記憶媒体(USBメモリやメモリーカード等)から受信した画像データを保存する方法である。その他、別の方法によって画像データを外部メモリ120に保存してもよい。尚、表示される画像データは、文字情報を含むものであってもよいし、写真やグラフィックイメージ等の画像情報を含むものであってもよいし、その両方やその他の情報を含むものであってもよい。
【0020】
図2は、MFP101のディスプレイ119にプレビュー画像を表示している状態を示した画面例である。
図2(A)におけるプレビュー画面200は、プレビュー画像を表示するための画面であり、プレビュー表示領域201、ページスクロールボタン202、拡大・縮小ボタン203、表示領域移動ボタン204、閉じるボタン205が含まれている。プレビュー表示領域201は、プレビュー画像206を表示するための表示領域である。
図2では、例としてプレビュー表示領域201には、プレビュー画像を1枚(1ページ分)表示している。ただし、次のページと前のページが存在することを示すために、プレビュー表示領域201の両端に、前後のページのプレビュー画像をその一部分だけ表示してもよい。又は、複数ページ分をプレビュー表示領域102に表示してもよい。ページスクロールボタン202は、次のページや前のページのプレビュー画像が存在する場合に押下可能となるボタンである。このボタンの押下によって、プレビュー表示領域201に表示するプレビュー画像206をユーザがしたボタンが示す方向のページへと変更することができる。拡大・縮小ボタン203は、プレビュー表示領域201に表示するプレビュー画像206の表示倍率を変更するためのボタンである。表示倍率は複数の段階に区切られており、ユーザの指示により任意の表示倍率に変更することができる。表示領域移動ボタン204は、プレビュー表示領域201に表示されるプレビュー画像206の表示位置を変更するためのボタンである。拡大・縮小ボタン203により表示倍率を大きくした場合に、プレビュー表示領域201にプレビュー画像206の一部しか表示されなくなることがある。そのような場合に、表示領域移動ボタン204により、プレビュー画像206の任意の位置を表示することができる。閉じるボタン205は、プレビュー画面200の画面を閉じ別の画面に遷移させ、また、プレビュー機能を終了させるためのボタンである。
【0021】
MFP101は、これらページスクロールボタン202、拡大・縮小ボタン203、表示領域移動ボタン204の代わりに、所定のジェスチャ操作によって、プレビュー画像206の表示を操作することができる。ジェスチャ操作は、上述のフリックやドラッグの他に、タッチパネル上の2点以上をタッチした状態(タッチダウン)からそれらの間隔を広げる操作であるピンチアウトや、逆に間隔を狭める操作であるピンチインがある。これ以外の操作をジェスチャ操作として採用しても構わない。尚、MFP101の装置の動作を決めるための設定として、ジェスチャ操作を受け付けるか否かを変更できるようにしてもよい。そして、ジェスチャ操作を受け付ける設定になっていた場合には、ページスクロールボタン202、拡大・縮小ボタン203、表示領域移動ボタン204等を非表示にしてもよい。
【0022】
図2の例では、ページ集約設定が行われた画像データをプレビュー表示している場合を示している。ページ集約設定とは、複数ページの原稿画像をそれぞれ縮小し、一枚の用紙上に配置する設定であり、Nページの原稿画像を一枚の用紙上に配置する場合をNin1レイアウトと呼ぶ。つまり、2ページの原稿画像を一枚の用紙上に配置する場合は2in1レイアウトであり、4ページの原稿画像を一枚の用紙上に配置する場合は4in1レイアウトとなる。本実施形態のMFP101は、ページ集約設定として、2in1、4in1、6in1、8in1等の設定が可能である。
図2(A)のプレビュー画像206は、A、B、C、Dとそれぞれ書かれた4枚の原稿画像に対して、4in1レイアウトのページ集約設定がされている場合の例である。
【0023】
図2(B)は、
図2(A)のプレビュー表示状態から、ユーザが、拡大・縮小ボタン203を押下してプレビュー画像206を拡大した後の表示例を示している。
図2(B)の207は、拡大されたプレビュー画像であり、元のプレビュー画像206の一部分(この場合、左上部分)のみがプレビュー表示されている状態である。尚、プレビュー画像の拡大や縮小は、拡大・縮小ボタン203の代わりにピンチイン操作やピンチアウト操作を用いて行ってもよい。即ち、ピンチアウトを用いると表示倍率が大きくなりプレビュー画像206は拡大されて表示される。逆にピンチインを用いると表示倍率が小さくなりプレビュー画像206は縮小されて表示されるようにしてもよい。
【0024】
ここで、ユーザのフリック操作による、プレビュー画像の表示領域を移動する制御について説明する。本実施形態において、ユーザは、表示領域移動ボタン204の押下とは別に、プレビュー画像を指やペンでタッチしてフリック操作を行うことによって、当該プレビュー画像をスクロール表示させ、表示領域を移動させることができる。
【0025】
MFP101のCPU111は、フリック操作を検出すると、画像表示エリア201の表示内容を変更する。表示内容の変更とは、現在表示している第一の領域から、別の第二の領域へ移動した表示を行う事である。ここでいう領域とはプレビュー画像の一部分を示す。そして、第二の領域の位置は、フリック操作の方向と強度に基づいて決定される。フリック操作の強度とは、フリック操作のためのムーブの距離と速度によって決定される。通常、フリック操作の強度が大きければ大きいほど、第一の領域と第二の領域の距離は離れることになる。また、第一の領域から第二の領域を表示するまでの間は、それぞれの領域間の直線上の間の画像が、スクロール表示されることになる。
【0026】
次に、画像データに含まれる特定領域の設定方法について説明する。特定領域とは、画像データに含まれる領域であって、ある条件に従って特定された領域のことを指す。以下、特定領域の具体例と特定領域を決定するための条件について説明する。
【0027】
図3(A)は、4in1レイアウトのページ集約設定がなされた1ページ分の画像データの例である。本実施例では、実際に印刷された際に1枚分の印刷用紙に印刷されるページの単位を「物理ページ」とよぶ。
図3(A)の300は物理ページを指す。一方、ページ集約設定によって1枚の物理ページに含まれる各原稿画像を「論理ページ」と呼ぶ。
図3(A)の301は論理ページを指す。例えば、画像データに含まれる特定領域を決定するために、その条件として「論理ページであること」を用いてもよい。その場合、ページ集約設定を反映した画像データを生成する際に、CPU111によって、そのページ集約設定(2in1か4in1か等といった情報)に基づいて、各論理ページを配置する座標が決定される。そして物理ページを基準として論理ページをレイアウトする位置の横方向と縦方向の始点と終点をそれぞれ記録し、その座標に囲まれた領域を特定領域301として決定する事ができる。
【0028】
尚、特定領域の決定方法は、上記のようにCPU111によって画像処理を行う際に特定領域を設定する方法以外であってもよい。例えば、論理ページであることを示す属性値を持った領域が予め画像データに保持されており、CPU111がその値を取得することによって特定領域を設定する方法であっても良い。
【0029】
また、特定領域の決定条件は、上記「論理ページであること」に限らない。例えば、MFP101のCPU111は、スキャナ121で原稿を読み込んだ際に行われる像域分離処理の結果に基づいて特定領域を設定してもよい。像域分離処理とは、読み取った原稿画像の内容を解析し、1ページ内のどこが文字領域であるか、写真領域であるか、グラフィック領域であるかを判定する機能である。判定される領域の種類はこれ以外であってもよい。この判定した結果を利用し、1つ以上の前記領域を特定領域として設定を行う。
【0030】
また、別の例として、ウェブページなどに適用することもできる。ウェブページは、ページを構成する要素をテキストや画像などのある一定の集まりでグルーピングすることができる。グルーピングには、ウェブページを記述するマークアップ言語(HTML等)のタグが利用される。その際、各画像や、テキストの一段落分の文章などのそれぞれのレイアウトされている座標を、特定領域として設定してもよい。
【0031】
このように、本実施例では、表示される画像データから得られるあらゆる情報を、特定領域を決定するための情報として用いることが可能であり、その情報の種類や決定条件、決定方法は、特に限定されるものではない。
【0032】
従って、本実施例では、
図3(A)に示す4in1レイアウトのように、1ページ内で定型のサイズに特定領域が区切られている場合に限らず、
図3(B)のようなレイアウトの画像データ302に対しても実施できる。
図3(B)において、303は特定領域を指す。
【0033】
なお、特定領域は2点以上の座標を基準として決定される領域であっても、単に1点の座標を基準として決定される領域であっても構わない。例えば、1ページの画像データを2つ以上に等分した場合の各分割された領域を特定領域と設定する事もできる。具体的には、仮に1ページの画像データの横方向の長さが300ピクセルで表せる場合、その長さを3等分すると分岐点は100と200の座標値になり、その座標値をそれぞれ特定領域を決定するための基準としてもよい。
【0034】
次に、ユーザのフリック操作により、ディスプレイ119に表示されているプレビュー画像の表示内容を変更する一連の処理について
図4のフローチャートを用いて詳細に説明する。
図4の各ステップは、MFP101のCPU111がプログラムを実行することによって処理される。そのプログラムは、ROM113や外部メモリ120等のメモリに格納されており、RAM112に展開されて実行される。
【0035】
S401において、CPU111は、プレビュー画面200に表示されているプレビュー画像に対するフリック操作を検出する。そして、CPU402において、CPU111は、現在画像表示領域201に表示されているプレビュー画像が、1ページ分、画像表示領域201に収まっている状態で表示されているか否かを判定する。即ち、現在プレビュー表示領域201に1ページのプレビュー画像の一部分のみが表示されている状態であるか否かを判定する。S402において、
図2(B)のように1ページ分のプレビュー画像が画像表示領域201に収まりきらず、1ページ分のプレビュー画像の一部分のみが表示されていると判定した場合は、S403へ進む。一方、
図2(A)のように1ページ分のプレビュー画像の全体が収まって表示されていると判定した場合は、ページ内での表示領域の移動は行わない。この場合は、表示対象のプレビュー画像とするページを変更するように、複数ページのプレビュー画像をスクロール表示するが、この処理について
図4のフローチャートでは省略する。尚、ページをスクロールする場合には、ページのスクロール操作として有効なフリックの方向は、左右のみとして、上下や斜めの方向のフリック操作は無視されるようにしてもよい。
【0036】
S403において、CPU111は、S401において検出されたフリック操作の方向と強度を特定する。上述したように、フリックの方向はタッチダウンとタッチアップそれぞれの座標から特定することができる。フリックの強度はムーブの距離と速度から特定することができる。
【0037】
S404において、CPU111は、S403で特定された方向と強度に基づいて、プレビュー表示領域の表示対象となる移動先の地点(座標)を特定する。そして、特定された移動先の表示領域に(又は表示領域の近傍に)、特定領域が存在するか否かの判定を行う。
【0038】
存在すると判定された場合、S405に進み、CPU111は、移動先の地点を、その特定領域へ変更する。そして、CPU111は、変更された地点までのスクロール表示を、ディスプレイ119に表示させる。即ち、同じ倍率で、表示領域を移動する。ここで、移動先の地点を特定領域へ変更するとは、その特定領域の全体がプレビュー表示領域201内に収まる場合には、その特定領域の全体がプレビュー表示領域に収まる地点まで、スクロール表示を行うことである。一方その特定領域の全体がプレビュー表示領域内に収まらない場合には、その特定領域の中の特定地点(例えば左上、中央、右上等)が少なくともプレビュー表示領域に表示される地点まで、スクロール表示を行うことである。この時、特定地点が左上であればその地点がプレビュー表示領域の左上にくるように、特定地点が中央であればその地点がプレビュー表示領域の中央にくるように、特定地点が右上であればその地点がプレビュー表示領域の右上にくるように表示するのが好ましい。
【0039】
S404において、特定領域が存在しないと判定された場合は、S406へと進む。S406において、CPU111は、S404において特定された移動先の地点(座標)までのスクロール表示をディスプレイ119に表示させる。
【0040】
尚、S405で行われるスクロール表示では、最終的に特定領域で停止するよう移動すればよいため、停止するまでの移動している間の表示は、以下の何れであってもよい。一つは、最終目的地である特定領域に直線的に移動するような表示である。この場合、ユーザが行ったフリック操作の方向と、実際に表示がスクロールされる方向とは若干異なる可能性がある。別の例は、フリック操作の方向と強度で決定された本来の移動先にいったん移動した後、そこで停止する直前に、特定領域に方向を変えて移動するような表示である。この場合には、ユーザが行ったフリック操作の方向と実際に表示がスクロールされる方向とが一致するが、スクロール表示の停止直前にフリックの方向とは異なる方向にスクロールが動くことになる。
【0041】
図4のフローチャートに従った処理を、
図5(A)(B)の具体例を用いて説明する。
図5(A)(B)は何れも8in1レイアウトのページ集約設定が行われた画像データを示しており、「A」〜「H」が記載された8つの論理ページを含んだ物理ページである。この物理ページが、プレビュー表示領域にプレビュー表示されるプレビュー画像に相当する。また、本具体例では、8つの論理ページは特定領域であるとする。
【0042】
図5(A)の501はプレビュー画面200内のプレビュー表示領域201を示しており、現在、プレビュー画像の一部分(論理ページA全体と、論理ページBの左半分)を表示している状態である。同じく、
図5(B)の502はプレビュー画面200内のプレビュー表示領域201を示しており、現在、プレビュー画像の一部分(論理ページAの左上部分)を表示している状態である。
図5(A)と
図5(B)の違いは、プレビュー表示領域が、1つの論理ページ全体を表示できる大きさであるか否かである。つまり、
図5(B)は、
図5(A)の状態から、更に、表示すべきプレビュー画像が拡大された場合を示していることになる。
図5(A)と(B)の両方とも、S402の判定結果は、一部分のみの表示となっているため、S403へと進む。
【0043】
図5(A)の例において、今、503の方向にフリック操作した場合を考える。S404において、表示対象の移動先を特定した結果、例えば、移動後の表示領域が504であったとする。ここで、移動後の表示領域504の中に(又は近傍に)特定領域かどうかが判断される。
図5(A)では、論理ページGと論理ページHとが、移動後の表示領域504の中に含まれている。このように、表示領域504内に特定領域が複数存在する場合には、表示領域504に含まれている面積(範囲)がより広い方の特定領域を、変更後の移動先の表示領域に含むべき特定領域とする。その結果、
図5(A)の例では、S405の処理によって、移動先が変更され、移動先が変更された後の表示領域は505となる。この場合、表示領域505の表示倍率は表示領域501と同じである。このように、特定領域全体を表示可能な大きさの表示領域である場合には、フリック操作による本来の移動先では特定領域の一部が表示されなくなってしまうような場合であっても、移動先を修正し、特定領域全体を表示することができる。
【0044】
同様に、
図5(B)の例において、505の方向にフリック操作した場合を考える。S404において、表示対象の移動先を特定した結果、例えば、移動後の表示領域が506であったとする。ここで、移動後の表示領域506の中に(又は近傍に)特定領域かどうかが判断される。
図5(B)では、論理ページGが、移動後の表示領域506の中に含まれている。その結果、
図5(B)の例では、S405の処理によって、移動先が変更され、移動先が変更された後の表示領域は507となる。この場合、表示領域507の表示倍率は表示領域502と同じである。このように、特定領域全体を表示できない大きさの表示領域である場合には、特定領域内の特定地点(
図5(B)の例では特定領域の左上)が、表示領域内の所定の位置(
図5(B)の例では左上)に表示されるように、移動先を修正し、スクロール表示を行う。
【0045】
尚、
図4のフローチャートの処理に従った場合、フリック操作の方向や強度によっては、フリック操作を行ったのにも関わらずスクロール表示がされない(表示が動かない)場合があり得る。例えば
図5(B)のような場合に、502の状態から上方向にフリック操作し、表示領域を下方向に移動させたにも関わらず、移動後の表示領域が、依然として論理ページAの範囲内であった場合である。この場合、S405の処理によって再び表示領域は502の位置に戻されることになってしまい、スクロール表示がされないことになる。そのような制御を行ってもよいが、これに代えて、以下のような制御を行ってもよい。即ち、MFP101は、現在特定領域を表示しているかどうかを判断して、表示している場合にはその特定領域を記憶しておく。そして、フリック操作の方向と強度に従って決定された移動先の表示領域内に、現在記憶されている特定領域が含まれる場合(又はその特定領域が最も広い面積を占める特定領域となる場合)、S405の処理を無効化する。その代わりにS406の処理(フリック操作によって決定された移動先に移動する処理)を実行するというものである。
【0046】
これにより、フリック操作をしたのにも関わらずスクロール表示がされないといったことを無くすことができる。
【0047】
また、上記
図4の例では、フリック操作の方向と強度によって決定した移動先の表示領域内に特定領域が存在するか判断したが、方向のみの情報を基づいて特定領域の存在有無を判断するようにしてもよい。この場合、S404では、スクロール表示する方向のどこかに特定領域が存在するかどうかが判定されることになる。一つ以上の特定領域が検出された場合、最も手前(もとの表示領域の位置に最も近い位置)に存在する特定領域に移動先を変更する。
【0048】
なお、フリック操作によって決まる方向は、任意の方向であっても良いし、予め定義された方向に補正されて決められるようにしてもよい。例えば、計算されたベクトルに対し、予め定義した縦、横、斜めなどの特定方向(4方向、8方向、16方向等)の中からもっとも近似した方向を選択し、選択された方向をフリック方向として決定する方法であっても良い。
【0049】
以上のように、本実施形態によれば、1ページの画像データの一部分のみを表示している状態で、フリック操作によってそのページ内での別の一部分を表示するようにスクロールした場合に、本来の移動先の表示に代えて特定領域を表示させることができる。又は、スクロールを特定領域で停止させるようにすることができる。
【0050】
これにより、ユーザに1ページの画像データ内の特定領域の存在や、その内容をより効率よく見せることが可能となり、ユーザの利便性はより一層向上する。
【0051】
(実施形態2)
実施形態1では、移動先の表示領域に(又は表示領域の近傍に)、特定領域が存在するか否かで制御を切り換える事を特徴としていた。本実施形態ではさらに別の条件も加え制御を切り換える事を特徴とするものである。
【0052】
本実施形態において、
図1〜
図3は実施形態1と同様のため、説明を省略する。
【0053】
図6は、本実施形態における、ユーザのフリック操作により、ディスプレイ119に表示されているプレビュー画像の表示内容を変更する処理を示すフローチャートである。
図6の各ステップは、MFP101のCPU111がプログラムを実行することによって処理される。そのプログラムは、ROM113や外部メモリ120等のメモリに格納されており、RAM112に展開されて実行される。
【0054】
S601からS603までの処理は、
図4のS401からS403までの内容と同様であるため、説明を省略する。
【0055】
S604において、CPU111は、プレビュー画像内の特定領域が、画像表示領域201に対して、適切なサイズと位置でフィットした表示であるかどうかを判断する。フィットした表示であると判断された場合は、処理はS605へ進む。フィットした表示でないと判断された場合は、処理はS607へ進む。
【0056】
図7(A)および
図7(B)は、画像表示領域201の表示例である。
図7(A)の特定領域702は、画像表示領域701にフィットした状態である。つまりフィット(適合)した状態とは、特定領域が縦方向にも横方向にも欠けることなく、全体が表示されており、尚且つ、縦方向又は横方向の少なくともどちらかの長さが画像表示領域の縦方向又は横方向に一致(略一致)している状態である。
【0057】
一方、
図7(B)の特定領域704は、画像表示領域703に対し、フィットしていない状態である。また、特定領域704の左上の座標値は、画像表示領域703の左上の座標値に対し、大きくずれている状態である。
【0058】
特定領域が画像表示領域に適切なサイズと位置でフィットした表示であるかどうかの判定は、そのときフィットモードが設定されているかどうかの情報を利用して判断する事ができる。フィットモードとは、プレビュー表示を例えば
図7(A)の表示状態にするモードのことであり、MFP101に対するユーザの操作や、プレビュー画面の更新タイミングで任意に書き換える事のできる設定である。
【0059】
例えば、表示画像領域に表示しているプレビュー画像の一部分に特定領域が含まれており、ユーザがその特定領域301に対し、ダブルタップ(タッチダウンを素早く2回行う)のジェスチャを行う。すると、CPU111は、ダブルタップを受けて、特徴領域を、画像表示領域にフィットした表示に変更(拡大又は縮小)するとともに、フィットモードであることを示すフラグをセットする制御を行う。そして、その状態からユーザが倍率変更や表示領域移動などの操作を行い、フィットした状態ではなくなった際に、そのフラグのセットを解除する制御を行う。これにより、フィットモードのフラグがセットされているかどうかで、特定領域が画像表示領域に適切なサイズと位置でフィットした表示であるかどうか判断する事ができる。他には、ユーザ操作に限らず、プレビュー画面の初回表示時はフィットモードのフラグをセットしておき、その状態からフィットした表示状態でなくなったことを条件にフラグのセットを解除するという制御であっても良い。
【0060】
S605において、CPU111は、フリック操作の方向や強度によって決定された移動先の表示領域に(又は表示領域の近傍に)、特定領域が存在するか否か判断する。特定領域が存在すると判断された場合は、処理はS606へ進む。存在しないと判断された場合は、処理はS607へ進む。S605以降の処理は、
図4のS405以降の内容と同様であるため、詳しい説明は省略する。
【0061】
尚、本実施形態においても、実施形態1と同様に、フリック操作の方向のみの情報に基づいて特定領域の存在有無を判断するようにしてもよい。また、フリック操作によって決定された移動先が、現在表示している特定領域の範囲内であった場合の処理も、実施形態1と同様に行える。
【0062】
また、
図6のフローチャートでは、Nin1レイアウトのページ集約設定が行われている場合のように、1つの物理ページに含まれる複数の論理ページが同じサイズで且つ定型のサイズである場合を想定していた。即ち画像データに含まれる各特定領域がそれぞれ同じサイズでしかも定型のサイズである場合を想定していた。しかし、本実施例も
図3(B)に示すような、各特定領域が不定型で、それぞれ異なるサイズ、形である場合にも適用可能である。従って、S604を行うのではなく、フリック操作によって移動先が決められた時点で、その移動先の表示領域に含まれる(又は近傍の)特定領域が、画像表示領域にフィットしているか否かを判定してもよい。
【0063】
以上のように、本実施形態によれば、フリック操作によってページ内での別の一部分を表示するようにスクロールした場合に、スクロールによる本来の移動先の表示に代えて、表示領域に適合したサイズの特定領域の画像を表示させることができる。
【0064】
(実施形態3)
実施形態1および実施形態2におけるフリック操作による表示内容の変更では、特定領域が存在するかどうか又は画像表示領域にフィットするかどうかの判断はしていたが、その特定領域の画像の内容については判断の条件としていなかった。これに対し、本実施形態では、特定領域の画像の内容によってさらに制御を切り換える事を特徴とする。
【0065】
具体例としては、設定されている特定領域が、文字や写真などの画像データを含むものでなく空白の領域である場合は、その特定領域(空白の特定領域)を移動先の候補から除外するという制御が挙げられる。尚ここで、空白の領域(空白領域)とは、完全に白紙の状態の領域だけでなく、孤立点やノイズ画像のような画像が存在する領域も含むものである。即ち、文字や画像等の意味のある情報を含まない領域のことであり、完全に白の領域のみに限定されるものではない。
【0066】
実施形態1にて説明したように、特定領域は、ある条件に従って特定された領域である。特に、ページ集約の設定がなされた画像データの場合、論理ページを特定領域として設定した。この時、論理ページである原稿画像が白紙の状態である場合、該当の特定領域は移動先候補から除外する特定領域として扱う。
【0067】
また、移動先候補から除外する特定領域は、空白領域に限らない。他の条件で移動先候補から除外する特定領域を決定してもよい。例えば、特定領域の中身が文字情報であった場合は移動先候補から除外する特徴領域と設定しても良い。そのようにすれば、写真やグラフィック画像のみを優先して表示させたいと思うユーザに対して有用である。従って移動先候補から除外する特定領域の条件は、ユーザが任意に設定できるようにしてもよい。
【0068】
本実施形態において、
図1〜
図3は実施形態1と同様のため、説明を省略する。
【0069】
図8は、本実施形態における、ユーザのフリック操作により、ディスプレイ119に表示されているプレビュー画像の表示内容を変更する処理を示すフローチャートである。
図8の各ステップは、MFP101のCPU111がプログラムを実行することによって処理される。そのプログラムは、ROM113や外部メモリ120等のメモリに格納されており、RAM112に展開されて実行される。
【0070】
特定領域が存在するか判定する前までのS801からS804の処理は、実施形態1のS401からS403および実施形態2のS604の処理と同様であるため、説明を省略する。
【0071】
S805において、CPU111は、フリック操作の方向や強度によって決定された移動先の表示領域(又は表示領域の近傍)に、移動先候補としての特定領域が存在するか否か判断する。前述の処理により、移動先候補から除外されるべき特定領域については、移動先の表示領域(又はその近傍)に存在した場合でも、特定領域が存在すると判断はしない。そして、移動先候補の特定領域が存在すると判断された場合は、処理はS806へ進む。存在しないと判断された場合は、処理はS807へ進む。
【0072】
図9は、6in1レイアウトのページ集約設定がなされた画像データ900を示す。画像表示領域901は、画像表意領域201に対応する。この状態において、図中の矢印方向(左方向)のフリック操作がなされた場合、表示領域901を右方向に移動する。この際、特定領域902が移動する方向に存在するが、例えば空白の論理ページは移動先候補の除外である特定領域と設定されているため、特定領域902を移動先候補としての特定領域として判断しない。そして、さらに移動する方向に特定領域903が存在しているため、特定領域903を移動先の特定領域として認識する。
【0073】
S806以降の処理は、
図4のS405以降の処理と同様であるため詳細な説明は省略する。
【0074】
尚、本実施形態においても、実施形態1や実施形態2と同様に、フリック操作の方向のみの情報に基づいて特定領域の存在有無を判断するようにしてもよい。また、フリック操作によって決定された移動先が、現在表示している特定領域の範囲内であった場合の処理も、実施形態1や2と同様に行える。
【0075】
以上のように、本実施形態によれば、フリック操作によってページ内での別の一部分を表示するようにスクロールした場合に、スクロールによる本来の移動先の表示に代えて、よりユーザの意図に則した特定領域の画像を表示させることができる。
【0076】
(その他の実施形態)
上記実施形態1、2、3とをそれぞれ組み合わせて一つの装置を構成することも可能である。その場合、実施形態1で説明した動作と、実施形態2で説明した動作及び実施形態3で説明した動作とをそれぞれ動作モードとして備え、任意の条件によって自動的に切り替わるようにしてもよい。又はユーザが指示を行うことで手動で切り替えることができる構成にしてもよい。
【0077】
また、上記実施形態の説明では、タッチパネルを備えた表示部に表示される画像は、プレビュー画像であったが、本発明の処理の対象となる画像は、プレビュー画像に限定されるものではない。プレビュー画像に限らず、特定情報を含む画像データを表示するあらゆる場合において、本発明は適用可能である。
【0078】
また、上記実施形態の説明では、本発明を実施する装置の一例としてMFPとしたが、本発明を実施する装置は、MFPに限定されるものではない。即ち、MFPに限らず、印刷装置やスキャナ、FAX、デジタルカメラ等の画像形成装置や、PCや携帯情報端末等の情報処理装置を含む、少なくとも画像データを処理することができる画像処理装置に本発明は適用可能である。
【0079】
また、上記実施形態の説明では、スクロール表示を行うためにユーザが行う操作としてフリック操作を例に説明した。ただし、本発明はスクロール表示を行うためのユーザの操作としてフリック操作に限らなくても実現可能である。例えば、タッチパネルに対するフリック以外の操作によってもスクロール表示されるのであれば、その場合に本発明を実施してもよい。即ち、ユーザによる所定の操作によって、表示されている画像がスクロール表示されるのであれば、本発明は実施可能である。ここで所定の操作は、タッチパネルへのフリック操作以外にも、タッチパネルをタッチして行うその他のジェスチャ操作であったり、タッチパネルにタッチすることなく行うジェスチャ操作(所謂空間ジェスチャ操作)であってもよい。また、スクロール表示すべき画像の表示に関しても、タッチパネルを備える表示部に表示するものに限らず、プロジェクタ等の画像投影装置を用いて何らかのスクリーンに投影するようにしてもよい。そして、投影された画像に対して、所定のジェスチャ操作(空間ジェスチャ等)を行うことによってスクロール表示するようにしてもよい。
【0080】
更に、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム又は装置のコンピュータ(又はCPUやMPU等)がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。