"文書データに含まれる描画オブジェクトを再配置する装置であり、ページ内の非編集領域を取得する手段非編集領域に従い編集オブジェクトを決定する手段ページの余白を詰めて再レイアウトを行う手段を有することを特徴とするレイアウト装置。非編集領域の境界部分にオブジェクトが存在する場合、前記オブジェクトが編集対象であるかどうかを判断する手段を有することを特徴とする請求項1に記載のレイアウト装置。しかしながら、先行技術では保護する対象が文書であり、文字オブジェクトしか保護の対象にならなかった。また、指定方法も文書の開始部分と終了部分を指定するという方式のため、特定の領域を一挙に保護対象とするのには不向きであった。文書データに含まれる描画オブジェクトを再配置する装置であり、ページ内の非編集領域を取得する手段非編集領域に従い編集オブジェクトを決定する手段ページの余白を詰めて再レイアウトを行う手段を有することを特徴とするレイアウト装置。本発明によれば、ドキュメント内の対象部分を領域として指定することができる。これによって、ユーザーの意図した部分を編集対象から除外した状態で、文書を再編集することができる。以下、本発明を実施するための最良の形態について図面を用いて説明する。[実施例1]図1はページレイアウトを実行するシステムを図示している。コンピュータモジュール101はキーボード132やマウス133のようなポインティングデバイスなどの入力装置をつなぎ、ディスプレイ装置144や状況に応じてはローカルプリンタ145を含む出力装置を連結する。入力/出力インタフェイス138はコンピュータモジュール101をネットワーク接続107から接続してシステムの他のコンピュータ装置につなげることができる。そのネットワーク接続107の典型はローカルエリアネットワークLAN、あるいはワイドエリアネットワークWANである。コンピュータモジュール101は典型的に少なくとも1つのプロセッサーユニット135、例えば半導体のランダムアクセスメモリRAMやリードオンリーメモリROMから構成されるメモリユニット136、ビデオインタフェイス137を含むINPUT/OUTPUTI/Oインタフェイス、キーボード132やマウス133のためのI/Oインタフェイス143を含んでいる。記憶装置139は典型的にハードディスクドライブ140やフロッピー登録商標ディスクドライブ141を含んでいる。図には示されていないが磁気テープドライブなどもまた使用される可能性がある。CD-ROMドライブ142は不揮発性のデータソースとして提供される。コンピュータモジュール101はLINUXやマイクロソフトウィンドウズ登録商標のようなオペレーションシステム、あるいは相互接続バス134を介して通信を行うコンピュータモジュール101のコンポーネント135から143を利用する。本発明のフローチャートで示された手順を実現するソフトウェアは例えば上記に記述されるような記憶装置を含むコンピュータの可読媒体に格納される。ソフトウェアはコンピュータの可読媒体からコンピュータにロードされ、コンピュータ101のCPU135によって実行される。そのコンピュータで利用者がコンピュータプログラム製品を使用することにより、ドキュメントのレイアウト編集に有利な装置として作動することができる。図2は、本実施例のソフトウェアが、オブジェクトの情報を管理する方法の例を示したものである。各オブジェクトにID203とオブジェクトの種類204、オブジェクトの位置を示す座標205と206、オブジェクトの有効無効フラグ207、オブジェクト固有情報208がある。そのオブジェクトがリスト構造になって、オブジェクトリスト201に格納されている。オブジェクトの有効無効フラグ207とは、ドキュメント内に存在しているオブジェクトが編集可能かを表すフラグである。また、オブジェクト固有情報とは、図形オブジェクトであれば線の太さや、線種といった情報、文字列であれば文字の書体やサイズといった情報であり、オブジェクト毎に固有の情報が格納されている。特にオブジェクト種類204がグループとなっている場合、オブジェクト固有情報208内にグループ化されたオブジェクトの情報がオブジェクトリスト202としてメモリ136に登録される。図3は、オブジェクトリスト201に格納される情報の例である。図のような座標に位置する図形オブジェクトは、図に示す内容によって、メモリ136上のリストに登録される。本発明で扱う文書のデータ構造の一例として、PDFフォーマット文書について説明する。図4は、PDFフォーマットの文書から、図3と同様の図形オブジェクトが読み込まれ、同じオブジェクト情報として取り出される例を示した図である。PDFフォーマットでは、始点20,34から、順次81,34、81,65、20,65、20,34を結ぶ図形として表記されたものが、左上座標20,34、右下座標81,65の長方形としてオブジェクト生成される。図5は本発明の領域指定間締めのフローチャートである。ここでいう間締めとは、文書内の行間等の余白を詰める操作を指し、間締めを実行することで文書の総ページ数を削減することができる技術のことを指す。また、図5の各フローの詳細は後述する。S501では、図7のページ情報のリストを参照し、間締めの対象となるページ内に非編集領域が設定されているかどうかを判定する。非編集領域が設定されている場合はページ内の非編集オブジェクトの抽出を行いS502、設定されていない場合は通常の間締めを行う。ここで非編集オブジェクトの抽出を行った際に、非編集対象のオブジェクトのリスト714を参照し、非編集対象オブジェクトを編集の対象から除外する。S503では、間締めの対象となるオブジェクトのブロック化を行う。S504では間締め処理を行い余白の削減を行う。図6は、文書内の各部位を説明するための図である。まず、間締め処理において扱うブロックについて説明する。間締め処理では原則的に2つ以上のオブジェクトをグループ化などの処理でひとまとめにすることをブロック化と言う。また、ブロック化されたオブジェクト郡603~608のことをブロックと呼ぶ。この際に対象となるオブジェクトとは、文字や画像を始めとするあらゆるオブジェクトである。ブロックとは内部的には、通常のオブジェクトと同じであり、図2のオブジェクトの固有情報208に内包するオブジェクトのリストを保持している。なお、1つのオブジェクトからなるブロックや内部にオブジェクトを保持しないブロックも構造上可能であり、今回はそれらもブロックとして扱う。さらに本発明では、ページ内に領域609、610が設定されており、これを非編集領域と呼ぶ。非編集領域は、例えばユーザがマウス操作でページ内の所定領域を囲うなどして指定する。本発明では、この非編集領域を元にオブジェクトが編集の対象となるかどうかの設定を行う。また、非編集領域は複数指定することも可能であり、602の例では609、610を非編集領域として設定している。ここでは、まず領域内に入っている603、607、608のオブジェクトが非編集オブジェクトとされる。図7はページ内の非編集領域内のオブジェクトのデータの持ち方を説明する図である。まずページ701の内部には非編集領域702、703が設定されており、ブロック704、708、709が非編集オブジェクト、ブロック705~707が編集対象のオブジェクトとして存在している。このとき、ページ内の情報はリストとして管理されており、711のページ番号といった情報をはじめ、ページ固有の情報が保存されている。特に、ページ内オブジェクトのリスト713からはページ内のブロックのリストを参照することができる。ここでのオブジェクトIDとは、ブロックとされたオブジェクトが内部的に保持している値であり、図2に保存されているオブジェクトID203のことを指す。このIDによってブロックの座標やブロックが有効か無効かといった情報を参照することが可能となる。また、712はページ内に存在している非編集領域の数を示している。714は非編集領域のリストであり、ここにページ内の全非編集領域の情報がリストとして保存されている。ここでの情報とは各領域が有効か無効かを示すフラグ715と領域の位置情報を表す領域座標716のことである。図8は図7の非編集領域に対する設定行うユーザーインターフェースである。この設定は非編集領域ごと、すなわち702、703それぞれに対して行われ、各領域を選択した状態でメニューからインターフェースの呼び出しを行う。801では設定されている非編集領域を有効にするかどうかの設定を行う。ここでチェックがされれば、非編集領域内のオブジェクトが編集対象から外れ、非編集領域に対するオブジェクトの配置移動などの操作も原則不可となる。802のチェックがされた場合、非編集領域とその内部に存在しているオブジェクトが編集時に削除される。これらが適用される操作については後述する。図9は非編集オブジェクト設定の処理を表すフローである。このフローは図5で呼び出される以外にも非編集領域の状態が変化したとき、例えば図8のダイアログでOKが押下されたときや、新しくページを読み込んだタイミングでも呼び出される。S901では図7のページ情報のリストから間締めの対象となっているページ内部に存在する非編集領域を取得する。S902では、ページ内の非編集領域の設定を行う。複数存在する場合は非編集領域ごとに区切り、上から順にリスト714に加える。次に、ページ内のオブジェクトを随時読み出していき、編集対象のオブジェクトか非編集対象のオブジェクトかを分ける処理を行う。S903では全オブジェクトを処理したかどうかの判定を行い、終了次第次の処理に移る。S904では図2のリスト201を辿り、次のオブジェクトを取得する。S905では、取得したオブジェクトが非編集領域に存在するかを判定し、非編集領域内に存在する場合は、S906の判断に移る。S906では図8の802の項目である非編集領域を削除する指定が入っているかどうかを判定し、入っている場合はオブジェクトの削除を行うS907。指定が無かった場合はオブジェクトを非編集対象オブジェクトとし、図2のフラグ207を無効に設定するS908。S909~S912ではページ内の非編集領域削除の指定が入っている領域の削除を行う。まず、S909では図7の非編集領域のリスト714を参照し、ページ内の次の編集領域を参照する。S910では図8の非編集領域を削除する指定802が入っているかどうかを判定する。削除指定が入っている場合は非編集領域の削除し、図7のリスト714から対象部分を取り除くS911。S912ではページ内の全非編集領域を処理したかどうかを判定し、未処理の領域がある場合は処理を継続する。図10はブロック化の処理の流れを表すフローチャートである。このとき、図11を例として説明する。まず、S1001でページ内に未処理のオブジェクトが存在かどうか判断し、存在する場合は未処理の中で先頭にあるオブジェクトの読み込みを行うS1002。S1003では読み込んだオブジェクトが、既にページに読み込まれているオブジェクトとY軸上で重なっているかを判断する。例えば、読み込まれたのがオブジェクト1102の場合、既にページに読み込まれているオブジェクト1101と離れているため、そのままブロックとしてページ上に配置されるS1005。次に読み込まれたのがオブジェクト1105の場合は、オブジェクト1103とY軸上で重なるため、重なったオブジェクトをブロック1106としてまとめるS1004。ページ上のオブジェクト1103がブロックであった場合は、一旦ブロック化を解除してからまとめ直す。また、読み込まれたオブジェクト1105がページ上の複数のオブジェクト、例えば1103、1104の両方と重なっていた場合、重なった全てのオブジェクトをブロック化する。全てのオブジェクトを処理し終えたら、ページに配置されたオブジェクト間の全余白を走査するS1006。走査した値のうち、既定の閾値を以下の余白を抽出するS1007。S1008では、抽出された閾値以下のブロック間余白を持つブロック同士の再ブロック化を行う。図12はページ間締めを示すフローチャートである。このとき図13を例として説明する。ページ間締めとは、オブジェクトの移動元となるオブジェクト移動元ページ1302とオブジェクトの移動先となるオブジェクト移動先ページ1301の2ページで行う。この先単に移動元ページ、移動先ページといった場合はこれらのことを指す。まず、移動先ページ1301にブロックが移動させられるか算出するために、移動先ページ内の余白を取得する。ここでの余白とはブロック間のギャップ、図6のブロック604の最下部とブロック605の最上部の間の間隔のことを指す。特に、最上部のブロック603とページ上端までの間隔や最下部のブロック608とページ下端までの間隔のことも余白として扱う。S1201でページ中に非編集領域が存在するかを判断する。ここの非編集領域とは、図8の801の項目で有効とされた非編集領域のことを指す。非編集領域が存在しない、あるいは無効となっている場合は、単に移動先ページ1301の全てのブロック1303~1311を取得し、取得したブロック間の余白の検出を行うS1202。非編集領域1303、1304が有効になっている場合は、移動先ページ1301の非編集領域内ブロック1307、1311を除く全てのブロック1308~1310を取得し、取得したブロック間の余白の検出を行う。これによって、非編集領域が設定されたドキュメントについても、編集部分の余白を検出することが可能となる。次に、検出した全ての余白からそれぞれ予め定めておいたブロック間余白の最小値を引いていき余剰した余白の高さを求める。例えば、非編集領域が有効な場合は有効なブロック1308~1310を用いて余白の計算を行う。このとき、ページ上下の余白は、ページ上部の領域1303と有効なブロック中最上部のブロック1308の間の余白、ページ下部の領域1304と有効なブロック中最下部のブロック1310の間の余白と考え計算を行う。求めた各余白からそれぞれ必要最低限の余白を差し引いたものの合計が余剰した余白となる。なお、非編集領域が無効となっている場合は全ブロック1307~1311の間の余白とページ上下の余白から必要最低限の余白をそれぞれ引いたものの合計が余剰した余白の高さとなる。ここで、必要最低限の余白とは、ユーザーによって予め設定された値である。求めた余剰余白に移動元ページ1302内で有効な最上部のブロック1313の高さが余剰余白よりも小さく、移動先ページに収まるかを判定するS1204。非編集領域が無効となっている場合は、ブロック1312を有効な最上部のブロックとして扱う。収まらない場合は間締め処理を終了し、収まる場合は移動元ページ1302内で有効な最上部のブロック1313が移動出来るように移動先ページ1301の有効なブロック1308~1310間の余白を詰めるS1205。ブロックを詰めてできた余白部分に、移動元ページ1302の有効なブロックのうち最上部のブロック1313を移動させるS1206。S1207では、ブロック1313が移動し、できた余白をうめるため、オブジェクト移動元ページ1302のブロック1314、1315をページ上部に移動させる。非編集領域が無効となっている場合には、ブロック1312が移動先ページに移動し、その余白を埋めるため、その以下のブロック1313~1316を移動させる。[実施例2]実施例1では、非編集領域内に入っているオブジェクトのみを非編集対象としたが、図14のようにページ全体が枠線で囲まれている場合はページを横に横断する余白が存在しないためブロック分割することができず、間締めを行うことができない。このとき、領域に触れた枠線1405、1406を非編集オブジェクトとして扱うことで、その内部のオブジェクトのみでブロック化を行い、ブロック1407、1408、1409を対象としてページ間締めを行う。この際、枠線1405、1406を無効とする以外の処理に関しては図5の領域指定間締めと同じ操作を行う。図15は非編集オブジェクト境界部分判定のフローチャートである。この処理を行うことで非編集領域に触れている枠線1405、1406を無効なオブジェクトとして登録する。また、この処理は図9の非編集オブジェクト設定のステップS905でNoに分岐した後に入る。S1501では現在選択されている非編集領域にオブジェクト接触していないかを判断する。ここで、例えば非編集領域には領域1401が設定されており、枠線オブジェクト1405が選択中であるものとする。このとき、オブジェクトを囲む矩形の上端の座標が非編集領域の下端の座標よりも下でなく、矩形の下端の座標が非編集領域の上端の座標よりも上でない場合には対象オブジェクトが非編集領域に触れているものとする。触れている場合は図7の非編集対象オブジェクトのリスト714の一覧に加えるS1502。触れたオブジェクトがブロックであった場合は、一度ブロック化を解除し、解除したオブジェクトごとに編集対象非編集対象を分ける処理を行った上で、それぞれを再度ブロック化する。なお、この実施例では領域に接触したオブジェクトを一律で非編集としたが、実施するケースに応じて、触れている領域の設定に従う、触れている領域と逆の設定とするなどしても良い。S1503では図7の非編集領域のリスト713を参照し、ページ内の次の非編集領域1402を取得し、他の編集領域に対しても同様に判定を行う。これはオブジェクト1405が大きく、複数の非編集領域にかかる場合には、接触している非編集領域全てから呼び出せる必要があるためである。この処理を行うことでページ全体にかかるオブジェクトを編集対象から除外することができる。結果、枠線が付いたドキュメントに関しても間締め処理を行うことが可能となる。"