(57)【要約】【課題】文書データを別のファイルフォーマットへ保存した後であっても、ページ単位でより効率的に編集操作を継続することを可能とする。【解決手段】情報処理装置であって、ユーザーの指示に基づき、文書データを編集する編集手段を有し、前記編集手段は、ベクター形式の文書データをラスター形式のファイルフォーマットにて出力する指示を受け付けた場合、指示されたラスター形式のファイルフォーマットにて当該文書データを出力すると共に、当該文書データに含まれるページごとに、ページに含まれるオブジェクトのデータをベクター形式のデータとして保持するか、ラスター形式のデータとして保持するかを特定し、特定された形式のオブジェクトのデータを含むページそれぞれを編集用のデータとして保持する。【選択図】  図６
2019067347.tif 000002
【特許請求の範囲】
【請求項１】
ユーザーの指示に基づき、文書データを編集する編集手段を有し、
前記編集手段は、ベクター形式の文書データをラスター形式のファイルフォーマットにて出力する指示を受け付けた場合、指示されたラスター形式のファイルフォーマットにて当該文書データを出力すると共に、当該文書データに含まれるページごとに、ページに含まれるオブジェクトのデータをベクター形式のデータとして保持するか、ラスター形式のデータとして保持するかを特定し、特定された形式のオブジェクトのデータを含むページそれぞれを編集用のデータとして保持することを特徴とする情報処理装置。
【請求項２】
前記文書データに含まれるページのうち、ページに含まれるベクター形式のデータのオブジェクトに対する編集が前記編集手段にて行われたページは、オブジェクトのデータをベクター形式のデータとして保持するとして特定されることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記文書データに含まれるページのうち、含まれるオブジェクトがページ全体を占める１のラスター形式の画像データから構成されるページは、オブジェクトのデータをラスター形式のデータとして保持するとして特定されることを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記文書データに含まれるページのうち、含まれるオブジェクトのデータをラスター形式のデータとして保持すると特定されたページは、当該ページに含まれていたオブジェクトのベクター形式のデータをラスター形式のデータに変換して保持されることを特徴とする請求項１乃至３のいずれか一項に記載の情報処理装置。
【請求項５】
前記ベクター形式の文書データのページは、オブジェクトを配置することが可能な複数の層から構成され、
前記文書データに含まれるページのうち、前記複数の層における最上位の層に配置されるオブジェクトが含まれるページに対しては、最上位の層に配置されているオブジェクトのデータはベクター形式のデータにて保持され、前記最上位の層以外に配置されているオブジェクトのデータはベクター形式のデータをラスター形式のデータに変換して保持されることを特徴とする請求項１に記載の情報処理装置。
【請求項６】
前記最上位の層に配置されるオブジェクトは、注釈を示すオブジェクトであることを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記ベクター形式の文書データをラスター形式のファイルフォーマットにて出力する指示を受け付けた後に、当該文書データを編集する場合、前記編集手段は、前記編集用のデータを用いて編集を行うことを特徴とする請求項１乃至６のいずれか一項に記載の情報処理装置。
【請求項８】
ユーザーの指示に基づき、文書データを編集する編集手段を備える情報処理装置の制御方法であって、
ベクター形式の文書データをラスター形式のファイルフォーマットにて出力する指示を受け付けた場合、指示されたラスター形式のファイルフォーマットにて当該文書データを出力すると共に、当該文書データに含まれるページごとに、ページに含まれるオブジェクトのデータをベクター形式のデータとして保持するか、ラスター形式のデータとして保持するかを特定し、特定された形式のオブジェクトのデータを含むページそれぞれを前記編集手段における編集用のデータとして保持することを特徴とする制御方法。
【請求項９】
コンピュータを、
ユーザーの指示に基づき、文書データを編集する編集手段として機能させ、
前記編集手段は、ベクター形式の文書データをラスター形式のファイルフォーマットにて出力する指示を受け付けた場合、指示されたラスター形式のファイルフォーマットにて当該文書データを出力すると共に、当該文書データに含まれるページごとに、ページに含まれるオブジェクトのデータをベクター形式のデータとして保持するか、ラスター形式のデータとして保持するかを特定し、特定された形式のオブジェクトのデータを含むページそれぞれを編集用のデータとして保持することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置およびその制御方法、並びにプログラムに関する。
【背景技術】
【０００２】
文書編集アプリケーションにおいて、描画オブジェクトとして、ビットマップなどの画像データ、文字列などのテキストデータ、四角形などのグラフィックデータなど様々なデータを含むことが可能な、文書データのファイル形式が存在する。
【０００３】
文書編集アプリケーションでは文書データを構成するページに対して特定の文字列や四角形、楕円といった図形を付加することができる。また、ページを構成する画像に対して一部を塗りつぶしたりといった画像編集や、画像全体のグレースケールに変更するなど全体の色味を調整したり、傾きなどを修正する画像補正を行うことも可能である。さらに、文書編集アプリケーションは、編集した結果を反映した文書データを異なるファイルフォーマットとして保存することも可能である。例えば、ＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）ファイルを編集対象として開いて、任意のページに文字列などを追加した後に異なるファイル形式の画像データとして保存する。続けて、あるページ全体を画像としてグレースケール化するなどといった一連の処理を１つの文書編集アプリケーションで行うことが可能である。
【０００４】
特許文献１は、画像により構成される文書データに対してベクトル化処理を行う技術について開示している。すなわち、画像に対する編集時にもテキストデータやグラフィックデータのように編集可能となる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−１５７９０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、画像からのベクトル化処理を行った場合でも、画像の元となる描画オブジェクトの特性は完全には再現されない。例えば、描画オブジェクトのどの種類のオブジェクトでどのような属性値を保持していたかなどは完全には再現されず、描画オブジェクトの特性を維持したままの編集は困難である。そのため、ベクターデータを含むことが可能なファイル形式の文書データを、画像のみを保持することが可能なファイル形式に保存することで画像以外の情報が消えてしまった場合、描画オブジェクトの特性を維持したままの再編集ができなくなる。
【０００７】
上記のように編集が不可になることを避けるために、画像として保存後も元の描画オブジェクトをベクターデータとして保持し続けるとする。この場合、編集の対象が画像とはならないため、上述したような画像に対するグレースケール化などの編集処理を続けて行うことができなくなってしまう。そのため、画像化またはベクターデータの保持を全てのページに対して一律で行ってしまうと、ページによっては画像編集を行えない、または、ベクターデータの再編集ができない場合が生じる。そのため、文書データに対する編集の効率が低下し、ユーザーの利便性が低下する。
【課題を解決するための手段】
【０００８】
上記課題を解決するために本願発明は以下の構成を有する。すなわち、情報処理装置であって、ユーザーの指示に基づき、文書データを編集する編集手段を有し、前記編集手段は、ベクター形式の文書データをラスター形式のファイルフォーマットにて出力する指示を受け付けた場合、指示されたラスター形式のファイルフォーマットにて当該文書データを出力すると共に、当該文書データに含まれるページごとに、ページに含まれるオブジェクトのデータをベクター形式のデータとして保持するか、ラスター形式のデータとして保持するかを特定し、特定された形式のオブジェクトのデータを含むページそれぞれを編集用のデータとして保持する。
【発明の効果】
【０００９】
本発明により、文書データを別のファイル形式へ保存した後であっても、ページ単位でより効率的に編集操作を継続することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態に係る情報処理装置のハードウェア構成の例を示す図。
【図２】本発明の実施形態に係る情報処理装置のソフトウェア構成の例を示す図。
【図３】本発明の実施形態に係る文書データのデータ構造の例を示す図。
【図４】本発明の実施形態に係るオブジェクトリストのデータ構造の例を示す図。
【図５】本発明の実施形態に係るベクター編集履歴のデータ構造の例を示す図。
【図６】本発明の実施形態に係る別名保存時のフローチャート。
【図７】本発明の実施形態に係る文書データの一例を示す図。
【図８】第１の実施形態に係る別名保存の前後での文書データを示す図。
【図９】第１の実施形態に係るベクターデータの編集処理のフローチャート。
【図１０】第１の実施形態に係る画像の編集処理のフローチャート。
【図１１】第１の実施形態に係るＧＵＩ部のメインウィンドウの一例を示す図。
【図１２】第１の実施形態に係るベクターデータの編集前後での文書データを示す図。
【図１３】第１の実施形態に係る画像化の判断を促すメッセージの一例を示す図。
【図１４】第２の実施形態に係る別名保存時のフローチャート。
【図１５】本発明の実施形態に係る文書データの描画層を模式的に示す図。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態について図面を用いて説明する。
【００１２】
＜第１の実施形態＞
［システム構成］
本実施形態では、本実施形態に係る文書編集システムおよび文書管理システムの全ての機能を一般的な情報処理装置（ＰＣ；Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）によって実現する。
【００１３】
［ハードウェア構成］
図１は、本発明の実施形態に係る文書編集システムを構成するＰＣのハードウェア構成の一例を示す。図１に示されるハードウェア構成は一般的な情報処理装置のハードウェア構成に相当するが、この構成に限定するものでは無く、他の部位を備えてもよい。また、本発明は、ＰＣに限定するものでははく、携帯端末など他の情報処理装置に適用してもよい。
【００１４】
図１において、ＣＰＵ１００は、ＲＯＭ１０２のプログラムＲＯＭに記憶された、或いはハードディスク１０９からＲＡＭ１０１にロードされたオペレーティングシステム（ＯＳ）やアプリケーション等のプログラムを実行する。後述する各フローチャートの処理は、ＣＰＵ１００がプログラムを実行することにより実現する。ＲＡＭ１０１は、ＣＰＵ１００の主メモリ、ワークエリア等として機能する。キーボードコントローラ１０３は、キーボード１０８やマウスなど、図示しないポインティングデバイスからの入力を制御する。ディスプレイコントローラ１０４は、ディスプレイ１０７の表示を制御する。ディスクコントローラ１０５は、各種データを記憶するハードディスク（ＨＤ）１０９やフロッピー（登録商標）ディスク（ＦＤ）等におけるデータアクセスを制御する。ＮＣ１０６は、ネットワークコントローラであり、ネットワークに接続されて、ネットワークに接続された他の機器との通信制御処理を実行する。
【００１５】
［ソフトウェア構成］
図２に、本実施形態に係るＰＣ１１０上にて実行される文書編集システム２００のソフトウェア構成の一例を示す。本実施形態に係る文書編集システム２００は、ハードウェア構成で説明したように、全ての機能をＰＣ１１０上で実行されるプログラムによって実現される。
【００１６】
文書編集システム２００は文書データを読み込み、それを編集するための機能を利用者に提供する。ここでの文書データとしては、画像およびテキストなどのベクターデータを保持可能なファイル形式のデータ、および、画像データのみを保持可能なファイル形式のデータのいずれも対象となる。上記のような文書データのファイル形式の例としてはそれぞれ、ＰＤＦファイルと、ビットマップファイルが挙げられる。なお、各ファイル形式は特に限定するものではなく、上記の構成を有するものであれば、他のファイル形式であってよい。なお、これらのファイル形式は、ファイル名に付与される拡張子が異なる。
【００１７】
文書編集システム２００は、グラフィックユーザーインターフェース（ＧＵＩ）部２０１、入力制御部２０２、文書編集部２０３、保存／更新部２０４、及びデータ解析部２０５を含んで構成される。
【００１８】
ＧＵＩ部２０１は、ＰＣ１１０のディスプレイ１０７上に表示される画面を提供し、キーボード／マウスなどの入力デバイスからの入力を受け付ける。入力制御部２０２は、ＧＵＩ部２０１が提供した画面上で行われたユーザーの操作を検知して、操作に応じて文書データの編集、ファイルの保存などを指示する。文書編集部２０３は、入力制御部２０２の編集指示に従い、文書編集システム２００で編集中の文書データに対して各種編集処理を制御する。保存／更新部２０４は、入力制御部２０２の編集指示に従い、文書データの保存・更新を指示する。データ解析部は、文書編集部２０３の制御に応じて、文書データを解析して、オブジェクトを生成する。
【００１９】
図１１は、文書編集システム２００のＧＵＩ部２０１にて提供される画面の構成例を示す。ＧＵＩ部２０１にて提供される画面は、メインウィンドウ１１０１、メニュー／ツールバー１１０２、及びページプレビュー１１０３から構成される。メニュー／ツールバー１１０２には、文書編集システム２００が提供する各種機能に対応するコントロールが配置されている。例えば、文書データが文書本文を示すオブジェクトを配置する原稿層と注釈を付与する注釈層の２階層の描画層により構成されているとする。ここで、注釈層を上位の層とする。この場合に、原稿層のオブジェクトを付与するためのコントロール１１１１や、注釈を付与するためのコントロール１１１２、画像への補正を行うためのコントロール１１１３、画像への編集を行うためのコントロール１１１４などが存在する。
【００２０】
ページプレビュー１１０３には、文書データの各ページの描画内容がプレビュー画像として表示される。描画内容は後述するオブジェクトデータまたは画像データにより決定される。
【００２１】
［データ構造］
本実施形態に係る文書データのデータ構造の例について説明する。文書データは、紙媒体の書物を模倣した構造を有する。まず、上位層は「文書」と呼ばれ、その文書全般に係る属性（文書属性）が定義されている。そして、下位層は「ページ」であり、文書編集システム２００で定義された各ページに相当する。尚、各ページについてもページ毎の属性（ページ属性）が定義できる。ページ属性は、ページ番号やページサイズなどが該当する。更に、一つの文書は複数のページを含むことができる。なお、「文書」「ページ」は文書データの構成を示すために用いた用語であり、同等の構成を成していれば他の用語であってもよい。
【００２２】
図３は、本実施形態に係る文書データの形式の一例を模式的に示す図である。この例では、文書データにはベクター文書および画像文書が格納可能になっている。一つの文書データは、ベクター文書または画像文書のいずれか一つの文書を保持する。より具体的には、ベクター文書は、ベクター文書ファイルを編集対象として開いたとき、または、ベクター文書のオブジェクトデータの編集を行った場合に存在する。一方、画像文書は、画像ファイルを編集対象として開いたときに存在する。以下の説明において、「ベクターデータ」もしくは「オブジェクトデータ」とは、ベクター形式のデータを意味するものとする。また、「画像データ」とは、ビットマップ画像などのラスター形式のデータを意味するものとする。
【００２３】
文書データにおいて、ベクター文書、及び、ベクターページは、それぞれに相当するノードにより示されている。各ノードは、下位層へのリンクをその実体として含む。ベクターページは、ページ毎のデータを実体として有する。そのため、ベクターページはその属性値のほかに、ベクターページの実体（オブジェクトデータ）を含む。
【００２４】
同様に、文書データにおいて、画像文書、及び、画像ページは、それぞれに相当するノードにより示されている。各ノードは、下位層へのリンクをその実体として含む。画像ページは、ページ毎のデータを実体として有する。そのため、画像ページはその属性値のほかに、画像ページの実体（画像データ）を含む。
【００２５】
図３において、ベクター文書３０１には、３つのベクターページ３０２Ａ、３０２Ｂ、３０２Ｃがリンクされ、これらベクターページが含まれることが示されている。ベクターページ３０２Ａ、３０２Ｂ、３０２Ｃには、それぞれページ属性が定義され、各ベクターページの実体であるオブジェクトデータが含まれる。オブジェクトデータとして、例えば、ＰＤＦ形式にて定義されるベクター形式の情報が記載される。なお、文書データ３００にベクター文書３０１が含まれている場合とは、その文書データ３００のフォーマット（拡張子）は、ビットマップファイルなどのラスター形式以外のフォーマットであることを意味する。
【００２６】
また、画像文書３０３には、３つの画像ページ３０４Ａ、３０４Ｂ、３０４Ｃがリンクされ、これら画像ページが含まれることが示されている。画像ページ３０４Ａ、３０４Ｂ、３０４Ｃには、それぞれその属性値が定義され、各画像ページの実体である画像データが含まれる。画像データとして、ラスター形式の情報が記載される。
【００２７】
ファイルパス３０５には、文書データ３００に現在関連付いているファイルへのパスが格納されている。ファイル間の関連性については、フローと併せて後述する。
【００２８】
図４は、文書データの各ベクターページのオブジェクトデータとして用いられるオブジェクトリストの例を示す。オブジェクトリスト４００は、各ベクターページに配置されるオブジェクトデータを管理するためのリストである。オブジェクトデータそれぞれは、ＩＤ４０１、種類４０２、描画層４０３、ページ番号４０４、描画情報４０５、及び、オブジェクト属性４０６を含んで構成される。ＩＤ４０１は、オブジェクトリスト４００においてオブジェクトデータを一意に識別するための識別情報である。種類４０２は、オブジェクトの種類が示され、例えば、画像オブジェクトやテキストオブジェクトなどが示される。描画層４０３は、オブジェクトが存在する層を示す。上述したように、本実施形態では、原稿層と注釈層の２層からなり、いずれかが指定される。ページ番号４０４は、文書においてオブジェクトが描画されるページを示す。描画情報４０５は、原稿オブジェクトの位置やサイズなどを表す。オブジェクト属性４０６は、オブジェクトに関する固有情報である。このような構造の１または複数のオブジェクトデータ４１０がリスト構造にて、オブジェクトリスト４００に格納されている。
【００２９】
図５は、本実施形態に係るベクター編集履歴データの例を示す。ベクター編集履歴データ５００は、ベクター文書のオブジェクトデータに対しての編集の履歴データであり、１または複数のベクター編集データ５１０により構成される。なお、１度もオブジェクトデータを編集していない状態では、ベクター編集履歴データ５００は存在しない（もしくは、空の状態である）。ベクター編集データ５１０は、編集対象ＩＤ５０１、及び編集内容５０２が格納される。編集対象ＩＤ５０１は、編集を行ったオブジェクトデータのＩＤが示され、図４のＩＤ４０１に対応する。編集内容５０２は、オブジェクトデータに対する編集の内容が示され、例えば、追加、削除、移動などが示される。また、オブジェクトの削除などオブジェクトリスト４００からオブジェクトデータが消去される場合には、編集対象オブジェクトデータ５０３として、消去されたオブジェクトデータを格納する。
【００３０】
［別名保存時の処理］
図６、図７、図８、および図１１を用いて、本実施形態に係る、文書データ３００の別名保存実行時の処理の流れについて説明する。より具体的には、あるフォーマット（拡張子）の文書データを、ユーザーにより指定された所定のフォーマットのファイルへの保存処理および保存後に、文書編集システム２００が編集対象として保持する文書データの更新処理について説明する。通常、別名保存の場合、元のファイルとは別のファイルが新たなファイル名で保存され、元のファイルは維持される。
【００３１】
本実施形態では、文書データのページに存在するオブジェクトデータへの編集の有無によりページを画像化するか否かを切替える。文書データの別名保存の操作としてコントロール１１１０が押下されると、ＧＵＩ部２０１はこの操作を検知して、入力制御部２０２に操作に応じた指示を行う。指示を受けた入力制御部２０２は、別名保存ダイアログ（不図示）を表示する。別名保存ダイアログ（不図示）では、ユーザーは保存先の場所、ファイル名やファイルのフォーマット（拡張子）を選択可能である。各入力の上、別名保存ダイアログ上のＯＫボタン（不図示）が押下されると、ＧＵＩ部２０１がこの操作を検知し、入力制御部２０２を介して文書編集部２０３へ別名保存実行を指示する。なお、保存先の場所、ファイル名、および拡張子は、ファイルパスとして任意の領域に保持される。指示を受けた文書編集部２０３は、文書データの別名保存の処理を開始する。本処理フローでは特に明記しない場合、処理の主体は文書編集部２０３である。
【００３２】
Ｓ６０１にて、文書編集部２０３は、データ解析部２０５へアクセスして、処理対象の文書データ３００の取得を行う。
【００３３】
Ｓ６０２にて、文書編集部２０３は、Ｓ６０１で取得した文書データ３００を参照し、ファイルパス３０５の取得を行う。
【００３４】
Ｓ６０３にて、文書編集部２０３は、保存先のファイルパスの取得を行う。保存先のファイルパスは、上記の別名保存ダイアログ（不図示）にてユーザーが入力した情報が取得される。
【００３５】
Ｓ６０４にて、文書編集部２０３は、処理対象の文書データ３００内にベクター文書３０１が存在する状態での画像ファイルへの保存か否かを判定する。より具体的には、処理対象の文書データ３００内にベクター文書３０１が存在し、かつ、Ｓ６０３で取得したファイルパスの拡張子が画像ファイルフォーマットか否かが判定される。判定の結果、文書データ３００にベクター文書３０１が存在する状態での画像ファイルへの保存の場合には（Ｓ６０４にてＹＥＳ）Ｓ６０５に進み、それ以外の場合には（Ｓ６０４にてＮＯ）Ｓ６１７に進む。
【００３６】
Ｓ６０５にて、文書編集部２０３は、処理対象の文書データ３００に対応するベクター編集履歴データ５００の取得を行う。
【００３７】
Ｓ６０６にて、文書編集部２０３は、処理対象の文書データ３００のベクター文書３０１およびベクターページ３０２を参照し、ページ数を取得する。
【００３８】
Ｓ６０７にて、文書編集部２０３は、先頭から１ページ分の未処理のベクターページ３０２を取得する。
【００３９】
Ｓ６０８にて、文書編集部２０３は、Ｓ６０７で取得したベクターページに関し、オブジェクトデータにより決定される描画内容を反映した画像を生成する。ここで生成される画像は、ベクター形式ではなく、ラスター形式の画像データである。つまり、ベクターページに含まれるオブジェクトデータに基づき、ラスター形式の画像データへの変換が行われる。ここでの変換方法（ラスタライズ）は、特に限定するものではなく、周知の方法を用いてよい。
【００４０】
Ｓ６０９にて、文書編集部２０３は、保存／更新部２０４に指示し、Ｓ６０８で生成した画像をＳ６０３で取得した保存先のファイルパスに追加の書き込みを行う。本工程により、ユーザーにより指定された画像フォーマットのファイル（別名のファイル）への書き込みが行われる。ここでの別名のファイルとして、ビットマップファイルなどのファイルフォーマットが該当する。
【００４１】
続けてＳ６１０〜Ｓ６１４により、別名保存後に文書編集システム２００が編集を継続するために保持する文書データ３００の更新作業を行う。つまり、ここで更新対象となる文書データ３００は、元ファイルに基づくベクター形式のフォーマットのデータであり、保存先のファイルパスに出力されたファイルとは異なる文書データである。別名保存されたファイルとは異なるデータ状態の文書データを保持することで、文書編集システム２００は、ユーザーの指示に基づいて行われた編集の内容を踏まえて、作業を継続することを可能とする。
【００４２】
Ｓ６１０にて、文書編集部２０３は、Ｓ６０５で取得したベクター編集履歴データ５００を参照し、ベクター編集データ５１０の編集対象ＩＤ５０１に該当するオブジェクトデータがＳ６０７で取得したベクターページに存在するか否かを判定する。本処理により、処理対象のベクターページのオブジェクトデータが編集されたか否かを判定する。編集されている場合には（Ｓ６１０にてＹＥＳ）Ｓ６１５に進み、編集されていない場合には（Ｓ６１０にてＮＯ）Ｓ６１１に進む。
【００４３】
Ｓ６１１にて、文書編集部２０３は、処理対象のベクターページがページサイズと同サイズの画像オブジェクトのみにより構成されているか否かを判定する。ページサイズと同サイズの画像オブジェクトのみから構成される場合には（Ｓ６１１にてＹＥＳ）、特にベクターページに対する更新は行わず、Ｓ６１５へ進み、それ以外の場合には（Ｓ６１１にてＮＯ）Ｓ６１２に進む。それ以外の場合とは、画像以外の描画オブジェクトが存在する場合や画像のサイズがページサイズと異なる場合などが該当する。なお、ページサイズと同サイズか否かの判定方法としては、ある程度のしきい値を保持し、ページサイズとの大きさの差異が一定以下のときに同サイズと判定してもよい。以下、このような大きさの差異が一定以下のサイズをページサイズ相当と記載する。
【００４４】
Ｓ６１２にて、文書編集部２０３は、新規のベクターページ３０２を生成する。なお、新規のベクターページのページサイズは特定のサイズでもよいし、処理対象のベクターページに含まれていた画像サイズから算出してもよい。
【００４５】
Ｓ６１３にて、文書編集部２０３は、Ｓ６１２で生成したベクターページにＳ６０８で生成した画像をページサイズと同サイズで挿入および配置し、オブジェクトリスト４００に挿入した画像を画像オブジェクトとして追加する。
【００４６】
Ｓ６１４にて、文書編集部２０３は、Ｓ６１３で画像を挿入したベクターページを、Ｓ６０７で取得したベクターページと入れ替える。つまり、処理対象のベクターページにリンクされたオブジェクトが変更され、オブジェクトリスト４００から削除されることとなる。従って、Ｓ６１２からＳ６１４を行うことにより、ベクター文書の処理対象のベクターページが、画像（画像オブジェクト）のみが配置されたベクターページに置換される。
【００４７】
Ｓ６１５にて、文書編集部２０３は、Ｓ６０６で取得したページ数を参照し、全ベクターページ分の処理が終了したか否かを判定する。全ベクターページの処理が終了している場合は（Ｓ６１５にてＹＥＳ）Ｓ６１６に進み、終了していない場合には（Ｓ６１５にてＮＯ）Ｓ６０７に戻る。
【００４８】
Ｓ６１６にて、文書編集部２０３は、処理対象のファイルのファイルパス３０５をＳ６０３で取得した保存先のファイルパスに変更、更新する。そして、本処理フローを終了する。
【００４９】
Ｓ６１７にて、文書編集部２０３は、処理対象の文書データ３００に画像文書３０３が存在し、かつ、ベクター文書３０１が存在しない状態でのベクターファイルフォーマットへの保存か否かを判定する。ベクター文書３０１が存在しない状態でのベクターファイルフォーマットへの保存の場合には（Ｓ６１７にてＹＥＳ）Ｓ６１８に進み、それ以外の場合には（Ｓ６１７にてＮＯ）Ｓ６２２に進む。
【００５０】
Ｓ６１８にて、文書編集部２０３は、新たなベクター文書３０１の生成を行う。この時点では、生成したベクター文書３０１には、ベクターページはリンクされていない。
【００５１】
Ｓ６１９にて、文書編集部２０３は、画像文書３０３を参照し、画像文書３０３にリンクされているページ数分の新規のベクターページ３０２を生成する。新規のベクターページ３０２のページサイズは特定のサイズでもよいし、画像サイズから算出してもよい。
【００５２】
Ｓ６２０にて、文書編集部２０３は、Ｓ６１９で生成したベクターページに、画像文書３０３の画像ページに存在する画像データの画像をページサイズと同サイズで挿入、配置する。Ｓ６１８〜Ｓ６２０を行うことにより、各ベクターページに画像が配置されたベクター文書が生成される。つまり、Ｓ６１８にて生成したベクター文書３０１にＳ６２０にて生成された新規のベクターページ３０２がリンクされる。
【００５３】
Ｓ６２１にて、文書編集部２０３は、保存／更新部２０４に指示し、生成した新規のベクター文書３０１の内容をＳ６０３にて取得した保存先のファイルパスへ出力する。その後、Ｓ６１６へ進む。
【００５４】
Ｓ６２２にて、文書編集部２０３は、処理対象の文書データ３００にベクター文書３０１が存在する状態でのベクターファイルフォーマットへの保存か、文書データ３００に画像文書３０３が存在する状態での画像ファイルフォーマットへの保存かを判定する。ベクターファイルフォーマットへの保存の場合には（Ｓ６２２にてＹＥＳ）Ｓ６２１に進み、画像ファイルフォーマットへの保存の場合には（Ｓ６２２にてＮＯ）Ｓ６２３に進む。
【００５５】
Ｓ６２３にて、文書編集部２０３は、保存／更新部２０４に指示し、画像文書３０３の内容をＳ６０３にて取得した保存先のファイルパスへ出力する。その後、Ｓ６１６へ進む。
【００５６】
図７は、本実施形態の別名保存時に処理の対象となるベクター文書を保持する文書データの一例である。本例において、文書データは３ページにより構成されている。１ページ目にはオブジェクトとして画像オブジェクト７０１およびテキストオブエジェクト７０２が配置されている。２ページ目はスキャンにより生成されたページであり、画像オブジェクト７０３がページ全体に配置されている。３ページ目にはテキストオブエクト７０４が配置される。更に３ページ目において、テキストオブジェクト７０５が、ベクター形式の文書ファイルを文書編集システム２００で開いた後に追加された状態である。
【００５７】
図８（ａ）は、図７に示した文書データファイルを文書編集システム２００で開き、テキストオブジェクト７０５を追加した状態の文書データおよびオブジェクトリストの状態を示す図である。ベクター文書には３ページがリンクされており、図７で示したオブジェクトデータ７０１〜７０５それぞれのＩＤが００１〜００５として保持された状態となっている。ファイルパスには、文書データのファイルのパスが格納されている。画像文書は空の状態である。図８（ａ）に示す文書データは、ＰＤＦファイルのファイルフォーマットにて構成されている。
【００５８】
図８（ｂ）は、図８（ａ）に示す文書データを画像ファイルフォーマットとして別名保存を行った後の文書編集システム２００で編集対象として保持されている文書データおよびオブジェクトリストの状態を示す図である。ここでは、拡張子が「．ｔｉｆｆ」の画像ファイルとして別名保存された場合を示している。１ページ目については、編集が行われていないためＳ６１２〜Ｓ６１４の処理が行われたことで、ＩＤ：００６の画像オブジェクトが配置された状態となっている。２ページ目は、編集が行われておらず、かつ、ページ全面に画像オブジェクトが配置されていたため、Ｓ６１１の判定によりＳ６１５に進み、特に更新が行われていない。３ページ目については、ＩＤ：００５のテキストオブジェクトが追加されていたため、Ｓ６１０の判定によりＳ６１５に進み、ベクター文書のオブジェクトデータが更新されず、維持されている。
【００５９】
この結果により、画像ファイルへの文書データの保存後に１ページおよび２ページについては画像オブジェクト（画像データ）の編集や補正が可能となり、３ページ目についてはオブジェクトデータの編集が可能な状態となる。言い換えると、ユーザーの指示に基づくファイルフォーマットの画像データと、これに対応する文書編集システム２００にて利用される編集用の文書データとが生成される。そのため、出力するファイルはユーザーの指示に従ったファイルフォーマットの文書データとしつつ、編集作業を継続する対象としてのファイルにおいてはページごとに編集が可能な形式を有する構成となる。
【００６０】
［文書編集時の処理］
（オブジェクトデータの編集）
図９は、文書データのベクター文書に対してオブジェクトデータの編集を行う際の処理フローの一例を示す図である。例えば、メインウィンドウ１１０１上のコントロール１１１２の操作により、注釈が挿入されることで本処理が開始される。本処理フローでは特に明記しない場合、処理の主体は文書編集部２０３である。
【００６１】
Ｓ９０１にて、文書編集部２０３は、処理対象の文書データ３００の取得を行う。
【００６２】
Ｓ９０２にて、文書編集部２０３は、取得した文書データ３００を参照し、ベクター文書３０１が存在するか否かを判定する。存在する場合は（Ｓ９０２にてＹＥＳ）Ｓ９０３に進み、存在しない場合は（Ｓ９０２にてＮＯ）Ｓ９０６に進む。
【００６３】
Ｓ９０３にて、文書編集部２０３は、文書データ３００からベクター文書３０１の取得を行う。
【００６４】
Ｓ９０４にて、文書編集部２０３にて、ユーザーの操作に従い、編集内容をベクターページ３０２のオブジェクトデータ、およびオブジェクトリスト４００に反映する。例えば、注釈の挿入を行った場合、操作対象のベクターページ３０２のオブジェクトデータに追加した注釈のＩＤ４０１を付与するとともに、オブジェクトリスト４００に挿入した注釈のオブジェクトデータ４１０を追加する。また、注釈の削除を行う場合には、操作対象のベクターページ３０２のオブジェクトデータにから該当の注釈のＩＤ４０１を削除するとともに、オブジェクトリスト４００から削除した注釈のオブジェクトデータ４１０を削除する。さらに、既存の注釈に対して、位置の移動や色の変更などの編集操作を行う場合には、オブジェクトリスト４００から該当の注釈のオブジェクトデータを、編集した内容に応じて更新する。
【００６５】
Ｓ９０５にて、文書編集部２０３は、ベクター編集履歴データ５００の更新を行う。例えば、注釈の挿入や編集を行った場合、注釈のＩＤ４０１を編集対象ＩＤ５０１とし、編集内容５０２には「注釈の挿入」を設定し、編集対象オブジェクトデータ５０３は空の状態で、ベクター編集データ５１０の追加を行う。また、注釈の削除を行った場合、注釈のＩＤ４０１を編集対象ＩＤ５０１とし、編集内容５０２には「注釈の削除」を設定し、編集対象オブジェクトデータ５０３は削除を行った注釈のオブジェクトデータを格納した状態で、ベクター編集データ５１０の追加を行う。その後、本処理フローを終了する。
【００６６】
Ｓ９０６にて、文書編集部２０３は、オブジェクトデータの編集のために新規のベクター文書３０１を生成する。この時点では、生成したベクター文書３０１には、ベクターページはリンクされていない。
【００６７】
Ｓ９０７にて、文書編集部２０３は、画像文書３０３を参照し、画像文書３０３にリンクされている画像ページ３０４の数分のベクターページ３０２を作成する。ベクターページのページサイズは特定のサイズでもよいし、画像サイズから算出してもよい。
【００６８】
Ｓ９０８にて、文書編集部２０３は、Ｓ９０７で生成したベクターページ３０２に画像ページ３０４の画像データをページサイズと同サイズで挿入する。
【００６９】
Ｓ９０９にて、文書編集部２０３は、ベクターページ３０２のオブジェクトデータ及びオブジェクトリスト４００にＳ９０８で挿入した画像を画像オブジェクトとして追加する。そして、Ｓ９０４へ進む。
【００７０】
本処理フローを適用することで、ベクター文書３０１、画像文書３０３のいずれが存在する状態でもオブジェクトデータの編集が可能であり、ベクター文書３０１に存在するオブジェクトデータの更新が可能となる。本処理の後、ファイルを別名保存する場合には、図６の処理へと進む。これにより、図６で示したように、Ｓ６１０の判定によりベクター編集が行われているベクターページに対しては、画像化を行わずにオブジェクトデータを保持し続けることで、別名保存後もオブジェクトデータの編集が可能となる。
【００７１】
（画像の編集）
図１０は、文書データ３００において、ベクター文書３０１に存在する画像オブジェクト、または、画像文書３０３の画像データの編集を行う際の処理フローの一例を示す図である。例えば、メインウィンドウ１１０１上のコントロール１１１３の操作により、画像の補正が行われることで本処理が開始される。本処理フローでは特に明記しない場合、処理の主体は文書編集部２０３である。
【００７２】
Ｓ１００１にて、文書編集部２０３は、処理対象の文書データ３００の取得を行う。
【００７３】
Ｓ１００２にて、文書編集部２０３は、取得した文書データ３００を参照し、ベクター文書３０１が存在するか否かを判定する。存在する場合は（Ｓ１００２にてＹＥＳ）Ｓ１００３に進み、存在しない場合は（Ｓ１００２にてＮＯ）Ｓ１００９に進む。
【００７４】
Ｓ１００３にて、文書編集部２０３は、編集対象のベクターページ３０２のページ属性を取得する。
【００７５】
Ｓ１００４にて、文書編集部２０３は、編集対象のベクターページ３０２に存在するオブジェクトデータ４１０を取得する。
【００７６】
Ｓ１００５にて、文書編集部２０３は、処理可能な画像が存在するか否かを判定する。本処理では、Ｓ１００３で取得したページ属性のページサイズとＳ１００４で取得したオブジェクトデータ４１０の描画情報４０５を参照し、ページサイズ相当の画像（ページ画像）が存在するか否かが判定される。ページ画像が存在すると判定された場合には（Ｓ１００５にてＹＥＳ）Ｓ１００７に進み、存在しないと判定された場合には（Ｓ１００５にてＮＯ）Ｓ１００６に進む。
【００７７】
Ｓ１００６にて、文書編集部２０３は、処理対象として選択されているページが編集できない旨のメッセージを表示する。その後、本処理フローを終了する。なお、Ｓ１００６において、編集できない旨のメッセージを表示する代わりに、図１３のメッセージ１３００のような画像化を行うことで編集できるようになる旨のメッセージを通知してもよい。この場合、ユーザーによりＹｅｓボタンが押下されることで、処理対象のページを画像化し、画像に対する編集を行えるような構成にしてもよい。
【００７８】
Ｓ１００７にて、文書編集部２０３は、Ｓ１００５でページサイズ相当と判定されたページ画像をオブジェクトリスト４００から取得する。
【００７９】
Ｓ１００８にて、文書編集部２０３は、Ｓ１００７で取得したページ画像またはＳ１０１０で取得した、画像ページ３０４の画像データに画像補正などの編集を行い、結果を反映させる。その後、本処理フローを終了する。
【００８０】
Ｓ１００９にて、文書編集部２０３は、文書データ３００から画像文書３０３を取得する。
【００８１】
Ｓ１０１０にて、文書編集部２０３は、画像文書３０３を参照し、画像ページ３０４から画像データの取得を行う。その後、Ｓ１００８へ進む。
【００８２】
本処理を適用することで、ベクター文書３０１のベクターページのうちページ画像が存在するページに対しては、画像補正などの画像編集が可能となる。また、当然のことながら、画像文書が存在する場合にも画像編集が可能である。  本処理の後、ファイルを別名保存する場合には、図６の処理へと進む。これにより、図６で示したように、Ｓ６１０の判定によりベクター編集が行われていないベクターページに対しては、画像化を行うことで、別名保存後には画像としての編集が可能となる。
【００８３】
図１２（ａ）は、画像文書を含んで構成されるファイルを編集対象として開いている状態の文書データおよびオブジェクトリストを示す図である。この文書データにおいて、ベクター文書は空の状態である。そのため、オブジェクトリストも空の状態である。
【００８４】
画像文書には３ページがリンクされている。ファイルパスには、画像文書ファイルのパスが格納されている。図１２（ｂ）は、図１２（ａ）の文書データの３ページ目に対してベクターデータの編集（テキストオブジェクトの追加）を行った後の文書データの状態を示す図である。１ページ、２ページ、３ページいずれも、図９のＳ９０６〜Ｓ９０９により、新規ベクター文書が生成され、１〜３ページのベクターページに対して画像オブジェクトが挿入された状態になっている。３ページ目については、さらにＳ９０４、Ｓ９０５によりテキストオブジェクトが追加された状態になっている。
【００８５】
上述したように、本実施形態の別名保存時の処理、および文書編集の処理を適用することで、ユーザーの編集内容に応じてページ単位で別名保存後に画像化するページが切り替わる。編集を行っていないページについては画像化することで最終的な成果物としての画像編集や補正が可能となる。編集を行ったページはオブジェクトデータを保持し続けるためオブジェクトデータとしての編集が継続して可能となる。
【００８６】
＜第２の実施形態＞
次に、本発明の第２の実施形態について説明する。第１の実施形態との差異は、図６で示した文書データの別名保存の処理において、ベクターファイルフォーマットから画像ファイルフォーマットへの保存と判定された場合に、ベクターページの画像化に関する処理方法が異なる。ここでは差分のみを説明し、重複する部分については省略する。
【００８７】
第２の実施形態において、図１５に示すような描画層を持つ文書データを対象とする。図１５は、文書データの描画層について模式的に示す図である。文書データの描画層は複数の階層により構成されており、原稿層（オブジェクト描画層）の上に注釈層（注釈描画層）が重なるような状態で存在する。原稿層及び注釈層にはそれぞれオブジェクトを配置できる。つまり、本実施形態では、注釈層のオブジェクトが上位層として描画される。
【００８８】
第１の実施形態では、Ｓ６１０のようにベクター編集履歴データ５００に基づいて、画像化の実行の有無を決定していた。しかしながら、図１５に示すような２階層からなる描画層の構成を持つ文書データの場合、原稿層のオブジェクトの編集を行わず、注釈層（最も上位の層）のオブジェクトのみ編集を行う事が考えられる。このような場合に、編集の有無を優先し、別名保存時に注釈層のオブジェクトを含めてページを画像化すると、注釈の再編集ができなくなってしまう。その結果、保存後の操作性が低下してしまうことが考えられる。
【００８９】
第２の実施形態では、上記課題を解消するための形態について図１４を用いて説明する。第１の実施形態にて述べた図６と重複する部分は同じ参照番号を付す。
【００９０】
Ｓ６０９の工程の後、Ｓ１４０１にて、文書編集部２０３は、Ｓ６０７で取得した処理対象のベクターページにおいて、注釈としてのオブジェクトデータが存在するか否かを判定する。存在する場合には（Ｓ１４０１にてＹＥＳ）Ｓ１４０２に進み、存在しない場合には（Ｓ１４０１にてＮＯ）Ｓ６１１に進む。
【００９１】
Ｓ１４０２にて、文書編集部２０３は、原稿層のオブジェクトの描画内容を反映した画像データを生成する。つまり、最上位の層（注釈層）以外の層に配置されたオブジェクトの描画内容を反映した画像データが生成される。
【００９２】
Ｓ１４０３にて、文書編集部２０３は、ベクターページ及びオブジェクトリストから原稿層のオブジェクトを削除する。つまり、最上位の層（注釈層）以外の層に配置されたオブジェクトが削除される。
【００９３】
Ｓ１４０４にて、文書編集部２０３は、Ｓ１４０２で生成した画像をページサイズと同サイズでベクターページおよびオブジェクトリストに画像オブジェクトとして挿入する。つまり、Ｓ１４０２〜Ｓ１４０４を適用したページには既存の原稿オブジェクトは削除され、ページサイズと同サイズの画像オブジェクト、および、既存の注釈オブジェクトが存在する状態となる。その後、Ｓ６１５へ進む。
【００９４】
本実施形態により、文書データのオブジェクトデータの配置されている描画層に応じて別名保存時に画像化するページを切り替えることが可能となる。そのため、注釈のような編集性の高い描画層が存在するような文書データの場合に、別名保存後におけるより効率的な編集が可能となる。
【００９５】
なお、本実施形態では、オブジェクトが配置される層として２つの層を例に挙げて説明したが、これに限定するものではなく、更に多くの層から構成され、オブジェクトが重畳して配置できるものであってもよい。この場合は、最上位の層に配置されるオブジェクトに対するオブジェクトデータのみをベクター形式で保持し、最上位の層以外のオブジェクトに対して画像化して保持してもよい。
【００９６】
また、本実施形態では、最上位の層に配置されるオブジェクトの例として注釈を示したが、これに限定するものではない。編集の頻度が高いと想定される他のオブジェクトでもよいし、ユーザーが任意に設定できるようにしてもよい。
【００９７】
＜その他の実施形態＞
また、本発明は上述の実施形態の１以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００９８】
１１０…ＰＣ、２００…文書編集システム、３００…文書データ、４００…オブジェクトリスト、５００…ベクター編集履歴データ
【図１】
2019067347.tif 000003
【図２】
2019067347.tif 000004
【図３】
2019067347.tif 000005
【図４】
2019067347.tif 000006
【図５】
2019067347.tif 000007
【図６】
2019067347.tif 000008
【図７】
2019067347.tif 000009
【図８】
2019067347.tif 000010
【図９】
2019067347.tif 000011
【図１０】
2019067347.tif 000012
【図１１】
2019067347.tif 000013
【図１２】
2019067347.tif 000014
【図１３】
2019067347.tif 000015
【図１４】
2019067347.tif 000016
【図１５】
2019067347.tif 000017