以下、本発明の好ましい実施形態について、添付図面を参照して説明する。まず、図1〜図17を参照して、第1実施形態について説明する。図1は、本発明の画像編集プログラムの一実施形態である画像編集プログラム114bを搭載するPC(パーソナルコンピュータ)100と、そのPC100に接続される多機能周辺装置(以下「MFP」と称す)1とを含む画像編集システム500の構成を示すブロック図である。
詳細は後述するが、本実施形態の画像編集プログラム114bは、MFP1から受信した読み取り画像データ(以下「スキャンデータ」と称す)が、両面原稿のスキャンによるスキャンデータであり、かつ、受信したスキャンデータに綴じ方向が指定されている場合に、1枚の両面原稿の表面と裏面とからそれぞれ得られた2つのスキャンデータを一対とし、当該一対のスキャンデータの単位で、一方の面のスキャンデータに対して指示された処理の指示に基づいて、他方の面のスキャンデータに対して適切な処理を施すことができるように構成されている。
PC100には、CPU111、ROM112、RAM113、ハードディスクドライブ(HDD)114、入力装置115、LCD116、LANインターフェイス(LANI/F)117が主に設けられている。各部111〜117は、バスライン118を介して互いに接続されている。
CPU111は、ROM112やHDD114に記憶されるプログラムに従って、バスライン118により接続された各部を制御する。ROM112は、PC100の動作を制御するための制御プログラムなどが格納された書換不能な不揮発性のメモリである。
RAM113は、書換可能な揮発性のメモリであり、設定メモリ113aと、処理データメモリ113bとが設けられる。設定メモリ113aは、MFP1からスキャンデータとともに受信した設定情報を記憶するメモリ領域である。なお、設定情報は、スキャン対象の原稿の用紙サイズを指定する用紙サイズ情報と、綴じ設定を指定する綴じ情報とを含む。綴じ設定としては、原稿の長辺を綴じ方向とする「長辺綴じ」と、原稿の短辺を綴じ方向とする「短辺綴じ」と、綴じ方向が設定されていない「綴じなし」との3種類が準備されており、MFP1のスキャナ16において両面原稿をスキャンする際に、上記3種類の綴じ設定のうち、いずれかがユーザにより設定される。綴じ設定を含む設定情報は、PC100において、LCD116に表示されるスキャナドライバ114aのユーザインタフェイスで設定されるか、MFP1において、スキャン機能を実行する際にLCD14に表示される設定受付画面で設定される。処理データメモリ113bは、MFP1から受信した処理対象のスキャンデータを記憶するメモリ領域である。処理データメモリ113bに記憶されるスキャンデータに対し、画像編集プログラム114bに従う処理が施される。
HDD114は、書換可能な不揮発性の記憶装置であって、スキャナドライバ114aと、画像編集プログラム114bを記憶し、保存用メモリ114cと、設定メモリ114dとが設けられる。スキャナドライバ114aは、PC100からMFP1のスキャナ16を制御するためのプログラムである。PC100は、スキャナドライバ114aによりスキャン実行指示(画像の取り込み指示)をMFP1に送信することにより、MFP1から、スキャナ16が読み込んだスキャンデータを受信することができる。
画像編集プログラム114bは、PC100がMFP1から受信したスキャンデータ(スキャナ16が読み取った原稿の画像データ)に対する処理をCPU111に実行させるプログラムである。画像編集プログラム114bは、PC100がMFP1からスキャンデータを受信した場合、又は、保存用メモリ114cに保存されているスキャンデータを指定して起動を指示した場合に起動する。なお、PC10がMFP1からスキャンデータを受信する場合としては、スキャナドライバ114aによりスキャン実行指示を行った場合と、MFP1においてスキャン機能の実行が選択され、スキャン実行指示が入力された場合とがある。PC100のCPU111は、画像編集プログラム114bに従い、後述する図13〜図17のフローチャートに示す各処理を実行し、MFP1から受信したスキャンデータや、保存用メモリ114cに保存されているスキャンデータに対する画像編集を行う。画像編集プログラム114bは、インターネットを介してPC100に接続可能な外部サーバ(図示せず)や、コンパクトディスクなどの記憶媒体等から、HDD114にコピーされ、ユーザによるインストール要求に従い、PC100で利用可能に設定(即ち、インストール)される。
保存用メモリ114cは、画像編集プログラム114bに従って処理されたスキャンデータ(即ち、処理データメモリ113bに記憶されているスキャンデータ)を保存するためのメモリ領域である。設定メモリ114dは、保存用メモリ114cに保存されるスキャンデータに対する設定情報を記憶するためのメモリ領域である。処理データメモリ113bに記憶されているスキャンデータが保存用メモリ114cに保存される際に、当該スキャンデータに対応して設定メモリ113aに記憶される設定情報が、設定メモリ114dに、保存用メモリ114cに保存されるスキャンデータに対応付けて記憶される。
入力装置115は、ユーザからの指示や各種情報をPC100に入力するためのキーボードや、マウスで構成される。LCD116は、液晶表示装置である。LANI/F117は、LAN(ローカルエリアネットワーク)200に接続するためのインターフェイスである。PC100は、LANI/F117とLAN200とを接続することにより、LC200を介して他の装置と通信可能に接続される。本実施形態では、図1に示すように、PC100は、LAN200を介してMFP1に接続される。
MFP1は、スキャン機能、コピー機能、印刷機能など、複数の機能を有する複合機である。MFP1には、CPU11、フラッシュメモリ12、RAM13、LCD14、タッチパネル15、スキャナ16、ADF(オートドキュメントフィーダー)17、プリンタ18、LANI/F19が主に設けられている。各部11〜19は、バスライン20を介して互いに接続される。
CPU11は、フラッシュメモリ12に記憶される固定値やプログラム、RAM13に記憶されているデータに従って、MFP1が有している各機能の制御を行う。フラッシュメモリ12は、不揮発性のメモリであり、MFP1の動作を制御する制御プログラム12a等が格納される。後述する図12のフローチャートに示す各処理は、制御プログラム12aに従ってCPU11により実行される。
RAM13は、CPU11の処理に必要な情報を一時的に記憶する書換可能な揮発性のメモリである。RAM13には、設定メモリ13aと、スキャンデータメモリ13bとが設けられる。設定メモリ13aは、原稿をスキャンする際の設定情報を記憶するメモリ領域である。設定メモリ13aに記憶される設定情報は、用紙サイズ情報と綴じ情報とを含む。スキャナドライバ114aによりスキャン実行指示に基づいて原稿がスキャンされる場合には、スキャン実行指示に含まれる設定情報が、設定メモリ13aに記憶される。一方、MFP1においてスキャン機能の実行が選択されたことに基づいて原稿がスキャンされる場合には、スキャン機能の実行が選択された後にLCD14に表示される設定受付画面から受け付けた設定情報が、設定メモリ13aに記憶される。スキャンデータメモリ13bは、スキャナ16により読み取ったスキャンデータを記憶するメモリ領域である。
LCD14は、液晶表示装置である。タッチパネル15は、LCD14に重ねて設けられ、MFP1に対する設定情報や指示の入力を受け付ける。プリンタ18は、記録用紙に画像を印刷する装置である。ADF17は、図示されない搬送経路に沿って原稿を、原稿トレイ(図示せず)からスキャナ16へ搬送し、スキャン後に排紙する自動搬送機構である。
スキャナ16は、原稿をスキャンし、スキャンデータを、CPU11に出力する装置である。スキャナ16は、2つの読取ユニット16a1,16a2を有する。
これらの読取ユニット16a1,16a2は、それぞれ、コンタクトイメージセンサ(以下「CIS」と称す)とLED等の光源とを有する。読取ユニット16a1と読取ユニット16a2とは、それぞれ、各ユニットのCISが図示されない搬送経路を介して対向するように、主走査方向(原稿面に沿って搬送方向に直交する方向)に沿って配置される。読取ユニット16a1は、光源が、ADF17により搬送経路を搬送される原稿の一面(例えば、表面)に光を照射し、CISが、その反射光を受光することにより、両面原稿の一面を1ラインずつ読み取る。一方、読取ユニット16a2は、光源が、ADF17により搬送経路を搬送される原稿の他面(例えば、裏面)に光を照射し、CISが、その反射光を受光することにより、両面原稿の他面を1ラインずつ読み取る。
図2は、スキャン16が両面原稿をスキャンした場合に生成されるスキャンデータのデータ構造の一例を示す図である。図2に示すように、両面原稿のスキャンに基づくスキャンデータは、原稿の読み取り画像(スキャン画像)の画像データが格納される画像データ領域D1と、付加情報が格納されるヘッダ領域D2とから構成される。両面原稿のスキャンに基づくスキャンデータは、取得ページ番号51と、現在ページ番号52とが、付加情報の一部として、ヘッダ領域D2に記憶される。
取得ページ番号51は、対応する画像データの取得順序(スキャナ16による原稿の読み取り順序)を示す値である。本実施形態では、取得ページ番号51は、両面原稿が読み取られる毎に増分される番号であり、両面原稿における基準面(例えば、CIS16a1により読み取られる表面)のスキャンデータを奇数、基準面の裏面(例えば、CIS16a2により読み取られる裏面)のスキャンデータを偶数とする連番の番号とする。具体的に、スキャナ16によりスキャンされる両面原稿のページ番号をi(iは、1以上の整数)とした場合に、両面原稿における基準面のスキャンデータの取得ページ番号51は、2i−1で表わされ、その裏面のスキャンデータの取得ページ番号51は、2iで表わされる。
一方、現在ページ番号52は、両面原稿のスキャンにより得られる一連のスキャンデータにおける実際のページ番号を示す値である。スキャンデータが生成された当初は、取得ページ番号51及び現在ページ番号52には同じ番号が記憶されている。つまり、スキャナ16がiページ目の両面原稿を読み取った場合に、基準面のスキャンデータに対し、2i−1が記憶され、その裏面のスキャンデータに対し、2iが記憶される。その後、そのスキャンデータをPC100で編集する際に、一部のスキャンデータがユーザにより削除した場合には、削除されたスキャンデータ以降の現在ページ番号52が削除ページ数に応じて減算される。
このように、スキャンデータのヘッダ領域D2には、取得ページ番号51と、現在ページ番号52とが記憶されるので、両面原稿のスキャンにより得られる一連のスキャンデータのうち、一部のページが削除されたとしても、1枚の両面原稿の表面と裏面とからそれぞれ得られる一対のスキャンデータの関係を保持することが可能となる。
図3は、PC100が受信したスキャンデータに綴じ方向が指定されている場合に、画像編集プログラム114bによりLCD116に表示される編集画面120の内容を示す模式図である。
図3(a)は、表裏一対のスキャンデータがいずれも存在する場合の編集画面120を示す図である。表裏一対のスキャンデータがいずれも存在する場合には、原稿の表面のスキャンデータに基づくスキャン画像Paと、その原稿の裏面のスキャンデータに基づくスキャン画像Pbとが並べて編集画面120に表示される。なお、図3及び図4以降の図面において、スキャン画像Pa,Pbの中に記載される数字は、「1」が1枚の原稿の表面に対するスキャンデータであることを示し、「2」が1枚の原稿の裏面に対するスキャンデータであることを示す。また、アンダーバーの側が各スキャン画像の下側であることを示す。
編集画面120には、スキャン画像Pa,Pbの他に、ページ送りボタン121と、ページ戻りボタン122と、表示対象ページ数123と、余白削除ボタン124と、画像移動ボタン125と、回転ボタン126と、回転中心移動ボタン127と、削除ボタン128と、終了ボタン129とが表示される。
ページ送りボタン121は、表示対象とするスキャン画像を、次ページの原稿に基づくスキャン画像に変更することを指示するボタンである。ページ戻りボタン122は、表示対象とするスキャン画像を、前ページの原稿に基づくスキャン画像に変更することを指示するボタンである。表示対象ページ数123は、表示中のスキャン画像の現在ページ番号(現在ページ番号52)である。ユーザが、入力装置115を用いてページ送りボタン121又はページ戻りボタン122を操作すると、編集画面に表示されるスキャン画像が、操作されたボタン121,122に応じて、前または次ページの原稿に基づくスキャン画像に更新される。スキャン画像の更新に伴い、表示対象ページ数123も、表示中のスキャン画像のページ番号に更新される。
余白削除ボタン124、画像移動ボタン125、回転ボタン126、および回転中心移動ボタン127は、表示中のスキャン画像に対して施す処理の種類を指定するボタンである。具体的に、余白削除ボタン124は、表示中のスキャン画像から余白を削除する余白削除(トリミング)処理を指定するボタンである。画像移動ボタン125は、表示中のスキャン画像を平行移動させる画像移動処理を指定するボタンである。回転ボタン126は、表示中のスキャン画像を回転させる回転処理を指定するボタンである。回転中心移動ボタン127は、表示中のスキャン画像を回転させる場合の回転中心を移動させる回転中心移動処理を指定するボタンである。これらのボタン124〜127のうち、いずれかのボタンが入力装置115を用いて操作された場合には、操作されたボタンに対応する処理が実行可能となる。例えば、余白削除ボタン124が操作された場合には、表示中のスキャン画像に対し、削除領域の指定が可能となる。
削除ボタン128は、表示中のスキャン画像の削除を指示するボタンである。ユーザが、入力装置115を用いて削除ボタン128を操作し、その後に、削除対象とするスキャン画像を指定すると、指定されたスキャン画像が削除される。終了ボタン129は、画像編集プログラム114bによる画像編集の終了を指示するボタンである。ユーザが、入力装置115を用いて終了ボタン129を操作すると、編集対象とされていたスキャンデータが保存され、画像編集プログラム114bの実行が終了する。
詳細は後述するが、本実施形態の画像編集プログラム114bは、編集画面120に表示された表裏一対のスキャン画像Pa,Pbのうち、一方のスキャン画像に対して余白削除処理、画像移動処理、回転処理、または回転中心移動処理が指示されると、一方のスキャン画像に対し、指示された処理を施すとともに、他方のスキャン画像に対し、綴じ方向と原稿の搬送向きとに応じて決まる対称軸に対して指示された処理を対称化させた処理を施す。そのため、綴じ方向が設定されており、一対のスキャンデータに対して施す処理の対称性が原稿の搬送向きに応じて変化する状況であっても、表面と裏面とで一対となるスキャン画像を容易かつ正確に編集できる。
図3(b)は、表裏一対のスキャンデータのうち、いずれか一方が削除されている場合の編集画面120を示す図である。本実施形態の画像編集プログラム114bは、表裏一対のスキャンデータのうち、いずれか一方が削除されている場合には、存在するスキャンデータに対応する一方のスキャン画像のみを表示させるように構成されている。図3(a)に示す例では、編集画面120に、スキャン画像Pa(原稿の表面のスキャン画像)のみが表示されている。これは、スキャン画像Paと対をなす裏面のスキャン画像Pbが削除されていることを示す。
異なる原稿に基づく2つのスキャン画像について、一方のスキャン画像に対する処理に基づき、他方のスキャン画像を処理した場合、他方のスキャン画像に対し不適切な処理がなされる虞がある。これに対し、本実施形態の画像編集プログラム114bは、スキャンデータの一部が削除された場合に、異なる原稿に基づく2つのスキャン画像を編集画面120に表示させないように構成されているので、異なる原稿に基づく2つのスキャン画像の組が処理対象とならず、スキャン画像に対して不適切な処理がされることを防ぐことができる。
また、図3に示すように、編集画面120には、画面の上方(紙面上方)がスキャン画像Pa,Pbの上方となるように、スキャン画像Pa,Pbが表示される。よって、ユーザは、スキャン画像Pa,Pbに対する編集作業を行い易い。
次に、図4〜図7を参照して、両面原稿をスキャナ16で読み取った場合における表裏一対のスキャン画像の向きについて説明する。表裏一対のスキャン画像の向きは、両面原稿に対して設定された綴じ方向と、原稿の搬送向きとに依存する。
まず、図4は、綴じ方向が長辺綴じである原稿Pを長辺方向に搬送してスキャンした場合に得られる表裏一対のスキャン画像を示す模式図である。図4(a)は、原稿Pがポートレート(縦長)である場合を示す図であり、図4(b)は、原稿Pランドスケープ(横長)である場合を示す図である。
図4(a)の左側に示すように、ポートレートの原稿Pに対し、綴じ方向が長辺方向に設定されている場合、原稿Pの表面P1には、綴じ位置Aが、ユーザが表面P1を原稿内容に対して上下方向正しく正面からみたときにおける向かって左の長辺側に設けられる。なお、図4および図5以降の各図面において、原稿Pの中に記載される「1」は、原稿Pの表面であることを示し、アンダーバーの側が原稿Pの下側であることを示す。また、図4及び図5以降の各図面において、綴じ位置Aを図示する場合には、原稿Pに対する綴じ位置Aの位置関係を理解し易くする目的で、綴じ位置Aを薄く着色した領域として図示する。
一方、ポートレートの原稿Pに対し、綴じ方向が長辺方向に設定されている場合、原稿Pの裏面P2には、綴じ位置Aが、ユーザが裏面P2を原稿内容に対して上下方向正しく正面からみたときにおける向かって右の長辺側に設けられる。なお、図4および図5以降の各図面において、原稿Pの中に記載される「2」は、原稿Pの裏面であることを示し、アンダーバーの側が原稿Pの各面P1,P2を原稿内容に対して上下方向正しく正面からみたときにおける下側であることを示す。また、図4(a)の左側に示した原稿Pは、ユーザが表面P1を正面からみた場合を図示しているので、裏面P2は、紙面裏側となるため、裏面であることを示す「2」を鏡面文字として表わしている。以降の図面においても、ユーザが表面P1を正面からみた場合を図示するときには、裏面P2を示す「2」を鏡面文字として表わす。
綴じ方向が長辺方向に設定されたポートレートの原稿Pを、原稿Pの表面P1からみて下側から長辺に沿った向き(矢印S方向)で搬送させスキャンした場合、図4(a)の右側に示すように、原稿Pの表面P1から得られる表面のスキャン画像Pa、及び、原稿Pの裏面P2から得られる裏面のスキャン画像Pbは、いずれも、原稿内容の上下向きが相対的に揃ったスキャン画像となる。
一方、図4(b)の左側に示すように、ランドスケープの原稿Pに対し、綴じ方向が長辺方向に設定されている場合、原稿Pの表面P1には、綴じ位置Aが、ユーザが表面P1を原稿内容に対して上下方向正しく正面からみたときに上となる長辺側に設けられる。これに対し、ランドスケープの原稿Pに対し、綴じ方向が長辺方向に設定されている場合、原稿Pの裏面P2には、綴じ位置Aが、ユーザが裏面P2を原稿内容に対して上下方向正しく正面からみたときに下となる長辺側に設けられる。
綴じ方向が長辺方向に設定されたランドスケープの原稿Pを、原稿Pの表面P1からみて向かって左側から長辺に沿った向き(矢印S方向)で搬送させスキャンした場合、図4(b)の右側に示すように、原稿Pの表面P1から得られる表面のスキャン画像Pa、及び、原稿Pの裏面P2から得られる裏面のスキャン画像Pbは、いずれも、原稿内容の上下向きが相対的に揃ったスキャン画像となる。
次に、図5は、綴じ方向が長辺綴じである原稿Pを短辺方向に搬送してスキャンした場合に得られる表裏一対のスキャン画像を示す模式図である。図5(a)は、原稿Pがポートレートである場合を示す図であり、図5(b)は、原稿Pがランドスケープである場合を示す図である。
図5(a)の左側に示す、綴じ方向が長辺方向に設定されたポートレートの原稿Pを、表面P1からみて向かって左側(綴じ位置Aが設けられている側)から原稿Pの短辺に沿った向き(矢印S方向)で搬送させスキャンした場合、図5(a)の右側に示すように、原稿Pの裏面P2から得られる裏面のスキャン画像Pbは、その原稿内容の向きが、原稿Pの表面P1から得られる表面のスキャン画像Paの原稿内容の向きに対し180°回転された状態となる。
また、図5(b)の左側に示す、綴じ方向が長辺方向に設定されたランドスケープの原稿Pを、表面P1からみて上側(綴じ位置Aが設けられている側)から原稿Pの短辺に沿った向き(矢印S方向)で搬送させスキャンした場合、図5(b)の右側に示すように、原稿Pの裏面P2から得られる裏面のスキャン画像Pbは、その原稿内容の向きが、原稿Pの表面P1から得られる表面のスキャン画像Paの原稿内容の向きに対し180°回転された状態となる。
本実施形態の画像編集プログラム114bは、綴じ方向が長辺綴じである原稿Pを短辺方向に搬送してスキャンした場合には、裏面P2に対するスキャン画像Pbに対応するスキャンデータに対して180°回転(半回転)させる処理を行うように構成されている。これにより、編集画面120に、原稿内容の上下向きが相対的に揃ったスキャン画像Pa,Pbを表示させることができる。
次に、図6は、綴じ方向が短辺綴じである原稿Pを長辺方向に搬送してスキャンした場合に得られる表裏一対のスキャン画像を示す模式図である。図6(a)は、原稿Pがポートレートである場合を示す図であり、図6(b)は、原稿Pがランドスケープである場合を示す図である。
図6(a)の左側に示すように、ポートレートの原稿Pに対し、綴じ方向が短辺方向に設定されている場合、原稿Pの表面P1には、綴じ位置Aが、ユーザが表面P1を原稿内容に対して上下方向正しく正面からみたときに上となる短辺側に設けられる。一方、ポートレートの原稿Pに対し、綴じ方向が短辺方向に設定されている場合、原稿Pの裏面P2には、綴じ位置Aが、ユーザが裏面P2を原稿内容に対して上下方向正しく正面からみたときに下となる短辺側に設けられる。
綴じ方向が短辺方向に設定されたポートレートの原稿Pを、原稿Pの表面P1からみて下側から長辺に沿った向き(矢印S方向)で搬送させスキャンした場合、図6(a)の右側に示すように、原稿Pの裏面P2から得られる裏面のスキャン画像Pbは、その原稿内容の向きが、原稿Pの表面P1から得られる表面のスキャン画像Paの原稿内容の向きに対し180°回転された状態となる。
一方、図6(b)の左側に示すように、ランドスケープの原稿Pに対し、綴じ方向が短辺方向に設定されている場合、原稿Pの表面P1には、綴じ位置Aが、ユーザが表面P1を原稿内容に対して上下方向正しく正面からみたときに向かって左の短辺側に設けられる。これに対し、ランドスケープの原稿Pに対し、綴じ方向が短辺方向に設定されている場合、原稿Pの裏面P2には、綴じ位置Aが、ユーザが裏面P2を原稿内容に対して上下方向正しく正面からみたときに右の短辺側に設けられる。
綴じ方向が短辺方向に設定されたランドスケープの原稿Pを、原稿Pの表面P1からみて左側(綴じ位置Aが設けられている側)から原稿Pの長辺に沿った向き(矢印S方向)で搬送させスキャンした場合、図6(b)の右側に示すように、原稿Pの裏面P2から得られる裏面のスキャン画像Pbは、その原稿内容の向きが、原稿Pの表面P1から得られる表面のスキャン画像Paの原稿内容の向きに対し180°回転された状態となる。
本実施形態の画像編集プログラム114bは、綴じ方向が短辺綴じである原稿Pを長辺方向に搬送してスキャンした場合には、裏面P2に対するスキャン画像Pbに対応するスキャンデータに対して180°回転(半回転)させる処理を行うように構成されている。これにより、編集画面120に、原稿内容の上下向きが相対的に揃ったスキャン画像Pa,Pbを表示させることができる。
次に、図7は、綴じ方向が短辺綴じである原稿Pを短辺方向に搬送してスキャンした場合に得られる表裏一対のスキャン画像を示す模式図である。図7(a)は、原稿Pがポートレートである場合を示す図であり、図7(b)は、原稿Pがランドスケープである場合を示す図である。
図7(a)の左側に示す、綴じ方向が短辺方向に設定されたポートレートの原稿Pを、表面P1からみて向かって左側から原稿Pの短辺に沿った向き(矢印S方向)で搬送させスキャンした場合、図7(a)の右側に示すように、原稿Pの表面P1から得られる表面のスキャン画像Pa、及び、原稿Pの裏面P2から得られる裏面のスキャン画像Pbは、いずれも、原稿内容の上下向きが相対的に揃ったスキャン画像となる。
また、図7(b)の左側に示す、綴じ方向が短辺方向に設定されたランドスケープの原稿Pを、表面P1からみて上側から原稿Pの短辺に沿った向き(矢印S方向)で搬送させスキャンした場合、図7(b)の右側に示すように、原稿Pの表面P1から得られる表面のスキャン画像Pa、及び、原稿Pの裏面P2から得られる裏面のスキャン画像Pbは、いずれも、原稿内容の上下向きが相対的に揃ったスキャン画像となる。
図4〜図7によれば、原稿Pがポートレートである場合、及び、原稿Pがランドスケープである場合のいずれの場合についても、原稿の搬送向き(図4〜図7における矢印S方向)が、設定されている綴じ方向に沿う方向である場合には、原稿内容の上下向きが相対的に揃ったスキャン画像Pa,Pbを得ることができる。一方、原稿の搬送向き(図4〜図7における矢印S方向)が、設定されている綴じ方向に直交する方向である場合には、原稿Pがポートレートであるか、ランドスケープであるかにかかわらず、原稿Pの裏面P2から得られる裏面のスキャン画像Pbは、その原稿内容の向きが、原稿Pの表面P1から得られる表面のスキャン画像Paの原稿内容の向きに対し180°回転された状態となる。本実施形態の画像編集プログラム114bは、かかる場合において、裏面P2に対するスキャン画像Pbを180°回転させるので、編集画面120に、原稿内容の上下向きが相対的に揃ったスキャン画像Pa,Pbを表示させることができる。
次に、図8〜図11を参照して、表裏一対のスキャン画像に対して施す処理の対称性について説明する。表裏一対のスキャン画像に対して施す処理の対称性は、両面原稿に対して設定された綴じ方向と、原稿の搬送向きとに依存する。
まず、図8は、表裏一対のスキャン画像Pa,Pbに対して余白削除(トリミング)処理を施す場合の処理の対称性を説明する模式図である。図8(a)及び図8(b)は、綴じ方向が長辺綴じである原稿Pから得られた表裏一対のスキャン画像Pa,Pbである場合を示す図である。より詳細には、図8(a)は、原稿Pがポートレートである場合を示し、図8(b)は、原稿Pがランドスケープである場合を示す。
図8(a)に示すように、長辺綴じに設定されたポートレートの原稿Pから得られた表面のスキャン画像Paに対し、綴じ位置Aが設けられる辺に対向する辺(即ち、ユーザからみて右辺)の側に幅w1の削除領域T1aが指定された場合、この削除領域T1aを、対称軸Qに対して対称化した領域T1bを、裏面のスキャン画像Pbの削除領域とすればよい。
対称軸Qは、各スキャン画像の中心Cを通り、当該スキャン画像の副走査方向又は主走査方向に沿う仮想的な軸である。より詳細には、原稿の搬送向きが、設定されている綴じ方向に沿う方向である場合には、対称軸Qは、各スキャン画像の中心Cを通り、当該スキャン画像の副走査方向に沿う軸とされる。一方、原稿の搬送向きが、設定されている綴じ方向に直交する方向であり、裏面P2に対するスキャン画像Pbに対応するスキャンデータに対して180°回転させる処理が行われている場合には、対称軸Qは、各スキャン画像の中心Cを通り、当該スキャン画像の主走査方向に沿う軸とされる。なお、図8、図9及び図10では、対称軸Qを、各スキャン画像の中心Cを通り、綴じ方向に沿う直線Q’に一致させて表示している。
一方、長辺綴じに設定されたポートレートの原稿Pから得られた表面のスキャン画像Paに対し、画像の上辺側に幅w2の削除領域T2aが指定された場合もまた、この削除領域T2aを、対称軸Qに対して対称化した領域T2bを、裏面のスキャン画像Pbの削除領域とすればよい。
図8(b)に示すように、長辺綴じに設定されたランドスケープの原稿Pから得られた表面のスキャン画像Paに対し、綴じ位置Aが設けられる辺に対向する辺(即ち、ユーザからみて下辺)の側に幅w1の削除領域T1aが設定された場合、この削除領域T1aを、対称軸Qに対して対称化した領域T1bを、裏面のスキャン画像Pbの削除領域とすればよい。一方、長辺綴じに設定されたランドスケープの原稿Pから得られた表面のスキャン画像Paに対し、向かって右辺側に幅w2の削除領域T2aが設定された場合もまた、この削除領域T2aを、対称軸Qに対して対称化した領域T2bを、裏面のスキャン画像Pbの削除領域とすればよい。
図8(c)及び図8(d)は、綴じ方向が短辺綴じである原稿Pから得られた表裏一対のスキャン画像Pa,Pbである場合を示す図である。より詳細には、図8(c)は、原稿Pがポートレートである場合を示し、図8(d)は、原稿Pがランドスケープである場合を示す。
図8(c)に示すように、短辺綴じに設定されたポートレートの原稿Pから得られた表面のスキャン画像Paに対し、綴じ位置Aが設けられる辺に対向する辺(即ち、ユーザからみて下辺)の側に幅w1の削除領域T1aが指定された場合、この削除領域T1aを、対称軸Qに対して対称化した領域T1bを、裏面のスキャン画像Pbの削除領域とすればよい。一方、短辺綴じに設定されたポートレートの原稿Pから得られた表面のスキャン画像Paに対し、向かって右辺側に幅w2の削除領域T2aが指定された場合もまた、この削除領域T2aを、対称軸Qに対して対称化した領域T2bを、裏面のスキャン画像Pbの削除領域とすればよい。
図8(d)に示すように、短辺綴じに設定されたランドスケープの原稿Pから得られた表面のスキャン画像Paに対し、綴じ位置Aが設けられる辺に対向する辺(即ち、ユーザからみて右辺)の側に幅w1の削除領域T1aが設定された場合、この削除領域T1aを、対称軸Qに対して対称化した領域T1bを、裏面のスキャン画像Pbの削除領域とすればよい。一方、短辺綴じに設定されたランドスケープの原稿Pから得られた表面のスキャン画像Paに対し、画像の下辺側に幅w2の削除領域T2aが設定された場合もまた、この削除領域T2aを、対称軸Qに対して対称化した領域T2bを、裏面のスキャン画像Pbの削除領域とすればよい。
よって、図8(a)〜図8(d)によれば、表裏一対のスキャン画像Pa,Pbが、綴じ方向が長辺綴じである原稿Pから得られたものである場合には、原稿Pがポートレートであるか、ランドスケープであるかにかかわらず、表面のスキャン画像Paに対して指定された削除領域T1aを、裏面のスキャン画像Pbに対し、対称軸Qに対して対称化させた削除領域T1bとして反映させることができる。同様に、表裏一対のスキャン画像Pa,Pbが、綴じ方向が短辺綴じである原稿Pから得られたものである場合もまた、原稿Pがポートレートであるか、ランドスケープであるかにかかわらず、表面のスキャン画像Paに対して指定された削除領域T1aを、裏面のスキャン画像Pbに対し、対称軸Qに対して対称化させた削除領域T1bとして反映させることができる。いずれの場合も、原稿の搬送向きと綴じ方向とが揃っている場合には、対称軸Qは、副走査方向に沿う軸であり、原稿の搬送向きと綴じ方向とが直交する場合には、対称軸Qは、主走査方向に沿う軸である。
なお、表裏一対のスキャン画像Pa,Pbが、スキャン元の原稿Pの綴じ方向が、長辺綴じであるか、短辺綴じであるかにかかわらず、裏面のスキャン画像Pbに対して削除領域が指定された場合にも、その指定された削除領域を対称軸Qに対して対称化させた領域を、表面のスキャン画像Paに対する削除領域として反映させることができる。
次に、図9及び図10は、表裏一対のスキャン画像Pa,Pbに対して画像移動処理を施す場合の処理の対称性を説明する模式図である。図9(a)及び図9(b)は、綴じ方向が長辺綴じである原稿Pから得られた表裏一対のスキャン画像Pa,Pbである場合を示す図である。より詳細には、図9(a)は、原稿Pがポートレートである場合を示し、図9(b)は、原稿Pがランドスケープである場合を示す。
図9(a)に示すように、長辺綴じに設定されたポートレートの原稿Pから得られた表面のスキャン画像Paに対し、ベクトルMaで表わされる移動方向と移動量での平行移動が指定された場合、裏面のスキャン画像Pbを、対称軸Qに対して対称化したベクトルMbで表わされる移動方向と移動量で移動させればよい。
図9(b)に示すように、長辺綴じに設定されたランドスケープの原稿Pから得られた表面のスキャン画像Paに対し、ベクトルMaで表わされる移動方向と移動量での平行移動が指定された場合、裏面のスキャン画像Pbを、対称軸Qに対して対称化したベクトルMbで表わされる移動方向と移動量で移動させればよい。
図10(a)及び図10(b)は、綴じ方向が短辺綴じである原稿Pから得られた表裏一対のスキャン画像Pa,Pbである場合を示す図である。より詳細には、図10(a)は、原稿Pがポートレートである場合を示し、図10(b)は、原稿Pがランドスケープである場合を示す。
図10(a)に示すように、短辺綴じに設定されたポートレートの原稿Pから得られた表面のスキャン画像Paに対し、ベクトルMaで表わされる移動方向と移動量での平行移動が指定された場合、対称軸Qに対して対称化したベクトルMbで表わされる移動方向と移動量で移動させればよい。
図10(b)に示すように、短辺綴じに設定されたランドスケープの原稿Pから得られた表面のスキャン画像Paに対し、ベクトルMaで表わされる移動方向と移動量での平行移動が指定された場合、裏面のスキャン画像Pbを、対称軸Qに対して対称化したベクトルMbで表わされる移動方向と移動量で移動させればよい。
よって、図9(a)、図9(b)、図10(a)、および図10(b)によれば、表裏一対のスキャン画像Pa,Pbが、綴じ方向が長辺綴じである原稿Pから得られたものである場合には、原稿Pがポートレートであるか、ランドスケープであるかにかかわらず、表面のスキャン画像Paに対して指定された移動方向及び移動量(ベクトルMa)を、裏面のスキャン画像Pbに対し、対称軸Qに対して対称化させた移動方向および移動量(ベクトルMb)として反映させることができる。同様に、表裏一対のスキャン画像Pa,Pbが、綴じ方向が短辺綴じである原稿Pから得られたものである場合もまた、原稿Pがポートレートであるか、ランドスケープであるかにかかわらず、表面のスキャン画像Paに対して指定された移動方向及び移動量を、裏面のスキャン画像Pbに対し、対称軸Qに対して対称化させた移動方向および移動量として反映させることができる。
原稿の搬送向きと綴じ方向とが揃っているスキャン画像Paに対し、主走査方向にΔxだけ移動させ、副走査方向Δyだけ移動させる指定をした場合には、対称軸Qは、副走査方向に沿う軸となるため、裏面のスキャン画像Pbを、主走査方向に−Δxだけ移動させ、副走査方向にΔyだけ移動させればよい。一方、原稿の搬送向きと綴じ方向とが直交するスキャン画像Paに対し、主走査方向にΔxだけ移動させ、副走査方向Δyだけ移動させる指定をした場合には、対称軸Qは、主走査方向に沿う軸となるため、裏面のスキャン画像Pbを、主走査方向にΔxだけ移動させ、副走査方向に−Δyだけ移動させればよい。
なお、表裏一対のスキャン画像Pa,Pbが、スキャン元の原稿Pの綴じ方向が、長辺綴じであるか、短辺綴じであるかにかかわらず、裏面のスキャン画像Pbに対して平行移動(移動方向および移動量)が指定された場合にも、その指定された移動方向および移動量を対称軸Qに対して対称化させた移動方向および移動量を、表面のスキャン画像Paに対する移動方向および移動量として反映させることができる。
次に、図11は、表裏一対のスキャン画像Pa,Pbに対して回転処理を施す場合の処理の対称性を説明する模式図である。なお、表裏一対のスキャン画像Pa,Pbに対して回転処理を施す必要が生じる状況としては、例えば、原稿Pが斜行搬送された場合に生じ得る。
図11(a)及び図11(b)は、綴じ方向が長辺綴じである原稿Pから得られた表裏一対のスキャン画像Pa,Pbである場合を示す図である。より詳細には、図11(a)は、原稿Pがポートレートである場合を示し、図11(b)は、原稿Pがランドスケープである場合を示す。なお、図11では、直線Q’(各スキャン画像の中心Cを通り、綴じ方向に沿う直線)が、対称軸Qに対して傾いているものとする。また、図11では、回転中心Crが、スキャン画像の中心Cに一致するものとする。
図11(a)に示すように、長辺綴じに設定されたポートレートの原稿Pから得られた表面のスキャン画像Paに対し、直線Q’が対称軸Qに一致するように、回転中心Crを中心として、時計周りに角度θだけ回転させる処理が指定された場合、その回転方向及び回転量を対称軸Qに対して対称化させた回転方向および回転量で、裏面のスキャン画像Pbを、回転中心Crを中心として回転させればよい。また、図11(b)に示すように、長辺綴じに設定されたランドスケープの原稿Pから得られた表面のスキャン画像Paに対し、直線Q’が対称軸Qに一致するように、回転中心Crを中心として、時計回りに角度θだけ回転させる処理が指定された場合、その回転方向及び回転量を対称軸Qに対して対称化させた回転方向および回転量で、裏面のスキャン画像Pbを、回転中心Crを中心として回転させればよい。
つまり、表裏一対のスキャン画像Pa,Pbが、綴じ方向が長辺綴じである原稿Pから得られたものである場合に、表面のスキャン画像Pbに対し、回転中心Crを中心として、時計周りに角度θだけ回転させる処理が指定された場合には、原稿Pがポートレートであるか、ランドスケープであるかにかかわらず、裏面のスキャン画像Pbを、回転中心Crを中心として、反時計回りにθ(即ち、−θ)だけ回転させればよい。
図11(c)及び図11(d)は、綴じ方向が短辺綴じである原稿Pから得られた表裏一対のスキャン画像Pa,Pbである場合を示す図である。より詳細には、図11(c)は、原稿Pがポートレートである場合を示し、図11(d)は、原稿Pがランドスケープである場合を示す。
図11(c)に示すように、短辺綴じに設定されたポートレートの原稿Pから得られた表面のスキャン画像Paに対し、直線Q’が対称軸Qに一致するように、回転中心Crを中心として、時計周りに角度θだけ回転させる処理が指定された場合、その回転方向及び回転量を対称軸Qに対して対称化させた回転方向および回転量で、裏面のスキャン画像Pbを、回転中心Crを中心として回転させればよい。また、図11(d)に示すように、短辺綴じに設定されたランドスケープの原稿Pから得られた表面のスキャン画像Paに対し、直線Q’が対称軸Qに一致するように、回転中心Crを中心として、時計回りに角度θだけ回転させる処理が指定された場合、その回転方向及び回転量を対称軸Qに対して対称化させた回転方向および回転量で、裏面のスキャン画像Pbを、回転中心Crを中心として回転させればよい。
つまり、表裏一対のスキャン画像Pa,Pbが、綴じ方向が短辺綴じである原稿Pから得られたものである場合に、表面のスキャン画像Pbに対し、回転中心Crを中心として、時計周りに角度θだけ回転させる処理が指定された場合には、原稿Pがポートレートであるか、ランドスケープであるかにかかわらず、裏面のスキャン画像Pbを、回転中心Crを中心として、反時計回りにθ(即ち、−θ)だけ回転させればよい。
なお、表裏一対のスキャン画像Pa,Pbが、スキャン元の原稿Pの綴じ方向が、長辺綴じであるか、短辺綴じであるかにかかわらず、裏面のスキャン画像Pbに対して回転(回転方向および回転量)が指定された場合にも、その指定された回転方向および回転量を対称軸Qに対して対称化させた移動方向および移動量を、表面のスキャン画像Paに対する移動方向および移動量として反映させることができる。
図示はしないが、表裏一対のスキャン画像Pa,Pbのいずれかに対し、この回転中心Crを移動させる処理(回転中心移動処理)が指定された場合もまた、上述した平行移動と同様、一方のスキャン画像に対して指定された回転中心Crの移動方向及び移動量を、対称軸Qに対して対称化させて、他方のスキャン画像に反映させればよい。つまり、例えば、表面のスキャン画像Paに対し、回転中心Crの移動方向及び移動量が指定された場合には、その移動方向及び移動量を対称軸Qに対して対称化させた移動方向および移動量を、他方のスキャン画像における回転中心Crの移動方向および移動量とすればよい。
従って、図8〜図11によれば、原稿Pがポートレートであるかランドスケープであるかにかかわらず、設定されている綴じ方向と、原稿の搬送向きとが同じ方向である場合には、一方のスキャン画像(例えば、表面のスキャン画像Pa)に対して指定された処理を、各スキャン画像の中心Cを通り、当該スキャン画像の副走査方向に沿う軸に対して対称化させた処理を、他方のスキャン画像(例えば、裏面のスキャン画像Pb)に対して施せばよい。
一方で、原稿Pがポートレートであるかランドスケープであるかにかかわらず、設定されている綴じ方向と、原稿の搬送向きとが直交する方向である場合には、一方のスキャン画像(例えば、表面のスキャン画像Pa)に対して指定された処理を、各スキャン画像の中心Cを通り、当該スキャン画像の主走査方向に沿う軸に対して対称化させた処理を、他方のスキャン画像(例えば、裏面のスキャン画像Pb)に対して施せばよい。
次に、図12を参照して、上記構成を有するMFP1が実行する処理について説明する。図12は、MFP1のCPU11が実行するスキャン処理を示すフローチャートである。スキャン処理は、MFP1が、PC100からスキャナドライバ114aによるスキャン実行指示を受信した場合、又は、MFP1においてスキャン機能の実行が選択された場合に、開始される。
まず、ステップS201(以下、ステップを省略)において、本処理が、スキャナドライバ114aによるスキャン実行指示をPC100から受信したことに基づいて開始された場合(S201:Yes)、CPU11は、受信したスキャン実行指示に含まれる設定情報を、設定情報を設定メモリ13aに記憶し(S208)、処理をS206へ移行する。
一方、本処理が、MFP1においてスキャン機能の実行が選択されて開始された場合(S201:No)、CPU11は、設定情報受付画面をLCD14に表示させる(S202)。その設定情報受付画面において、設定情報が入力されなければ(S203:No)、CPU11は、処理をS203に戻し、設定情報が入力されるのを待機する。設定情報受付画面において、設定情報が入力されたことをCPU11が受け付けた場合には(S203:Yes)、CPU11は、受け付けた設定情報を設定メモリ13aに記憶する(S204)。
次に、スキャン実行指示が入力されなければ(S205:No)、CPU11は、処理をS205に戻し、スキャン実行指示が入力されるのを待機する。スキャン実行指示が入力されたことをCPU11が受け付けた場合には(S205:Yes)、CPU11は、処理をS206へ移行する。
S206において、CPU11は、原稿をADF17に順次搬送させ、ADF17により搬送される原稿のスキャンをスキャナ16に順次実行させる(S206)。CPU11は、スキャンにより得られたスキャンデータを、スキャンデータメモリ13bに記憶する。なお、PC100から受信したスキャン実行指示が両面スキャンを指定するものである場合、又は、設定受付画面から入力された設定情報が両面スキャンの指定を含むものである場合には、CPU11は、S206において、原稿の両面を、それぞれ、読取ユニット16a1,16a2によりスキャンさせる。原稿の両面をスキャンした場合、CPU11は、各スキャンデータのヘッダ領域D2(図2参照)に、画像データの取得順序を示す値を、取得ページ番号51及び現在ページ番号52として記憶する。
S206の後(スキャンの終了後)、CPU11は、スキャンデータメモリ13bに記憶されるスキャンデータと、設定メモリ13aに記憶される設定情報とを、PC100へ送信し(S207)、本処理を終了する。なお、S207において、スキャンデータ及び設定情報の送り先となるPC100は、スキャン実行指示の送信元のPC、又は、設定情報に含まれる送り先設定により指定されたPCである。
次に、図13〜図17を参照して、上記構成を有するPC100が実行する処理について説明する。まず、図13は、PC100のCPU111が実行するスキャンデータ編集処理を示すフローチャートである。スキャンデータ編集処理は、PC100がMFP1からスキャンデータ及び設定情報を受信した場合、又は、保存用メモリ114cに保存されているスキャンデータを指定して起動を指示した場合に、開始される。なお、本実施形態では、スキャンデータの出力元の装置であるMFP1が、原稿を長辺方向に搬送する機種であるとする。つまり、PC100がMFP1から受信したスキャンデータは、原稿の搬送向きが長辺方向である場合のスキャンデータに限られるものとする。
まず、CPU111は、スキャンデータ及び設定情報をRAM113に記憶する(S301)。具体的には、スキャンデータ及び設定情報をMFP1から受信したことに基づき本処理が開始された場合には、CPU111は、S301において、受信したスキャンデータを処理データメモリ113bに記憶し、受信した設定情報を設定メモリ113aに記憶する。一方、保存用メモリ114cに保存されているスキャンデータを指定して起動が指示されたことに基づき本処理が開始された場合には、CPU111は、S301において、指定されたスキャンデータを処理データメモリ113bに記憶し、設定メモリ114dに記憶されている設定情報のうち、指定されたスキャンデータに対応付けられている設定情報を設定メモリ113aに記憶する。
次に、CPU111は、処理データメモリ113bに記憶されているスキャンデータに対し、余白付与処理を実行する(S302)。具体的に、CPU111は、S302において、処理データメモリ113bに記憶されているスキャンデータのうち、設定メモリ113aに記憶されている設定情報に含まれる用紙サイズ情報が示す用紙サイズより小さいスキャンデータに対し、用紙サイズに合うよう、余白を付与する。なお、保存用メモリ114cに保存されているスキャンデータを指定して起動が指示されたことに基づき本処理が開始された場合には、CPU111は、S302の処理を実行せず、処理をS303へ移行する。
次に、設定メモリ113aに記憶されている設定情報に、両面スキャンの指定が含まれていなければ(S303:No)、CPU11は、通常の編集処理を実行し(S327)、処理をS307へ移行する。なお、通常の編集処理(S327)は、本発明とは無関係であるので、詳細な処理については省略する。
一方、設定メモリ113aに記憶されている設定情報に、両面スキャンの指定が含まれ、かつ、設定情報に含まれる綴じ情報が短辺綴じであることを示す場合(S303:Yes,S304:Yes)、CPU111は、スキャンデータのうち、偶数ページのスキャンデータを180°回転(半回転)させ(S305)、処理をS306へ移行する。なお、S305の処理は、スキャンデータ及び設定情報をMFP1から受信したことに基づき本処理が開始された場合にのみ実行するものとする。S305において、CPU111は、スキャンデータのヘッダ領域D2に記憶される取得ページ番号51に基づいて、偶数ページのスキャンデータを処理対象として選択する。上述した通り、本実施形態では、PC100がMFP1から受信したスキャンデータは、原稿の搬送向きが長辺方向である場合のスキャンデータであるので、綴じ方向が短辺綴じである場合には、S305において、受信したスキャンデータが180°回転される。これにより、表裏一対のスキャンデータに対応するスキャン画像Pa,Pbは、それぞれが示す原稿内容の上下方向の向きが相対的に揃えられる。
また、設定メモリ113aに記憶されている設定情報に、両面スキャンの指定が含まれ、かつ、設定情報に含まれる綴じ情報が長辺綴じであることを示す場合(S303:Yes,S304:No)、CPU111は、処理をS306へ移行する。つまり、綴じ方向が長辺綴じである場合には、原稿の搬送向きが綴じ方向に沿っている場合、表裏一対のスキャンデータに対応するスキャン画像Pa,Pbはそれぞれが示す原稿内容の上下方向の向きが相対的に揃っているので、偶数ページのスキャンデータを180°回転させる必要がない。
S306において、CPU111は、変数iに1を設定する(S306)。次に、CPU111は、処理データメモリ113bに記憶されるスキャナデータのうち、取得ページ番号51が、2i−1であるスキャナデータと、2iであるスキャナデータとに対応するスキャン画像(即ち、表裏一対のスキャン画像Pa,Pb)を表示する(S307)。具体的に、S307において、CPU111は、図3に示す編集画面120をLCD116に表示させ、その編集画面120にスキャン画像Pa,Pbを表示させる。
S306において、2i−1であるスキャナデータまたは2iであるスキャナデータの一方が削除されて存在しない場合には、CPU111は、存在するスキャンデータに対応する一方のスキャン画像のみを表示する(図3(b)参照)。なお、S306において、2i−1であるスキャナデータ及び2iであるスキャナデータの両方が削除されて存在しない場合、スキャン画像が表示されない編集画面120が表示されるものとする。
次に、ページ戻りボタン122に対する操作をCPU111が受け付けた場合には(S308:Yes)、i=1でなければ(S317:No)、CPU111は、変数iから1を減算し(S318)、処理をS307へ戻す。これにより、1つ前の表裏一対のスキャン画像が編集画面120に表示される。
ページ戻りボタン122に対する操作を受け付けない場合(S308:No)、又は、ページ戻りボタン122に対する操作をCPU111が受け付けたが、i=1である場合(S308:Yes,S317:Yes)、CPU111は、処理をS309へ移行する。
S309において、ページ送りボタン121に対する操作を受け付けない場合(S309:No)、又は、ページ送りボタン121に対する操作をCPU111が受け付けたが、i=最大値である場合(S309:Yes、S319:Yes)、CPU111は、処理をS310へ移行する。
S309において、ページ送りボタン121対する操作を受けつけた場合には(S309:Yes)、i=最大値でなければ(S319:No)、CPU111は、変数iに1を加算し(S320)、処理をS307へ戻す。これにより、1つ後ろの表裏一対のスキャン画像が編集画面120に表示される。
ページ送りボタン121に対する操作でなく、余白削除ボタン124に対する操作をCPU111が受け付けた場合(S309:No,S310:Yes)、CPU111は、編集画面120に表示中のスキャン画像に対する余白削除(トリミング)処理を実行し(S321)、処理をS307へ戻す。これにより、余白削除処理が施された後の表裏一対のスキャン画像が編集画面120に表示される。なお、余白削除処理(S321)の詳細な処理については、図14を参照して後述する。
余白削除ボタン124に対する操作でなく、画像移動ボタン125に対する操作をCPU111が受け付けた場合(S310:No,S311:Yes)、CPU111は、編集画面120に表示中のスキャン画像に対する画像移動処理を実行し(S322)、処理をS307へ戻す。これにより、画像移動処理が施された後の表裏一対のスキャン画像が編集画面120に表示される。なお、画像移動処理(S322)の詳細な処理については、図15を参照して後述する。
画像移動ボタン125に対する操作でなく、回転中心移動ボタン127に対する操作をCPU111が受け付けた場合(S311:No,S312:Yes)、CPU111は、編集画面120に表示中のスキャン画像に対する回転中心移動処理を実行し(S323)、処理をS307へ戻す。これにより、回転中心移動処理が施された後の表裏一対のスキャン画像が編集画面120に表示される。なお、回転中心移動処理(S323)の詳細な処理については、図16を参照して後述する。
回転中心移動ボタン127に対する操作でなく、回転ボタン126に対する操作をCPU111が受け付けた場合(S312:No,S313:Yes)、CPU111は、編集画面120に表示中のスキャン画像に対する回転処理を実行し(S324)、処理をS307へ戻す。これにより、回転処理が施された後の表裏一対のスキャン画像が編集画面120に表示される。なお、回転処理(S324)の詳細な処理については、図17(a)を参照して後述する。
回転ボタン126に対する操作でなく、削除ボタン128に対する操作をCPU111が受け付けた場合(S313:No,S314:Yes)、CPU111は、編集画面120に表示中のスキャン画像のうち、指定されたスキャン画像(スキャンデータ)を削除する画像削除処理を実行し(S325)、処理をS307へ戻す。なお、画像削除処理(S325)の詳細な処理については、図17(b)を参照して後述する。
削除ボタン128に対する操作でなく、終了ボタン129の操作も入力されない場合(S314:No,S315:No)、CPU11は、処理をS308に戻す。一方、終了ボタン129に対する操作をCPU111が受け付けた場合(S315:Yes)、CPU111は、処理をS307へ移行する。
S307において、CPU111は、編集処理後のスキャンデータおよび設定情報をHDD114に記憶する(S307)。具体的には、保存用メモリ114cに保存されているスキャンデータを指定して起動が指示されたことに基づき本処理が開始された場合には、CPU111は、S307において、保存用メモリ114cに保存されているスキャンデータを、編集処理後のスキャンデータで上書きし、対応する設定メモリ114dに設定情報を記憶する。一方、スキャンデータ及び設定情報をMFP1から受信したことに基づき本処理が開始された場合には、CPU111は、S307において、編集処理後のスキャンデータを保存用メモリ114cに保存し、設定情報を、保存用メモリ114cに保存したスキャンデータに対応付けて設定メモリ114dに記憶する。
図14は、上述した余白削除処理(S321)を示すフローチャートである。余白削除処理(S321)において、処理終了の指示をCPU111が受け付けた場合には(S401:Yes)、CPU111は、本処理を終了する。なお、処理終了の指示は、ユーザが入力装置115を用いて所定の操作(例えば、編集画面120に表示された処理終了を指示するための図示されないボタンに対する操作)を行った場合に入力される。
一方、処理終了の指示が入力されていない場合に(S401:No)、編集画面120に表示中のスキャン画像に対する削除領域の指定をCPU111が受け付けた場合には(S402:Yes)、CPU111は、処理をS403へ移行する。一方、編集画面120に表示中のスキャン画像に対する削除領域の指定が入力されていない場合(S402:No)、CPU111は、処理をS401へ戻す。
S403において、CPU111は、削除領域の指定を受け付けたページが、2i−1ページであるか、2iページであるかを特定する(S403)。次に、CPU111は、削除領域の指定を受け付けたページのスキャンデータに対し、受け付けた削除領域を削除する処理を実行し(S404)、処理をS405へ移行する。
S405において、CPU111は、削除領域の指定を受け付けたページに対し、対となるスキャンデータがあるか否かを判断する(S405)。具体的に、CPU111は、削除領域の指定を受け付けたページが2i−1ページであれば、S405において、2iページが存在するか否かを判断する。一方、削除領域の指定を受け付けたページが2iページであれば、CPU111は、S405において、2i−1ページが存在するか否かを判断する。
対になるページが存在しないとCPU11が判断した場合(S405:No)、CPU111は、処理をS401へ戻す。一方、対になるページが存在するとCPU11が判断した場合(S405:Yes)、CPU111は、処理をS406へ移行する。
削除領域の指定を受け付けたページ(即ち、S403において特定されたページ)が2i−1ページであり、かつ、設定情報メモリ113aに記憶される設定情報に含まれる綴じ情報が長辺綴じであることを示す場合(S406:Yes,S407:Yes)、CPU111は、スキャン画像の中心を通り、スキャンデータの副走査方向に沿う軸(画像を読み取る際の副走査方向に延びる軸)を対称軸Qとし、2i−1ページのスキャンデータに対してS404において実行した処理を対称軸Qに対して対称化させた処理を、2iページのスキャンデータに対して実行し(S408)、処理をS401へ移行する。
削除領域の指定を受け付けたページが2i−1ページであり、かつ、設定情報メモリ113aに記憶される設定情報に含まれる綴じ情報が短辺綴じであることを示す場合(S406:Yes,S407:No)、CPU111は、スキャン画像の中心を通り、スキャンデータの主走査方向に沿う軸(画像を読み取る際の主走査方向に延びる軸)を対称軸Qとし、2i−1ページのスキャンデータに対してS404において実行した処理を対称軸Qに対して対称化させた処理を、2iページのスキャンデータに対して実行し(S409)、処理をS401へ移行する。
削除領域の指定を受け付けたページが2iページであり、かつ、設定情報メモリ113aに記憶される設定情報に含まれる綴じ情報が長辺綴じであることを示す場合(S406:No,S410:Yes)、CPU111は、スキャン画像の中心を通り、スキャンデータの副走査方向に沿う軸を対称軸Qとし、2iページのスキャンデータに対してS404において実行した処理を対称軸Qに対して対称化させた処理を、2i−1ページのスキャンデータに対して実行し(S411)、処理をS401へ移行する。
削除領域の指定を受け付けたページが2iページであり、かつ、設定情報メモリ113aに記憶される設定情報に含まれる綴じ情報が短辺綴じであることを示す場合(S406:No,S410:No)、CPU111は、スキャン画像の中心を通り、スキャンデータの主走査方向に沿う軸を対称軸Qとし、2iページのスキャンデータに対してS404において実行した処理を対称軸Qに対して対称化させた処理を、2i−1ページのスキャンデータに対して実行し(S412)、処理をS401へ移行する。
図15は、上述した画像移動処理(S322)を示すフローチャートである。画像移動処理(S322)において、処理終了の指示をCPU111が受け付けた場合には(S501:Yes)、CPU111は、本処理を終了する。
一方、処理終了の指示が入力されていない場合に(S501:No)、編集画面120に表示中のスキャン画像に対する画像の移動度(Δx,Δy)の指定(即ち、画像の移動方向および移動量の指定)をCPU111が受け付けた場合には(S502:Yes)、CPU111は、処理をS503へ移行する。なお、Δxは、主走査方向に沿う移動方向および移動距離であり、Δyは、副走査方向に沿う移動方向および移動距離である。一方、編集画面120に表示中のスキャン画像に対する画像の移動度の指定が入力されていない場合(S502:No)、CPU111は、処理をS501へ戻す。
S503において、CPU111は、画像の移動度の指定を受け付けたページが、2i−1ページであるか、2iページであるかを特定する(S503)。次に、CPU111は、画像の移動度の指定を受け付けたページのスキャンデータに対し、受け付けた移動度(Δx,Δy)で画像を平行移動させる処理を実行し(S504)、処理をS505へ移行する。
S505において、CPU111は、画像の移動度の指定を受け付けたページに対し、対となるスキャンデータがあるか否かを判断する(S505)。S505の処理は、上述したS405の処理と同様に行われる。
対になるページが存在しないとCPU11が判断した場合(S505:No)、CPU111は、処理をS501へ戻す。一方、対になるページが存在するとCPU11が判断した場合(S505:Yes)、CPU111は、処理をS506へ移行する。
画像の移動度の指定を受け付けたページ(即ち、S503において特定されたページ)が2i−1ページであり、かつ、設定情報メモリ113aに記憶される設定情報に含まれる綴じ情報が長辺綴じであることを示す場合(S506:Yes,S507:Yes)、CPU111は、スキャン画像の中心を通り、スキャンデータの副走査方向に沿う軸を対称軸Qとし、2i−1ページのスキャンデータに対してS504において実行した処理を対称軸Qに対して対称化させた処理(即ち、移動度(−Δx,Δy)で画像を平行移動させる処理)を、2iページのスキャンデータに対して実行し(S508)、処理をS501へ移行する。
画像の移動度の指定を受け付けたページが2i−1ページであり、かつ、設定情報メモリ113aに記憶される設定情報に含まれる綴じ情報が短辺綴じであることを示す場合(S506:Yes,S507:No)、CPU111は、スキャン画像の中心を通り、スキャンデータの主走査方向に沿う軸を対称軸Qとし、2i−1ページのスキャンデータに対してS504において実行した処理を対称軸Qに対して対称化させた処理(即ち、移動度(Δx,−Δy)で画像を平行移動させる処理)を、2iページのスキャンデータに対して実行し(S509)、処理をS501へ移行する。
画像の移動度の指定を受け付けたページが2iページであり、かつ、設定情報メモリ113aに記憶される設定情報に含まれる綴じ情報が長辺綴じであることを示す場合(S506:No,S510:Yes)、CPU111は、スキャン画像の中心を通り、スキャンデータの副走査方向に沿う軸を対称軸Qとし、2iページのスキャンデータに対してS504において実行した処理を対称軸Qに対して対称化させた処理(即ち、移動度(−Δx,Δy)で画像を平行移動させる処理)を、2i−1ページのスキャンデータに対して実行し(S511)、処理をS501へ移行する。
画像の移動度の指定を受け付けたページが2iページであり、かつ、設定情報メモリ113aに記憶される設定情報に含まれる綴じ情報が短辺綴じであることを示す場合(S506:No,S510:No)、CPU111は、スキャン画像の中心を通り、スキャンデータの主走査方向に沿う軸を対称軸Qとし、2iページのスキャンデータに対してS504において実行した処理を対称軸Qに対して対称化させた処理(即ち、移動度(Δx,−Δy)で画像を平行移動させる処理)を、2i−1ページのスキャンデータに対して実行し(S512)、処理をS501へ移行する。
図16は、上述した回転中心移動処理(S323)を示すフローチャートである。回転中心移動処理(S323)において、処理終了の指示をCPU111が受け付けた場合には(S601:Yes)、CPU111は、本処理を終了する。
一方、処理終了の指示が入力されていない場合に(S601:No)、編集画面120に表示中のスキャン画像に対する回転中心の移動度(Δx,Δy)の指定(即ち、回転中心の移動方向および移動量の指定)をCPU111が受け付けた場合には(S602:Yes)、CPU111は、処理をS603へ移行する。なお、Δxは、主走査方向に沿う移動方向および移動距離であり、Δyは、副走査方向に沿う移動方向および移動距離である。一方、編集画面120に表示中のスキャン画像に対する回転中心の移動度の指定が入力されていない場合(S602:No)、CPU111は、処理をS601へ戻す。
S603において、CPU111は、回転中心の移動度の指定を受け付けたページが、2i−1ページであるか、2iページであるかを特定する(S603)。次に、CPU111は、回転中心の移動度の指定を受け付けたページのスキャンデータに対し、受け付けた移動度(Δx,Δy)で回転中心を平行移動させる処理を実行し(S604)、処理をS605へ移行する。
S605において、CPU111は、回転中心の移動度の指定を受け付けたページに対し、対となるスキャンデータがあるか否かを判断する(S605)。S605の処理は、上述したS405の処理と同様に行われる。
対になるページが存在しないとCPU11が判断した場合(S605:No)、CPU111は、処理をS601へ戻す。一方、対になるページが存在するとCPU11が判断した場合(S605:Yes)、CPU111は、処理をS606へ移行する。
回転中心の移動度を受け付けたページ(即ち、S603において特定されたページ)が2i−1ページであり、かつ、設定情報メモリ113aに記憶される設定情報に含まれる綴じ情報が長辺綴じであることを示す場合(S606:Yes,S607:Yes)、CPU111は、スキャン画像の中心を通り、スキャンデータの副走査方向に沿う軸を対称軸Qとし、2i−1ページのスキャンデータに対してS604において実行した処理を対称軸Qに対して対称化させた処理(即ち、移動度(−Δx,Δy)で回転中心を平行移動させる処理)を、2iページのスキャンデータに対して実行し(S608)、処理をS601へ移行する。
回転中心の移動度の指定を受け付けたページが2i−1ページであり、かつ、設定情報メモリ113aに記憶される設定情報に含まれる綴じ情報が短辺綴じであることを示す場合(S606:Yes,S607:No)、CPU111は、スキャン画像の中心を通り、スキャンデータの主走査方向に沿う軸を対称軸Qとし、2i−1ページのスキャンデータに対してS604において実行した処理を対称軸Qに対して対称化させた処理(即ち、移動度(Δx,−Δy)で回転中心を平行移動させる処理)を、2iページのスキャンデータに対して実行し(S609)、処理をS601へ移行する。
回転中心の移動度の指定を受け付けたページが2iページであり、かつ、設定情報メモリ113aに記憶される設定情報に含まれる綴じ情報が長辺綴じであることを示す場合(S606:No,S610:Yes)、CPU111は、スキャン画像の中心を通り、スキャンデータの副走査方向に沿う軸を対称軸Qとし、2iページのスキャンデータに対してS604において実行した処理を対称軸Qに対して対称化させた処理(即ち、移動度(−Δx,Δy)で回転中心を平行移動させる処理)を、2i−1ページのスキャンデータに対して実行し(S611)、処理をS601へ移行する。
移動度の指定を受け付けたページが2iページであり、かつ、設定情報メモリ113aに記憶される設定情報に含まれる綴じ情報が短辺綴じであることを示す場合(S606:No,S610:No)、CPU111は、スキャン画像の中心を通り、スキャンデータの主走査方向に沿う軸を対称軸Qとし、2iページのスキャンデータに対してS604において実行した処理を対称軸Qに対して対称化させた処理(即ち、移動度(Δx,−Δy)で回転中心を平行移動させる処理)を、2i−1ページのスキャンデータに対して実行し(S612)、処理をS601へ移行する。
図17(a)は、上述した回転処理(S324)を示すフローチャートである。回転処理(S324)において、処理終了の指示をCPU111が受け付けた場合には(S701:Yes)、CPU111は、本処理を終了する。
一方、処理終了の指示が入力されていない場合に(S701:No)、編集画面120に表示中のスキャン画像に対する回転角Δθの指定(即ち、回転方向及び回転量の指定)をCPU111が受け付けた場合には(S702:Yes)、CPU111は、処理をS703へ移行する。一方、編集画面120に表示中のスキャン画像に対する回転角の指定が入力されていない場合(S702:No)、CPU111は、処理をS701へ戻す。
S703において、CPU111は、回転角の指定を受け付けたページが、2i−1ページであるか、2iページであるかを特定する(S703)。次に、CPU111は、回転角の指定を受け付けたページのスキャンデータに対し、受け付けた回転角(Δθ)で、現在の回転中心周りに回転させる処理を実行し(S704)、処理をS705へ移行する。S705において、CPU111は、回転角の指定を受け付けたページに対し、対となるスキャンデータがあるか否かを判断する(S705)。S705の処理は、上述したS405の処理と同様に行われる。
対になるページが存在しないとCPU11が判断した場合(S705:No)、CPU111は、処理をS701へ戻す。一方、対になるページが存在するとCPU11が判断した場合(S705:Yes)、CPU111は、処理をS706へ移行する。
回転角を受け付けたページ(即ち、S703において特定されたページ)が2i−1ページである場合(S706:Yes)、CPU111は、2iページのスキャンデータに対し、現在の回転中心周りに−Δθ度だけ回転させる処理を実行し(S707)、処理をS701へ移行する。
回転角を受け付けたページが2iページである場合(S706:Yes)、CPU111は、2i−1ページのスキャンデータに対し、現在の回転中心周りに−Δθ度だけ回転させる処理を実行し(S708)、処理をS701へ移行する。
図17(b)は、上述した画像削除処理(S325)を示すフローチャートである。画像削除処理(S325)において、処理終了の指示をCPU111が受け付けた場合には(S721:Yes)、CPU111は、本処理を終了する。
一方、処理終了の指示が入力されていない場合に(S721:No)、編集画面120に表示中のスキャン画像に対し、削除対象とする画像の指定をCPU111が受け付けた場合には(S722:Yes)、CPU111は、処理をS723へ移行する。一方、編集画面120に表示中のスキャン画像に対し、削除対象とする画像の指定が入力されていない場合(S722:No)、CPU111は、処理をS721へ戻す。
S723において、CPU111は、受け付けた削除対象の画像に対応するスキャンデータを削除する処理を実行する(S723)。次に、CPU111は、ヘッダ領域D2に記憶される現在ページ番号52が、削除されたスキャンデータより大きいスキャンデータについて、スキャンデータ毎に、現在ページ番号52を1ずつ減算して更新し(S724)、本処理を終了する。
本実施形態の画像編集プログラム114bによれば、編集画面120に表示される表裏一対のスキャン画像Pa,Pbのうち、一方のスキャン画像に対し、領域削除(トリミング)、画像の平行移動、回転、および回転中心の移動をユーザの所望に応じて指定した場合に、指定された処理が一方のスキャン画像に対して施されるとともに、他方のスキャン画像に対し、設定されている綴じ方向と原稿を読み取った際の原稿の搬送向きとに応じて決まる対称軸Qに対して対称化された処理が施される。よって、表裏一対のスキャン画像Pa,Pbのうち、一方のスキャン画像に対して処理を指定すれば、他方のスキャン画像も適切に処理できるので、ユーザが、スキャン画像Pa,Pbに対してそれぞれ処理を指定する必要がない。従って、表裏一対のスキャン画像Pa,Pbを、容易かつ正確に編集できる。
また、本実施形態の画像編集プログラム114bによれば、設定されている綴じ方向と、原稿を読み取った際の原稿の搬送向きとが直交する場合に、MFP1から受信したスキャンデータのうち、偶数ページのスキャンデータを180°回転(半回転)させるので、編集画面120に、上下方向の揃ったスキャン画像Pa,Pbを表示させることができ、ユーザが、スキャン画像Pa,Pbに対する編集作業を行い易い。
また、本実施形態の画像編集プログラム114bによれば、表裏一対のスキャン画像Pa,Pbを並べて編集画面120に表示し、余白削除処理などの各処理が実行される毎に、処理を施されたスキャン画像Pa,Pbに更新される。よって、ユーザは、表裏一対のスキャン画像Pa,Pbに対して施された処理を目視により確認できる。
次に、図18を参照して、第2実施形態について説明する。上述した第1実施形態では、画像編集プログラム114bが、MFP1から受信したスキャンデータのうち、綴じ設定が短辺綴じである偶数ページのスキャンデータを180°回転させる構成としたが、第2実施形態では、MFP1において、綴じ設定が短辺綴じである偶数ページのスキャンデータを180°回転させる。なお、この第2実施形態において、上述した第1実施形態と同一の部分については、同一の符号を付し、その説明は省略する。
図18は、第2実施形態のスキャン処理を示すフローチャートである。第2実施形態のスキャン処理もまた、上述した第1実施形態のスキャン処理と同様、MFP1が、PC100からスキャナドライバ114aによるスキャン実行指示を受信した場合、又は、MFP1においてスキャン機能の実行が選択された場合に、開始される。
図18に示すように、第2実施形態のスキャン処理では、S206の処理後、設定メモリ13aに記憶される設定情報に含まれる綴じ設定が短辺綴じであることを示す場合(S810:Yes)、CPU11は、スキャンデータのうち、偶数ページのスキャンデータを180°回転(半回転)させ(S802)、処理をS207へ移行する。なお、本実施形態では、PC100において実行されるスキャンデータ編集処理(図13参照)のうち、S305の処理が省略される。
第2実施形態によれば、MFP1は、スキャナ16がスキャンしたスキャンデータのうち、偶数ページのスキャンデータを180°回転(半回転)させてから、PC100へ送信する。かかる場合も、画像編集プログラム114bは、編集画面120に、上下方向の揃ったスキャン画像Pa,Pbを表示させることができるので、ユーザが、スキャン画像Pa,Pbに対する編集作業を行い易い。
上記各実施形態において、画像編集プログラム114bが、画像編集プログラムの一例である。PC100が、情報処理装置、画像編集装置の一例である。CPU111が、コンピュータの一例である。RAM113が、記憶部の一例である。LCD116が表示部の一例である。画像編集システム500が、画像編集システムの一例である。スキャナ16が、読取部の一例である。MFP1が、画像読取装置の一例である。
S301の処理、又は、当該処理を実行するCPU111が、画像データ取得手段の一例である。S402,S502,S602,S702の処理、又は、これらの処理を実行するCPU111が、処理指示受付手段の一例である。S404,S408,S409,S411,S412,S504,S508,S509,S511,S512,S604,S608,S609,S611,S612,S704,S707,S708の処理、又は、これらの処理を実行するCPU111が、画像処理手段の一例である。S301の処理が、綴じ情報取得手段の一例である。S305の処理が、前処理手段の一例である。S301の処理が、記憶制御手段の一例である。S722の処理が、データ削除指示受付手段の一例である。S723の処理が、削除手段の一例である。S724の処理が、ページ番号更新手段の一例である。S307の処理が、表示制御手段の一例である。
以上、実施形態に基づき本発明を説明したが、本発明は上述した実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
例えば、上記実施形態では、画像編集プログラム114bを、PC100に搭載する構成としたが、画像編集プログラム114bを、MFP1に搭載する構成としてもよい。また、上記実施形態では、画像編集装置として、画像編集プログラム114bを搭載したPC100を例示したが、画像編集プログラム114bを搭載した、MFP1のような原稿を読み取り可能な装置も画像編集装置の一例となり得る。また、上記実施形態では、画像編集システムとして、原稿を読み取り可能な装置であるMFP1と、画像編集プログラム114bを搭載したPC100とを別体として含む画像編集システム500を例示したが、画像編集プログラム114bを搭載した、MFP1のような原稿を読み取り可能な装置も画像編集システムの一例となり得る。また、画像読取装置の一例として、スキャナ機能以外の機能も有するMFP1を例示したが、スキャナ機能に特化したスキャナ装置も画像読取装置の一例となり得る。
また、上記実施形態では、2つの読取ユニット16a1,16a2が設けられたスキャナ16を用いて、表裏一対のスキャンデータを得る構成としたが、1つの読取ユニットが設けられたスキャナにおいて、原稿を搬送中に反転させて当該1つの読取ユニットで原稿の両面を読み取り、表裏一対のスキャンデータを得る構成であってもよい。
また、上記実施形態では、MFP1が、PC100からスキャナドライバ114aによるスキャン実行指示を受信した場合、又は、MFP1においてスキャン機能の実行が選択された場合に、図12又は図18のスキャン処理が開始される構成としたが、MFP1が、ポーリングによってPC100のスキャン実行指示の有無を確認し、スキャン実行指示が確認された場合に、図12又は図18のスキャン処理が開始される構成としてもよい。
また、図14〜図16のフローチャートに示す処理は、PC100がMFP1から受信したスキャンデータが、原稿の搬送向きが長辺方向である場合のスキャンデータに限られる場合に適用される処理として説明したが、これらの処理は、S407,S410,S507,S510,S607,S610において、短辺綴じであるか否かを判定させることにより、原稿の搬送向きが短辺方向である場合のスキャンデータに対しても適用できる。
また、MFP1から受信する設定情報に、原稿の搬送向きを示す情報を含めることにより、原稿の搬送向きが長辺方向である場合と、原稿の搬送向きが短辺方向である場合との両方に適用可能な画像編集プログラムを得ることができる。
また、上記実施形態では、原稿の両面をスキャンした際に、各スキャンデータのヘッダ領域D2に、画像データの取得順序を示す値を、取得ページ番号51及び現在ページ番号52として記憶する構成としたが、スキャンの際には、取得ページ番号51及び現在ページ番号52をヘッダ領域D2に記憶させず、PC100がMFP1からスキャンデータを受信した場合に、受信順に、画像データの取得順序を示す値を、取得ページ番号51及び現在ページ番号52として記憶する構成としてもよい。
また、上記第1実施形態では、設定されている綴じ方向と、原稿を読み取った際の原稿の搬送向きとが直交する場合に、PC100のCPU111が、MFP1から受信したスキャンデータのうち、偶数ページのスキャンデータを180°回転させる構成とした。また、上記第2実施形態では、設定されている綴じ方向と、原稿を読み取った際の原稿の搬送向きとが直交する場合に、MFP1のCPU11が、スキャナ16がスキャンしたスキャンデータのうち、偶数ページのスキャンデータを180°回転させる構成とした。これに換えて、ユーザの指定に応じて、表裏一対のスキャンデータのうち、奇数ページに対して半回転している偶数ページのスキャンデータを180°回転させる構成としてもよい。
また、上記実施形態では、設定されている綴じ方向と、原稿を読み取った際の原稿の搬送向きとが直交する場合に、PC100のCPU111又はMFP1のCPU11が、MFP1から受信したスキャンデータ又はスキャナ16がスキャンしたスキャンデータのうち、偶数ページのスキャンデータを180°回転させる構成としたが、奇数ページのスキャンデータを180°回転させる構成としてもよい。
また、上述したスキャンデータ編集処理(図13参照)では、S306において、2i−1であるスキャナデータ及び2iであるスキャナデータの両方が削除されて存在しない場合、スキャン画像が表示されない編集画面120を表示させたが、次の表裏一対のスキャン画像を表示させるようにしてもよい。
また、上述したスキャンデータ編集処理では、各画像処理(余白削除、画像移動、回転中心移動、回転)の実行指示をCPU11が受け付けた場合には、受け付けた指示に対応する処理(S321,S322,S323,S324)が実行される構成とした。これに換えて、表面又は裏面の一方に対して画像処理を行う指示がユーザにより予め指定されている場合には、上記各画像処理(余白削除、画像移動、回転中心移動、回転)をCPU11が受け付けた場合に、通常の編集処理(S327)を実行させる構成としてもよい。かかる場合、スキャンデータ編集処理において、CPU111が、S310、S311、S312、またはS313においてYesと判定した場合に、それぞれ、CPU111は、表面又は裏面の一方に対して画像処理を行う指示がユーザにより予め指定されているか否かを判定し、当該指示が指定されていれば、通常の編集処理(S327)を実行するようにすればよい。一方、当該指示が指定されていない場合に、CPU111が、受け付けた指示に対応する処理(S321,S322,S323,S324)を実行するようにすればよい。
また、上記実施形態では、画像編集プログラム114bに基づき実行されるスキャンデータ編集処理(図13参照)の中で、スキャンデータに対して実行可能な画像処理を、余白削除処理、画像移動処理、回転中心移動処理、および回転処理の4種類としたが、これら4種類の処理以外の画像処理を実行可能に構成してもよい。かかる場合には、スキャンデータ編集処理において、CPU111が、例えば、S314においてNoと判定し、かつ、上記4種類以外の画像処理を実行すると判定した場合に、通常の編集処理(S327)を実行するようにすればよい。
上記第1実施形態では、スキャンデータ編集処理(図13参照)のS304において参照される綴じ情報を、ユーザ設定可能(即ち、可変)な情報としたが、綴じ情報を予め指定された固定値としてもよい。かかる構成において、MFP1が原稿を特定方向(長辺方向又は短辺方向のいずれか)に搬送する機種である場合に、予め指定された固定値の綴じ情報が示す綴じ方向が、原稿の搬送向きに沿う方向であれば、S304及びS305の処理を省略する。また、図14のS407、S409,S410、及びS412、図15のS507、S509、S510、及びS512、ならびに、図16のS607、S609、S610、及びS612も省略する。
一方で、予め指定された固定値の綴じ情報が示す綴じ方向が、原稿の搬送向きに垂直な(直交する)方向であれば、S304の処理を省略する(S305の処理は実行する)。また、図14のS407、S408、S410、及びS411、図15のS507、S508、S510、及びS511、ならびに、図16のS607、S608、S610、及びS611も省略する。
同様に、上記第2実施形態のスキャン処理(図18参照)のS801において参照される綴じ情報を、予め指定された固定値としてもよい。かかる構成において、MFP1が原稿を特定方向に搬送する機種である場合に、予め指定された固定値の綴じ情報が示す綴じ方向が、原稿の搬送向きに沿う方向であれば、S801及びS802の処理を省略する。一方で、予め指定された固定値の綴じ情報が示す綴じ方向が、原稿の搬送向きに垂直な方向であれば、S801の処理を省略する(S802の処理は実行する)。