(57)【要約】      （修正有）【課題】原稿の有意領域のみをスクラップブックのように自動的にレイアウトし、複数の原稿を定形に収め、イメージデータ数を削減する。【解決手段】原稿を読み取り、画像処理を施し、オブジェクト毎に認識し、ブロックに分割し、ブロック毎に文字、図面、写真、線、表等の属性を判別し、原稿画像を全て含む領域を複数の画素サイズに分割し、用紙の印字可能領域を、縦横に分割して、タイルを生成し、生成したタイルが収まるかどうかを判定し、オペレータに知らせる。【選択図】図１
2006128763.tif 000002
【特許請求の範囲】
【請求項１】
原稿を読み取り走査し、イメージ情報を生成する走査手段と、前記走査手段で得られたイメージ情報から、前記走査手段で得られるイメージ情報を色空間変換処理、二値化処理、移動、回転、変倍、符号変換等の変換を施す画像処理手段と、
前記画像変換処理した画像データを、オブジェクト毎の塊として認識し、該ブロック各々を文字、図画、写真／線、表等の属性に判定し、異なる属性を持つ領域に分割するブロック判別手段と、読み取った画像データを出力するための用紙サイズを指定する、出力用紙サイズ設定手段と、
前記ブロック判別手段によって決定された各領域の画像データをすべて含む領域の画像データを複数の所定画素サイズに分割する、領域画像タイル生成手段と、
領域画像タイルを蓄積するための画像タイルデータ蓄積手段と、
出力用紙の印字可能領域から、出力可能な縦横の画像タイル数を算出する出力可能画像タイル計算手段と、
前記出力可能画像タイル計算手段により、計算した縦横のタイル数と、前記領域画像タイル生成手段により、生成したタイルが収まるか否かを判定する出力タイル数算出手段とを有し、
出力タイル数算出手段により、出力用紙に収まるか否か判定した結果をオペレータに知らせることを特徴とする画像処理システム。
【請求項２】
前記領域画像タイル生成手段は、ブロック判別手段によって決定された各ブロックの画像データを、各ブロック毎に分割し、各領域画像タイルを生成し、各領域画像タイル間をつめて、有意領域のみをレイアウトし、出力タイル数を算出することを特徴とする請求項１に記載の画像処理システム。
【請求項３】
前記出力タイル数算出手段により、出力用紙に収まる場合は、出力可能画像タイル数から有意領域の画像タイル数を減じ、残りの出力可能画像タイル数から、読み取り領域を算出する、次原稿読み取り時領域算出手段と、
オペレータに次原稿があって読み込みおよび合成を継続するか、読み込みを終了し、出力用紙に出力するか問い合わせる、出力可否判定Ａ手段と、
出力用紙に収まらない場合は、用紙には出力せず、オペレータに先ほどの原稿の読み込みをキャンセルして、他の原稿の読み取りを継続するか、出力用紙を変更するか、読み込みを終了し、それまでに読み取った画像のみを出力用紙に出力するか問い合わせる、出力可否判定Ｂ手段と、を有し、
オペレータが次原稿を読み取る際は、前原稿までの有意領域と、次原稿の有意領域とを、合成した領域を算出し、前記出力タイル数算出を行うことを特徴とする、請求項１または２に記載の画像処理システム。
【請求項４】
前記出力可否判定Ａ手段、および出力可否判定Ｂ手段により、用紙に出力する場合は、画像タイルデータ蓄積手段により蓄積されている、これまでに読み取った複数の領域画像タイルと、パディングのための複数の白画像タイルとを、一枚の画像データとして重なりが無いよう合成し、出力可能画像タイル計算手段により計算された縦横のタイルサイズに合わせた上で、出力用紙サイズ設定手段により設定された用紙に出力する、出力画像生成手段とを有することを特徴とする請求項１乃至３のいずれかに記載の画像処理システム。
【請求項５】
カセット段にない出力用紙サイズを設定できる仮想出力サイズ設定手段をさらに設け、出力画像生成手段により、仮想出力用紙サイズに有意領域すべてを合成した画像を形成し、他の装置に送信する合成画像送信手段とを有することを特徴とする請求項１乃至４のいずれかに記載の画像処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像入力機能、画像処理機能、画像出力機能を有した、複写機などの画像処理システムに関するものである。
【背景技術】
【０００２】
近年、環境問題が叫ばれる中、オフィスでのペーパーレス化が急速に進んでいる。即ち、従来からバインダー等で蓄積された紙文書をスキャナで読み取りポータブルドキュメントフォーマット（以降ＰＤＦと記す）に変換して画像記憶装置にデータベースとして蓄積し、文書管理システムを構築出来る。データベースのストレージ資源は有限であり、このように長期保持や再利用を前提とした情報は、できる限り小さく、情報密度が高いほうが望ましい。
【特許文献１】特開２００１−１０３４７３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、このように紙をイメージデータに変換して保持するシステムにおいて、以下の問題が存在する。
・紙データをスキャンして蓄積すると原稿サイズ分のイメージデータとなり、余白を含めて保持してしまうため容量を無駄に消費してしまう。
・紙データをスキャンして蓄積すると、両面原稿と片面原稿の混載時などで、原稿枚数と同数のイメージデータができてしまい、容量を無駄に消費してしまうだけでなく閲覧性・検索性が悪い。
・不揃いサイズの用紙を混載してスキャンすると、イメージデータも不揃いサイズとなり、閲覧・印刷時に扱いにくい。
【０００４】
本発明は、上述の課題に鑑みてなされたものであり、その目的とするところは、原稿の有意領域のみをスクラップブックのように自動的にレイアウトし、複数の原稿を定形に収め、イメージデータ数を削減することが可能な画像処理システムを提供することにある。
【課題を解決するための手段】
【０００５】
上記問題を解決するために、本発明は以下（１）の構成からなる。
【０００６】
（１）原稿を読み取り走査し、イメージ情報を生成する走査手段と、前記走査手段で得られたイメージ情報から、前記走査手段で得られるイメージ情報を色空間変換処理、二値化処理、移動、回転、変倍、符号変換等の変換を施す画像処理手段と、前記画像変換処理した画像データを、オブジェクト毎の塊として認識し、該ブロック各々を文字／図画／写真／線／表等の属性に判定し、異なる属性を持つ領域に分割するブロック判別手段と、読み取った画像データを出力するための用紙サイズを指定する、出力用紙サイズ設定手段と、前記ブロック判別手段によって決定された各領域の画像データをすべて含む領域の画像データを複数の所定画素サイズに分割する、領域画像タイル生成手段と、領域画像タイルを蓄積するための画像タイルデータ蓄積手段と、出力用紙の印字可能領域から、出力可能な縦横の画像タイル数を算出する出力可能画像タイル計算手段と、前記出力可能画像タイル計算手段により、計算した縦横のタイル数と、前記領域画像タイル生成手段により、生成したタイルが収まるか否かを判定する出力タイル数算出手段とを有し、出力タイル数算出手段により、出力用紙に収まるか否か判定した結果をオペレータに知らせることを特徴とする画像処理システム。
【発明の効果】
【０００７】
本発明の方法をとることにより、簡略な操作フローによって、複数の異なるサイズの原稿の有意部分のみを重なり無く、スクラップブックのように自動的にレイアウトし、自動的に複数の原稿を定形に収め、イメージデータ数を削減することが可能となり、余白を含む無駄な用紙の出力を節減し、データの検索性・閲覧性の向上といったユーザの利便性高めるための画像処理システムを提供することが可能となる。
【発明を実施するための最良の形態】
【０００８】
以下に、本発明を実施するための最良の形態を、実施例に基づいて説明する。
【実施例１】
【０００９】
本願発明の実施の形態について説明する。図１は本願発明にかかる画像処理システム構成例を示すブロック図である。この画像処理システムは、オフィス１０とオフィス１１とをインターネット１０４で接続された環境で実現する。オフィス１０内に構築されたＬＡＮ１０７には、マルチファンクションペリフェラル（以降ＭＦＰと記す）ＭＦＰ１００、ＭＦＰ１００を制御するマネジメントＰＣ１０１、クライアントＰＣ（外部記憶手段）１０２、文書管理サーバ１０６、そのデータベース１０５、およびプロキシサーバ１０３が接続されている。ＬＡＮ１０７及びオフィス１１内のＬＡＮ１０８はプロキシサーバ１０３を介してインターネット１０４に接続される。ＭＦＰ１００は本発明において紙文書の画像読み取り部と読み取った画像信号に対する画像処理の１部を担当し、画像信号はＬＡＮ１０９を用いてマネジメントＰＣ１０１に入力する。マネジメントＰＣ１０１は通常のＰＣであり、内部に画像記憶手段、画像処理手段、表示手段、入力手段を有するが、その一部をＭＦＰ１００に一体化して構成されている。
【００１０】
図２は、ＭＦＰ１００の構成を説明するブロック図である。Ｃｏｎｔｒｏｌｌｅｒ  Ｕｎｉｔ２０００は画像入力デバイスであるカラースキャナ２０１５や画像出力デバイスであるカラープリンタ２０１７と接続し、一方ではＬＡＮ２００８や公衆回線（ＷＡＮ）２０５１と接続することで、画像情報やデバイス情報の入出力を行う為のコントローラである。ＣＰＵ２００１はシステム全体を制御するコントローラである。ＲＡＭ２００２はＣＰＵ２００１が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもある。ＲＯＭ２００３はブートＲＯＭであり、システムのブートプログラムが格納されている。ＨＤＤ２００４はハードディスクドライブで、システムソフトウェア、画像データを格納する。操作部Ｉ／Ｆ２００５は操作部（ＵＩ）２００６とのインタフェース部で、操作部２００６に表示する画像データを操作部２００６に対して出力する。また、操作部２００６から本システム使用者が入力した情報を、ＣＰＵ２００１に伝える役割をする。Ｎｅｔｗｏｒｋ２００７はＬＡＮ２００８に接続し、情報の入出力を行う。Ｍｏｄｅｍ２０５０は公衆回線２０５１に接続し、画像情報の入出力を行う。２値画像回転２０５２、および２値画像圧縮・伸張２０５３はＭｏｄｅｍ２０５０で２値画像を送信する前に画像の方向を変換したり、所定の解像度、あるいは相手能力に合わせた解像度に変換するためのものである。圧縮、伸張はＪＢＩＧ、ＭＭＲ、ＭＲ、ＭＨをサポートしている。ＤＭＡＣ２００９はＤＭＡコントローラであり、ＲＡＭ２００２に格納されている画像をＣＰＵ２００１を介することなく読み取りＩｍａｇｅＢｕｓＩ／Ｆ２０１１に対して画像転送する、もしくは画像バスからの画像をＣＰＵ２００１を介することなくＲＡＭ２００２に書き込む。以上のデバイスがシステムバス２００８に接続される。ＩｍａｇｅＢｕｓＩ／Ｆ２０１１は画像バス２０１０を介して高速な画像の入出力を制御するためのインタフェースである。圧縮器２０１２は画像バス２０１０に画像を送出する前に３２画素×３２画素の単位でＪＰＥＧ圧縮するための圧縮器である。伸張器２０１３は画像バス２０１０を介して送られた画像を伸張するための伸張器である。
【００１１】
ラスタイメージプロセッサ（ＲＩＰ）２０１８はホストコンピュータからのＰＤＬコードをＮｅｔｗｏｒｋ２００７を介して受け取り、システムバス２００８を通して、ＣＰＵ２００１がＲＡＭ２００２に格納する。ＣＰＵ２００１はＰＤＬを中間コードに変換し、再度システムバス２００８を介してＲＩＰ２０１８に入力し、ビットマップイメージ（多値）に展開する。スキャナ画像処理２０１４はスキャナ２０１５からのカラー画像、白黒画像に対して、適切な各種画像処理（たとえば補正、加工、編集）を行い出力する（多値）。同様にプリンタ画像処理２０１６はプリンタ２０１７に対して適切な各種画像処理（たとえば補正、加工、編集）を行うプリント時は伸張器２０１３で２値多値変換を行うので、２値、および多値出力が可能である。画像変換部２０３０はＲＡＭ２００２上にある画像を画像変換し、再度、ＲＡＭ２００２に書き戻すときに使われる各種画像変換機能を有する。回転器２０１９は３２画素×３２画素単位の画像を指定された角度で回転でき、２値、および多値の入出力に対応している。変倍器２０２０は画像の解像度を変換（たとえば６００ｄｐｉから２００ｄｐｉ）したり、変倍したりする機能（たとえば２５％から４００％まで）を有する。変倍する前には３２×３２画素の画像を３２ライン単位の画像に並び替える。色空間変換２０２１は多値入力された画像をマトリクス演算、およびＬＵＴにより、たとえばメモリ上にあるＹＵＶ画像をＬａｂ画像に変換し、メモリ上に格納する。また、この色空間変換は３×８のマトリクス演算および、１次元ＬＵＴをもち、公知の下地とばしや裏写り防止を行うことができる。変換された画像は多値で出力される。２値多値変換２０２２は１ｂｉｔ２値画像を多値８ｂｉｔ、２５６階調にする。逆に多値２値変換２０２６はたとえばメモリ上にある８ｂｉｔ、２５６階調の画像を誤差拡散処理などの手法により１ｂｉｔ、２階調に変換し、メモリ上に格納する。合成２０２３はメモリ上の２枚の多値画像を合成し、１枚の多値画像にする機能を有する。たとえば、メモリ上にある会社ロゴの画像と原稿画像を合成することで、原稿画像に簡単に会社ロゴを付けることができる。間引き２０２４は多値画像の画素を間引くことで、解像度変換を行うユニットであり、１／２，１／４，１／８の多値画像を出力可能である。変倍２０２０と合わせて使うことで、より広範囲な拡大、縮小を行うことができる。移動２０２５は入力された２値画像、多値画像に余白部分を付けたり、余白部分を削除したりして出力することができる。回転２０１９、変倍２０２０、色空間変換２０２１、２値多値２０２２、合成２０２３、間引き２０２４、移動２０２５、多値２値２０２６はそれぞれ連結して動作することが可能で、たとえばメモリ上の多値画像を画像回転、解像度変換する場合は、両処理をメモリを介さずに連結して行うことができる。
【００１２】
なお、本発明で使用されるアルゴリズムのプログラムコードは、ＨＤＤ２００４上のシステムソフトウェアの一部、または、マネジメントＰＣ１０１に上に格納されている。
【００１３】
図３に画像の形式を示す。本発明で使用される画像の形式は、特許文献１で開示されている画像パケット構造を利用する。圧縮２０１２ではラスタ形式の画像を、画像データ２１０２のごとく３２×３２画素単位で並び替え、タイル画像２１１２単位でＪＰＥＧ圧縮を行い、パケット画像データ２１０４を作り出す。なお２１０３は公知のＪＰＥＧの圧縮単位のブロック（ＭＣＵ）である。また、パケットデータマップ２１１１のごとく、パケットにパケットの位置を示すＩＤ、色空間を示すＩＤ、量子化テーブルＩＤ、データ長などの情報を付加してヘッダーとする。文字、写真を示す２値のデータ（像域フラグ）も同様に圧縮して、ＪＰＥＧの後ろに付随させる。
【００１４】
伸張２０１３ではこのパケットテーブル２１０１およびパケットヘッダ情報をもとにＪＰＥＧを展開し、ラスタ画像に並び替える。このようなパケット画像にすることで、画像回転のときにはパケット内部の画像のみを回転し、パケットＩＤの位置を変更することで、部分的に伸張圧縮で回転することができるため非常に効率がよい。ＩｍａｇｅＢｕｓ２０１０を流れる画像はすべてパケット画像になる。
【００１５】
また、画像をメモリ上で扱う場合には、パケットテーブル２１０１を用いる。パケットテーブル２１０１は、パケットテーブルマップ２１１０のごとく１要素が１つのパケットの先頭アドレスと、サイズを、パケット毎に保持し、これを主走査、副走査に並べることにより一つの画像を示している。パケットテーブル２１０１を用いることにより、画像を構成するパケットがメモリ上で離散的に配置されている場合でも一つの画像として扱うことが可能になる。ＦＡＸ送信や２値画像回転２０５２、２値画像圧縮・伸張２０５３などでラスタ画像が必要な場合は、パケット画像からラスタ画像への変換をソフトウェアによって行う。
【００１６】
図４にスキャナ画像処理２０１４の詳細説明を示す。スキャナ２０１５から入力されたＲＧＢ各８ｂｉｔの輝度信号はマスキング２５０１によりＣＣＤのフィルタ色に依存しない標準的なＲＧＢ色信号に変換される。フィルタ２５０２ではたとえば９×９のマトリクスを使用し、画像をぼかしたり、メリハリを付ける処理が行われる。ヒストグラム２５０３は入力画像中の画像信号データのサンプリングをする処理部であり、入力画像の下地レベル判定に使用される。このモジュールでは主走査方向、副走査方向にそれぞれ指定した開始点から終了点で囲まれた矩形領域内のＲＧＢデータを、主走査方向、副走査方向に一定のピッチでサンプリングし、ヒストグラムを作成する。このヒストグラムは、下地とばしや、裏写り防止が指定されたとき、読み出され、ヒストグラムから原稿の下地を推測し、下地とばしレベルとして、画像とともにメモリやＨＤＤに保存、管理され、印刷や送信時の画像処理に使用される。ガンマ２５０４では画像全体の濃度を濃くあるいは薄くするように処理が行われる。たとえば入力画像の色空間を任意の色空間に変換したり、入力系の色味に関する補正処理を行う部分である。原稿がカラーか白黒かを判断するために変倍前の画像信号を色空間変換２５０５によって公知のＬａｂに変換する。このうちａ，ｂは色信号成分を表しており、比較器２５０６内の所定のレベル以上であれば有彩色、そうでなければ無彩色として１ｂｉｔの判定信号を比較器２５０６から出力する。カウンタ２５０７は比較器２５０６からの出力を計測する。文字／写真判定２５０８は画像から文字エッジを抽出し、画像を文字と写真に分離する機能である。出力として、文字写真判定信号が得られる。この信号も画像とともにメモリやＨＤに格納され、印刷時に使用される。２５０９は特定原稿判定器である。特定原稿判定器２５０９は入力画像信号と、判定器内部で持つパターンがどの程度一致するかを比較し、図示したように一致、不一致という判定結果を読み出すことが可能である。判定結果に応じて、画像を加工し、紙幣や有価証券などの偽造を防止する。
【００１７】
図５に操作部２００６の構成を示す。ＬＣＤ表示部３００１は、ＬＣＤ上にタッチパネルシート３００２が貼られており、システムの操作画面およびソフトキーを表示するとともに、表示してあるキーが押されるとその位置情報をコントローラＣＰＵ２００１に伝える。
【００１８】
スタートキー３００３は原稿画像の読み取り動作を開始する時などに用いる。スタートキー３００３中央部には、緑と赤の２色ＬＥＤ３００４があり、その色によってスタートキー３００３が使える状態にあるかどうかを示す。ストップキー３００５は稼働中の動作を止める働きをする。ＩＤキー３００６は、使用者のユーザＩＤを入力する時に用いる。リセットキー３００７は操作部からの設定を初期化する時に用いる。
【００１９】
図６にソフト構成図を示す。４０１０は表示操作部を制御するＵＩ制御部、ＵＩ制御部４０１０からの指示を受け、コピー動作、送信動作、ボックス画面からのスキャン、プリントを実行するコピーアプリケーション部４０２０、送信アプリケーション部４０２１、ボックスアプリケーション部４０２２がある。またネットワークアプリケーション４１２０からのＰＤＬプリントデータを受けＰＤＬプリントジョブを投入するＰＤＬアプリケーション部４０２３がある。４０３０は機器制御部分の機器依存部分を吸収するための共通インタフェース部分、４０４０は共通インタフェース４０３０から受け取ったジョブ情報を整理し、下位層のドキュメント処理部に伝達するジョブマネージャである。
【００２０】
ドキュメント処理部はローカルコピーであればスキャンマネージャ４０５０とプリントマネージャ４０９０、リモートコピーの送信ジョブ、あるいは送信ジョブであればスキャンマネージャ４０５０とファイルストアマネージャ４１００、リモートコピーの受信ジョブであればファイルリードマネージャ４０６０とプリントマネージャ４０９０、ＰｏｓｔＳｃｒｉｐｔなどのＰＤＬプリントではＰＤＬマネージャ４０７０とプリントマネージャ４０９０である。各ドキュメントマネージャ間の同期とり、および各種画像処理を行うイメージマネージャ４１１０への画像処理の依頼はシンクマネージャ４０８０を介して行う。スキャン、プリント時の画像処理や画像ファイルの格納はイメージマネージャ４１１０が行う。
【００２１】
まずローカルコピーのソフト処理について説明する。使用者の指示によりＵＩ制御部４０１０からコピー指示とともにコピーの設定がコピーアプリケーション部４０２０に伝わる。コピーアプリケーション部４０２０はＵＩ制御部４０１０からの情報を共通インタフェース４０３０を介して、機器制御を行うジョブマネージャ４０４０に伝える。ジョブマネージャ４０４０はスキャンマネージャ４０５０とプリントマネージャ４０９０にジョブの情報を伝達する。スキャンマネージャ４０５０は図示しないデバイスＩ／Ｆ（デバイスＩ／Ｆはコントローラ２０００とスキャナ２０１５、およびコントローラ２０００とプリンタ２０１７を結ぶシリアルＩ／Ｆ）を介してスキャナ２０７０にスキャン要求を行う。
【００２２】
また、同時にシンクマネージャ４０８０を介してイメージマネージャ４１１０にスキャン用の画像処理要求を出す。イメージマネージャ４１１０はスキャンマネージャ４０５０の指示に従って、スキャナ画像処理２０１４の設定を行う。設定が完了したら、シンクマネージャ４０８０を介してスキャン準備完了を伝える。その後スキャンマネージャ４０５０はスキャナ２０１５に対してスキャンを指示する。スキャン画像転送完了は図示しないハードウェアからの割り込み信号によってイメージマネージャ４１１０に伝わる。
【００２３】
イメージマネージャ４１１０からのスキャン完了を受けてシンクマネージャ４０８０はスキャン完了をスキャンマネージャ４０５０、プリントマネージャ４０９０に伝える。同時にシンクマネージャ４０８０はＲＡＭ２００２に蓄積された圧縮画像をＨＤＤ２００４にファイル化するためイメージマネージャ４１１０に指示する。イメージマネージャ４１１０は指示に従ってメモリ上の画像（文字／写真判定信号を含めて）をＨＤＤ２００４に格納する。画像の付随情報として図示しないＳＲＡＭにカラー判定／白黒判定結果、下地とばしを行うための下地とばしレベル、画像入力元としてスキャン画像、色空間ＲＧＢも格納しておく。
【００２４】
また、ＨＤＤ２００４への格納が終了し、スキャナ２０１５からのスキャン完了を受けたら、シンクマネージャ４０８０を介してスキャンマネージャ４０５０にファイル化終了を通知する。スキャンマネージャ４０５０はジョブマネージャ４０４０に対して終了通知を返し、ジョブマネージャ４０４０は共通インタフェース４０３０を介してコピーアプリケーション部４０２０へ返す。プリントマネージャ４０９０はメモリに画像が入った時点でデバイスＩ／Ｆを介して、プリンタ２０１７に印刷要求を出す。同時にシンクマネージャ４０８０にプリント画像処理要求を行う。シンクマネージャ４０８０はプリントマネージャ４０９０から要求を受けたら画像処理設定をイメージマネージャ４１１０に依頼する。イメージマネージャ４１１０は前記の画像の付随情報に従ってプリンタ画像処理２０１６の設定を行い、シンクマネージャ４０８０を介してプリントマネージャ４０９０にプリント準備完了を伝える。
【００２５】
プリントマネージャ４０９０はプリンタに対して印刷指示を出す。プリント画像転送完了は図示しないハードウェアからの割り込み信号によってイメージマネージャ４１１０に伝わる。イメージマネージャ４１１０からのプリント完了を受けてシンクマネージャ４０８０はプリント完了をプリントマネージャ４０９０に伝える。プリントマネージャ４０９０はプリンタ部からの排紙完了を受け、ジョブマネージャ４０４０に対して終了通知を返し、ジョブマネージャ４０４０は共通インタフェース４０３０を介してコピーアプリケーション部４０２０へ返す。コピーアプリケーション部４０２０はスキャン、プリントが終了したらジョブ終了をＵＩ制御部４０１０に通知する。
【００２６】
リモートコピーのスキャンジョブ、送信ジョブの場合は、プリントマネージャ４０９０に代わってファイルストアマネージャ４１００がジョブマネージャ４０４０からの要求を受ける。スキャン画像をＨＤＤ２００４に格納し終わった時点で、シンクマネージャ４０８０から格納完了通知を受け、それを共通インタフェース４０３０を介してリモートコピーならコピーアプリケーション部４０２０に、送信ジョブなら送信アプリケーション部４０２１に通知する。コピーアプリケーション部４０２０、送信アプリケーション４０２１はこの通知のあと、ネットワークアプリケーション４１２０に対してＨＤＤに格納されたファイルの送信を依頼する。依頼を受けたネットワークアプリケーション４１２０がファイルを送信する。ネットワークアプリケーション４１２０はジョブ開始時にコピーアプリケーション部４０２０からコピーに関する設定情報を受け、それもリモート側の機器に通知する。ネットワークアプリケーション４１２０はリモートコピーの場合、機器固有の通信プロトコルを使用して送信を行う。また送信ジョブの場合はＦＴＰ、ＳＭＢのような標準的なファイル転送プロトコルを使用する。
【００２７】
ファクス送信する場合はファイル格納後、送信アプリケーション部４０２１から共通インタフェース４０３０、ジョブマネージャ４０４０を介してＦＡＸマネージャ４０４１に送信が指示される。ＦＡＸマネージャ４０４１はＭｏｄｅｍ２０５０を介して、相手機器とネゴシエーションし、必要な画像処理（カラー−＞白黒変換、多値２値変換、回転、変倍）をイメージマネージャ４１１０に依頼し、変換後の画像をＭｏｄｅｍ２０５０を使って送信する。
【００２８】
また、送信先にプリンタがある場合、送信アプリケーション部４０２１は共通インタフェース４０３０を介してプリントジョブとしてプリントの指示を行う。そのときの動作は以下で説明するリモートコピーのプリントジョブの場合と同様である。また、送信宛先が機器内のボックス宛先になっているときはファイルストアマネージャ４１００によって機器内のファイルシステムに格納する。
【００２９】
ＦＡＸ受信時はＦＡＸマネージャ４０４１がＭｏｄｅｍ２０５０を使って画像を受信し、画像ファイルとしてＨＤＤ２００４に格納する。ＨＤＤ２００４格納後にボックスアプリケーション部４０２２に通知すると、ボックスアプリケーション部４０２２から受信プリントの指示が共通インタフェース４０３０を介して、ジョブマネージャ４０４０になされる。その後は通常のボックスプリントジョブと同じ動作になるため省略する。
【００３０】
リモートコピーのプリントジョブの場合は、送信側からの画像をネットワークアプリケーション４１２０がＨＤＤに保存するとともにコピーアプリケーション部４０２０に対してジョブを発行する。コピーアプリケーション部４０２０は共通インタフェース４０３０を介してジョブマネージャ４０４０にプリントジョブを投入する。ローカルコピーとは異なり、スキャンマネージャ４０５０に代わってファイルリードマネージャ４０６０がジョブマネージャ４０４０からの要求を受ける。受信画像をＨＤＤからメモリに展開するための要求をシンクマネージャ４０８０を介して、イメージマネージャ４１１０に行う。イメージマネージャ４１１０はメモリに画像を展開する。イメージマネージャ４１１０は展開が終了した時点で、展開終了をシンクマネージャ４０８０を経由して、ファイルリードマネージャ４０６０とプリントマネージャ４０９０に伝える。プリントマネージャ４０９０はメモリに画像が入った時点でデバイスＩ／Ｆを介して、プリンタ２０１７にジョブマネージャ４０４０から指示された給紙段、もしくはその用紙サイズを有する段を選択し、印刷要求を出す。自動用紙の場合には画像サイズから給紙段を決定し印刷要求を出す。同時にシンクマネージャ４０８０にプリント画像処理要求を行う。シンクマネージャ４０８０はプリントマネージャ４０９０から要求を受けたらプリント画像処理設定をイメージマネージャ４１１０に依頼する。（このときたとえば最適サイズ用紙がなくなり、回転が必要になれば別途回転指示も依頼する。回転指示があった場合にはイメージマネージャ４１１０が画像回転２０１９を使って画像を回転する。）イメージマネージャ４１１０はプリンタ画像処理２０１６の設定を行い、シンクマネージャ４０８０を介してプリントマネージャ４０９０にプリント準備完了を伝える。プリントマネージャ４０９０はプリンタ２０１７に対して印刷指示を出す。プリント画像転送完了は図示しないハードウェアからの割り込み信号によってイメージマネージャ４１１０に伝わる。イメージマネージャ４１１０からのプリント完了を受けてシンクマネージャ４０８０はプリント完了をファイルリードマネージャ４０６０とプリントマネージャ４０９０に伝える。ファイルリードマネージャ４０６０は終了通知をジョブマネージャ４０４０に返す。プリントマネージャ４０９０はプリンタ部からの排紙完了を受け、ジョブマネージャ４０４０に対して終了通知を返す。ジョブマネージャ４０４０は共通インタフェース４０３０を介してコピーアプリケーション部４０２０へ終了通知を返す。コピーアプリケーション部４０２０はスキャン、プリントが終了したらジョブ終了をＵＩ制御部４０１０に通知する。
【００３１】
ＰＤＬデータ展開格納ジョブの場合は、ＰＤＬプリントを投入したホストＰＣからの要求がネットワークアプリケーション４１２０を経由してＰＤＬアプリケーション部４０２３に伝達される。ＰＤＬアプリケーションがＰＤＬデータ展開格納ジョブを共通インタフェース４０３０を介してジョブマネージャ４０４０に指示する。このときＰＤＬマネージャ４０７０とファイルストアマネージャ４１００がジョブマネージャ４０４０からの要求を受ける。画像のＲＩＰが終了した後の画像入力する部分に関しては前述のスキャンジョブと同様である。メモリ上の画像（文字／写真判定信号を含めて）をＨＤＤ２００４に格納する。画像の付随情報として図示しないＳＲＡＭにカラー／白黒情報、画像入力元としてＰＤＬ画像、色空間ＣＭＹＫもしくはＲＧＢも格納しておく。ＰＤＬ画像をＨＤＤ２００４に格納し終わった時点で、シンクマネージャ４０８０から格納完了通知を受け、それを共通インタフェース４０３０を介してＰＤＬアプリケーション部４０２３に通知する。ＰＤＬアプリケーション部４０２３はこの通知のあと、ネットワークアプリケーション４１２０にＨＤＤに格納完了を通知し、ＰＤＬプリントを投入したホストＰＣへこの情報が伝達される。また、ＰＤＬプリントジョブの場合にはＰＤＬマネージャ４０７０とプリントマネージャによって、メモリ上に展開された画像を印字する。
【００３２】
ＰＤＬ展開され格納された画像のプリントはＵＩで印刷指示された格納文書をボックスアプリケーション部４０２２に対してプリントジョブとして発行する。ボックスアプリケーション部４０２２は共通インタフェース４０３０を介してジョブマネージャ４０４０にプリントジョブを投入する。ローカルコピーとは異なり、スキャンマネージャ４０５０に代わってファイルリードマネージャ４０６０がジョブマネージャ４０４０からの要求を受ける。印刷指示された画像をＨＤＤからメモリに展開するための要求をシンクマネージャ４０８０を介して、イメージマネージャ４１１０に行う。この後の動作はリモートコピーのプリントジョブで説明した動作と同様のため、省略する。
【００３３】
（処理概要）
次に本発明による画像処理全体の概要を図７を用いて説明する。
【００３４】
図７においてまず、ステップ５００１およびステップ５００２において、オペレータにより操作部２００６を通じて、コピー待機画面から本発明の画像形成方法（自動レイアウト）の操作指示を行うと、次にステップ５００３にて、出力すべきイメージのサイズ選択を行い、ステップ５００４に進む。
【００３５】
ステップ５００４では、スキャナ２０１５を動作させ１枚の原稿をラスタ状に走査し、６００ＤＰＩ−８ビットの画像信号を得て、該画像信号をスキャナ画像処理２０１４にて前処理を施し、さらに画像変換部２０３０を通して、前述のパケットデータとして記憶装置（ＨＤＤ）２００４に１ページ分の画像データ分保存し、ステップ５００５に進む。
【００３６】
ステップ５００５では、ＣＰＵ２００１または、ネットワーク２００７を通じて接続されたマネジメントＰＣ１０１のＣＰＵにおいて、該格納された画像データからまず、文字／線画部分とハーフトーンの画像部分とに領域を分離し、文字部は、更に、段落で塊として纏まっているブロック毎に、或いは、線で構成された表、図形に分離し各々セグメント化する。一方ハーフトーンで表現される画像部分は、矩形に分離されたブロックの画像部分、背景部等、所謂ブロック毎に独立したオブジェクトに分割するブロックセレクション処理を行う（ブロックセレクション処理は後述する）。
【００３７】
次にステップ５００６において、本発明の自動レイアウト計算によって、ブロック毎に独立したオブジェクトを含む各領域と、これまでに読み取って同様の計算を行って合成した領域とを合成した領域が指定用紙に収まるか計算する。
【００３８】
次にステップ５００７において、今回読み取りした画像までを合成レイアウトしたプレビュー画面を表示する。ここで指定用紙に収まらない場合は、出力用紙サイズからどの程度欠けるかを表し、収まる場合は、どの程度スペースが残っているかオペレータに確認してもらう。
【００３９】
次にステップ５００８において、ステップ５００６の計算結果を基に、オペレータに領域オーバを警告するか判定する。オペレータに領域オーバの警告が必要ない場合は、ステップ５０１０に進み、次の原稿を続けて読み取るか否か問い合わせる。ここで続けて読み取らない場合は、ステップ５０１１に進み、これまでに読み取った画像の各オブジェクト領域を合成した画像を、出力用紙に合わせて余白を付け、定形サイズの画像を形成し、画像出力して処理を終了する。一方で、続けて読み取る場合は、ステップ５００４に戻る。
【００４０】
また、ステップ５００８において、オペレータに領域オーバの警告をする場合は、領域オーバである旨を表示し、ステップ５０１２に進む。ここでは、不要なオブジェクト領域の削除して画像形成するか、否か問い合わせる。ここでオブジェクト削除を選択した場合、ステップ５０１３に進み、プレビュー画像を表示し、複数のオブジェクト領域をオペレータが選択し、選択されたオブジェク領域を削除した結果の画像を作成するために、ステップ５００６に戻る。またオブジェクトの削除を行わない場合は、ステップ５０１４に進む。ここでは、最後に読み取った原稿を破棄し、これまでに読み取った画像を出力するか、指定用紙からはみ出しても出力するか、オペレータに選択を促す。最後に読み取った画像を破棄する場合は、ステップ５０１０に進み、他の原稿を読み取るか否かを問い合わせる。一方で、破棄しない場合、これまでに読み取った画像の各オブジェクト領域を合成した画像を、出力用紙に合わせて、トリミングを行い、定形サイズの画像を形成し、画像出力して処理を終了する。
【００４１】
（ブロックセレクション処理）
ブロックセレクション処理とは、図８の左に示す、ステップ５００４で読み取った一頁のイメージデータを、右に示す様に各オブジェクト毎の塊として認識し、該ブロック各々を文字／図画／写真／線／表等の属性に判定し、異なる属性を持つ領域に分割する処理である。
【００４２】
ブロックセレクション処理の実施例を以下に説明する。
【００４３】
まず、入力画像を白黒に二値化し、輪郭線追跡を行って黒画素輪郭で囲まれる画素の塊を抽出する。面積の大きい黒画素の塊については、内部にある白画素に対しても輪郭線追跡を行い白画素の塊を抽出、さらに一定面積以上の白画素の塊の内部からは再帰的に黒画素の塊を抽出する。
【００４４】
このようにして得られた黒画素の塊を、大きさおよび形状で分類し、異なる属性を持つ領域へ分類していく。たとえば、縦横比が１に近く、大きさが一定の範囲のものを文字相当の画素塊とし、さらに近接する文字が整列良くグループ化可能な部分を文字領域、扁平な画素塊を線領域、一定大きさ以上で、且つ四角系の白画素塊を整列よく内包する黒画素塊の占める範囲を表領域、不定形の画素塊が散在している領域を写真領域、それ以外の任意形状の画素塊を図画領域、などとする。
【００４５】
なお、下段にある、図は本発明の自動レイアウト処理により配置が変更された出力イメージである。後述するブロック毎のレイアウト処理（上詰め）に応じてブロック領域が並べられている。
【００４６】
ブロックセレクション処理で得られた各ブロックに対するブロック情報を図９に示す。
【００４７】
文字や表については、ＯＣＲ処理を行う。これらのブロック毎の情報は、上記自動レイアウト処理の他、本発明に記載外のベクトル化処理、或いは検索の為の情報として用いる。
【００４８】
（レイアウト計算処理）
図１０は、本発明の画像をレイアウトする際のレイアウトパラメータ一覧の説明である。ブロックセレクション処理により切り出された画像は、合成処理前にそれぞれ表中の属性が設定される。
【００４９】
本実施形においては、画像データは３２×３２画素を１タイルとしてタイル単位での画像のハンドリングを行う。従ってブロックセレクション処理で切り出された領域が、５０×５０画素であれば、１６づつのパディングを付けて、４タイル（６４画素×６４画素）の１領域データとして扱っている。１領域データのための属性がａ系であり、２領域以上のデータを結合させるための属性がｂ系となる。
【００５０】
ａ０００１〜ａ０００２のｉｍａｇｅＳｉｚｅＸ／同Ｙはパディングを含まない画像サイズ（前述の例では５０×５０）を示す。
【００５１】
また、ａ０００３〜ａ０００４のｍｅｍｏｒｙＩｍａｇｅＳｉｚｅＸ／同Ｙはパディングを含まない（前述の例では６４×６４）を示す。ａ０００５〜ａ０００６のｔｏｐＰａｄｄｉｎｇＸ／同Ｙは、先端・左端にパディングがある場合のパディングの画素数を示す。
【００５２】
ａ０００７〜ａ０００８のｉｍａｇｅＯｆｆｓｅｔＸ／同Ｙは有効画像の原点の位置を示す。ａ０００９のｏｒｉｅｎｔａｔｉｏｎは、画像の向きを示す。ａ００１０〜ａ００１１のｒｅｓｏｌｕｔｉｏｎＸ／同Ｙは領域の解像度を示す。ａ００１２〜ａ００１３のｍａｇｎｉｆｉｃａｔｉｏｎＸ／同Ｙは画像の変倍率を示す。１０００分率で示され、１００％のときに１０００となる。
【００５３】
ａ００１４のｆＶａｌｕｅはスキャン時のＦ値（濃度）を示す。ａ００１５のｃｏｌｏｒＭｏｄｅは、読み取り時のカラーモード（カラー／グレイ／二値）の区分を示す。ａ００１６のｉｍａｇｅＴｙｐｅは、読み取り時の原稿タイプ（文字・文字写真・写真）の区分を示す。ａ００１７のｃｏｌｏｒＳｐａｃｅはメモリに入る際の色空間を示す。ａ００１８〜ａ００１９のＰａｃｋｅｔＡｔｔｒｉｂは、タイル画像をパケットデータにする際の制御情報が含まれる。ａ００２２のｊｐｇｑｉｄ＿ｔはＪＰＥＧで圧縮する際の量子化テーブルのＩＤが設定される。ａ００２３〜ａ００２７のＡｅＭｏｄｅは読み取り時の下地除去用のパラメータが含まれる。ａ００２８〜ａ００２９のｒｅｖｅｒｓｅＶｉｄｅｏ／ｍｉｒｒｏｒは読み取り時のネガポジ反転情報および鏡像の指定が設定される。
【００５４】
本発明の実施例においては、オブジェクト領域画像は回転されず、拡大もされないため、パディングは主走査、副走査の後端に付き、ｔｏｐＰａｄｄｉｎｇ／ｉｍａｇｅＯｆｆｓｅｔともに０となり、ｒｅｓｏｌｕｔｉｏｎ／ｏｒｉｅｎｔａｔｉｏｎ／ｒｅｓｏｌｕｔｉｏｎ／ｍａｇｎｉｆｉｃａｔｉｏｎ／ｆＶａｌｕｅ／ｃｏｌｏｒＭｏｄｅ／ｉｍａｇｅＴｙｐｅ／ｃｏｌｏｒＳｐａｃｅ／ＰａｃｋｅｔＡｔｔｒｉｂ／ｊｐｇｑｉｄ＿ｔ／ＡｅＭｏｄｅ／ｒｅｖｅｒｓｅＶｉｄｅｏ／ｍｉｒｒｏｒなどの値はすべてデフォルト値かユーザ指定値となり全領域で同一値となる。
【００５５】
ｂ０００１のｉｓＩｍａｇｅＲｅｐｅａｔは同じ領域を繰り返すか否かを示す。ｂ０００２〜ｂ０００３のａｒｅａＣｏｕｎｔＸ／同Ｙはくっつけるエリア数を示す。ｂ０００４のｌａｙｏｕｔＰａｔｔｅｒｎは縮小レイアウトする際の並べ方を示す。ｂ０００５〜ｂ００１２までがオブジェクト領域毎の属性となる。ｂ０００５のａｌｌＴｉｌｅＮｕｍＸは領域の主走査タイル数を示す。ｂ０００６のｓｔａｒｔＴｉｌｅＸは出力画像（全サイズ）に対しての主走査はめ込みタイル開始位置を示す。ｂ０００７のｅｎｄＴｉｌｅＸは出力画像（全サイズ）に対しての主走査はめ込みタイル終了位置を示す。ｂ０００８のｓｒｃＳｔａｒｔＴｉｌｅＸは領域の主走査読み出し開始タイル数を示す。ｂ０００９のａｌｌＴｉｌｅＮｕｍＹは領域の副走査タイル数を示す。ｂ００１０のｓｔａｒｔＴｉｌｅＹは出力画像（全サイズ）に対しての副走査はめ込みタイル開始位置を示す。ｂ００１１のｅｎｄＴｉｌｅＹは出力画像（全サイズ）に対しての副走査はめ込みタイル終了位置を示す。ｂ００１２のｓｒｃＳｔａｒｔＴｉｌｅＹは領域の副走査読み出し開始タイル数を示す。
【００５６】
図１１は本発明の画像形成装置の左寄せレイアウト決定アルゴリズムである。
【００５７】
前述の操作フローに従って、ステップ５２０３にて、出力用紙サイズから、有効印字領域を算出し、有効印字領域に収まる最大のタイル数＝出力タイル数（Ｘｏ，Ｙｏ）を計算する。また、領域指定可能な矩形最大サイズを求める。初回に関しては、指定可能矩形領域＝有効印字領域となる。次にステップ５２０４、５２０５にて、前述のブロックセレクションによって得たブロック情報のうちの１領域を網羅する矩形タイル数（Ｘ１，Ｙ１）が計算される。
【００５８】
次にステップ５２０６にて、最初に指定された領域を含むタイルを原点に配置した場合のタイル数（Ｘ１，Ｙ１）算出する。次にステップ５２０７にて、出力タイル数（Ｘｏ，Ｙｏ）と（Ｘ１，Ｙ１）を比較し、出力タイル数内に収まっているか判定する。ここで収まっている場合は、ステップ５２１１へ進み、指定されたエリアを含むタイル領域について、タイル内の指定エリア外を白埋め（消去およびパディング）処理し、メモリ内に保持し、ステップ５２１２に進む。
【００５９】
一方で、出力タイル数に収まっていない場合は、ステップ５２０８にて再度同様の計算を行い、ステップ５２０９にて出力タイル数に収まっているか否か判定し、ステップ５２１０に進み出力領域範囲外である旨をオペレータに通知するための処理結果を保持し終了する。ステップ５２１２では、ブロック情報をすべて処理したか否か判定する。
【００６０】
ここで残ブロック情報無しの場合、すべて領域範囲内に収まった旨をオペレータに通知するための処理結果を保持し終了する。一方で残ブロック情報がある場合は、ステップ５２１３に進み、次の出力可能な出力限界タイル数（Ｘｍａｘ，Ｙｍａｘ）を計算する。Ｘｍａｘ，Ｙｍａｘは出力サイズＸｏ，ＹｏからＸ１，Ｙ１をそれぞれ減じたタイル数となる。またオペレータに対して示される残余白領域は（Ｘｏ，Ｙｍａｘ）で示される領域となる。その後、次に処理する残処理ブロックを決定するために、ステップ５２０４に戻る。
【００６１】
次に２番目以降に選択された領域をそれ以前のタイルと合成する計算について、３番目に選択された領域を合成する場合を例にとって説明する。ステップ５２０４およびステップ５２０５で、３番目に選択された領域を含むタイル数（Ｘ３，Ｙ３）を算出する。次にステップ５２０６にて、最初に選択された領域（Ｘ１，Ｙ１）と２番目に選択された領域（Ｘ２，Ｙ２）を含む矩形領域（Ｘｉ，Ｙｉ）の下に、３番目に選択された領域（Ｘ３，Ｙ３）を合成した場合の仮想の合成領域（Ｘｉ’，Ｙｉ’）を算出する。Ｘｉ’はＸｉとＸ３の大きい方であり、Ｙｉ’はＹｉとＹ３を足したものとする。
【００６２】
次にステップ５２０７にて、出力タイル数（Ｘｏ，Ｙｏ）および出力限界タイル数（Ｘｍａｘ，Ｙｍａｘ）と（Ｘｉ’，Ｙｉ’）を比較し、出力タイル数内に収まっているか判定する。Ｘｉ’がＸｏ以下で且つＹｉ’がＹｍａｘ以下であるか、または、Ｘｉ’がＸｍａｘ以下で且つＹｉ’がＹｏ以下である場合は、収まっていると判定する。
【００６３】
ここで収まっている場合は、Ｘｉ＝Ｘｉ’，Ｙｉ＝Ｙｉ’として設定し、ステップ５２１１へ進み、選択されたエリアを含むタイル領域（Ｘ３，Ｙ３）について、タイル内の指定エリア外を白埋め（消去およびパディング）処理し、メモリ内に保持し、ステップ５２１２に進む。一方で、出力タイル数に収まっていない場合は、ステップ５２０８にて、最初に選択された領域（Ｘ１，Ｙ１）と２番目に選択された領域（Ｘ２，Ｙ２）を含む矩形領域（Ｘｉ，Ｙｉ）の右に、３度目に選択された領域（Ｘ３，Ｙ３）を合成した場合の仮想の合成領域（Ｘｉ”，Ｙｉ”）を算出する。Ｘｉ”はＸｉとＸ３を足したものし、Ｙｉ”はＹｉとＹ３の大きい方とする。
【００６４】
次にステップ５２０９にて、出力タイル数（Ｘｏ，Ｙｏ）および出力限界タイル数（Ｘｍａｘ，Ｙｍａｘ）と（Ｘｉ”，Ｙｉ”）を比較し、出力タイル数内に収まっているか判定する。Ｘｉ”がＸｏ以下で且つＹｉ”がＹｍａｘ以下であるか、または、Ｘｉ”がＸｍａｘ以下で且つＹｉ”がＹｏ以下である場合は、収まっていると判定する。ここで収まっていると判定した場合は、Ｘｉ＝Ｘｉ”，Ｙｉ＝Ｙｉ”として設定し、ステップ５２１１へ進む。収まっていないと判定した場合は、ステップ５２１０に進み出力領域範囲外である旨をオペレータに通知するための処理結果を保持し終了する。
【００６５】
ステップ５２１２では、ブロック情報をすべて処理したか否か判定する。ここで残ブロック情報無しの場合、すべて領域範囲内に収まった旨をオペレータに通知するための処理結果を保持し終了する。一方で残ブロック情報がある場合は、ステップ５２１３に進み、次の出力可能な出力限界タイル数（Ｘｍａｘ，Ｙｍａｘ）を計算する。Ｘｍａｘ，Ｙｍａｘは出力サイズＸｏ，ＹｏからＸｉ，Ｙｉをそれぞれ減じたタイル数となる。次にＸｏ＊ＹｍａｘとＸｍａｘ＊Ｙｏのタイル数の多い方を、オペレータに対して残余白領域と示す情報となる。その後、次に処理する残処理ブロックを決定するために、ステップ５２０４に戻る。
【００６６】
このようにブロックセレクションで選択されたオブジェクト領域がすべて収まる左寄せレイアウトを計算し、対話的に出力イメージレイアウトを生成することができる。
【００６７】
図１２は本発明の画像形成装置の上寄せレイアウト決定アルゴリズムである。
【００６８】
基本的には、図１１と同様であり、上寄せレイアウト計算処理のみ説明する。２度目以降に選択された領域をそれ以前のタイルと合成する計算について、５度目に領域を選択された場合を例にとって説明する。ステップ５３０４およびステップ５３０５で、５度目に選択された領域を含むタイル数（Ｘ５，Ｙ５）を算出する。次にステップ５３０６にて、最初に選択された領域（Ｘ１，Ｙ１）から４度目に選択された領域（Ｘ４，Ｙ４）までをすべて含む矩形領域（Ｘｉ，Ｙｉ）の右に、５度目に選択された領域（Ｘ５，Ｙ５）を合成した場合の仮想の合成領域（Ｘｉ’，Ｙｉ’）を算出する。Ｘｉ’はＸｉとＸ５を足したものであり、Ｙｉ’はＹｉとＹ５の大きい方とする。次にステップ５３０７にて、出力タイル数（Ｘｏ，Ｙｏ）および出力限界タイル数（Ｘｍａｘ，Ｙｍａｘ）と（Ｘｉ’，Ｙｉ’）を比較し、出力タイル数内に収まっているか判定する。Ｘｉ’がＸｏ以下で且つＹｉ’がＹｍａｘ以下であるか、または、Ｘｉ’がＸｍａｘ以下で且つＹｉ’がＹｏ以下である場合は、収まっていると判定する。
【００６９】
ここで収まっている場合は、Ｘｉ＝Ｘｉ’，Ｙｉ＝Ｙｉ’として設定し、ステップ５３１１へ進み、指定されたエリアを含むタイル領域について、タイル内の指定エリア外を白埋め（消去およびパディング）処理し、メモリ内に保持し、ステップ５３１２に進む。一方で、出力タイル数に収まっていない場合は、ステップ５３０８にて、最初に選択された領域（Ｘ１，Ｙ１）から４度目に選択された領域（Ｘ４，Ｙ４）までをすべて含む矩形領域（Ｘｉ，Ｙｉ）の下に、５度目に選択された領域（Ｘ５，Ｙ５）を合成した場合の仮想の合成領域（Ｘｉ”，Ｙｉ”）を算出する。Ｘｉ”はＸｉとＸ５の大きい方とし、Ｙｉ”はＹｉとＹ５を足したものとする。
【００７０】
次にステップ５３０９にて、出力タイル数（Ｘｏ，Ｙｏ）および出力限界タイル数（Ｘｍａｘ，Ｙｍａｘ）と（Ｘｉ”，Ｙｉ”）を比較し、出力タイル数内に収まっているか判定する。Ｘｉ”がＸｏ以下で且つＹｉ”がＹｍａｘ以下であるか、または、Ｘｉ”がＸｍａｘ以下で且つＹｉ”がＹｏ以下である場合は、収まっていると判定する。ここで収まっていると判定した場合は、ステップ５３１１へ進む。収まっていないと判定した場合は、ステップ５３１０にて、出力領域範囲外である旨をオペレータに通知するための処理結果を保持し終了する。
【００７１】
このようにブロックセレクションで選択されたオブジェクト領域がすべて収まる上寄せレイアウトを計算し、対話的に出力イメージレイアウトを生成することができる。
【００７２】
図１３はオペレータが左寄せレイアウトを選択し、２領域が選択された場合の例である。
【００７３】
前述の操作フローに従って説明すると、６００６はオペレータが選択した用紙サイズであり、６００５はオペレータが選択した用紙サイズにプリンタが出力可能な領域である。また６００４は有効印字領域に出力するためのタイル群Ｘｏ＝１６  Ｙｏ＝２１である。
【００７４】
次に６００１はブロックセレクションにより最初に選択された１オブジェクト領域を網羅するためのタイル群で、サイズがＸ１＝３  Ｙ１＝４タイルとなっている。また、６００２の右斜線の横方向タイル数は二度目に選択された領域を右側に付ける場合の猶予タイル数であり、Ｘｍａｘ＝１３で示される。６００３の左斜線の縦方向タイル数は二度目に選択された領域を下側に付ける場合の猶予タイル数であり、Ｙｍａｘ＝１７となる。６００４の縦線で示される領域はＸ方向に対してもＹ方向に対しても選択可能な領域である。この場合、次の最大選択可能領域としては、Ｘｍａｘ＝１３  Ｙｏ＝２１（２７３ｔｉｌｅｓ）に対して、Ｘｏ＝１６  Ｙｍａｘ＝１７（２７２ｔｉｌｅｓ）であるため、前者の領域がオペレータに提示される予定領域となる。
【００７５】
次に６００８はブロックセレクションにより２度目に選択された領域を含むタイル群で、サイズがＸ２＝１４  Ｙ２＝５タイルとなっている。これは下側に合成され、合成後のサイズはＸｉ＝１４  Ｙｉ＝１２となる。また、６００７は合成された際に余白となった領域である。
【００７６】
仮に３度目に選択された領域を付ける場合の猶予タイル数は、Ｘｍａｘ＝２  Ｙｍａｘ＝１２となりＸｍａｘ＝２  Ｙｏ＝２１（４２ｔｉｌｅｓ）に対して、Ｘｏ＝１６  Ｙｍａｘ＝１２（１９２ｔｉｌｅｓ）であるため、後者の領域がオペレータに提示される予定領域となる。
【００７７】
図１４はオペレータが上寄せレイアウトを選択し、２領域が選択された場合の例である。
【００７８】
６１０６はオペレータが選択した用紙サイズであり、６１０５はオペレータが選択した用紙サイズにプリンタが出力可能な領域である。また６１０４は有効印字領域に出力するためのタイル群Ｘｏ＝１６  Ｙｏ＝２１である。
【００７９】
次に６１０１はブロックセレクションにより最初に選択された１オブジェクト領域を網羅するためのタイル群で、サイズがＸ１＝３  Ｙ１＝４タイルとなっている。また、６１０２の右斜線の横方向タイル数は二度目に選択された領域を右側に付ける場合の猶予タイル数であり、Ｘｍａｘ＝１３で示される。６１０３の左斜線の縦方向タイル数は二度目に選択された領域を下側に付ける場合の猶予タイル数であり、Ｙｍａｘ＝１７となる。６１０４の縦線で示される領域はＸ方向に対してもＹ方向に対しても選択可能な領域である。この場合、次の最大選択可能領域としては、Ｘｍａｘ＝１３  Ｙｏ＝２１（２７３ｔｉｌｅｓ）に対して、Ｘｏ＝１６  Ｙｍａｘ＝１７（２７２ｔｉｌｅｓ）であるため、前者の領域がオペレータに提示される予定領域となる。
【００８０】
次に６１０８はブロックセレクションにより２度目に選択された領域を含むタイル群で、サイズがＸ２＝８  Ｙ２＝５タイルとなっている。これは右側に合成され、合成後のサイズはＸｉ＝１１  Ｙｉ＝５となる。また、６１０７は合成された際に余白となった領域である。
【００８１】
仮に３度目に選択された領域を付ける場合の猶予タイル数は、Ｘｍａｘ＝５  Ｙｍａｘ＝１６となりＸｍａｘ＝５  Ｙｏ＝２１（１０５ｔｉｌｅｓ）に対して、Ｘｏ＝１６  Ｙｍａｘ＝１６（２５６ｔｉｌｅｓ）であるため、後者の領域がオペレータに提示される予定領域となる。
【図面の簡単な説明】
【００８２】
【図１】システム構成図
【図２】ＭＦＰ構成図
【図３】タイルおよびパケット説明図
【図４】スキャナ画像処理の説明図
【図５】画像形成装置の操作部外観図
【図６】本発明のソフト構成を示す構成図
【図７】本発明の画像形成装置の処理フロー
【図８】ブロック選択処理の概念図
【図９】ブロック情報のパラメータ一覧を示す図
【図１０】本発明の画像決定時パラメータ一覧を示す図
【図１１】本発明の画像形成装置のレイアウト決定アルゴリズムの一例を示す図
【図１２】本発明の画像形成装置のレイアウト決定アルゴリズムの一例を示す図
【図１３】本発明の画像形成装置の自動レイアウト出力例を示す図
【図１４】本発明の画像形成装置の自動レイアウト出力例を示す図
【符号の説明】
【００８３】
１００  ＭＦＰ
１０１  マネジメントＰＣ
１０２  クライアントＰＣ
１０３  プロキシサーバ
１０４  ネットワーク
１０５  データベース
１０６  文書管理サーバ
【図１】
2006128763.tif 000003
【図２】
2006128763.tif 000004
【図３】
2006128763.tif 000005
【図４】
2006128763.tif 000006
【図５】
2006128763.tif 000007
【図６】
2006128763.tif 000008
【図７】
2006128763.tif 000009
【図８】
2006128763.tif 000010
【図９】
2006128763.tif 000011
【図１０】
2006128763.tif 000012
【図１１】
2006128763.tif 000013
【図１２】
2006128763.tif 000014
【図１３】
2006128763.tif 000015
【図１４】
2006128763.tif 000016