(57)【要約】【課題】複数の画像を所望のレイアウトに従い配置させた出力用画像を容易に生成し得る画像処理装置および画像処理プログラムを提供すること。【解決手段】本発明によれば、ユーザが原稿に対する書き込みによって複数の囲み線を形成した場合、ユーザは、囲み線の内側の画像である部分画像に付加すべき第１記号を原稿に適宜書き込むことによって、複数の囲み線に対応する複数の部分画像を所望のレイアウトに従って配置させた出力用画像を容易に生成できる。【選択図】図１
2015026927.tif 000002
【特許請求の範囲】
【請求項１】
制御部を備え、
前記制御部は、
原稿の画像を読み取る読取部が読み取った読取画像の画像情報に基づき、当該読取画像に対応する原稿に対する書き込みにより形成された囲み線を検出する囲み線検出手段と、
前記読取画像のうち、前記囲み線検出手段により検出された囲み線の内側の画像である部分画像の配置順序を決定する順序決定手段と、
前記読取画像に対応する原稿に対する書き込みによって前記部分画像に対して付加された、当該部分画像のレイアウトに関わる第１記号を検出する第１記号検出手段と、
前記囲み線検出手段により検出された囲み線に対応する部分画像を対象として、当該対象とする部分画像のレイアウトを、前記順序決定手段により決定された配置順序と、前記第１記号検出手段により検出された第１記号とに基づいて決定するレイアウト決定手段と、
前記読取画像の画像情報から、前記囲み線検出手段により検出された囲み線に対応する部分画像の画像情報を抽出する画像抽出手段と、
前記画像抽出手段により抽出された画像情報を前記レイアウト決定手段により決定されたレイアウトに従い配置させた画像情報を生成する画像生成手段と、
を備えていることを特徴とする画像処理装置。
【請求項２】
前記制御部は、
前記読取画像に対応する原稿に対する書き込みによって前記部分画像に対して付加された、当該部分画像の配置順序を指定する第２記号を検出する第２記号検出手段を備え、
前記順序決定手段は、
前記第２記号検出手段により前記第２記号が検出された部分画像を対象として、当該対象とする部分画像の配置順序を、前記第２記号に基づいて決定する第１順序決定手段を含むことを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記制御部は、
前記部分画像に対して前記第２記号が付加されているか否かを判断する判断手段を備え、
前記順序決定手段は、
前記判断手段により前記第２記号が付加されていないと判断された前記部分画像を対象として、当該対象とする部分画像の配置順序を、前記読取画像における前記部分画像の位置に応じて決定する第２順序決定手段と、
前記判断手段により前記第２記号が付加されていると判断された前記部分画像に対して、前記第１順序決定手段により決定された配置順序の後に、前記判断手段により前記第２記号が付加されていないと判断された前記部分画像に対して、前記第２順序決定手段により決定された配置順序を順序付け、前記囲み線検出手段により検出された囲み線に対応する全ての部分画像の配置順序を決定する第３順序決定手段と、を含むことを特徴とする請求項２記載の画像処理装置。
【請求項４】
前記第２記号は、数字であり、
前記第１順序決定手段は、前記対象とする部分画像の配置順序を、前記第２記号としての数字が降順となるように決定することを特徴とする請求項２または３に記載の画像処理装置。
【請求項５】
前記レイアウト決定手段は、前記第１記号検出手段により検出された第１記号が、画像の中央揃えを示すセンタリング記号である場合、当該センタリング記号が検出された部分画像と、当該センタリング記号が検出された部分画像に対して前記配列順序が隣接する１の前記部分画像とを、所定の並び方向に中央揃えで並べるレイアウトに決定することを特徴とする請求項１から４のいずれかに記載の画像処理装置。
【請求項６】
前記所定の並び方向は、第１方向、および、当該第１方向に直交する第２方向のいずれかであり、
前記レイアウト決定手段は、前記第１方向および前記第２方向のうち、前記センタリング記号が検出された部分画像における当該センタリング記号の位置に応じた方向を、前記所定の並び方向とすることを特徴とする請求項５記載の画像処理装置。
【請求項７】
前記レイアウト決定手段は、前記センタリング記号が検出された部分画像と、前記配列順序が隣接する１の部分画像とを中央揃えで並べる場合に、隣接する２辺がそれぞれ前記第１方向および前記第２方向に沿い、かつ、前記センタリング記号が検出された部分画像に接する最小の矩形を２本の対角線により分割した場合に形成される４つの領域のうち、１の領域のみに前記センタリング記号が包含されることを条件として、前記センタリング記号が検出された部分画像に対し、前記配列順序が隣接する１の部分画像を、前記センタリング記号を包含する１の領域の周囲を構成する辺のうち、前記矩形の辺の側に並べることを特徴とする請求項６記載の画像処理装置。
【請求項８】
前記レイアウト決定手段は、前記センタリング記号が検出された部分画像と、前記配列順序が隣接する１の部分画像とを中央揃えで並べる場合に、前記４つの領域のうち、１の領域のみに前記センタリング記号が包含され、かつ、前記センタリング記号を包含する１の領域の周囲を構成する前記矩形の辺が、当該矩形の辺の対辺に対し、当該矩形の辺に直交する前記第１方向または前記第２方向の順方向に位置する辺であることを条件として、前記センタリング記号が検出された部分画像に対し、前記配列順序が後ろに隣接する１の部分画像を、前記センタリング記号を包含する１の領域の周囲を構成する辺のうち、前記矩形の辺の側に並べることを特徴とする請求項７記載の画像処理装置。
【請求項９】
前記レイアウト決定手段は、前記センタリング記号が検出された部分画像と、前記配列順序が隣接する１の部分画像とを中央揃えで並べる場合に、前記センタリング記号が、当該センタリング記号が検出された部分画像に対応する囲み線上にあることを条件として、前記センタリング記号が検出された部分画像に対し、前記配列順序が隣接する１の部分画像を、前記センタリング記号を包含する１の領域を構成する前記矩形の辺の側に並べることを特徴とする請求項７または８に記載の画像処理装置。
【請求項１０】
前記レイアウト決定手段は、前記第１記号検出手段により検出された第１記号が、画像の中央揃えを示す記号であることに基づき、当該第１記号が検出された部分画像と、当該第１記号が検出された部分画像に対して前記配列順序が隣接する１の前記部分画像とを少なくとも含む複数の前記部分画像を、所定方向に中央揃えで並べる場合、前記複数の部分画像のうち、所定方向に直交するサイズが最も大きい部分画像を基準として、それ以外の部分画像のレイアウトが決定されることを特徴とする請求項５から９のいずれかに記載の画像処理装置。
【請求項１１】
前記レイアウト決定手段は、前記第１記号検出手段により検出された第１記号が、画像の中央揃えを示すセンタリング記号である場合、当該センタリング記号が検出された部分画像と、当該センタリング記号が検出された部分画像より前記配列順序が後ろの前記部分画像を、所定の条件が成立するまで、所定の並び方向に中央揃えで順次並べるレイアウトに決定することを特徴とする請求項１から１０のいずれかに記載の画像処理装置。
【請求項１２】
前記レイアウト決定手段は、前記第１記号検出手段により検出された第１記号に基づいて、前記センタリング記号が検出された部分画像と、当該センタリング記号が検出された部分画像に対して前記配列順序が後ろである少なくとも１の部分画像とを含む複数の部分画像を、前記第１方向の順方向に中央揃えで並べる場合、前記第１方向に沿う辺と前記第２方向に沿う辺とから構成される所定の矩形枠内に収まらない最初の部分画像を、当該部分画像より前記配列順序が１つ前の部分画像に対する前記第２方向の順方向側の位置であって、かつ、前記第１方向の始点側に位置させるレイアウトに決定することを特徴とする請求項５から１１のいずれかに記載の画像処理装置。
【請求項１３】
前記所定の並び方向は、第１方向、および、当該第１方向に直交する第２方向のいずれかであり、
前記レイアウト決定手段は、前記第１記号検出手段により検出された第１記号が、改行を示す改行記号である場合、当該改行記号が検出された部分画像を、当該改行記号が検出された部分画像より前記配列順序が１つ前の部分画像に対する前記第２方向の順方向側の位置であって、かつ、前記第１方向の始点側に位置させるレイアウトに決定することを特徴とする請求項１から１２のいずれかに記載の画像処理装置。
【請求項１４】
制御部を備えた画像処理装置の、前記制御部が実行可能な画像処理プログラムであって、
原稿の画像を読み取る読取部が読み取った読取画像の画像情報に基づき、当該読取画像に対応する原稿に対する書き込みにより形成された囲み線を検出する囲み線検出手段と、
前記読取画像のうち、前記囲み線検出手段により検出された囲み線の内側の画像である部分画像の配置順序を決定する順序決定手段と、
前記読取画像に対応する原稿に対する書き込みによって前記部分画像に対して付加された、当該部分画像のレイアウトに関わる第１記号を検出する第１記号検出手段と、
前記囲み線検出手段により検出された囲み線に対応する部分画像を対象として、当該対象とする部分画像のレイアウトを、前記順序決定手段により決定された配置順序と、前記第１記号検出手段により検出された第１記号に基づいて決定するレイアウト決定手段と、
前記読取画像の画像情報から、前記囲み線検出手段により検出された囲み線に対応する部分画像の画像情報を抽出する画像抽出手段と、
前記画像抽出手段により抽出された画像情報を前記レイアウト決定手段により決定されたレイアウトに従い配置させた画像情報を生成する画像生成手段として、
前記制御部を機能させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および画像処理プログラムに関する。
【背景技術】
【０００２】
特許文献１には、手書き枠と、当該手書き枠内に位置する画像番号とが記載されたシートをスキャナで読み取った場合に、手書き枠が記載された位置に、画像番号に対応する画像を当該手書き枠内に嵌め込み合成した画像を出力する画像読取記録装置が記載されています。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−９２３１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載される発明は、手書き枠および画像番号を記載したシートと、手書き枠に嵌め込むための画像とが別々に準備されているため、複数の画像を所望のレイアウトで配置させるためには、所望のレイアウトに応じて手書き枠をシートに記載した上で、各手書き枠に配置すべき画像に対応する画像番号を、各手書き枠内に記載する必要があり、煩雑であった。
【０００５】
本発明は、上述した事情を鑑みてなされたものであり、複数の画像を所望のレイアウトに従い配置させた出力用画像を容易に生成し得る画像処理装置および画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
この目的を達成するために、本発明の画像処理装置は、制御部を備え、前記制御部は、原稿の画像を読み取る読取部が読み取った読取画像の画像情報に基づき、当該読取画像に対応する原稿に対する書き込みにより形成された囲み線を検出する囲み線検出手段と、前記読取画像のうち、前記囲み線検出手段により検出された囲み線の内側の画像である部分画像の配置順序を決定する順序決定手段と、前記読取画像に対応する原稿に対する書き込みによって前記部分画像に対して付加された、当該部分画像のレイアウトに関わる第１記号を検出する第１記号検出手段と、前記囲み線検出手段により検出された囲み線に対応する部分画像を対象として、当該対象とする部分画像のレイアウトを、前記順序決定手段により決定された配置順序と、前記第１記号検出手段により検出された第１記号とに基づいて決定するレイアウト決定手段と、前記読取画像の画像情報から、前記囲み線検出手段により検出された囲み線に対応する部分画像の画像情報を抽出する画像抽出手段と、前記画像抽出手段により抽出された画像情報を前記レイアウト決定手段により決定されたレイアウトに従い配置させた画像情報を生成する画像生成手段と、を備えている。
【０００７】
なお、本発明は、画像処理装置を制御する制御装置、画像処理システム、画像処理方法、画像処理プログラム、画像処理プログラムを記録する記録媒体等の種々の態様で構成できる。
【発明の効果】
【０００８】
本明細書の実施形態に記載の画像処理装置、画像処理装置を制御する制御装置、画像処理システム、画像処理方法、画像処理プログラム、画像処理プログラムを記録する記録媒体等によれば、ユーザが原稿に対する書き込みによって複数の囲み線を形成した場合、ユーザは、囲み線の内側の画像である部分画像に付加すべき第１記号を原稿に適宜書き込むことによって、複数の囲み線に対応する複数の部分画像を所望のレイアウトに従って配置させた出力用画像を容易に生成できる。
【０００９】
なお、特許請求の範囲および明細書において、用語「情報」と用語「データ」とでは、「情報」を「データ」の上位概念として用いている。そのため、「Ａデータ」との記載を「Ａ情報」と言い換えてもよい。また、「Ａデータ」から複製された、または、変換された「Ｂデータ」は、「Ａデータ」と同等の意味で使用される限り「Ａ情報」である。
【００１０】
本明細書の実施形態に記載の画像処理装置等によれば、ユーザは、部分画像に付加すべき第２記号を原稿に適宜書き込むことによって、複数の囲み線に対応する複数の部分画像を所望の配置順序のレイアウトに従って配置させた出力用画像を容易に生成できる。
【００１１】
本明細書の実施形態に記載の画像処理装置等によれば、第２記号が付加されていない部分画像の配置順序を、読取画像における部分画像の位置に応じて決定するとともに、第２記号が付加されていない部分画像の後に順序付けるので、ユーザは、第２記号を付加するか否かを適宜使い分けることにより、複数の囲み線に対応する複数の部分画像を所望の配置順序のレイアウトに従って配置させた出力用画像を容易に生成できる。
【００１２】
本明細書の実施形態に記載の画像処理装置等によれば、ユーザは、部分画像に対し、配置させたい順に数字を降順で書き込むことにより、複数の囲み線に対応する複数の部分画像を所望の配置順序のレイアウトに従って配置させた出力用画像を容易に生成できる。
【００１３】
本明細書の実施形態に記載の画像処理装置等によれば、ユーザは、必要に応じて、第１記号の１つであるセンタリング記号を書き込むことにより、センタリング記号が検出された部分画像と、当該センタリング記号が検出された部分画像に対して配列順序が隣接する１の部分画像とを、所定の並び方向に中央揃えで並べるレイアウトに決定できる。よって、複数の囲み線に対応する複数の部分画像を所望のレイアウトに従って配置させた出力用画像を容易に生成できる。
【００１４】
本明細書の実施形態に記載の画像処理装置等によれば、第１方向、または、当該第１方向に直交する第２方向のうち、センタリング記号が検出された部分画像における当該センタリング記号の位置に応じた方向に中央揃えで並べるレイアウトに決定されるので、複数の囲み線に対応する複数の部分画像を所望のレイアウトに従って配置させた出力用画像を容易に生成できる。
【００１５】
本明細書の実施形態に記載の画像処理装置等によれば、隣接する２辺がそれぞれ第１方向および第２方向に沿い、かつ、センタリング記号が検出された部分画像に接する最小の矩形を２本の対角線により分割した場合に形成される４つの領域のうち、１の領域のみにセンタリング記号が包含されることを条件として、センタリング記号が検出された部分画像に対し、該センタリング記号が検出された部分画像に配列順序が隣接する１の部分画像が、センタリング記号を包含する１の領域の周囲を構成する辺のうち、矩形の辺の側に並べられる。よって、部分画像の外周の形状、すなわち、囲み線の形状が複雑な場合であっても、部分画像を並べる方向を確実に特定できるので、複数の囲み線に対応する複数の部分画像を所望のレイアウトに従って配置させた出力用画像を容易に生成できる。
【００１６】
本明細書の実施形態に記載の画像処理装置等によれば、隣接する２辺がそれぞれ第１方向および第２方向に沿い、かつ、センタリング記号が検出された部分画像に接する最小の矩形を２本の対角線により分割した場合に形成される４つの領域のうち、１の領域のみに前記センタリング記号が包含され、かつ、センタリング記号を包含する１の領域の周囲を構成する矩形の辺が、当該矩形の辺の対辺に対し、当該矩形の辺に直交する第１方向または第２方向の順方向に位置する辺であることを、２つの部分画像を中央揃えで並べる条件とする。よって、ユーザは、第１方向または第２方向のうち、部分画像を並べたい方向の順方向の側に第１記号を書き込めばよいので、直感的な書き込みにより、複数の囲み線に対応する複数の部分画像を所望のレイアウトに従って配置させ得る。
【００１７】
本明細書の実施形態に記載の画像処理装置等によれば、センタリング記号が検出された部分画像と、当該センタリング記号が検出された部分画像に配列順序が隣接する１の部分画像とを中央揃えで並べる場合には、センタリング記号が、当該センタリング記号が検出された部分画像に対応する囲み線上にあることを条件とするので、ユーザは、囲み線上に対する直感的な書き込みにより、複数の囲み線に対応する複数の部分画像を所望のレイアウトに従って配置させ得る。
【００１８】
本明細書の実施形態に記載の画像処理装置等によれば、センタリング記号が検出された部分画像と、当該センタリング記号が検出された部分画像に配列順序が隣接する１の部分画像とを少なくとも含む複数の前記部分画像を、所定方向に中央揃えで並べる場合、複数の部分画像のうち、所定方向に直交するサイズが最も大きい部分画像を基準として、それ以外の部分画像のレイアウトが決定される。よって、所定方向に直交するサイズが種々のサイズであっても、複数の囲み線に対応する複数の部分画像を所望のレイアウトに従って配置させた出力用画像を容易に生成できる。
【００１９】
本明細書の実施形態に記載の画像処理装置等によれば、センタリング記号が検出された部分画像と、当該センタリング記号が検出された部分画像より配列順序が後ろの部分画像とが、所定の条件が成立するまで、所定の並び方向に中央揃えで順次並べられるので、ユーザは、１つの部分画像に対し、センタリング記号を書き込むことによって、複数の部分画像を容易に中央揃えでレイアウトすることができる。
【００２０】
本明細書の実施形態に記載の画像処理装置等によれば、センタリング記号が検出された部分画像と、当該センタリング記号が検出された部分画像に配列順序が隣接する１の部分画像とを少なくとも含む複数の前記部分画像を、第１方向に中央揃えで並べる場合、第１方向に沿う辺と第２方向に沿う辺とから構成される所定の矩形枠内に収まらない最初の部分画像が、当該部分画像より配列順序が１つ前の部分画像に対する第２方向の順方向側の位置であって、かつ、第１方向の始点側に位置される。よって、複数の囲み線に対応する複数の部分画像を、印刷用紙などの所定の矩形枠内に確実に収めつつ、所望のレイアウトに従って配置させた出力用画像を容易に生成できる。
【００２１】
本明細書の実施形態に記載の画像処理装置等によれば、ユーザは、必要に応じて、第１記号の１つである改行記号を書き込むことにより、当該改行記号が検出された部分画像を、当該改行記号が検出された部分画像より配列順序が１つ前の部分画像に対する第２方向の順方向側の位置であって、かつ、当該第２方向に直交する第１方向の始点側に位置させるレイアウトに決定できる。よって、複数の囲み線に対応する複数の部分画像を所望のレイアウトに従って配置させた出力用画像を容易に生成できる。
【図面の簡単な説明】
【００２２】
【図１】（ａ）は、サーバの電気的構成を示すブロック図であり、（ｂ）は、本発明の概要を説明する図である。
【図２】レイアウトの決定方法を説明する図である。
【図３】レイアウトの決定方法を説明する図である。
【図４】レイアウトの決定方法を説明する図である。
【図５】レイアウトの決定方法を説明する図である。
【図６】変換サーバが実行する各処理を示すフローチャートである。
【図７】変換サーバが実行する各処理を示すフローチャートである。
【図８】変換サーバが実行する各処理を示すフローチャートである。
【図９】変換サーバが実行する各処理を示すフローチャートである。
【図１０】変換サーバが実行する各処理を示すフローチャートである。
【発明を実施するための形態】
【００２３】
以下、本発明の好ましい実施形態について、添付図面を参照して説明する。図１（ａ）は、本発明の画像処理装置の一実施形態であるサーバ１０の電気的構成を示すブロック図である。本実施形態のサーバ１０は、ユーザの手書きによる枠（以下「手書き枠」または「枠」と称す）が書き込まれた原稿の読取画像の画像データを受信した場合、当該読取画像データから手書き枠を検出し、当該手書き枠内の画像を所定のレイアウトで配置する。以下では、原稿の読取画像の画像データを「読取画像データ」と称する。
【００２４】
サーバ１０には、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、ハードディスクドライブ（以下「ＨＤＤ」と称す）１４、ネットワークインターフェイス（以下「Ｎｅｔ＿Ｉ／Ｆ」と称す）１５が設けられる。これらの各部は、バスライン１６を介して互いに接続される。ＣＰＵ１１は、ＲＯＭ１２やＨＤＤ１４に記憶される固定値やプログラム、ＲＡＭ１３に記憶されているデータに従って、バスライン１６と接続された各部を制御する。
【００２５】
ＲＯＭ１２は、サーバ１０の動作を制御するためのプログラムなどが格納された書換不能な不揮発性のメモリである。ＲＡＭ１３は、ＣＰＵ１１の処理に必要な情報を一時的に記憶する書換可能な揮発性のメモリである。
【００２６】
ＨＤＤ１４は、書換可能な不揮発性の記憶装置である。ＨＤＤ１４には、オペレーションシステム（図示せず）と、画像処理アプリケーション１４ａとが格納される。画像処理アプリケーション１４ａは、ネットワーク８００を介して外部から受信した読取画像データを処理するプログラムである。詳細は後述するが、本実施形態の画像処理アプリケーション１４ａは、受信した読取画像データから手書き枠を検出し、検出した手書き枠内に含まれる画像を当該読取画像データから抽出し、抽出した画像を所定のレイアウトで配置する。後述する図５〜図１０のフローチャートに示す各処理は、画像処理アプリケーション１４ａに従ってＣＰＵ１１により実行される。なお、本明細書では、画像処理アプリケーション１４ａやオペレーティングシステムなどの各プログラムを実行するＣＰＵのことを単にプログラム名で記載する場合もある。例えば「画像処理アプリケーション」という記載が「画像処理アプリケーションを実行するＣＰＵ」を意味する場合もある。
【００２７】
なお、画像処理アプリケーション１４ａなどのプログラムは、コンピュータが読み取り可能なストレージ媒体に記憶されてよい。コンピュータが読み取り可能なストレージ媒体とは、non-transitoryな媒体である。インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、non-transitoryな媒体には含まれない。コンピュータが読み取り可能なストレージ媒体は、例えば、ＲＡＭ（Ｒａｎｄｏｍ＿Ａｃｃｅｓｓ＿Ｍｅｍｏｒｙの略）、ＲＯＭ（Ｒｅａｄ＿Ｏｎｌｙ＿Ｍｅｍｏｒｙの略）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ＿Ｅｒａｓａｂｌｅ＿Ｐｒｏｇｒａｍｍａｂｌｅ＿Ｒｅａｄ−Ｏｎｌｙ＿Ｍｅｍｏｒｙの略）、ＨＤＤ（Ｈａｒｄ＿Ｄｉｓｋ＿Ｄｒｉｖｅの略）、ＣＰＵが備えるバッファ等、または、それらの組み合わせによって構成される。
【００２８】
Ｎｅｔ＿Ｉ／Ｆ１５は、サーバ１０をネットワーク８００に接続するためのインターフェイスである。サーバ１０は、Ｎｅｔ＿Ｉ／Ｆ１５により接続されたネットワーク８００を介して、ＭＦＰ３０や、スキャナ４０や、パーソナルコンピュータ（以下「ＰＣ」と称す）１００などと接続することができる。ＭＦＰ３０は、原稿を読み取るスキャン機能に加えて、印刷機能、ファクシミリ機能、コピー機能などの各種機能を有する複合機である。スキャナ４０は、スキャン機能を単独で有する装置である。
【００２９】
よって、サーバ１０は、ＭＦＰ３０またはスキャナ４０が読み取った原稿に対応する読取画像データを、ＭＦＰ３０またはスキャナ４０から、あるいは、ＭＦＰ３０またはスキャナ４０が接続されたＰＣ１００から受信できる。また、サーバ１０は、ＰＣ１００から、ＰＣ１００に保存されている読取画像データを受信できる。
【００３０】
図１（ｂ）は、本発明の概要を説明する図である。図１（ｂ）の左側には、手書き枠である枠５１がユーザによって書き込まれた原稿Ｐの一例を示す。この例では、５つの枠５１（５１ａ〜５１ｅ）が原稿Ｐに書き込まれている。５つの枠５１のうち、３つの枠５１ａ，５１ｂ，５１ｅの枠内には、順番指定番号６１としての数字がユーザによる手書きによって書き込まれている。また、枠５１ｂには、アクション指定記号６２がユーザによる手書きにより書き込まれている。なお、図１（ｂ）の例では、アクション指定記号６２の１つである改行記号６２ｄが書き込まれている。なお、本実施形態では、枠５１、順番指定番号６１、およびアクション指定記号６２は、例えば、赤色などの予め決められた色で原稿Ｐに書き込まれるものとする。
【００３１】
サーバ１０が、原稿Ｐの読取画像データを受信した場合、サーバ１０は、受信した読取画像データを、画像処理アプリケーション１４ａに従って処理する。詳細は後述するが、サーバ１０は、受信した原稿Ｐの読取画像データから、手書きによる枠５１（５１ａ〜５１ｅ）の検出し、検出された各枠５１ａ〜５１ｅの領域内にそれぞれ位置する画像Ｇ１〜Ｇ５を抽出する。そして、サーバ１０は、抽出された画像Ｇ１〜Ｇ５を、所定のレイアウトで、ページＰａ内に配置する。なお、レイアウトは、枠５１の配置座標、枠５１の枠内に書き込まれた順番指定番号６１、および、枠５１に対して書き込まれたアクション指定記号６２に基づき決定される。順番指定番号６１、および、改行記号６２ｄを含む各種アクション指定記号６２に基づく具体的なレイアウトの決定方法については、図２〜図５を参照して後述する。
【００３２】
次に、図２〜図５を参照して、レイアウトの決定方法について説明する。図２は、順番指定番号６１に基づくレイアウトの決定方法を説明する図である。なお、図２では、いずれの枠５１にもアクション指定記号６２は書き込まれていない。本実施形態では、枠内に順番指定番号６１が書き込まれた枠５１の配置順序が、枠内に順番指定番号６１が書き込まれていない枠５１の配置順序に優先されるよう構成される。よって、図２の左上に示すように、原稿Ｐに書き込まれた５つの枠５１ａ〜５１ｅのうち、枠５１ａ，５１ｂ，５１ｅの枠内にのみ、順番指定番号６１が書き込まれている場合、枠５１ａ，５１ｂ，５１ｅの配置順序が、枠５１ｃ，５１ｄに優先される。従って、各枠５１に対応する画像Ｇ１〜Ｇ５のうち、画像Ｇ１，Ｇ２，Ｇ５が、画像Ｇ３，Ｇ４より先に配置される。
【００３３】
順番指定番号６１が書き込まれた枠５１ａ，５１ｂ，５１ｅの配置順序は、順番指定番号６１としての数字に応じた順序となる。本実施形態では、小さい数字であるほど、配置順序は先となる。図２に示す例において、枠５１ａ，５１ｂ，５１ｅの配置順序は、順番指定番号６１が「１」である枠５１ａが先頭であり、順番指定番号６１が「３」である枠５１ｂが最後である。これにより、画像Ｇ１，Ｇ２，Ｇ５は、画像Ｇ１、画像Ｇ５、画像Ｇ２の順で配置される。よって、図２の右上に示すように、まず、画像Ｇ１の左上端が、ページＰａの左上端、すなわち、ページＰａの上端のｙ座標である座標Ｙ０と、ページＰａの左端のｘ座標である座標Ｘ０とにより規定される座標に配置される。次に、画像Ｇ５が、画像Ｇ１の右側（矢印ｘ方向）に隣接する位置に、上揃え、すなわち、１行目の行Ｒ１の上端のｙ座標である座標Ｙ１（＝座標Ｙ０）に揃えた位置に配置される。
【００３４】
次に、画像Ｇ２を配置させる。しかし、画像Ｇ５の右側に画像Ｇ２を配置させた場合、画像Ｇ２がページＰａの左右方向に収まらないので、画像Ｇ２は、改行して次の行に配置される。具体的に、１行目の行Ｒ１の下端のｙ座標である座標Ｙ２に、１を加算した座標を、２行目の行Ｒ２の上端のｙ座標（すなわち、座標Ｙ１）とし、行Ｒ２の座標Ｙ１と、座標Ｘ０とにより規定される座標に、画像Ｇ２の左上端が配置される（図２左下参照）。なお、矩形でない画像Ｇ２の左上端は、画像Ｇ２（すなわち、枠５１ｂ）を囲うバウンダリボックス（以下「ＢＢＯＸ」と称す）の左上端である。なお、ＢＢＯＸは、画像Ｇ２などの画像または枠５１などの図形の周囲に接する最小の矩形である。
【００３５】
順番指定番号６１が書き込まれていない枠５１ｃ，５１ｄの配置順序は、各枠５１ｃ，５１ｄを囲うＢＢＯＸ７１の座標に応じて決定される。本実施形態では、ＢＢＯＸ７１の左上端７１ａのｙ座標が小さい程、すなわち、ページＰａの上方である程、画像の配置順序が先となる。これにより、枠５１ｃに対応する画像Ｇ３が、枠５１ｄに対応する画像Ｇ４より先に配置される。なお、ＢＢＯＸ７１の左上端７１ａのｙ座標が等しい場合には、左上端７１ａのｘ座標が小さい程、すなわち、ページＰａの左方である程、配置順序は先となる。
【００３６】
よって、図２の左下に示すように、画像Ｇ３は、２行目の行Ｒ２における画像Ｇ２の右側に隣接する位置に、上揃えで配置される。画像Ｇ４は、画像Ｇ３の右側に配置させた場合にページＰａの左右方向に収まらないので、改行して３行目の行Ｒ３に配置される。具体的に、行Ｒ２の下端のｙ座標（すなわち、座標Ｙ２）に、１を加算した座標を、行Ｒ３の上端のｙ座標（すなわち、座標Ｙ１）とし、行Ｒ３の座標Ｙ１と、座標Ｘ０とにより決まる座標に、画像Ｇ４の左上端が配置される（図２右下参照）。なお、画像を改行した位置に配置させた場合に、その画像がページＰａの上下方向に収まらないときには、その画像は、次のページＰａの左上端に配置され、以降の画像も、次またはそれ以降のページＰａに順次配置される。
【００３７】
図３（ａ）および（ｂ）は、アクション指定記号６２のうち、水平センタリング記号６２ａに基づくレイアウトの決定方法を説明する図である。水平センタリング記号６２ａは、配置順序が隣接する画像を、水平センタリングで配置させることを指定するアクション指定記号６２である。なお、「水平センタリング」は、上下方向に並ぶ画像を中央揃えで並べることを示す。一方、後述する「垂直センタリング」は、左右方向に並ぶ画像を中央揃えで並べることを示す。本実施形態では、枠５１の、ページＰａにおける画像の上下の配列方向である下方向（矢印ｙ方向）の辺に重ねて書き込まれた円（○）が、水平センタリング記号６２ａとして規定される。
【００３８】
より詳細には、図３（ａ）は、自動センタリングモードがオフに設定されている場合のレイアウトの決定方法を説明する図である。一方、図３（ｂ）は、自動センタリングモードがオンに設定されている場合のレイアウトの決定方法を説明する図である。「自動センタリングモード」は、１つの水平センタリング記号６２ａまたは後述する垂直センタリング記号６２ｂ（図４（ａ）参照）に基づき、後続の画像を自動的にセンタリングさせるモードである。「自動センタリングモード」は、ユーザが指定可能なモードであり、当該モードがオンに設定されている場合に、上記の自動的なセンタリングが実行される。一方、自動センタリングモードがオフに設定されている場合には、各センタリング記号６２ａ，６２ｂが書き込まれた枠５１に対応する画像と、当該画像に配置順序が隣接する画像とが、センタリング記号６２ａ，６２ｂに応じた方向に中央揃えで配置される。
【００３９】
よって、図３（ａ）の左側に示すように、自動センタリングモードがオフに設定されている場合に、枠５１ａに水平センタリング記号６２ａが書き込まれている場合には、画像Ｇ１と、配列順序が画像Ｇ１の次である画像Ｇ５とが水平センタリングで配置される。なお、本実施形態では、水平センタリングで配置される画像の先頭は、ページＰａの左端に配置されるものとする。よって、当初よりページＰａの左端に配置される画像以外の画像が水平センタリングの先頭の画像となる場合、当該画像は、改行または改ページによりページＰａの左端に配置される。
【００４０】
図３（ａ）の右側に示すように、画像Ｇ１と画像Ｇ５とが水平センタリングで配置される場合、水平センタリングの中心となるｘ座標（すなわち、座標Ｘａ１）は、水平センタリングの対象となる画像である画像Ｇ１および画像Ｇ５のうち、水平センタリングによる画像の配列方向（矢印ｙ方向）に直交するサイズ、すなわち、左右方向のサイズがより大きい画像を基準として決定される。この例では、水平センタリングの中心となるｘ座標は、画像Ｇ５を基準として決定される。つまり、画像Ｇ１と画像Ｇ５とを水平センタリングで配置する場合には、ページＰａの左端に配置された画像Ｇ５における左右方向の中心座標（すなわち、座標Ｘａ１）を、センタリング中心のｘ座標とし、画像Ｇ１における左右方向の中心が座標Ｘａ１となるよう、画像Ｇ１を配置する。
【００４１】
また、図３（ａ）の例では、枠５１ｃにも水平センタリング記号が書き込まれている。よって、画像Ｇ３、および、配列順序が画像Ｇ３の次である画像Ｇ４もまた、水平センタリングで配置される。かかる場合も、上述した画像Ｇ１，Ｇ５の場合と同様、水平センタリングの中心となるｘ座標（すなわち、座標Ｘａ２）は、水平センタリングの対象となる画像Ｇ３および画像Ｇ４のうち、水平センタリングによる画像の配列方向（矢印ｙ方向）に直交するサイズがより大きい画像である画像Ｇ３を基準として決定される。
【００４２】
一方、図３（ｂ）の左側に示すように、自動センタリングモードがオンに設定されている場合に、枠５１ａに水平センタリング記号６２ａが書き込まれている場合には、画像Ｇ１と、配列順序が画像Ｇ１より後である画像Ｇ２〜Ｇ５とが、順番指定番号６１またはＢＯＸ７１の左上端７１ａのｙ座標に応じて決まる配置順序に従い、水平センタリングで配置される。なお、水平センタリングで配置された画像が、１のページＰａの上下方向に収まらない場合、当該収まらない画像は、改ページして次のページＰａに配置する。本実施形態では、水平センタリングの対象となる画像のうち、１のページＰａの上下方向に収まらない画像は、次のページＰａなど他のページＰａにて引き続き水平センタリングにて配置される。
【００４３】
また、図３（ｂ）の左側に示すように、枠５１ｂには、アクション指定記号６２の１つであるセンタリングキャンセル記号６２ｃが書き込まれている。本実施形態のセンタリングキャンセル記号６２ｃは、枠５１に重ねて書き込まれた三角（△）である。センタリングキャンセル記号６２ｃは、自動センタリングモードがオンであることに基づく自動的なセンタリング、すなわち、水平センタリングまたは垂直センタリングが行われている場合に、当該自動的なセンタリングの終了を指定するアクション指定記号６２である。
【００４４】
なお、本実施形態では、枠５１にセンタリングキャンセル記号６２ｃが記載されていれば、枠５１に対するセンタリングキャンセル記号６２ｃの位置にかかわらず、実行中の自動的なセンタリングを終了できるものとする。枠５１に対するセンタリングキャンセル記号６２ｃ位置が、例えば、枠５１の下方向（矢印ｙ方向）の辺に重ねてある場合には、水平センタリングを終了の対象とするなど、センタリングキャンセル記号６２ｃの書き込み位置に応じて、終了の対象となるセンタリングを特定する構成であってもよい。
【００４５】
枠５１ａに書き込まれた水平センタリング記号６２ａに基づいて、画像Ｇ１を先頭とする自動的な水平センタリングが行われている場合、枠５１ｂに書き込まれたセンタリングキャンセル記号６２ｃに基づいて、実行中の自動的な水平センタリングは、枠５１ｂに対応する画像Ｇ２を最後に終了する（図３（ｂ）右側）。よって、配列順序が画像Ｇ２の次である画像Ｇ３は、行Ｒ３における画像Ｇ２の右側に上揃えで配置される。
【００４６】
図４（ａ）および（ｂ）は、アクション指定記号６２のうち、垂直センタリング記号６２ｂに基づくレイアウトの決定方法を説明する図である。より詳細には、図４（ａ）および（ｂ）は、自動センタリングモードがオフに設定されている場合のレイアウトの決定方法を説明する図である。垂直センタリング記号６２ｂは、配置順序が隣接する画像を、垂直センタリングで配置させることを指定するアクション指定記号６２である。本実施形態では、枠５１の、ページＰａにおける画像の左右の配列方向である右方向（矢印ｘ方向）の辺に重ねて書き込まれた円が、垂直センタリング記号６２ｂとして規定される。
【００４７】
図４（ａ）の左側に示すように、自動センタリングモードがオフに設定されている場合に、枠５１ｅに垂直センタリング記号６２ｂが書き込まれている場合には、画像Ｇ５と、配列順序が画像Ｇ５の次である画像Ｇ２とが垂直センタリングで配置される。なお、本実施形態では、垂直センタリングで配置される画像の先頭は、ページＰａの左端に配置されるものとする。よって、当初よりページＰａの左端に配置される画像以外の画像が垂直センタリングの先頭の画像となる場合、当該画像は、改行または改ページによりページＰａの左端に配置される。
【００４８】
図４（ａ）の右側に示すように、画像Ｇ５と画像Ｇ２とを垂直センタリングで配置する場合、垂直センタリングの中心となるｙ座標（すなわち、座標Ｙａ）は、垂直センタリングの対象となる画像である画像Ｇ５および画像Ｇ２のうち、垂直センタリングによる画像の配列方向（矢印ｘ方向）に直交するサイズ、すなわち、上下方向のサイズがより大きい画像を基準として決定される。この例では、垂直センタリングの中心となるｙ座標は、画像Ｇ２を基準として決定される。つまり、画像Ｇ５と画像Ｇ２とを垂直センタリングで配置する場合には、２行目の行Ｒ２の上端のｙ座標（すなわち、座標Ｙ１）に上揃えで配置された画像Ｇ２における上下方向の中心座標（すなわち、座標Ｙａ）を、センタリング中心のｙ座標とし、画像Ｇ５における上下方向の中心が座標Ｙａとなるよう、画像Ｇ５が配置される。
【００４９】
一方、図示はしないが、自動センタリングモードがオンに設定されている場合、垂直センタリング記号６２ｂが書き込まれている枠５１に対応する画像と、当該画像より配列順序が後である画像とが、順番指定番号６１またはＢＯＸ７１の左上端７１ａのｙ座標に応じて決まる配置順序に従い、垂直センタリングで配置される。なお、垂直センタリングで配置された画像が、１の行の左右方向に収まらない場合、当該収まらない画像は、改行して次の行に配置される。本実施形態では、垂直センタリングの対象となる画像のうち、１の行の左右方向に収まらない画像は、次の行など他の行にて引き続き垂直センタリングにて配置される。
【００５０】
図４（ｂ）の左側に示すように、自動センタリングモードがオフに設定されている場合であって、枠５１ａ、枠５１ｂ、および枠５１ｅに垂直センタリング記号６２ｂが書き込まれている場合、垂直センタリング記号６２ｂに従う垂直センタリングは、画像Ｇ１を先頭として、画像Ｇ５、画像Ｇ２、および画像Ｇ３からなる４つの画像が対象となる。しかし、これら４つの画像Ｇ１，Ｇ５，Ｇ２，Ｇ３を、この順で垂直センタリングにより配置する場合、図４（ｂ）の右側に示すように、画像Ｇ１および画像Ｇ５が、１行目の行Ｒ１の左右方向に収まる一方で、画像Ｇ２および画像Ｇ３は、行Ｒ１の左右方向に収まらない。
【００５１】
かかる場合、画像Ｇ２は、改行して次の行Ｒ２に配置される。配列順序が画像Ｇ２の次である画像Ｇ３は、画像Ｇ２とともに行Ｒ２に収めることができるので、画像Ｇ２および画像Ｇ３は、行Ｒ２に垂直センタリングで配置される。つまり、枠５１ｅには、垂直センタリング記号６２ｂが書き込まれているが、次の画像Ｇ２が１の行の左右方向に収まらないので、枠５１ｅに書き込まれた垂直センタリング記号６２ｂは無視して処理される。
【００５２】
図５（ａ）および（ｂ）は、水平センタリング記号６２ａおよび垂直センタリング記号６２ｂを特定する方法を説明する図である。上述した通り、本実施形態では、水平センタリング記号６２ａは、枠５１の、ページＰａにおける画像の上下の配列方向である下方向の辺に重ねて書き込まれた円として定義される。一方、垂直センタリング記号６２ｂは、枠５１の、ページＰａにおける画像の左右の配列方向である右方向の辺に重ねて書き込まれた円として定義される。
【００５３】
本実施形態において、枠５１の左右上下方向の各辺は、枠５１を囲うＢＢＯＸ７１を対角線Ｄ１，Ｄ２により分割した４つの領域Ａ１〜Ａ４に基づき特定される。具体的に、枠５１のうち、下方向の領域Ａ１に含まれる線分Ｅ１を下方向の辺とし、上方向の領域Ａ３に含まれる線分Ｅ３を上方向の辺とする。一方で、枠５１のうち、右方向の領域Ａ２に含まれる線分Ｅ２を右方向の辺とし、左方向の領域Ａ４に含まれる線分Ｅ４を左方向の辺とする。
【００５４】
よって、図５（ａ）に示す円Ｃ１，Ｃ２，Ｃ５は、水平センタリング記号６２ａとして取り扱われる。円Ｃ３，Ｃ４，Ｃ６は、垂直センタリング記号６２ｂとして取り扱われる。一方、図５（ｂ）に示すように、２つの領域に跨る円Ｆ１は、水平センタリング記号６２ａとしても垂直センタリング記号６２ｂとしても取り扱われない。また、枠５１に重ならない円、例えば、円Ｆ２もまた、水平センタリング記号６２ａまたは垂直センタリング記号６２ｂのいずれとしても取り扱われない。
【００５５】
このように、本実施形態によれば、ＢＢＯＸ７１を対角線Ｄ１，Ｄ２により分割した領域Ａ１〜Ａ４に基づいて、枠５１の左右上下を特定するので、図５（ａ）の右側に示すような複雑な形状の枠５１であっても、水平センタリング記号６２ａおよび垂直センタリング記号６２ｂを正確に検出することができる。
【００５６】
また、枠５１に重ねて書き込まれた円のうち、枠５１の下方向に位置する円が、水平センタリング記号６２ａとして取り扱われる。同様に、枠５１に重ねて書き込まれた円のうち、枠５１の右方向に位置する円が、垂直センタリング記号６２ｂとして取り扱われる。よって、ユーザは、画像をセンタリングで並べたい方向の側に円を書き込めばよいので、直感的な書き込みによって、画像を水平センタリングまたは垂直センタリングで配置させることができる。なお、本実施形態では、画像を下方向または右方向に並べる構成であるため、枠５１の下方向および右方向に位置する円を、それぞれ、水平センタリング記号６２ａおよび垂直センタリング記号６２ｂとして取り扱うが、画像の配列方向に応じて、枠５１に対する、水平センタリング記号６２ａおよび垂直センタリング記号６２ｂとして取り扱われる位置は異なってくる。例えば、画像を上方向または左方向に並べる構成である場合には、枠５１の上方向および左方向に位置する円が、それぞれ、水平センタリング記号６２ａおよび垂直センタリング記号６２ｂとして取り扱われる。
【００５７】
図５（ｃ）は、アクション指定記号６２のうち、改行記号６２ｄに基づくレイアウトの決定方法を説明する図である。改行記号６２ｄは、画像を改行させて配置させることを指定するアクション指定記号６２である。本実施形態では、枠５１内に書き込まれた改行マーク、例えば、左に曲がった鉤矢印が、改行記号６２ｄとして規定される。図５（ｃ）の左側に示すように、枠５１ｂ内に改行記号６２ｄが書き込まれている場合には、画像Ｇ３が強制的に改行された位置に配置される。つまり、かかる場合、図５（ｃ）の右側に示すように、配列順序が画像Ｇ２の次である画像Ｇ３は、画像Ｇ２が配置されている行Ｒ２の次の行Ｒ３の左端に配置される。
【００５８】
次に図６〜図１０を参照して、本実施形態においてサーバ１０が実行する各処理を説明する。図６（ａ）は、サーバ１０のＣＰＵ１１が画像処理アプリケーション１４ａに従い実行する画像処理を示すフローチャートである。本処理は、サーバ１０が、読取画像データ、すなわち、ＭＦＰ３０またはスキャナ４０が読み取った原稿Ｐに対応する読取画像データを、Ｎｅｔ＿Ｉ／Ｆ１５を介して受信した場合に開始される。
【００５９】
ＣＰＵ１１は、原稿Ｐに書き込まれた枠５１を検出し、検出した枠５１内の画像をリスト化した画像リストを作成する画像リスト作成処理を実行する（Ｓ６０１）。ＣＰＵ１１は、画像リストにリスト化された画像の配置順序を決定する配置順序決定処理を実行する（Ｓ６０２）。ＣＰＵ１１は、画像リストにリスト化された画像を、配置順序決定処理（Ｓ６０２）により決定された配置順序と、各画像に対応するアクション指定記号６２とに基づいてレイアウトした画像データを生成するレイアウト処理を実行する（Ｓ６０３）。ＣＰＵ１１は、レイアウト処理（Ｓ６０３）によるレイアウト後の処理を所定の送信先に出力し（Ｓ６０４）、本処理を終了する。なお、Ｓ６０４において、所定の送信先としては、読取画像データの送信元のＭＦＰ３０やＰＣ１００、または、予め決められた例えばＰＣ１００などの送信先、などが例示される。
【００６０】
図６（ｂ）は、上述した画像リスト作成処理（Ｓ６０１）にて実行される具体的な各処理を示すフローチャートである。ＣＰＵ１１は、画像リストをＲＡＭ１３内に作成して初期化する（Ｓ６２１）。ＣＰＵ１１は、読取画像データの解析を行い、元の原稿Ｐに書き込まれた枠５１の検出を行う（Ｓ６２２）。具体的に、ＣＰＵ１１は、予め決められた色の閉じた線分を、枠５１として検出する。なお、書き込まれた枠５１が、両端が開いているなどの閉じた線分でない場合には、補完することによって閉じた線分とし、得られた閉じた線分を枠５１として検出する。ＣＰＵ１１は、検出された枠５１のうち、最初の枠を処理対象として選択する（Ｓ６２３）。
【００６１】
ＣＰＵ１１は、読取画像データから、処理対象である枠５１内に包含される画像データを抽出する（Ｓ６２４）。また、ＣＰＵ１１は、Ｓ６２４において、処理対象である枠５１のＢＢＯＸ７１の読取画像データにおけるｘ座標およびｙ座標、具体的に、ＢＢＯＸ７１の左上端７１ａのｘ座標およびｙ座標を取得する。また、ＣＰＵ１１は、Ｓ６２４において、処理対象である枠５１内に書き込まれている順番指定番号およびアクション指定記号を、読取画像データの解析に基づいて検出する。
【００６２】
ＣＰＵ１１は、画像リストに、Ｓ６２４にて抽出された画像データ、すなわち、処理対象である枠５１内に包含される画像データを登録する（Ｓ６２５）。具体的に、ＣＰＵ１１は、Ｓ６２４にて抽出された画像データに対し、Ｓ６２４にて取得したＢＢＯＸ７１のｘ座標およびｙ座標と、Ｓ６２４にて検出した順番指定番号６１およびアクション指定記号６２とを対応付けて、画像リストに格納する。なお、画像リストへの登録に伴い、ＣＰＵ１１は、Ｓ６２４にて抽出された画像データを、当該画像データにおける、枠５１、順番指定番号６１、およびアクション指定記号６２に相当する部分を周囲の色に応じて補正し、それにより、枠５１、順番指定番号６１、およびアクション指定記号６２が書き込まれる前の画像に相当する画像に対応する画像データを得る。
【００６３】
Ｓ６２５において、ＣＰＵ１１は、順番指定番号６１として、検出された順番指定番号６１に等しい値を画像リストに格納する。一方、ＣＰＵ１１は、アクション指定記号６２の種類、例えば、水平センタリング記号６２ａなどを区別可能なデータを画像リストに格納する。なお、処理対象である枠５１内について、順番指定番号６１が検出されなかった場合、順番指定番号６１がないことを示すデータ、例えば、０（ゼロ）を格納する。同様に、処理対象である枠５１内について、アクション指定記号６２が検出されなかった場合、アクション指定記号６２がないことを示すデータ、例えば、０（ゼロ）を格納する。
【００６４】
検出された枠５１のうち、未処理の枠がある場合（Ｓ６２６：Ｙｅｓ）、ＣＰＵ１１は、次の枠を処理対象として選択し（Ｓ６２７）、処理をＳ６２４に移行する。一方、未処理の枠がない場合、すなわち、検出された枠５１が全て処理された場合（Ｓ６２６：Ｎｏ）、本処理を終了する。
【００６５】
図６（ｃ）は、上述した配置順序決定処理（Ｓ６０２）にて実行される具体的な各処理を示すフローチャートである。ＣＰＵ１１は、順番指定ありのリストと順番指定なしのリストとをそれぞれＲＡＭ１３内に作成して初期化する（Ｓ６４１）。ＣＰＵ１１は、ポインタを、Ｓ６０１にて作成した画像リストの先頭データにセットする（Ｓ６４２）。ＣＰＵ１１は、ポインタの示す画像リストのデータを取得する（Ｓ６４３）。ＣＰＵ１１は、取得したデータに順番指定番号があるか、すなわち、順番指定番号として０より大きい値が記憶されているかを判断する（Ｓ６４４）。
【００６６】
取得したデータに順番指定番号があるとＣＰＵ１１が判断した場合（Ｓ６４４：Ｙｅｓ）、ＣＰＵ１１は、順番指定ありのリストに、順番指定番号が降順となるように、処理中のデータを追加する（Ｓ６４５）。取得したデータに順番指定番号がないとＣＰＵ１１が判断した場合（Ｓ６４４：Ｎｏ）、ＣＰＵ１１は、順番指定なしのリストに、Ｓ６２４にて取得したＢＢＯＸ７１のｙ座標が小さい順となるように、処理中のデータを追加する（Ｓ６４９）。なお、ＣＰＵ１１は、ＢＢＯＸ７１のｙ座標が等しい場合、ＢＢＯＸ７１のｘ座標が小さい順となるように、順番指定なしのリストに処理中のデータを追加する。
【００６７】
ＣＰＵ１１は、Ｓ６４５またはＳ６４９の処理後、ポインタを画像リストの次のデータに進める（Ｓ６４６）。画像リストに次のデータがある場合（Ｓ６４７：Ｙｅｓ）、ＣＰＵ１１は、処理をＳ６４３に移行する。一方、画像リストに次のデータがない場合、すなわち、画像リストのデータが全て処理された場合（Ｓ６４７：Ｎｏ）、ＣＰＵ１１は、Ｓ６４５にて作成された順番指定ありのリストの後ろに、Ｓ６４９にて作成された順番指定なしのリストを結合して、順番リストを作成し（Ｓ６４８）、本処理を終了する。
【００６８】
Ｓ６４８により作成された順番リストによれば、枠内に順番指定番号６１が書き込まれた枠５１の配置順序が、枠内に順番指定番号６１が書き込まれていない枠５１の配置順序に優先される。そして、枠内に順番指定番号６１が書き込まれた枠５１の配置順序は、順番指定番号６１が降順となるように順序付けられる。一方、枠内に順番指定番号６１が書き込まれていない枠５１の配置順序は、ＢＢＯＸ７１の読取画像データにおけるｙ座標が小さい順となるように順序付けられる。
【００６９】
図６および図７は、上述したレイアウト処理（Ｓ６０３）にて実行される具体的な各処理を示すフローチャートである。ＣＰＵ１１は、各パラメータを初期値に設定する（Ｓ７０１）。具体的に、ＣＰＵ１１は、ページＰａのページ番号を特定する変数Ｎに１を設定し、先頭データの配置Ｙ座標および配置Ｘ座標を、それぞれ、変数Ｎにより規定されるページＰａの上端および左端に設定する。また、ＣＰＵ１１は、ポインタを、Ｓ６０２にて作成した順番リストの先頭データにセットする。また、ＣＰＵ１１は、変数Ｙ１および変数Ｙ２を、それぞれ、変数Ｎにより規定されるページＰａの上端の座標に設定する。なお、変数Ｙ１は、画像が配置されている行の上端のｙ座標を示す変数である。変数Ｙ２は、画像が配置されている行の下端のｙ座標を示す変数である。
【００７０】
ＣＰＵ１１は、ポインタの示す順番リストのデータ（以下、このデータを「現在のデータ」と称する場合がある）を取得する（Ｓ７０２）。現在のデータが順番リストにおける先頭データである場合（Ｓ７０３：Ｙｅｓ）、ＣＰＵ１１は、処理を図８のＳ８０１に移行する。一方、現在のデータが順番リストにおける先頭データ以外のデータ、すなわち、２番目以降のデータである場合（Ｓ７０３：Ｎｏ）、ＣＰＵ１１は、１つ前のデータのアクション指定記号６２の内容（以下、単に「アクション」と称する場合がある）を画像リストから取得する（Ｓ７０４）。
【００７１】
取得したアクションがセンタリングキャンセル記号６２ｃに対応するアクションである場合（Ｓ７０５：Ｙｅｓ）、ＣＰＵ１１は、ＲＡＭ１３内に設けられている水平モードフラグおよび垂直モードフラグをいずれもオフに設定する（Ｓ７１３，Ｓ７１４）。水平モードフラグは、自動センタリングモードがオンに設定されていることに基づく自動的な水平センタリングの実行中であるか否かを示すフラグである。水平モードフラグがオンに設定されている場合には、自動的な水平センタリングの実行中であることを示す。一方、垂直モードフラグは、自動センタリングモードがオンに設定されていることに基づく自動的な垂直センタリングの実行中であるか否かを示すフラグである。垂直モードフラグがオンに設定されている場合には、自動的な垂直センタリングの実行中であることを示す。
【００７２】
よって、Ｓ７０５，Ｓ７１３，Ｓ７１４の処理によれば、取得したアクションがセンタリングキャンセル記号６２ｃに対応するアクションであった場合には、水平モードフラグおよび垂直モードフラグがいずれもオフに設定されるので、実行中の自動的な水平または垂直センタリングは、１つ前のデータに対応する画像を最後に終了されることになる。次に、ＣＰＵ１１は、ＲＡＭ１３内に記憶されているセンタリング対象データをクリアし（Ｓ７１５）、処理をＳ８０１に移行する。なお、センタリング対象データは、自動であるか否かにかかわらず、水平または垂直センタリングが行われている場合に、上下方向または左右方向に１列に連続して並ぶ画像を各々特定するデータである。
【００７３】
取得したアクションが水平センタリング記号６２ａに対応するアクションである場合（Ｓ７０５：Ｎｏ，Ｓ７０６：Ｙｅｓ）、ＣＰＵ１１は、現在のデータに対応する画像を水平センタリングで配置するための座標を設定する処理（以下「水平センタリング時の座標設定処理」と称す）を実行し（Ｓ７１６）、処理をＳ８０１に移行する。水平センタリング時の座標設定処理（Ｓ７１６）の詳細な処理については図９を参照して後述する。取得したアクションが水平センタリング記号６２ａに対応するアクションでなくても、水平モードフラグがオンに設定されていれば（Ｓ７０６：Ｎｏ，Ｓ７０７：Ｙｅｓ）、自動的な水平センタリングの実行中であるので、ＣＰＵ１１は、水平センタリング時の座標設定処理を実行する（Ｓ７１６）。
【００７４】
取得したアクションが垂直センタリング記号６２ｂに対応するアクションである場合（Ｓ７０７：Ｎｏ，Ｓ７０８：Ｙｅｓ）、ＣＰＵ１１は、現在のデータに対応する画像を垂直センタリングで配置するための座標を設定する処理（以下「垂直センタリング時の座標設定処理」と称す）を実行し（Ｓ７１７）、処理をＳ８０１に移行する。垂直センタリング時の座標設定処理（Ｓ７１７）の詳細な処理については図１０を参照して後述する。取得したアクションが垂直センタリング記号６２ｂに対応するアクションでなくても、垂直モードフラグがオンに設定されていれば（Ｓ７０８：Ｎｏ，Ｓ７０９：Ｙｅｓ）、自動的な垂直センタリングの実行中であるので、ＣＰＵ１１は、垂直センタリング時の座標設定処理を実行する（Ｓ７１７）。
【００７５】
取得したアクションが改行記号６２ｄに対応するアクションである場合（Ｓ７０９：Ｎｏ，Ｓ７１０：Ｙｅｓ）、ＣＰＵ１１は、現在のデータに対応する画像を改行して配置させるための処理を実行する（Ｓ７１８）。具体的に、ＣＰＵ１１は、現在のデータの仮配置Ｙ座標として、Ｙ２＋１を設定する。ＣＰＵ１１は、現在のデータの仮配置Ｘ座標として、変数Ｎにより規定されるページＰａの左端の座標を設定する。また、ＣＰＵ１１は、変数Ｙ１を、Ｙ２＋１に設定する。ＣＰＵ１１は、Ｓ７１８の処理後、水平モードフラグおよび垂直モードフラグをいずれもオフに設定し（Ｓ７１９，Ｓ７２０）、センタリング対象データをクリアし（Ｓ７２１）、処理をＳ８０１に移行する。
【００７６】
一方、取得したアクションが改行記号６２ｄに対応するアクションでない場合、すなわち、１つ前のデータに対応するアクションが存在しない場合（Ｓ７１０：Ｎｏ）、ＣＰＵ１１は、１つ前のデータに対応する画像に設定されている配置座標と、当該画像のｘ方向およびｙ方向のサイズを取得する（Ｓ７１１）。「配置座標」は、配置Ｙ座標および配置Ｘ座標の総称である。
【００７７】
ＣＰＵ１１は、現在のデータに対応する画像を通常に配置させるための処理を実行し（Ｓ７１２）、処理をＳ８０１に移行する。具体的に、ＣＰＵ１１は、現在のデータの仮配置Ｘ座標として、１つ前のデータに対応する画像のＢＢＯＸ７１の右辺のＸ座標に１を加えた値に設定する。なお、ＣＰＵ１１は、１つ前のデータに対応する画像のＢＢＯＸ７１の右辺のＸ座標を、Ｓ７１１にて取得した１つ前のデータの画像に設定されている配置座標とサイズとから算出する。また、ＣＰＵ１１は、Ｓ７１２において、現在のデータの仮配置Ｙ座標として、Ｙ１を設定する。
【００７８】
Ｓ８０１（図８）において、ＣＰＵ１１は、先頭データから現在のデータまでの各データに対応する各画像を、各画像に設定されている配置座標または仮配置座標に仮配置する。「仮配置座標」は、仮配置Ｙ座標および仮配置Ｘ座標の総称である。具体的に、ＣＰＵ１１は、Ｓ８０１において、仮配置座標が設定されている画像を、仮配置座標に従って配置し、仮配置座標が設定されていない画像を、配置座標に従って配置する。
【００７９】
ＣＰＵ１１は、Ｓ８０１の処理により仮配置された画像が、ページＰａの左右方向に収まるかを判断する（Ｓ８０２）。仮配置された画像がページＰａの左右方向に収まらないとＣＰＵ１１が判断した場合（Ｓ８０２：Ｎｏ）、ＣＰＵ１１は、設定されている仮配置座標をクリアする（Ｓ８０３）。次に、ＣＰＵ１１は、現在のデータに対応する画像を改行して配置させるための処理として、Ｓ７１８と同様の処理を実行する（Ｓ８０４）。
【００８０】
ＣＰＵ１１は、Ｓ８０４の処理後、センタリング対象データをクリアする（Ｓ８０５）。ＣＰＵ１１は、先頭データから現在のデータまでの各データに対応する各画像を、各画像に設定されている配置座標または仮配置座標に仮配置し（Ｓ８０６）、処理をＳ８０７に移行する。Ｓ８０６の処理の結果、現在のデータに対応する画像は、Ｓ８０４で設定された仮配置座標に配置されるとともに、それ以外のデータに対応する画像は、先頭データから１つ前のデータまでの各データに対応する画像に対し最終的に設定された配置座標に配置される。
【００８１】
一方、Ｓ８０２において、仮配置された画像がページＰａの左右方向に収まるとＣＰＵ１１が判断した場合（Ｓ８０２：Ｎｏ）、ＣＰＵ１１は、処理をＳ８０７に移行する。Ｓ８０７において、ＣＰＵ１１は、Ｓ８０１またはＳ８０６の処理により仮配置された画像が、ページＰａの上下方向に収まるかを判断する。仮配置された画像がページＰａの上下方向に収まらないとＣＰＵ１１が判断した場合（Ｓ８０７：Ｎｏ）、ＣＰＵ１１は、設定されている仮配置座標をクリアする（Ｓ８０８）。
【００８２】
次に、ＣＰＵ１１は、現在のデータに対応する画像を改ページして次のページＰａに配置させるための処理を実行する（Ｓ８０９）。具体的に、ＣＰＵ１１は、ページＰａのページ番号を特定する変数Ｎに１を加算し、現在のデータの配置Ｙ座標および配置Ｘ座標を、それぞれ、変数Ｎにより規定されるページＰａの上端および左端に設定する。また、ＣＰＵ１１は、変数Ｙ１および変数Ｙ２を、それぞれ、変数Ｎにより規定されるページＰａの上端の座標に設定する。ＣＰＵ１１は、Ｓ８０９の処理後、センタリング対象データをクリアする（Ｓ８１０）。
【００８３】
一方、Ｓ８０７において、仮配置された画像がページＰａの上下方向に収まるとＣＰＵ１１が判断した場合（Ｓ８０７：Ｎｏ）、ＣＰＵ１１は、仮配置座標が設定されているデータに対応する画像の配置座標を、現在の仮配置座標に設定する（Ｓ８１６）。Ｓ８１６およびＳ８０９の処理の結果、先頭データから現在のデータまでの各データに対応する各画像の最終的な配置座標が設定される。なお、仮配置された画像がページＰａの左右方向または上下方向に収まらない場合であっても、水平モードフラグおよび垂直モードフラグの状態は変更されないので、自動的な水平センタリングおよび垂直センタリングは、改行または改ページされた現在のデータに対応する画像以降の画像にも適用される。
【００８４】
ＣＰＵ１１は、Ｓ８１０またはＳ８１６の処理後、先頭データから現在のデータまでの各データに対応する各画像を、各画像に設定されている配置座標に配置する（Ｓ８１１）。上述した通り、Ｓ８０２〜Ｓ８１０，Ｓ８１６の処理によれば、現在のデータに対応する画像を、アクション指定記号６２に応じた位置に配置させたときに、当該画像が、ページの左右方向または上下方向に収まらない場合には、自動的に改行または改ページが行われるので、画像を確実にページＰａ内に収めることができる。
【００８５】
次に、現在のデータに対応する画像のＢＢＯＸ７１の下辺のＹ座標が、変数Ｙ２の現在値より大きい場合（Ｓ８１２：Ｙｅｓ）、ＣＰＵ１１は、現在のデータに対応する画像のＢＢＯＸ７１の下辺のＹ座標を、変数Ｙ２として設定し（Ｓ８１３）、処理をＳ８１４に移行する。一方、現在のデータに対応する画像のＢＢＯＸ７１の下辺のＹ座標が、変数Ｙ２の現在値以下である場合もまた（Ｓ８１２：Ｎｏ）、ＣＰＵ１１は、処理をＳ８１４に移行する。
【００８６】
Ｓ８１４において、ＣＰＵ１１は、ポインタを順番リストの次のデータに進める（Ｓ８１４）。順番リストに次のデータがある場合（Ｓ８１５：Ｙｅｓ）、ＣＰＵ１１は、処理をＳ７０２（図７）に移行する。一方、順番リストに次のデータがない場合、すなわち、順番リストのデータが全て処理された場合（Ｓ８１５：Ｎｏ）、ＣＰＵ１１は、本処理を終了する。
【００８７】
図９は、上述した水平センタリング時の座標設定処理（Ｓ７１６）にて実行される具体的な各処理を示すフローチャートである。ＣＰＵ１１は、自動センタリングモードがオンに設定されているか否かを判断する（Ｓ９０１）。なお、本実施形態では、サーバ１０が、処理対象とする読取画像データの受信に先立ち、当該読取画像データの送信元の装置から、自動センタリングモードを利用する指示を受信した場合に、当該モードはオンに設定される。そして、オンに設定された自動センタリングモードは、図６（ａ）に示す画像処理における一連の処理が終了すると、オフに設定される。サーバ１０が自動センタリングモードを利用する指示を受信しなければ、自動センタリングモードはオフのままである。
【００８８】
自動センタリングモードがオンに設定されているとＣＰＵ１１が判断し、かつ、ＲＡＭ１３内に設けられている水平モードフラグの設定がオフである場合（Ｓ９０１：Ｙｅｓ，Ｓ９０２：Ｎｏ）、ＣＰＵ１１は、水平モードフラグをオンに設定し（Ｓ９０３）、処理をＳ９０４に移行する。一方、水平モードフラグの設定がオフである場合（Ｓ９０２：Ｎｏ）、ＣＰＵ１１は、Ｓ９０３の処理をスキップして、処理をＳ９０４に移行する。また、自動センタリングモードがオフに設定されているとＣＰＵ１１が判断した場合（Ｓ９０１：Ｎｏ）、ＣＰＵ１１は、処理をＳ９０４に移行する。
【００８９】
Ｓ９０４において、ＣＰＵ１１は、１つ前のデータの配置Ｘ座標がページＰａの左端であるかを判断する。１つ前のデータの配置Ｘ座標がページＰａの左端でないとＣＰＵ１１が判断した場合（Ｓ９０４：Ｎｏ）、ＣＰＵ１１は、１つ前のデータに対応する画像を改行して配置させるための処理を実行する（Ｓ９０５）。具体的に、ＣＰＵ１１は、１つ前のデータの配置Ｙ座標として、Ｙ２＋１を設定する。ＣＰＵ１１は、１つ前のデータの配置Ｘ座標として、変数Ｎにより規定されるページＰａの左端の座標を設定する。また、ＣＰＵ１１は、変数Ｙ１を、Ｙ２＋１に設定する。次に、ＣＰＵ１１は、１つ前のデータをＳ９０５により設定座標に配置させた場合の、当該データに対応する画像のＢＢＯＸ７１の下辺のＹ座標を、変数Ｙ２として設定し（Ｓ９０６）、処理をＳ９０７に移行する。
【００９０】
一方、１つ前のデータの配置Ｘ座標がページＰａの左端であるとＣＰＵ１１が判断した場合（Ｓ９０４：Ｙｅｓ）、ＣＰＵ１１は、Ｓ９０５、Ｓ９０６の処理をスキップして、処理をＳ９０７に移行する。Ｓ９０７において、ＣＰＵ１１は、１つ前のデータを、センタリング対象データとして記憶する。次に、ＣＰＵ１１は、センタリング対象データとして記憶されている全てのデータについて、各データに対応する画像に設定されている配置座標と、当該画像のｘ方向およびｙ方向のサイズを取得する（Ｓ９０８）。
【００９１】
ＣＰＵ１１は、現在のデータの仮配置Ｙ座標として、Ｙ２＋１を設定する（Ｓ９０９）。次に、ＣＰＵ１１は、センタリング対象データである全てのデータに各々対応する各画像の中で、水平方向のサイズが最大である画像が、現在のデータに対応する画像であるかを判断する（Ｓ９１０）。「水平方向」とは、ページＰａの左右方向である。Ｓ９１０の判断をＣＰＵ１１が肯定した場合（Ｓ９１０：Ｙｅｓ）、ＣＰＵ１１は、現在のデータの仮配置Ｘ座標として、変数Ｎにより規定されるページＰａの左端の座標を設定する（Ｓ９１１）。次に、ＣＰＵ１１は、現在のデータに対応する画像をＳ９０９，Ｓ９１１にて設定された仮配置座標に配置させた場合の、当該画像の水平方向（すなわち、左右方向）の中心となるｘ座標を算出する（Ｓ９１２）。
【００９２】
ＣＰＵ１１は、センタリング対象データである全てのデータに各々対応する各画像の水平方向中心が、Ｓ９１２にて算出された水平方向中心と合うよう、センタリング対象データのうち、現在のデータ以外のデータに対応する画像の仮配置Ｘ座標を算出し設定する（Ｓ９１３）。一方、センタリング対象データである全てのデータに各々対応する各画像の中で、水平方向のサイズが最大である画像が現在のデータに対応する画像でないと、ＣＰＵ１１が判断した場合（Ｓ９１０：Ｎｏ）、ＣＰＵ１１は、現在のデータに対応する画像の水平方向中心が、センタリング対象データである全てのデータに各々対応する各画像の水平方向中心と合うよう、現在のデータに対応する画像の仮配置Ｘ座標を算出し設定する（Ｓ９１４）。
【００９３】
ＣＰＵ１１は、Ｓ９１３またはＳ９１４の処理後、本処理を終了する。Ｓ９１０〜Ｓ９１４の処理によれば、センタリング対象データである全てのデータに各々対応する各画像が、種々の水平方向（すなわち、左右方向）のサイズを有する場合であっても、これらの各画像を、ページＰａの左端からはみ出さないように水平センタリングで配置させることができる。
【００９４】
図１０は、上述した垂直センタリング時の座標設定処理（Ｓ７１７）にて実行される具体的な各処理を示すフローチャートである。なお、図９の水平センタリング時の座標設定処理（Ｓ７１６）と同じ処理については、同じステップ番号を付して、その説明を省略する場合がある。自動センタリングモードがオンに設定されているとＣＰＵ１１が判断し、かつ、ＲＡＭ１３内に設けられている垂直モードフラグの設定がオフである場合（Ｓ９０１：Ｙｅｓ，Ｓ１００１：Ｎｏ）、ＣＰＵ１１は、垂直モードフラグをオンに設定し（Ｓ１００２）、処理をＳ９０４に移行する。一方、垂直モードフラグの設定がオフである場合（Ｓ１００１：Ｎｏ）、ＣＰＵ１１は、Ｓ１００２の処理をスキップして、処理をＳ９０４に移行する。
【００９５】
ＣＰＵ１１は、水平センタリング時の座標設定処理（Ｓ７１６）と同様に、Ｓ９０４〜Ｓ９０８の処理を実行した後、現在のデータの仮配置Ｘ座標として、１つ前のデータに対応する画像のＢＢＯＸ７１の右辺のＸ座標に１を加えた値に設定する（Ｓ１００３）。次に、ＣＰＵ１１は、センタリング対象データである全てのデータに各々対応する各画像の中で、垂直方向のサイズが最大である画像が、現在のデータに対応する画像であるかを判断する（Ｓ１００４）。「垂直方向」とは、ページＰａの上下方向である。Ｓ１００４の判断をＣＰＵ１１が肯定した場合（Ｓ１００４：Ｙｅｓ）、ＣＰＵ１１は、現在のデータの仮配置Ｙ座標として、Ｙ１を設定する。次に、ＣＰＵ１１は、現在のデータに対応する画像をＳ１００３，Ｓ１００５にて設定された仮配置座標に配置させた場合の、当該画像の垂直方向（すなわち、上下方向）の中心となるｙ座標を算出する（Ｓ１００６）。
【００９６】
ＣＰＵ１１は、センタリング対象データである全てのデータに各々対応する各画像の垂直方向中心が、Ｓ１００６にて算出された垂直方向中心と合うよう、センタリング対象データのうち、現在のデータ以外のデータに対応する画像の仮配置Ｙ座標を算出し設定する（Ｓ１００７）。一方、センタリング対象データである全てのデータに各々対応する各画像の中で、垂直方向のサイズが最大である画像が現在のデータに対応する画像でないと、ＣＰＵ１１が判断した場合（Ｓ１００４：Ｎｏ）、ＣＰＵ１１は、現在のデータに対応する画像の垂直方向中心が、センタリング対象データである全てのデータに各々対応する各画像の垂直方向中心と合うよう、現在のデータに対応する画像の仮配置Ｙ座標を算出し設定する（Ｓ９１４）。
【００９７】
ＣＰＵ１１は、Ｓ１００７またはＳ１００８の処理後、本処理を終了する。Ｓ１００４〜Ｓ１００８の処理によれば、センタリング対象データである全てのデータに各々対応する各画像が、種々の垂直方向（すなわち、上下方向）のサイズを有する場合であっても、これらの各画像を、１の行の左右方向に、１つ前の行の画像に重なることなく垂直センタリングで配置させることができる。
【００９８】
上記実施形態によれば、ユーザが原稿Ｐに対する書き込みによって複数の枠５１を形成した場合、ユーザは、枠５１の内側の画像に、所望のレイアウトに応じたアクション指定記号６２を適宜書き込むことによって、複数の枠５１に各々対応する各画像を所望のレイアウトに従って配置させた画像データを容易に生成できる。また、自動センタリングモードにおいては、１つの水平センタリング記号６２ａまたは垂直センタリング記号６２ｂに基づき、後続の画像を自動的にセンタリングさせることができるので、画像をセンタリングさせるための操作を簡略化できる。
【００９９】
また、レイアウト対象となる各画像の配置順序は、順番指定番号６１を書き込むか否かと、順番指定番号６１として書き込む数字に応じて、ユーザの所望通りに決定することができる。よって、この点においても、複数の枠５１に各々対応する各画像を所望のレイアウトに従って配置させた画像データを容易に生成できる。
【０１００】
上記実施形態において、サーバ１０が、画像処理装置の一例である。画像処理アプリケーション１４ａが、画像処理プログラムの一例である。ＣＰＵ１１が、制御部の一例である。ＭＦＰ３０やスキャナ４０が有するスキャナ機能が、読取部の一例である。枠５１が、囲み線の一例である。アクション指定記号６２が、第１記号の一例である。水平センタリング記号６２ａ，垂直センタリング記号６２ｂが、センタリング記号の一例である。改行記号６２ｄが、改行記号の一例である。順番指定番号６１が、第２記号の一例である。画像Ｇ１〜Ｇ５が、部分画像の一例である。ＢＢＯＸ７１の左上端７１ａが、読取画像における部分画像の位置の一例である。ＢＢＯＸ７１が、部分画像に接する最小の矩形の一例である。Ｓ６２２の処理を実行するＣＰＵ１１が、囲み線検出手段の一例である。Ｓ６０２の処理を実行するＣＰＵ１１が、順序決定手段の一例である。Ｓ６２４の処理を実行するＣＰＵ１１が、第１記号検出手段、画像抽出手段、第２記号検出手段の一例である。Ｓ７０１〜Ｓ７２１，Ｓ８０１〜８１０，Ｓ８１２〜Ｓ８１６の処理を実行するＣＰＵ１１が、レイアウト決定手段の一例である。Ｓ８１１の処理を実行するＣＰＵ１１が、画像生成手段の一例である。Ｓ６４５の処理を実行するＣＰＵ１１が、第１順序決定手段の一例である。Ｓ６４４の処理を実行するＣＰＵ１１が、判断手段の一例である。Ｓ６４９の処理を実行するＣＰＵ１１が、第２順序決定手段の一例である。Ｓ６４８の処理を実行するＣＰＵ１１が、第３順序決定手段の一例である。
【０１０１】
以上、実施形態に基づき本発明を説明したが、本発明は上述した実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
【０１０２】
例えば、上記実施形態では、原稿を読み取るＭＦＰ３０などの装置と、読取画像データを処理するサーバ１０とを別体に構成したが、スキャン機能を有する装置が、自装置が読み取った原稿の読取画像データを上述したサーバ１０と同様に処理する構成としてもよい。例えば、ＭＦＰ３０に、画像処理アプリケーション１４ａに相当するプログラムを搭載し、スキャン機能により読み取った原稿の読取画像データを、図６〜図１０に示すフローチャートに従い処理する構成としてもよい。また、読取画像データをサーバ１０に送信可能な装置として、ＰＣ１００を例示したが、タブレット端末や、スマートフォンなどの携帯端末などを採用することも可能である。
【０１０３】
上記実施形態では、順番指定記号６１として、数字を例示したが、これに限定されない。例えば、図形の形状や色に応じた順序を予め規定しておき、原稿Ｐに順番指定記号６１として書き込んだ図形に応じて、配置順序を決定する構成としてもよい。また、順番指定記号６１としての数字を囲う図形がある場合に、その図形に応じて、数字をグループ化する構成としてもよい。図形に応じて数字をグループ化する構成によれば、枠５１の数が多い場合に、全ての枠５１に対して値の異なる順番指定記号６１を書き込む必要がなく、ユーザが意図するグループ毎に所望の順序で画像を並べることができる。
【０１０４】
上記実施形態では、水平センタリング記号６２ａまたは垂直センタリング記号６２ｂとして取り扱われる条件として、枠５１に重なる円であることが含まれるが、当該条件から、枠５１に重なる円であることを除外する構成としてもよい。例えば、上記実施形態では、図５（ｂ）に示す円Ｆ２を、水平センタリング記号６２ａとして取り扱わない構成としたが、円Ｆ２を、水平センタリング記号６２ａとして取り扱う構成としてもよい。
【０１０５】
上記実施形態では、枠５１に対する円の位置に応じて、水平センタリング記号６２ａと垂直センタリング記号６２ｂとが区別される構成としたが、枠５１に対して書き込む図形の形状に応じて、水平センタリング記号６２ａと垂直センタリング記号６２ｂとを区別する構成としてもよい。なお、水平センタリング記号６２ａなど、各種のアクション指定記号６２として例示した形状は、上記実施形態にて例示した形状に限らず、各種の形状を採用できる。
【０１０６】
上記実施形態では、水平センタリングまたは垂直センタリングを行う場合に、先頭の画像がページＰａの左端になければ、改行して左端に位置させる構成としたが、先頭の画像がページＰａの左端になくても、先頭の画像が配置されている位置から、水平センタリングまたは垂直センタリングを行う構成としてもよい。
【０１０７】
上記実施形態では、水平モードフラグおよび垂直モードフラグがオンからオフに切り替えられる条件、すなわち、請求項１１の「所定の条件」に相当する条件として、センタリングキャンセル記号６２ｃまたは改行記号６２ｄが検出される場合を例示したが、当該条件はこれらの場合に限定されない。例えば、自動的な水平センタリングまたは垂直センタリングの実行中に、画像がページＰａの左右方向または上下方向に収まらず、改行または改ページされた場合に、水平モードフラグおよび垂直モードフラグがオンからオフに切り替える構成としてもよい。
【０１０８】
上記実施形態では、ある画像が、当該画像より配列順序が１つ前の画像に対応する枠５１に書き込まれたアクション指定記号６２に応じたアクションに従い配置される構成としたが、ある画像が、当該画像に対応する枠５１に書き込まれたアクション指定記号６２に応じたアクションに従って配置される構成としてもよい。
【０１０９】
図６〜図１０に示す各処理のうち、一部の処理を、特許請求の範囲における独立請求項から逸脱しない範囲で、省略または変更してもよい。例えば、自動センタリングモードを搭載しない画像処理装置においては、Ｓ９０１〜Ｓ９０３，Ｓ１００１，Ｓ１００２の処理を省略してもよい。また、画像を改行させて配置する場合の処理、例えば、Ｓ７１８において、変数Ｙ１を、Ｙ２＋１に設定するようにしたが、変数Ｙ１を、Ｙ２＋α（αは、１以上の正数）に設定する構成としてもよい。また、予め準備するアクション指定記号６２の種類によっては、Ｓ７０５，Ｓ７１３〜Ｓ７１５の処理群、Ｓ７０６，Ｓ７０７，Ｓ７１６の処理群、Ｓ７０８，Ｓ７０９，Ｓ７１７の処理群、およびＳ７１０，Ｓ７１８〜Ｓ７２１の処理群のうち、少なくとも１の処理群を省略したり、少なくとも１の処理群を別のアクション指定記号６２に応じた処理群に変更してもよい。あるいは、上記処理群に加え、別のアクション指定記号６２に応じた処理群を追加してもよい。また、Ｓ７０５，Ｓ７１３〜Ｓ７１５の処理群、Ｓ７０６，Ｓ７０７，Ｓ７１６の処理群、Ｓ７０８，Ｓ７０９，Ｓ７１７の処理群、およびＳ７１０，Ｓ７１８〜Ｓ７２１の処理群の処理順序を入れ替える構成としてもよい。つまり、アクションの優先順位は、上記実施形態の優先順位に限られない。
【０１１０】
上記実施形態では、ＣＰＵ１１が、図６〜図１０に記載される各処理を実行する構成として説明したが、これら各図に記載される各処理を、複数のＣＰＵが協同的に実行する構成としてもよい。また、ＡＳＩＣなどのＩＣが、単独で、または、複数によって協働的に、上記各図に記載される各処理を実行する構成してもよい。また、ＣＰＵ１１とＡＳＩＣなどのＩＣとが協同して、上記各図に記載される各処理を実行する構成してもよい。また、上記実施形態により説明した各特徴や、上述した各変形例を適宜組み合わせて実施する構成としてもよい。
【符号の説明】
【０１１１】
１０：サーバ，１１：ＣＰＵ，１２ｂ：画像処理アプリケーション
【図１】
2015026927.tif 000003
【図２】
2015026927.tif 000004
【図３】
2015026927.tif 000005
【図４】
2015026927.tif 000006
【図５】
2015026927.tif 000007
【図６】
2015026927.tif 000008
【図７】
2015026927.tif 000009
【図８】
2015026927.tif 000010
【図９】
2015026927.tif 000011
【図１０】
2015026927.tif 000012