(57)【要約】【課題】  電子ドキュメントに対して、ページ属性として描画を付与するアノテーション機能が設定されたページ上の描画オブジェクトを移動・複製処理を行った際に描画オブジェクトの移動処理が適切に行えず、無駄なページが残ってしまったり、アノテーションの可読性が低下してしまうこと。【解決手段】  編集処理の対象となっている描画オブジェクトの領域とページ属性として付与するアノテーションの種類、サイズに応じて移動方法を変更する。さらに、移動方法の設定も可能とすることで、ユーザーの意図する表示・印字結果を実現する。【選択図】  図２６
2012089056.tif 000002
【特許請求の範囲】
【請求項１】
データ処理装置による文書データの編集が可能な文書編集システムにおいて、
前記文書データの各ページに対して描画することが可能なページ属性を設定するページ属性設定手段と、文書データを構成するページ内のオブジェクト情報を抽出するオブジェクト抽出手段を持ち、
前記「オブジェクト」の編集処理において、
前記ページ属性設定手段によって設定した編集元のページ属性を取得するページ属性取得手段と、
前記ページ属性設定手段によって設定した編集元のページ属性の移動情報を取得する移動情報取得手段と、
編集先の移動先領域を取得する移動先領域手段と、
前記ページ属性取得手段において取得した編集元のページ属性と前期移動情報取得手段において取得した移動情報を元に、ページ属性情報をどのように移動させるかを判断するページ属性移動方法決定手段と、を有し、
前記ページ属性移動方法決定手段により決定された移動方法に従ってページ属性情報を配置することを特徴とする文書編集システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書編集システムのページ・オブジェクト編集において、付加した描画属性に不整合が起きないようにオブジェクト編集を可能にする方法に関する。
【背景技術】
【０００２】
文書編集システムにおいて、編集対象のドキュメントを構成するページに対して「社外秘」「コピー禁止」などの文字列や四角形、楕円といった図形などのアノテーションオブジェクトをページ属性として付加する技術が知られている。一方、同じ文書編集システムにおいて、編集対象のドキュメントを構成するページ内の描画オブジェクト（例：文字、文字列、イメージ）の情報を抽出して、各種編集（例：移動、削除、複製）を行う技術が知られている。前述した２つの技術は、ユーザーにとって一連のワークフローで使用できることが望ましく、１つの文書編集システム内で実現されることが一般的である。
【０００３】
しかしながら、ページ属性とページ内の描画オブジェクトは処理システムでは別レイヤで管理されることになるため、描画オブジェクトの編集はページ属性と連動しないのが一般的である。そのため、描画オブジェクトの編集内容によっては、設定したページ属性がユーザーの意図しない結果となってしまう可能性がある（例：「社外秘」のページ属性を追加したが、社外秘対象となっていた描画オブジェクトが削除された場合）。この課題を解決するために、描画オブジェクトのキーワード（例：“機密”などの文字列）と、ページ属性を関連付けて情報を管理して、キーワードが存在するページのみに対応するページ属性を付加する技術が存在する。（たとえば、特許文献１参照）
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−２６０１３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、描画オブジェクト（キーワード含）の移動に合わせて常にアノテーションオブジェクトが移動するため、移動先の領域に不足により移動が不可になってしまう、もしくは、移動領域に合わせてアノテーションオブジェクトが縮小されてしまうといった課題が存在する。図２９は本課題を図示したものである。２９０１はページを示しており、本例では編集前は３ページのデータとなっている。２９０２は描画オブジェクトである。２９０３はページ上に存在する余白を示している。２９０４はアノテーション（ウォーターマーク）を示している。２９０５は描画オブジェクトとアノテーションを合成したオブジェクトを示している。２９０６は２９０５が合成により大きくなりページ間での移動ができず、編集元ページに残ってしまった状態を示している。２９０７はアノテーションを編集先の移動領域に合わせて縮小したオブジェクトを示している。２９０８は２９０７を編集先のページに移動させた状態を示している。縮小により本来、可読性を高くする目的があったアノテーションの可読性が低くなってしまうことがある。
【課題を解決するための手段】
【０００６】
データ処理装置による文書データの編集が可能な文書編集システムにおいて、
前記文書データの各ページに対して描画することが可能なページ属性を設定するページ属性設定手段（図１５，１６）と、文書データを構成するページ内のオブジェクト情報を抽出するオブジェクト抽出手段を持ち、
前記「オブジェクト」の編集処理において、
前記ページ属性設定手段によって設定した編集元のページ属性を取得するページ属性取得手段と、
前記ページ属性設定手段によって設定した編集元のページ属性の移動情報を取得する移動情報取得手段と、
編集先の移動先領域を取得する移動先領域手段と、
前記ページ属性取得手段において取得した編集元のページ属性と前期移動情報取得手段において取得した移動情報を元に、ページ属性情報をどのように移動させるかを判断するページ属性移動方法決定手段と、を有し、
前記ページ属性移動方法決定手段により決定された移動方法に従ってページ属性情報を配置することを特徴とする文書編集システム。
【発明の効果】
【０００７】
本発明を適用することで描画オブジェクトの編集について、ページ属性の移動方法をオブジェクトの種類、サイズ、移動量及びユーザーによる設定値により決定し、移動を行うこととなる。これにより、編集後もユーザーの意図した位置にアノテーションオブジェクトを表示することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施形態に係る文書処理システムを構成するＰＣのハードウェア構成図
【図２】本発明の実施形態に係る文書処理システムを構成する、ＰＣのソフトウェア構成図
【図３】本発明の実施形態に係る文書処理システムにおける、原稿データのデータ構造
【図４】本発明の実施形態に係る文書処理システムにおける、「ブック」のデータ構造
【図５】本発明の実施形態に係る文書処理システムにおける、「章」のデータ構造
【図６】本発明の実施形態に係る文書処理システムにおける、「ページ」のデータ構造
【図７】本発明の実施形態に係る文書処理システムにおける、「ウォーターマーク（スタンプ）」のデータ構造
【図８】本発明の実施形態に係る文書処理システムにおける、原稿データ内の「オブジェクト」のデータ構造
【図９】本発明の実施形態に係る文書処理システムにおける、原稿データ内の「オブジェクト」の情報例
【図１０】本発明の実施形態に係る文書処理システムにおける、原稿データの内部フォーマットからのデータ読み出し例
【図１１】本発明の実施形態に係る文書処理システムにおける、オブジェクトのブロック化処理のフローチャート
【図１２】本発明の実施形態に係る文書処理システムにおける、オブジェクト間の距離の説明図
【図１３】本発明の実施形態に係る文書処理システムにおける、オブジェクトのブロック化の例
【図１４】本発明の実施形態に係る文書処理システムにおける、ＧＵＩ部２０１の図例
【図１５】本発明の実施形態に係る文書処理システムにおける、ウォーターマーク定義ダイアログの図例
【図１６】本発明の実施形態に係る文書処理システムにおける、ウォーターマーク指定ダイアログの図例
【図１７】本発明の実施形態に係る文書処理システムにおける、ウォーターマークが設定されている図例
【図１８】本発明の実施形態に係る文書処理システムにおける、オブジェクト編集のフローチャート
【図１９】本発明の実施形態に係る文書処理システムにおける、ページ間でのオブジェクト編集のＧＵＩ例
【図２０】本発明の実施形態に係る文書処理システムにおける、アノテーション移動情報のデータ構造
【図２１】本発明の実施形態に係る文書処理システムにおける、アノテーション移動情報の設定を行うためのダイアログの図例
【図２２】本発明の実施形態に係る文書処理システムにおける、「ウォーターマーク（コメント・注釈）」のデータ構造
【図２３】本発明の実施形態に係る文書処理システムにおける、編集対象オブジェクトとウォーターマークの重なりを説明する図例
【図２４】発明の実施形態に係る文書処理システムにおける、編集対象オブジェクトを複数選択した際の外接矩形を説明する図例
【図２５】本発明の実施形態に係る文書処理システムにおける、アノテーションをページ内で移動させた結果の図例
【図２６】本発明の実施形態に係る文書処理システムにおける、アノテーションを編集先の移動領域に合わせてページ内、ページ間で移動させた結果の図例
【図２７】本発明の実施形態に係る文書処理システムにおける、編集先の移動領域とアノテーションの縮小処理を説明する図例
【図２８】本発明の実施形態に係る文書処理システムにおける、アノテーションを編集先の移動領域に合わせて縮小し、ページ間で移動させた結果の図例
【図２９】本発明の実施形態に係る文書処理システムにおける、課題を説明する図例
【発明を実施するための形態】
【０００９】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１０】
［実施例１］
［システム構成］
本実施例では、本実施形態に係る文書編集システムの全ての機能を一般的な情報処理装置（ＰＣ）によって実現する。
【００１１】
［ハードウェア構成］
図１に、本発明の実施形態に係る文書編集システムを構成するＰＣのハードウェア構成図を示す。図１に示されるハードウェア構成は一般的な情報処理装置のハードウェア構成図に相当し、本実施形態のＰＣ１１０には一般的な情報処理装置のハードウェア構成を適用できる。
【００１２】
図１において、ＣＰＵ１００は、ＲＯＭ１０２のプログラム用ＲＯＭに記憶された、或いはハードディスク１０９からＲＡＭ１０１にロードされたオペレーティングシステム（ＯＳ）やアプリケーション等のプログラムを実行する。後述する各フローチャートの処理はＣＰＵ１００がプログラムを実行することにより実現する。ＲＡＭ１０１は、ＣＰＵ１００の主メモリ、ワークエリア等として機能する。キーボードコントローラ１０３は、キーボード１０８やマウスなど、図示しないポインティングデバイスからの入力を制御する。ディスプレイコントローラ１０４は、各種ディスプレイ１０７の表示を制御する。ディスクコントローラ１０５は、各種データを記憶するハードディスク（ＨＤ）１０９やフロッピー（登録商標）ディスク（ＦＤ）等におけるデータアクセスを制御する。ＮＣ１０６はネットワークに接続されて、ネットワークに接続された他の機器との通信制御処理を実行する。
【００１３】
［ソフトウェア構成］
図２に、本発明の実施形態に係る文書編集システムを構成する、ＰＣのソフトウェア構成図を示す。本実施形態に係る文書編集システム２００は、ハードウェア構成で説明したように、全ての機能をＰＣ１１０上で実行されるプログラムによって実現される。
【００１４】
ファイル管理システム２００は、ＰＣ１１０のディスプレイ１０７上に表示され、キーボード／マウスなどの入力デバイスからの入力を受け付けるグラフィックユーザーインターフェース（ＧＵＩ）部２０１、
ユーザーのキーボード１０８の操作を、ＧＵＩ２０１を通して検知して、操作に応じて文書の編集、ファイルの保存などを指示する、入力制御部２０２、
入力制御部２０２の編集指示に従い、文書編集システムで編集中の文書データに対して各種編集処理を制御する文書編集部２０３、
入力制御部２０２の編集指示に従い、ファイルシステム２０６に文書データの保存・更新を指示する、保存／更新部２０４、
文書編集部２０３の制御に応じて、文書データを解析して、描画オブジェクトを生成するデータ解析部２０５、
から構成される。
【００１５】
文書処理システム２００は文書データを読み込み、それを編集するための機能を利用者に提供する。文書データは、本文書処理システム独自のフォーマットであっても良いし、一般アプリケーションのデータファイルを独自のフォーマットに変換したものでもよい。
【００１６】
図１５は、文書編集システムのＧＵＩ部２０１を示している。ＧＵＩ部２０１は、メインウインドウ１４０１、メニュー／ツールバー１４０２、ページリスト１４０３、ページプレビュー１４０４から構成される。
【００１７】
［データ構造］
文書編集システム２００の詳細を言及する前に、文書データのデータ構造について説明する。文書データは紙媒体の書物を模倣した３層の層構造を有する。まず、上位層は「ブック」と呼ばれ、１冊の本を模倣しており、その本全般に係る属性が定義されている。その下の中間層は、本でいう章に相当し、やはり「章」と呼ばれる。各章についても、章毎の属性が定義できる。そして、下位層は「ページ」であり、文書編集システムで定義された各ページに相当する。尚、各ページについてもページ毎の属性が定義できる。更に、一つのブックは複数の章を含んでいてよく、また一つの章は複数のページを含むこともできる。「ブック」「章」「ページ」は文書データを３階層で構成していることを示すために用いた用語であり、同等の構成を成していれば他の用語であってもかまわない。
【００１８】
図３に示す（Ａ）は、文書データの形式の一例を模式的に示す図である。図示するように、この例では、文書データにおけるブック，章，ページは、それぞれに相当するノードにより示されている。一つの文書データは一つのブックを含む。ブック，章は、ブックとしての構造を定義するための概念であるから、定義された属性値と下位層へのリンクとをその実体として含む。ページは、ページ毎のデータを実体として有する。そのため、ページは、その属性値のほかに、原稿ページの実体（原稿ページデータ）と各原稿ページデータへのリンクを含む。
【００１９】
図３において、ブック３０１には、ブック属性が定義されていると共に、２つの章３０２Ａ，３０２Ｂがリンクされている。このリンクにより、章３０２Ａ，３０２Ｂがブック３０１に包含されていることが表示される。章３０２Ａには、ページ３０３Ａ，３０３Ｂがリンクされ、これらページが含まれることが示されている。各ページ３０３Ａ，３０３Ｂにはそれぞれ属性値が定義され、その実体である原稿ページデータ（１），（２）へのリンクが含まれる。これらリンクは、図３に示す（Ｂ）のように原稿ページデータ３０４のデータ（１），（２）を指し示し、ページ３０３Ａ，３０３Ｂの実体が原稿ページデータ（１），（２）であることを表示している。
【００２０】
図４は、ブック属性のリストである。下位層と重複して定義可能な項目に関しては、下位層の属性値が優先採用される。下位層と重複する項目については、下位層において定義されていない場合における既定値としての意味を有する。尚、図示された各項目は具体的に１項目に対応するのではなく、関連する複数の項目を含むものもある。Ｎｏ５ウォーターマークとＮｏ６ヘッダ・フッタとＮｏ７コメント・注釈は、ブックに属するページに対してのページ属性である。ここで、ウォーターマークとは、原稿データに重ねて印刷される、別途指定される画像や文字列など（一般的にスタンプと呼ばれる）である。ヘッダ・フッタは、それぞれ各ページの上余白及び下余白に印刷されるウォーターマークである。コメント・注釈描画は、ページ上もしくは余白に指定される画像、文字列である。本発明でアノテーションと書いた場合、特に指定がない限り、これらがすべて含まれることとする。但し、ヘッダ・フッタには、ページ番号や日時など変数により指定可能な項目が用意されている。これらアノテーションは、原稿ページを構成するテキスト・イメージというコンテンツデータ層ではなく、原稿ページの上にオーバーレイする形で行われる。前記リストで管理されるアノテーションの情報は、具体的には後述するＩＤと、ページ上の位置情報である。ページ上の位置情報は、システム内で位置を特定できる形であれば、どのようなデータ形式であってもかまわないが、例えばページ上のＸＹ座標で保持するような形式で良い。また、位置情報はアノテーションの種類に応じても異なる形式で保持することが考えられる。例えば、スタンプの場合はページ上のある位置を点で保持する形式で構わないが、コメントでページ上のある範囲に対して網掛けをかける場合は、ある点からある点までの範囲として位置情報を保持することが考えられる。よって、図４のブックの属性リストおよび後述する図５，６のリストにおいて、位置情報は点および範囲どちらの形式でも保持可能であるものとする。
【００２１】
図５は章属性の、図６はページ属性のリストである。章属性とページ属性との関係もブック属性と下位層の属性との関係と同様である。そのため、「ブック」「章」「ページ」の属性は、最下位のページの属性と言い換えることもできる（仮に「ブック」の属性のみ指定されている場合でも、個々のページにそのブックの属性が適用されるため）。本発明では、特に明示しない場合「ページ属性」という用語に、これらの属性が含まれることとする。
【００２２】
図７は、ウォーターマーク属性のデータリストである。ウォーターマークは文字列／イメージの２種類がある。個々にＩＤと設定情報を保持する。例えば、ＩＤ１〜７は文字列型のウォーターマークを示している。文字列型には、文字列、フォント種類、フォントサイズ、スタイル、バイナリデータの情報を保持している。バイナリデータはイメージのバイナリを保持する属性であり、例えば文字の周りを円で囲む指定をしている際は、円のイメージをバイナリデータで保持する。ＩＤ８，９は、イメージが他のウォーターマークを示している。イメージ型には、バイナリデータ、イメージ参照先の情報を保持している。イメージデータはバイナリ形式や、ハードディスク１０９に格納されている外部イメージを参照する形式で定義する。図７のデータリストで保持するデータは、ウォーターマーク自身の情報のみである。実際に原稿ページ上のどの位置にウォーターマークが配置されるのかは、前述した「ブック」「章」「ページ」の属性で定義される。
【００２３】
図２２は、ウォーターマーク属性のうちのコメント・注釈属性を管理するデータリストである。コメント・注釈には、テキストボックス・吹き出しテキスト・マーカー（アンダーラインなど）・網掛けなど、いろいろな種類が存在する。これらの種類は、文書編集システムによって可変数であってかまわない。個々にＩＤと設定情報を保持する。設定情報は、前述した図７のデータリストと同等のものを保持する。コメント・注釈固有の設定情報（例えば、ＩＤ４のマーカーの塗りつぶし）がある場合は、それらの設定情報もデータリストに加えて管理する。
【００２４】
図８は、文書データを構成するページ内のオブジェクト情報を管理するオブジェクトリストの例を示したものである。各オブジェクトにＩＤ８０１とオブジェクトの種類８０２、オブジェクトの位置を示す座標８０３と８０４、オブジェクト固有情報８０５がある。そのオブジェクトがリスト構造になって、オブジェクトリスト８００に格納されている。オブジェクトリスト８００は、原稿データ全体で１つのリストを保持する形式でも構わないし、ページごとに１つのリストを保持する形式でも構わない。オブジェクトの解析、リスト作成については後述する図９〜１３で説明する。
【００２５】
［ページ属性設定］
ページ属性の設定方法の１例について説明する。この処理は、ＧＵＩ部２０１からの指示に従って、文書処理部２０３が実行し、前述した図４，５，６の「ブック」、「章」、「ページ」の属性リストと図７のウォーターマークのデータリストに設定情報を登録していく。
【００２６】
図１５はウォーターマーク定義ダイアログ１５０１を示している。ウォーターマーク定義ダイアログ１５０１は、キーボード／マウス１０８からの指示に従ってＧＵＩ部２０１がディスプレイ１０７上に表示する。ユーザーはダイアログ内の各コントロールに指示を入力することにより、ＧＵＩ部２０１が文書編集部２０３へ指示を送り、文書編集部２０３がページ属性リストに登録を行う。
【００２７】
ウォーターマーク定義ダイアログ１５０１は、
ウォーターマークに使用する文字列を指定する文字列指定コントロール１５０２、
文字列のフォント種類を指定するフォント指定コントロール１５０３、
文字列のスタイルを指定するスタイル指定コントロール１５０４、
文字列のフォントサイズを指定するフォントサイズ指定コントロール１５０５、
文字列の色を指定する色指定コントロール１５０６、
から構成される。
【００２８】
ウォーターマーク定義ダイアログで指定された各設定は、図７の属性リストに登録される。
【００２９】
図１６は、ウォーターマーク指定ダイアログ１６０１を示している。ウォーターマーク指定ダイアログ１６０１は、「ブック」「章」「ページ」それぞれに対して指定することが可能である。（例えば、ブックをＧＵＩ２０１にて選択している状態で、ウォーターマーク指定ダイアログでウォーターマークを指定した場合は、「ブック」の属性として登録される。）
ウォーターマーク指定ダイアログ１６０１は、
ページ上にオーバーレイするウォーターマークを指定するウォーターマーク指定コントロール１６０２、
ページ上のどの位置にウォーターマークを配置するかを指定するウォーターマーク配置指定コントロール１６０３、
から構成される。
【００３０】
図１７は、ウォーターマークが設定された例を示している。全９ページの文書データに対して、１〜３ページ目（１章目）には、「ＣＯＮＦＩＤＥＮＴＩＡＬ」のウォーターマークが指定されている。また、７ページ目、９ページ目には、「コピー禁止」のウォーターマークが指定されている。
【００３１】
もちろん、このようにダイアログからの指定ではなく、メニュー／ツールバー１４０２などを使用してアノテーションを、ページ属性としてページプレビュー１４０４上で直接作成・配置し、設定する方法でもよい。
【００３２】
［オブジェクト解析］
オブジェクト解析と前述したオブジェクトリストの登録方法について説明する。この処理は、文書編集部２０３からの指示に従って、データ解析部２０５がハードディスク１０９に格納されている文書データにアクセスして実行する。図９は、オブジェクトリスト８００に格納される情報の例である。図のような座標に位置する長方形オブジェクトは、図に示す内容によって、リストに登録される。
【００３３】
図１０は、文書データの内部フォーマットから、図９と同様の長方形オブジェクトがよみこまれ、同じオブジェクト情報として取り出される例を示した図である。
【００３４】
図１１は、本実施例で利用するオブジェクトのブロック化のための手順を示したフローチャートである。本処理は、データ解析部２０５が実行する。
【００３５】
データ解析部２０５は、８００で示したオブジェクトリストＬＯからオブジェクトをひとつ取得し（Ｓ１１０１）、新しいオブジェクトグループＧを生成する（Ｓ１１０２）。
【００３６】
オブジェクトグループは、オブジェクトリストと同等の形式をもち、かつ処理部がひとつのオブジェクトとして操作することのできるデータ形式である。
【００３７】
データ解析部２０５は、オブジェクトグループＧにＳ１１０１で取得したオブジェクトを追加し（Ｓ１１０３）、そのオブジェクトをＬＯから削除する（Ｓ１１０４）。オブジェクトがまだＬＯに残っているかを確認し（Ｓ１１０５）、残っていなければグループＧをＬＯに追加して終了する（Ｓ１１０６）。
【００３８】
残っていれば、データ解析部はさらに、次のオブジェクトをＬＯから取得し（Ｓ１１０７）、オブジェクトグループＧの中のオブジェクトＧＯを取得（Ｓ１１０８）、ＧＯが取得できなければ（Ｓ１１０９）、ステップＳ１１０２に戻る。ＧＯが取得できれば（Ｓ１１０９）、ＰＯとＧＯの間の垂直方向の距離を計算する（Ｓ１１１０）。
【００３９】
ここで、本発明で言うオブジェクト間の距離とは、図１２で示したように、オブジェクトを包む外接矩形を考え、ある外接矩形と外接矩形の間の、最短の距離のことをいう。図１２で、１２０１は長方形オブジェクト、１２０２は楕円オブジェクト、１２０３は楕円オブジェクトの外接矩形を表しており、矢印１２０４の長さが、２オブジェクト間の距離にあたる。
【００４０】
さらにデータ解析部は、計算した距離は閾値以内かを確認し（Ｓ１１１１）、閾値以上離れていればステップＳ１１０８に戻る。閾値以内であれば、ステップＳ１１０３に戻る。
【００４１】
ここで閾値とは、システムで定められる一定の大きさの距離のことで、この距離の閾値でブロック化するオブジェクト同士を分離している。
【００４２】
図１３は、図１１のフローチャートによって、どのようにオブジェクトがブロック化されるかを示した例である。ページ１３０１上で、オブジェクト１３１１と１３１２がブロック化され、点線で示したブロック１３２１になっている。同様に、オブジェクト１３１３と１３１４が１３２２に、１３１５と１３１６が１３２３にそれぞれブロック化されている。
【００４３】
本発明では、ページ内の編集オブジェクトの単位は、もっとも小さい区分けによるオブジェクトではなく、ある程度のまとまったオブジェクト群からなる「ブロック」として考える（もっとも小さい区分けを単位として扱う構成でもかまわない）。そのため、本発明でオブジェクト編集を行う手順においては、ブロックを対象とすることにする。今後本発明では、「オブジェクト」と記載する場合、図１３のようにオブジェクトをまとめた「ブロック」のことも包含して示すこととする。
【００４４】
［処理の流れ］
図１８のフローチャートを及び図１９のオブジェクト編集のＧＵＩ例を用いて、本発明の実施形態に係る文書編集システムにおいてのオブジェクト編集操作の流れについて説明する。本発明における編集操作とは、描画オブジェクトの移動・複製である。例えば、３ページ目にある描画オブジェクトを２ページ目に移動・複製する編集操作などである。以後、移動・複製前にオブジェクトがあったページを“編集元ページ”、移動・複製後にオブジェクトがあるページを“編集先ページ”という言葉で表現する。
【００４５】
ユーザーがキーボード／マウス１０８に対してオブジェクトの移動・複製操作を行うと、ＧＵＩ２０１はキーボード１０８に対する操作を検知して、入力制御部２０２に操作に応じた指示を行う。指示を受けた入力制御部２０２は、文書編集部２０３へ操作に応じたオブジェクトの移動・複製を指示する。指示を受けた文書編集部２０３は、データ解析部２０５へアクセスして編集対象オブジェクトを取得し、指示された移動・複製操作を開始する。そのあと、入力制御部２０２から編集先ページが指定されて、文書編集部２０３が編集先ページへオブジェクトの移動・複製操作を実行する。このときに、入力制  御部２０２から指定された編集元のページ情報（例えば、図３の３０３Ｂ）と編集先のページ情報（例えば、図３の３０３Ａ）が異なっている場合は、ページをまたぐ編集処理となる。
【００４６】
図１９は、オブジェクト編集のＧＵＩ例を示している。１９０１はページ、１９０２はページ属性（図では“マル秘”スタンプを示している）を示している。１９０３は、ページ１９０１上に存在するオブジェクトを示している。点線の外接矩形は、オブジェクト１９０２の範囲を概念的に示しているものであり、実際にページ上に描画されているものではない。１９０４はマウスカーソルを示している。例えば、ユーザー操作としては２ページ目のオブジェクトをマウスカーソルで指定して、１ページ目に移動（１９０５は移動中のゴーストを示す）させて、配置位置を決定する操作をトリガーに、図１８に示すフローチャートに従って、処理を行う。ユーザーの操作としては、各ページ１９０１上に存在するオブジェクト１９０３をマウスカーソル１９０４で選択して、異なるページへ移動・複製（ゴーストを表示しながらの移動１９０５）する操作となる。１９０６はツールバーのボタンを示している。このボタンを押下することでページに余白が存在した場合に、自動で描画オベジェクトを移動させ、間をつめる処理を行う。この処理もページ内部はもちろんページをまたいだ移動も可能である。また、メニューやその他ショートカットーキーなどでの操作で実行することも可能である。これにより、上記で記載したオブジェクトの移動処理を自動で行うことが可能である。
【００４７】
図２０はアノテーションの移動情報の一例を示す図である。２００１はアノテーションの種類を示す情報である。ウォーターマーク、ヘッダ・フッタ、注釈コメントなどのページ情報と対応している。ここに格納される種類としては各オブジェクトの詳細の種類（テキストなのかビットマップなのかなど）でもよい。２００２は２００１の種類のアノテーションが描画オブジェクトを移動する際に合わせて移動するかどうかの情報である。移動しないと指定されていた時はアノテーションは描画オブジェクトの移動とは連動しない。２００３はアノテーションの描画階層についての情報である。アノテーションの描画階層が描画オブジェクトと同等の階層であるときはアノテーションは描画オブジェクトと同等として扱われ、描画オブジェクトの１部として移動処理も行われる。２００４は移動先の領域に応じてアノテーションをページ間で移動させるかどうかの情報である。２００５は移動先の領域が小さい時にアノテーションを自動で縮小させて、領域に合わせるか否かの情報である。２００６は、アノテーションだけが残ったページを自動で削除するか否かを示す情報である。２００７はアノテーションが移動された場合に編集元ページにもアノテーションを残すか否かを示す情報である。２００８はアノテーションをページがまたいで移動を許可するか否か及び情報である。
【００４８】
図２１の２１００はアノテーションの移動情報２０００の設定を行うためのＧＵＩの一例を示す図である。２１０１はアノテーションを移動の対象とするか否かを設定するチェックボックスである。２１０２は移動の対象とすることができる各アノテーションを表示したチェックボックスである。ここでチェックされているアノテーションについては２００２に移動する情報が格納される。（チェックされていないアノテーションは移動しない情報が２００２に格納される）２１０３、２１０４はアノテーションの階層を設定するラジオボタンになっており、２１０３に選択するとアノテーションは通常の描画オブジェクトと同じ階層で扱われることになる。２１０４を選択するとアノテーションは描画オブジェクトの上位の階層として扱われることになる。さらに２１０４が選択時には、詳細の動作として２１０５のような、編集先の領域のサイズとアノテーションのサイズからアノテーションの移動を自動で行うか、２１０６にて編集先の領域のサイズとアノテーションのサイズからアノテーションを自動で縮小するかを設定することが可能である。２１０９は最終ページに対する設定としてアノテーションだけがのこったページを削除するかどうかを設定することが可能である。２１０７はアノテーションをページをまたいで移動させるか否かを示す情報である。２１０８はアノテーションがページ間を移動した際に、編集元のページにもアノテーションが残るようにするかどうかを設定することが可能である。これらの移動に関する詳細の設定は本ＵＩのようにアノテーション全てに対してまとめて行ってもよいし、個別に設定可能にしてもよい。さらに、全ての設定をＵＩで設定可能にしてもよいし、一部をプログラムの内部で保持してもよい。
【００４９】
図２３及び２４は、選択されている描画オブジェクト（編集対象オブジェクト）が１つもしくは複数個指定されている場合の図例を示している。２３０１はページ、２３０２，２３０３はオブジェクトおよび外接矩形領域を示している。オブジェクト２５０２，２５０３を同時に指定している場合は、それぞれを包含する矩形領域３３０１が外接矩形領域となる。また、２５０４の領域がアノテーションのサイズとなる。
【００５０】
上記の描画オブジェクトの移動・複製処理がユーザーにより操作されると、図１８のフローチャートが開始される。本フローチャートでは移動の処理について記載する。複製の処理との差異については編集元のページにもアノテーションを残す点が異なる。Ｓ１８０１では、文書編集部２０３は、データ解析部２０５へアクセスして処理の対象となっている描画オブジェクト（ブロック）が外接する矩形領域（図２３参照）に存在するアノテーションの属性を図４，５，６で示した「ブック」「章」「ページ」属性リストから取得する。ここで、描画オブジェクトの対象としては１つでも良いし、複数でも構わない。複数が処理の対象となっているときには、複数の描画オブジェクトが外接する矩形領域（図２４参照）に存在するアノテーション属性を取得する。続いてＳ１８０２では、Ｓ１８０１で取得したアノテーションの属性の種類に応じたアノテーション移動情報２０００を取得する。Ｓ１８０３ではアノテーション移動情報２０００の移動対象２００２を用いてアノテーションが移動の対象となっているかを判定する。判定の結果移動するとなった場合にはＳ１８０４へ進み、移動しないと判定した場合にはＳ１８１５へ進む。Ｓ１８０４では描画レイヤ２００３を参照して、移動時に描画オブジェクトを優先して移動させるかを判定する。ここでいう優先とは、描画オブジェクトを先に移動させて、その後アノテーションについての移動を行うことを意味する。逆に優先しないときは、アノテーションを描画オブジェクトの一部として扱うことになり、上述したブロック化の対象となる。アノテーションの描画レイヤ２００３が描画オブジェクトと同等ではないときは描画オブジェクトが優先となりＳ１８０５へ進み、同等のときはＳ１８１３に進む。Ｓ１８０５では、描画オブジェクトの移動処理を実行する。Ｓ１８０６では、描画オブジェクトの編集先ページの移動領域を取得する。この移動領域とは、移動した描画オブジェクトのサイズと描画オブジェクトの上下左右の余白をあわせた領域となる。Ｓ１８０７ではアノテーションの移動方法を決定する。描画オブジェクトがページをまたいで移動しており、対象のアノテーションがページ間での移動を可となっていた場合にはＳ１８０８に進む。描画オブジェクトがページをまたいで移動していない、もしくは対象のアノテーションのページ間での移動が不可のときには、アノテーションはページ内で移動するものとし、Ｓ１８２２に進む。Ｓ１８２２では、ページ内でのアノテーションの移動を行う。Ｓ１８０８では、Ｓ１８０６で取得した編集先の移動領域と対象のアノテーションのサイズを比較し、移動領域が大きい場合にはＳ１８１２に進み、アノテーションのサイズが大きい場合にはＳ１８０９に進む。Ｓ１８０９では、自動移動２００４を参照してページ間でのアノテーションの移動を実行するかどうかを判定する。移動する場合にはＳ１８１０に進み、移動しない場合にはＳ１８２２に進む。Ｓ１８１０ではアノテーションを縮小し移動領域におさまるようにするか否かを判定する。縮小すると判断された場合にはＳ１８１１に進み、しないと判断された場合にはＳ１８１２に進む。Ｓ１８１１は移動領域におさまるようにアノテーションをアスペクト比を保った状態で縮小する。Ｓ１８１２では、アノテーションを編集元のページにも残すかどうかを判断する。残すと判断された場合にはＳ１８１３に進み、残さないと判断された場合にはＳ１８１４に進む。Ｓ１８１４ではアノテーションの移動をページ間で実行する。
【００５１】
Ｓ１８１５では、アノテーションを描画オブジェクトと同階層へ変換を行う。Ｓ１８１６では、ユーザーの操により移動の対象となっている描画オブジェクトとアノテーションをすべて移動させる。Ｓ１８１７では描画オブジェクトのみを移動させる。Ｓ１８１８では、移動後アノテーションのみが存在する白紙のページが作成されたかどうかを判定し、存在した場合はＳ１８１９に進み、存在しなかった場合にはＳ１８２１に進む。Ｓ１８１９では、自動削除２００６を参照し、描画オブジェクトの移動によりできたアノテーションのみのページを削除するかどうかを判定する。削除する場合にはＳ１８２０に進み、削除しない場合にはＳ１８２１に進む。Ｓ１８２０では、アノテーションのみのページのアノテーションの削除を行う。Ｓ１８２１では、描画オブジェクトの移動により発生した白紙のページ（描画オブジェクト及びアノテーションが１つ
も存在しないページ）を削除し、処理を終了する。
【００５２】
図２５は本実施例における描画オブジェクトの移動に合わせてページ内でアノテーションを移動させたときの結果の１例である。ここでは、手動の移動ではなく、余白をつめた自動の移動により結果例として示している。２５０１はページを示しており、本例では編集前は３ページのデータとなっている。２５０２は描画オブジェクトである。２５０３はページ上に存在する余白を示している。２５０４はアノテーション（ウォーターマーク）を示している。２５０５は余白を削除したことにより移動してきた描画オブジェクトを示している。２５０６はページ内で移動後のアノテーションを示している。
【００５３】
図２６は本実施例における描画オブジェクトの移動および編集先の移動領域に合わせてページ内、もしくはページ間でアノテーションを移動させたときの結果の１例である。２６０１はページ間移動を行った後のアノテーションである。２６０２はページ内で移動させたアノテーションである。
【００５４】
図２７はＳ１８１１の縮小処理の図例を示している。２７０１は移動領域、２７０２はアノテーション（ウォーターマーク）の外接矩形領域（サイズ）を示している。縦方向および横方向のサイズが異なるため、ウォーターマークの外接矩形２７０２を、編集対象オブジェクトの外接矩形領域に内包されるよう（２７０３）に拡縮率を算出し、ビットマップデータを拡縮処理する。拡縮は縦横等倍で行われる形式でも良いし、変倍で行われる形式でも良い。もちろん、双方をユーザーが選択できる構成でも構わない。
【００５５】
図２８はページ間でアノテーションを移動させかつ、縮小処理を施した結果の一例である。２８０１は図２７で示したように移動領域に内包されるように、移動させたアノテーションを示している。
【符号の説明】
【００５６】
１００ …  本発明の実施形態に係る情報処理装置を構成するＰＣのＣＰＵ
１０１ …  本発明の実施形態に係る情報処理装置を構成するＰＣのＲＡＭ
１０２ …  本発明の実施形態に係る情報処理装置を構成するＰＣのＲＯＭ
１０３ …  本発明の実施形態に係る情報処理装置を構成するＰＣのキーボードコントローラ
１０４ …  本発明の実施形態に係る情報処理装置を構成するＰＣのディスプレイコントローラ
【図１】
2012089056.tif 000003
【図４】
2012089056.tif 000004
【図５】
2012089056.tif 000005
【図６】
2012089056.tif 000006
【図７】
2012089056.tif 000007
【図２２】
2012089056.tif 000008
【図２】
2012089056.tif 000009
【図３】
2012089056.tif 000010
【図８】
2012089056.tif 000011
【図９】
2012089056.tif 000012
【図１０】
2012089056.tif 000013
【図１１】
2012089056.tif 000014
【図１２】
2012089056.tif 000015
【図１３】
2012089056.tif 000016
【図１４】
2012089056.tif 000017
【図１５】
2012089056.tif 000018
【図１６】
2012089056.tif 000019
【図１７】
2012089056.tif 000020
【図１８】
2012089056.tif 000021
【図１９】
2012089056.tif 000022
【図２０】
2012089056.tif 000023
【図２１】
2012089056.tif 000024
【図２３】
2012089056.tif 000025
【図２４】
2012089056.tif 000026
【図２５】
2012089056.tif 000027
【図２６】
2012089056.tif 000028
【図２７】
2012089056.tif 000029
【図２８】
2012089056.tif 000030
【図２９】
2012089056.tif 000031