(57)【要約】【課題】  既存のグラフィックス状態の影響を排除することができ、グラフィックスオブジェクトを追加する処理における計算量を減少させることができる編集処理装置を提供する。【解決手段】  編集処理装置７００は、電子文書を、各ページが実行順に配列するオブジェクト群により定義される文書ファイルとして記憶する記憶部８００と、電子文書の対象ページの読出要求に応答して、記憶部８００から、その対象ページを定義するオブジェクト群を読み出す読出部８１０と、追加するグラフィックスに関する情報の入力に応答して、オブジェクト群のうちの所定のグラフィックスオブジェクトをカプセル化するカプセル化処理部８２０と、グラフィックスオブジェクトのカプセル化に応答して、グラフィックスに関する情報からグラフィックスオブジェクトを生成し、生成したグラフィックスオブジェクトを実行順に配列するオブジェクト群の末尾に追加する編集部８３０とを含む。【選択図】  図８
2008026943.tif 000002
【特許請求の範囲】
【請求項１】
電子文書の対象ページにグラフィックスを追加する処理を実行する編集処理装置であって、
前記電子文書を、各ページが実行順に配列するオブジェクト群により定義される文書ファイルとして記憶する記憶部と、
前記電子文書の前記対象ページの読出要求に応答して、前記記憶部から、前記文書ファイルの前記対象ページを定義する前記オブジェクト群を読み出す読出部と、
追加する前記グラフィックスに関する情報の入力に応答して、前記オブジェクト群のうちの所定のグラフィックスオブジェクトをカプセル化するカプセル化処理部と、
前記グラフィックスオブジェクトのカプセル化に応答して、前記グラフィックスに関する情報からグラフィックスオブジェクトを生成し、生成した前記グラフィックスオブジェクトを前記実行順に配列する前記オブジェクト群の末尾に追加する編集部とを含む、前記所定のグラフィックスオブジェクトの影響を受けることなくグラフィックスオブジェクトを追加可能な編集処理装置。
【請求項２】
前記オブジェクト群は、前記オブジェクトの実行順序に関する情報を有する管理オブジェクトと、前記管理オブジェクトにより指し示される前記グラフィックスオブジェクトとを含み、前記グラフィックスオブジェクトは、前記グラフィックスオブジェクトを描画する命令と、前記グラフィックスオブジェクトに設定されているグラフィックス情報を変更する命令とを含む、請求項１に記載の編集処理装置。
【請求項３】
前記オブジェクトはオブジェクト識別子を含み、前記管理オブジェクトは実行順に配列する前記オブジェクト識別子をコンテンツ項目データとして含む、請求項２に記載の編集処理装置。
【請求項４】
前記カプセル化処理部は、前記グラフィックス情報を変更する命令による変更の有効範囲を制限するための制限オブジェクト対を生成し、前記制限オブジェクト対の各オブジェクト識別子を、前記管理オブジェクトの前記コンテンツ項目内に配列した、制限しようとする前記グラフィックスオブジェクトのオブジェクト識別子の前後に挿入することによりカプセル化する、請求項３に記載の編集処理装置。
【請求項５】
前記読出部が読み出した前記オブジェクト群に前記制限オブジェクト対の第１制限オブジェクトまたは第２制限オブジェクトが含まれているか否かを判定する制限オブジェクト判定部と、
前記制限オブジェクト判定部が、前記第１制限オブジェクトが含まれていると判定した場合に、ネスト数を１つ増加させ、前記第２制限オブジェクトが含まれていると判定した場合に、前記ネスト数を１つ減少させるネスト数増減部と、
前記ネスト数が予め設定される限界値より小さいか否か、および、前記ネスト数が負の値であるか否かを判定する第１ネスト数判定部と、
前記第１ネスト数判定部が、前記ネスト数が前記限界値より大きいと判定した場合、または、前記ネスト数が前記負の値であると判定した場合に、エラーメッセージを通知する第１エラー処理部とを含む、請求項４に記載の編集処理装置。
【請求項６】
前記オブジェクト群の前記ネスト数が０か否かを判定する第２ネスト数判定部と、
前記第２ネスト数判定部が０以外であると判定した場合に、エラーメッセージを通知する第２エラー処理部を含む、請求項５に記載の編集処理装置。
【請求項７】
前記オブジェクト群の前記ネスト数が０か否かを判定する第２ネスト数判定部と、
前記第２ネスト数判定部が０以外であると判定した場合に、前記ネスト数に応じた前記第２制限オブジェクトを生成し、前記第２制限オブジェクトのオブジェクト識別子を前記コンテンツ項目の前記第１制限オブジェクトのオブジェクト識別子と対になるように挿入する識別子挿入部を含む、請求項５に記載の編集処理装置。
【請求項８】
電子文書の対象ページにグラフィックスを追加する処理を実行する編集処理装置の制御方法であって、
前記電子文書の前記対象ページの読出要求に応答して、前記編集処理装置が備える読出部により、該編集処理装置が備える記憶部から、各ページが実行順に配列したオブジェクト群により定義される文書ファイルの前記対象ページを定義する該オブジェクト群を読み出すステップと、
追加する前記グラフィックスに関する情報の入力に応答して、前記編集処理装置が備えるカプセル化処理部により、前記オブジェクト群のうちの所定のグラフィックスオブジェクトをカプセル化するステップと、
前記グラフィックスオブジェクトのカプセル化に応答して、前記編集処理装置が備える編集部により、前記グラフィックスに関する情報から追加するグラフィックスオブジェクトを生成し、生成した前記グラフィックスオブジェクトを前記実行順に配列する前記オブジェクト群の末尾に追加するステップとを含む、前記所定のグラフィックスオブジェクトの影響を受けることなくグラフィックスオブジェクトを追加可能とする、編集処理装置の制御方法。
【請求項９】
前記オブジェクト群は、前記オブジェクトの実行順序に関する情報を有する管理オブジェクトと、前記管理オブジェクトにより指し示される前記グラフィックスオブジェクトとを含み、前記グラフィックスオブジェクトは、前記グラフィックスオブジェクトを描画する命令と、前記グラフィックスオブジェクトに設定されているグラフィックス情報を変更する命令とを含む、請求項８に記載の編集処理装置の制御方法。
【請求項１０】
前記オブジェクトはオブジェクト識別子を含み、前記管理オブジェクトは実行順に配列する前記オブジェクト識別子をコンテンツ項目データとして含む、請求項９に記載の編集処理装置の制御方法。
【請求項１１】
前記カプセル化するステップは、前記グラフィックス情報を変更する命令による変更の有効範囲を制限するための制限オブジェクト対を生成するステップと、前記制限オブジェクト対の各オブジェクト識別子を、前記管理オブジェクトの前記コンテンツ項目内に配列した、制限しようとする前記グラフィックスオブジェクトのオブジェクト識別子の前後に挿入するステップとを含む、請求項１０に記載の編集処理装置の制御方法。
【請求項１２】
前記読出部が読み出した前記オブジェクト群に前記制限オブジェクト対の第１制限オブジェクトまたは第２制限オブジェクトが含まれているか否かを判定するステップと、
前記第１制限オブジェクトが含まれていると判定した場合に、ネスト数を１つ増加させるステップと、
前記第２制限オブジェクトが含まれていると判定した場合に、前記ネスト数を１つ減少させるステップと、
前記ネスト数が予め設定される限界値より小さいか否かを判定するステップと、
前記ネスト数が負の値であるか否かを判定するステップと、
前記ネスト数が前記限界値より大きいと判定した場合、または、前記ネスト数が前記負の値であると判定した場合に、エラーメッセージを通知するステップを含む、請求項１１に記載の編集処理装置の制御方法。
【請求項１３】
前記オブジェクト群の前記ネスト数が０か否かを判定するステップと、
前記第２ネスト数判定部が０以外であると判定した場合に、エラーメッセージを通知するステップを含む、請求項１２に記載の編集処理装置の制御方法。
【請求項１４】
前記オブジェクト群の前記ネスト数が０か否かを判定するステップと、
前記第２ネスト数判定部が０以外であると判定した場合に、前記ネスト数に応じた前記第２制限オブジェクトを生成するステップと、
前記第２制限オブジェクトのオブジェクト識別子を前記コンテンツ項目の前記第１制限オブジェクトのオブジェクト識別子と対になるように挿入するステップとを含む、請求項１２に記載の編集処理装置の制御方法。
【請求項１５】
請求項８〜１４のいずれか１項に記載の編集処理装置の制御方法を実行するためのコンピュータ可能なプログラム。
【請求項１６】
請求項８〜１４のいずれか１項に記載の編集処理装置の制御方法を実行するためのコンピュータ可読なプログラムが記録された記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子文書の対象ページにグラフィックスを追加する処理を実行する編集処理装置、編集処理装置の制御方法、該制御方法を実現するためのコンピュータ可能なプログラムおよび該プログラムが記録された記録媒体に関する。
【背景技術】
【０００２】
異なるプラットフォーム上で、あるいは、同じアプリケーションの異なるバージョン間で、文書の閲覧、印刷等を可能にする共通の文書交換フォーマットとしてＰＤＦ（Portable
Document Format）が使用されている。ＰＤＦで作成される文書は、「文字」部分と、形状等を表す「グラフィックス」部分とから構成され、「文字」は、検索や他のアプリケーションへの再利用を可能にしている。
【０００３】
具体的には、ＰＤＦファイル１００は、図１に示すように、ファイルヘッダ１１０、ファイルボディ１２０、相互参照表１３０、ファイルトレーラ１４０の４つの部分から構成される。ファイルヘッダ１１０は、データの先頭に付加されるデータ自体に関する情報で、各ページの先頭に確保された領域に文書作成日や作成者等の情報をヘッダ内容として定義する。ファイルボディ１２０は、ＰＤＦ文書の内容を定義する。なお、ファイルボディ１２０の中のデータは、オブジェクトが配列した形で定義される（例えば、特許文献１参照）。相互参照表１３０は、ランダムアクセスを可能にするために、各オブジェクトの位置を一覧にしたものである。ファイルトレーラ１４０は、ファイルの終端を示すフッタである。ＰＤＦファイル１００は、ファイルヘッダ１１０、ファイルボディ１２０、相互参照表１３０、ファイルトレーラ１４０がセットとなって、このセットが繰り返される構造となっている。
【０００４】
ＰＤＦファイル１００のファイルボディ１２０の詳細を、図２に示す記述イメージを参照して詳細に説明する。ファイルボディ１２０は、上述したように、オブジェクト（Ｘobj〜endobj）の配列という形で定義される。Ｘは、オブジェクトを識別するための数字、文字、記号、それらの組み合わせである。図２に示す実施形態では、Ｘは、「３０」、「４０」、「５０」という数字からなる識別子ＩＤとされている。各オブジェクト２００、２１０、２２０は、このＩＤを利用することで、他のオブジェクトを参照することができる。図２に示す実施形態では、「３０」というＩＤを有するオブジェクト２００は、コンテンツ項目（Contents）として「４０Ｒ」、「５０Ｒ」という形式の項目を有している。これら「４０Ｒ」、「５０Ｒ」は、オブジェクト識別子４０および５０をそれぞれ参照することを示している。
【０００５】
次に、ファイルボディ１２０がグラフィックスを描画する命令等で定義され、そのグラフィックスを描画する場合について図３を参照して説明する。図３（ａ）、（ｂ）、（ｃ）はそれぞれ、ファイルボディ１２０の記述イメージ、マージ（結合）されたオブジェクトのイメージ、描画イメージを示す。
【０００６】
ＰＤＦファイル１００の１つのページに関する情報は、ファイルボディ１２０の１つのオブジェクト、ここでは「３０obj」が管理しており、そのページの描画内容に関する情報も、「３０obj」中のコンテンツ項目で管理している。コンテンツ項目が指し示す先（参照先）のオブジェクト、ここでは「４０obj」、「５０obj」はコンテンツストリームと呼ばれ、それぞれの中にはグラフィックスオブジェクトを描画する命令やグラフィックスの状態を変更する命令列が定義されている。なお、この命令は圧縮されている場合もある。
【０００７】
図３（ｃ）に示すイメージを描画するには、図３（ａ）の「３０obj」中に示されるコンテンツ項目に記述されたコンテンツストリームを順にマージし、図３（ｂ）に示す１つのコンテンツストリームを生成し、閲覧可能なアプリケーション（例えば、Ｖｉｅｗｅｒ）でマージされたコンテンツストリームの先頭から順に命令を解釈して描画内容を決定し、描画する。
【０００８】
コンテンツストリーム中の命令には、主として２つの命令がある。１つは、グラフィックスオブジェクトを描画する命令で、もう１つは、グラフィックス状態を変更する命令である。グラフィックスオブジェクトを描画する命令は、図３（ａ）および（ｂ）に示す「グラフィックスオペレータを使用してグラフィックスオブジェクト１を既存のオブジェクトの背面に描画する命令」、「グラフィックスオペレータを使用してグラフィックスオブジェクト２を既存のオブジェクトの背面に描画する命令」、「グラフィックスオブジェクトを使用して既存のオブジェクトの背面に描画する命令」である。これらの命令は、順に解釈されるため、順にグラフィックスオブジェクトが描画される。各グラフィックスオブジェクトが描画される際、その命令の、既存のグラフィックスオブジェクトの背面あるいは前面のどちらに描画するかの定義に従って実行される。
【０００９】
グラフィックス状態を変更する命令は、色や座標系等の情報の変更を実行する命令である。この命令は、設定された内容が再度変更されるか、グラフィックス状態変更の有効範囲（スコープ）外になるまで有効とされる。図３（ｂ）に示すマージされたコンテンツストリーム中でグラフィックス状態変更のスコープが定義されていない場合、グラフィックスオブジェクトを描画する命令は、直前で設定されているグラフィックス状態を変更する命令３だけでなく、グラフィックス状態を変更する命令１、２の変更内容に影響を受ける可能性がある。例えば、グラフィックス状態を変更する命令１で座標系に関する変更が施されない場合、グラフィックスオブジェクトを描画する命令では、グラフィックス状態を変更する命令１で設定された座標系で処理が実行される。
【００１０】
ここで、上記スコープについて説明する。グラフィックス状態の変更を行うと、変更後からコンテンツストリームの最後まで有効になる。例えば、図４に示すコンテンツストリーム中でグラフィックス状態を変更する命令１のスコープは、変更後からコンテンツストリームの最後までである。同様に、グラフィックス状態を変更する命令２のスコープは、変更後からコンテンツストリームの最後までである。このため、グラフィックス状態を変更する命令１で設定されたグラフィックス状態の影響を受けて、グラフィックスオブジェクトを描画する命令２、３がともに実行される。
【００１１】
ＰＤＦでは、グラフィックス状態の変更のスコープを局所化するために、ｑオペレータとＱオペレータの２種類のオペレータが準備されている。ｑオペレータと、そのｑオペレータに対応するＱオペレータで囲まれた区間内で変更されたグラフィックス状態については、Ｑオペレータ後の部分では無効となり、ｑオペレータ以前のグラフィックス状態に戻される。これらｑオペレータおよびＱオペレータはネストさせること（複数の命令群を１まとまりの単位にくくること）ができる。ネスト数、すなわち１まとまりにくくれる単位数は、ＰＤＦの仕様上、２８に制限されている。
【００１２】
図５を参照して詳細に説明すると、ｑオペレータとＱオペレータとにより囲まれた区間でのグラフィックス状態を変更する命令２のスコープは、その命令２の終了後からＱオペレータまでとなる。このため、グラフィックスオブジェクトを描画する命令３には影響を及ぼさない。このように、ｑオペレータおよびＱオペレータを使用することで、グラフィックス状態を乱すことなく、一時的にグラフィックスを変更することができる。
【００１３】
図６は、既存のＰＤＦ文書のページにグラフィックスを追加する変更を行う場合の記述イメージ、グラフィックスオブジェクトのイメージ、描画イメージを示した図である。ここでは、「６０obj」を追加する場合を示している。このグラフィックスオブジェクトを追加する場合、２つの処理が必要となる。すなわち、追加するグラフィックスオブジェクトを描画する命令を含んだオブジェクトを生成する処理と、そのページの情報を保持する「３０obj」中のコンテンツ項目の１項目として追加する処理とである。
【００１４】
これらの処理を実行する場合、以下のことに注意しなければならない。上記グラフィックスオブジェクトを描画する命令は、コンテンツストリーム中のその前に存在するグラフィックス状態を変更する命令１、２、３の影響を受ける可能性があることである。このため、意図した通りに、追加したグラフィックスオブジェクトを描画するためには、何らかの方法で、既存のグラフィックス状態の影響を排除する必要がある。
【００１５】
これまでに知られた方法としては、例えば、以下の処理を順に行う方法がある。まず、第１の処理として、コンテンツストリーム中のグラフィックスオブジェクトを描画する命令を解析して、現在有効なグラフィックス状態を計算する。第２の処理として、その結果を使用し、追加するグラフィックスオブジェクトを描画する命令の前に、現在のグラフィックス状態の影響を排除するようなグラフィックス状態を変更する命令を追加する。
【００１６】
ここで、既存のグラフィックス状態が次の順で座標系が変更されているＰＤＦ文書を処理する場合について具体的に説明する。第１の変更は、座標系をｘ軸方向に１０単位移動させ、ｙ軸方向に２０単位平行移動させるものである。第２の変更は、座標系を３０°回転させるものである。
【００１７】
コンテンツストリームを解析し、現在有効なグラフィックス状態が、座標系をｘ軸方向に１０単位移動させ、ｙ軸方向に２０単位平行移動させ、さらに、座標系を３０°回転させた状態であると解析する。次に、その結果を基に、既存のグラフィックス状態の影響を排除するために、座標系をデフォルト状態に戻す命令を追加する。この命令は、座標系を−３０°回転させ、さらに、座標系をｘ軸方向に−１０単位移動させ、ｙ軸方向に−２０単位平行移動させるものである。このようにして、既存のグラフィックス状態の影響を排除することができる。
【００１８】
その他、ヘッダ、フッタを挿入する際、電子文書のヘッダ、フッタを挿入する場所を予め調査し、フッタを挿入する場所に画像が存在する場合のみ空白領域を追加し、必要以上な画像領域の追加処理を自動で行うことができる技術が提案されている（特許文献２参照）。この技術では、ヘッダ、フッタを挿入する領域の画像が無いかを調査し、ＰＤＦ文書の１ページ分のすべての情報を展開し、特定の領域について調査を行い、この領域内に画像があれば、空白領域を挿入し、領域内に画像がなければそのままヘッダ、フッタを挿入する。これにより、ＰＤＦ文書の対象ページに、ヘッダ、フッタといったオブジェクトを追加することができる。
【特許文献１】特開２００３−８４９４０号公報
【特許文献２】特開２００４−３４８４２８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１９】
ＰＤＦ文書では、グラフィックス状態変更の有効範囲（スコープ）を、ｑオペレータおよびＱオペレータを用いて限定することができるが、現状ではそれほど有効に利用されていない。従来においては、既存のグラフィックスの影響を、対象ページのコンテンツストリーム中のグラフィックスを解析し、その結果を利用して、既存のグラフィックス状態の依存を排除する命令を埋め込むことにより、排除している。しかしながら、このような処理では、多くの計算量が必要となるといった問題があった。
【００２０】
また、上記特許文献２の技術で、オブジェクトを追加する場合、ＰＤＦ文書の１ページ分すべての情報を展開した後に処理する必要があり、この場合、対象ページのコンテンツストリーム中のグラフィックス状態の解析を行う必要があり、この点においても、多くの計算量が必要となるといった問題があった。
【００２１】
そこで、多くの計算量を必要とすることなく、既存のグラフィックス状態の影響を排除することができる装置、方法、その方法を実現するためのプログラム、そのプログラムが記録された記録媒体の提供が望まれていた。
【課題を解決するための手段】
【００２２】
本発明は、上記問題に鑑み、対象ページの既存のコンテンツストリーム全体をグラフィックス状態スタックオペレータ（上記のｑオペレータとＱオペレータ）を利用してカプセル化する手段と、グラフィックスオペレータを記述して追加するグラフィックスオブジェクトを生成し、カプセル化したコンテンツストリームの末尾にそれを追加する手段とを採用する。このように、コンテンツストリーム全体をカプセル化し、追加するグラフィックスオブジェクトを末尾に追加する構成を採用することで、コンテンツストリーム中のグラフィックス状態を解析する必要がなくなるため、計算量を減少させることができ、また、グラフィックスオペレータを追加する部分のグラフィックス状態をデフォルト状態として保証することができるため、既存のグラフィックス状態の影響を排除することができる。
【００２３】
すなわち、本発明によれば、電子文書の対象ページにグラフィックスを追加する処理を実行する編集処理装置であって、
前記電子文書を、各ページが実行順に配列するオブジェクト群により定義される文書ファイルとして記憶する記憶部と、
前記電子文書の前記対象ページの読出要求に応答して、前記記憶部から、前記文書ファイルの前記対象ページを定義する前記オブジェクト群を読み出す読出部と、
追加する前記グラフィックスに関する情報の入力に応答して、前記オブジェクト群のうちの所定のグラフィックスオブジェクトをカプセル化するカプセル化処理部と、
前記グラフィックスオブジェクトのカプセル化に応答して、前記グラフィックスに関する情報からグラフィックスオブジェクトを生成し、生成した前記グラフィックスオブジェクトを前記実行順に配列する前記オブジェクト群の末尾に追加する編集部とを含む編集処理装置が提供できる。
【００２４】
前記オブジェクト群は、前記オブジェクトの実行順序に関する情報を有する管理オブジェクトと、前記管理オブジェクトにより指し示される前記グラフィックスオブジェクトとを含み、前記グラフィックスオブジェクトは、前記グラフィックスオブジェクトを描画する命令と、前記グラフィックスオブジェクトに設定されているグラフィックス情報を変更する命令とを含む。
【００２５】
前記オブジェクトはオブジェクト識別子を含み、前記管理オブジェクトは実行順に配列する前記オブジェクト識別子をコンテンツ項目データとして含む。
【００２６】
前記カプセル化処理部は、前記グラフィックス情報を変更する命令による変更の有効範囲を制限するための制限オブジェクト対を生成し、前記制限オブジェクト対の各オブジェクト識別子を、前記管理オブジェクトの前記コンテンツ項目内に配列した、制限しようとする前記グラフィックスオブジェクトのオブジェクト識別子の前後に挿入することによりカプセル化する。
【００２７】
上記装置は、前記読出部が読み出した前記オブジェクト群に前記制限オブジェクト対の第１制限オブジェクトまたは第２制限オブジェクトが含まれているか否かを判定する制限オブジェクト判定部と、前記制限オブジェクト判定部が、前記第１制限オブジェクトが含まれていると判定した場合に、ネスト数を１つ増加させ、前記第２制限オブジェクトが含まれていると判定した場合に、前記ネスト数を１つ減少させるネスト数増減部と、前記ネスト数が予め設定される限界値より小さいか否か、および、前記ネスト数が負の値であるか否かを判定する第１ネスト数判定部と、前記第１ネスト数判定部が、前記ネスト数が前記限界値より大きいと判定した場合、または、前記ネスト数が前記負の値であると判定した場合に、エラーメッセージを通知する第１エラー処理部とを含むことができる。
【００２８】
また、前記オブジェクト群の前記ネスト数が０か否かを判定する第２ネスト数判定部を含むことができる。さらに、前記第２ネスト数判定部が０以外であると判定した場合に、エラーメッセージを通知する第２エラー処理部を含むことができる。また、前記第２ネスト数判定部が０以外であると判定した場合に、前記ネスト数に応じた前記第２制限オブジェクトを生成し、前記第２制限オブジェクトのオブジェクト識別子を前記コンテンツ項目の前記第１制限オブジェクトのオブジェクト識別子と対になるように挿入する識別子挿入部を含むことができる。
【００２９】
本発明によれば、電子文書の対象ページに既存のグラフィックスに影響を与えることなくグラフィックスを追加する処理を実行する編集処理装置の制御方法も提供できる。この方法では、前記電子文書の前記対象ページの読出要求に応答して、記憶部から、各ページが実行順に配列したオブジェクト群により定義される文書ファイルの前記対象ページを定義する該オブジェクト群を読み出すステップと、
追加する前記グラフィックスに関する情報の入力に応答して、前記オブジェクト群のうちの所定のグラフィックスオブジェクトをカプセル化するステップと、
前記グラフィックスオブジェクトのカプセル化に応答して、前記グラフィックスに関する情報から追加するグラフィックスオブジェクトを生成し、生成した前記グラフィックスオブジェクトを前記実行順に配列する前記オブジェクト群の末尾に追加するステップとを含む。
【００３０】
前記オブジェクト群は、前記オブジェクトの実行順序に関する情報を有する管理オブジェクトと、前記管理オブジェクトにより指し示される前記グラフィックスオブジェクトとを含み、前記グラフィックスオブジェクトは、前記グラフィックスオブジェクトを描画する命令と、前記グラフィックスオブジェクトに設定されているグラフィックス情報を変更する命令とを含む。前記オブジェクトはオブジェクト識別子を含み、前記管理オブジェクトは実行順に配列する前記オブジェクト識別子をコンテンツ項目データとして含む。
【００３１】
前記カプセル化するステップは、前記グラフィックス情報を変更する命令による変更の有効範囲を制限するための制限オブジェクト対を生成するステップと、前記制限オブジェクト対の各オブジェクト識別子を、前記管理オブジェクトの前記コンテンツ項目内に配列した、制限しようとする前記グラフィックスオブジェクトのオブジェクト識別子の前後に挿入するステップとを含むことができる。
【００３２】
上記制御方法は、前記読出部が読み出した前記オブジェクト群に前記制限オブジェクト対の第１制限オブジェクトまたは第２制限オブジェクトが含まれているか否かを判定するステップと、前記第１制限オブジェクトが含まれていると判定した場合に、ネスト数を１つ増加させるステップと、前記第２制限オブジェクトが含まれていると判定した場合に、前記ネスト数を１つ減少させるステップと、前記ネスト数が予め設定される限界値より小さいか否かを判定するステップと、前記ネスト数が負の値であるか否かを判定するステップと、前記ネスト数が前記限界値より大きいと判定した場合、または、前記ネスト数が前記負の値であると判定した場合に、エラーメッセージを通知するステップを含むことができる。
【００３３】
また、前記オブジェクト群の前記ネスト数が０か否かを判定するステップを含むことができる。さらに、前記第２ネスト数判定部が０以外であると判定した場合に、エラーメッセージを通知するステップを含むことができる。また、前記第２ネスト数判定部が０以外であると判定した場合に、前記ネスト数に応じた前記第２制限オブジェクトを生成するステップと、前記第２制限オブジェクトのオブジェクト識別子を前記コンテンツ項目の前記第１制限オブジェクトのオブジェクト識別子と対になるように挿入するステップを含むことができる。
【００３４】
さらに、本発明によれば、上記制御方法を実行するためのコンピュータ可能なプログラムおよび該プログラムが記録された記録媒体を提供することができる。
【発明の効果】
【００３５】
本発明によれば、既存のグラフィックス状態の影響を排除することができる。また、グラフィックスオブジェクトを追加する処理における計算量を減少させ、計算時間を短縮することができる。
【００３６】
また、ＰＤＦ仕様に従わない入力についてはエラー処理を実行し、予めオブジェクトの追加処理の対象外とすることができる。また、処理途中でもエラー処理を実行し、ＰＤＦ仕様外のファイル出力を防止することができる。
【００３７】
さらに、ＰＤＦ仕様に従わない入力ファイルであっても、Ｑオペレータによる閉じ忘れのみの要因によるものである場合には、Ｑオペレータを含むオブジェクトを必要数生成し、オブジェクトの追加処理を可能とするＰＤＦファイル数を増加させることができる。
【発明を実施するための最良の形態】
【００３８】
本発明を、図面を参照して詳細に説明するが、本発明は図面に示される実施形態に限定されるものではない。図７は、本発明の編集処理装置の実施形態を示した図である。図７では、編集処理装置がパーソナルコンピュータとされている。図７に示す編集処理装置７００は、各処理を実行するプロセッサ７１０と、電子文書を文書ファイルとして記憶するとともに、プロセッサ７１０に各処理を実行させるプログラムを記憶するメモリおよびハードディスク等の記憶装置７２０と、電子文書の各ページ、各ページに描画されるグラフィックスオブジェクトを表示するディスプレイ等の表示装置７３０と、文書ファイルおよびオブジェクト群の読出要求、追加するグラフィックスに関する情報を入力するためのキーボードやマウス等の入力装置７４０とを含んで構成される。
【００３９】
電子文書はＰＤＦ文書とすることができ、例えば、文書生成アプリケーションを使用し、ユーザが入力装置７４０を使用して文字を入力し、図形を作成することにより作成することができる。作成した文書はＰＤＦ変換アプリケーションを使用してＰＤＦ文書を作成することができる。文書生成アプリケーション、ＰＤＦ変換アプリケーションおよび作成されたＰＤＦ文書はいずれも、記憶装置７２０に記憶することができる。
【００４０】
ＰＤＦ文書は少なくとも１ページからなり、各ページはグラフィックスを含むことができる。既にグラフィックスを含むページに、グラフィックスを追加する場合、その追加するグラフィックスに関する情報を入力装置７４０により入力することができる。プロセッサ７１０は、グラフィックスを追加する処理を実行するためのプログラムを実行し、既存のグラフィックスオブジェクトをカプセル化し、入力された情報からグラフィックスオブジェクトを生成し、既存のグラフィックスオブジェクトに追加する。グラフィックスオブジェクトが追加された文書ファイルは記憶装置７２０に記憶される。ここでは、上書き保存することができる。この文書ファイルは、Ｖｉｅｗｅｒといった閲覧ソフトウェアを使用して表示装置７３０に表示させることができる。表示装置７３０に表示された文書は、既存のグラフィックスオブジェクトに、追加のグラフィックスオブジェクトがマージされ、描画された文書である。
【００４１】
編集処理装置７００は、パーソナルコンピュータに限らず、プロセッサ７１０、記憶装置７２０、表示装置７３０、入力装置７４０を備えるものであれば、プリンタ、ファックス装置、スキャナ装置、これらの機能を備える複合機等とすることもできる。
【００４２】
図８を参照して、編集処理装置の構成を詳細に説明する。編集処理装置７００は、記憶部８００と、読出部８１０と、カプセル化処理部８２０と、編集部８３０とを含んで構成される。記憶部８００は、ＰＤＦ文書等の電子文書を文書ファイルとして記憶する。この記憶部８１０は、図７に示す記憶装置７２０に相当するものである。電子文書のファイルボディ中のデータは、オブジェクトの配列という形で定義される。このことから、電子文書の各ページは、実行順に配列するオブジェクト群により定義されるものである。オブジェクト群は、オブジェクトの実行順序に関する情報を有する管理オブジェクトと、その管理オブジェクトにより指し示されるグラフィックスオブジェクトと、その他のオブジェクトとを含むことができる。オブジェクトは、そのオブジェクトを識別するためのオブジェクト識別子を含み、命令やデータ等を含むことができる。
【００４３】
管理オブジェクトは、実行順に配列するオブジェクト識別子をコンテンツ項目データとして含む。各オブジェクト識別子は各オブジェクトを指し示す。グラフィックスオブジェクトは、１つに限らず、２以上含むことができる。グラフィックスオブジェクトは、グラフィックスオブジェクトを描画する命令と、グラフィックスオブジェクトに設定されているグラフィックス情報を変更する命令とを含むことができる。グラフィックスオブジェクトを描画する命令はグラフィックスオペレータを使用して記述された命令とすることができる。グラフィックス情報を変更する命令はグラフィックス状態を変更する命令で、設定されている色や座標系等の情報をパラメータとして含み、そのパラメータを変更する命令とすることができる。
【００４４】
読出部８１０は、電子文書の対象ページの読出要求に応答して、記憶部８００から、文書ファイルの対象ページを定義するオブジェクト群を読み出す。読出要求はユーザが入力することにより受け取ることができる。例えば、ユーザが文書ファイルのファイル名をクリックする等の入力を受けて、そのファイル名に基づき記憶部８００を検索し、該当するファイル名の文書ファイルを読み出すことができる。また、ユーザによる対象ページの指定を受けて、その指定に基づき、そのページを定義するオブジェクト群を読み出すことができる。
【００４５】
カプセル化処理部８２０は、追加するグラフィックスに関する情報の入力に応答して、オブジェクト群のうちの所定のグラフィックスオブジェクトをカプセル化する。具体的には、グラフィックス状態変更、すなわちグラフィックス情報を変更する命令による変更の有効範囲を制限するための制限オブジェクト対を生成し、制限オブジェクト対の各オブジェクト識別子を、管理オブジェクトのコンテンツ項目内に配列した、制限しようとするグラフィックスオブジェクトのオブジェクト識別子の前後に挿入することによりカプセル化する。
【００４６】
制限オブジェクト対は、第１制限オブジェクトと、第２制限オブジェクトとから構成することができる。第１制限オブジェクトは、グラフィックス情報を変更する命令による変更の有効範囲の一方（先頭側）を定義するｑオペレータを含む。第２制限オブジェクトは、他方（末尾側）を定義するＱオペレータを含む。これらの制限オブジェクトは、ｑオペレータおよびＱオペレータを記述することで生成することができる。ＰＤＦでは、上記のように、グラフィックス状態の変更のスコープを局所化するために、ｑオペレータとＱオペレータの２種類のオペレータが準備されている。ｑオペレータとそのｑオペレータに対応するＱオペレータで囲まれた区間内で変更されたグラフィックス状態については、Ｑオペレータ後の部分では無効となり、ｑオペレータ以前のグラフィックス状態に戻される。これらｑオペレータおよびＱオペレータはネストさせること（複数の命令群を１まとまりの単位にくくること）ができる。
【００４７】
編集部８３０は、グラフィックスオブジェクトのカプセル化に応答して、グラフィックスに関する情報からグラフィックスオブジェクトを生成し、生成したグラフィックスオブジェクトを実行順に配列するオブジェクト群の末尾に追加する。追加グラフィックスオブジェクトは、上記のように、グラフィックスオペレータを記述することにより生成することができる。グラフィックスオブジェクトが文書ファイルに追加された後は、上書き保存する等して記憶装置７２０に記憶される。これら読出部８１０、カプセル化処理部８２０、編集部８３０はこれらの処理を実行するためのプログラムを記憶装置７２０から読み出し、プロセッサ７１０が実行することによりそれら各部として機能させることができる。
【００４８】
編集処理装置７００は、さらに、制限オブジェクト判定部と、ネスト数増減部と、第１ネスト数判定部と、第１エラー処理部と、第２ネスト数判定部と、第２エラー処理部と、識別子挿入部とを含むことができる。上記各部と同様、プログラムをプロセッサ７１０が実行することによりそれら各部として機能させることができる。
【００４９】
制限オブジェクト判定部は、読出部８１０が読み出したオブジェクト群に制限オブジェクト対の第１制限オブジェクトまたは第２制限オブジェクトが含まれているか否かを判定する。制限オブジェクト判定部が、第１制限オブジェクトが含まれていると判定した場合に、ネスト数増減部は、ネスト数を１つ増加させ、第２制限オブジェクトが含まれていると判定した場合に、ネスト数増減部は、ネスト数を１つ減少させる。ここで、ネストとは、あるルーチンやデータブロックの中に、別のルーチンやデータブロックが埋め込まれることをいい、ネスト数はこの埋め込まれた別のルーチンやデータブロックの数をいう。本発明では、ネスト数はｑオペレータとＱオペレータとで囲まれた部分の数を意味する。
【００５０】
第１ネスト数判定部は、ネスト数が予め設定される限界値より小さいか否か、および、ネスト数が負の値であるか否かを判定する。限界値は、ＰＤＦ文書の場合、ＰＤＦ仕様上、最大ネスト数２８から１を引いた２７である。なお、ここで１を差し引くのは、オブジェクトを追加処理するためには１つのｑオペレータが追加される必要があり、その際、ネスト数が１つ増加してもエラーにならないようにするためである。基本的に、ｑオペレータとＱオペレータとで適切に囲まれていればネスト数の増減が相殺されて０となる。第１エラー処理部は、第１ネスト数判定部が、ネスト数が前記限界値より大きいと判定した場合、または、ネスト数が負の値であると判定した場合に、エラーメッセージを通知する等の処理を実行する。エラーメッセージは、表示装置７３０に表示することができる。エラー処理としては、グラフィックスの追加処理を停止することができる。
【００５１】
第２ネスト数判定部は、オブジェクト群のネスト数が０か否かを判定する。上記のように、適切に囲まれていればネスト数は０となる。第２エラー処理部は、第１エラー処理部と同様、第２ネスト数判定部が０以外であると判定した場合に、エラーメッセージを通知する等の処理を実行する。本発明では、第２エラー処理部に代えて、第２ネスト数判定部が０以外であると判定した場合に、ネスト数に応じた第２制限オブジェクトを生成し、第２制限オブジェクトのオブジェクト識別子をコンテンツ項目の第１制限オブジェクトのオブジェクト識別子と対になるように挿入する識別子挿入部を含むことができる。
【００５２】
図９に示す各イメージを参照して、グラフィックスを追加する処理を説明する。まず、対象ページのオブジェクト群の所定のグラフィックスオブジェクト、ここでは「４０obj」、「５０obj」というコンテンツストリーム中で定義された命令列を、「７０obj」、「８０obj」というオブジェクトで定義されたｑオペレータ、Ｑオペレータで囲み、それらオブジェクトをカプセル化する。このようにすることで、既存のコンテンツストリーム中でのグラフィックス状態の変更をカプセル化することができる。なお、追加するグラフィックスオブジェクトは、コンテンツストリームに続いてグラフィックスオペレータを記述することにより生成することができる。具体的には、「５０obj」の後に「６０obj」として追加される。また、「６０obj」は、「３０obj」で定義されるコンテンツ項目に、Ｑオペレータを含む「８０obj」の後に「６０Ｒ」の形式で追加される。この場合のオブジェクト識別子は「６０」である。オブジェクトは管理オブジェクトである「３０obj」のコンテンツ項目にしたがって実行される。すなわち、「７０」で識別される「７０obj」、「４０」で識別される「４０obj」、「５０」で識別される「５０obj」、「８０」で識別される「８０obj」、「６０」で識別される「６０obj」の順に実行される。
【００５３】
図９に示す実施形態では、グラフィックスオブジェクト１〜４が順に描画される。その際、ｑオペレータとＱオペレータとで囲まれる部分においては、変更命令１は、グラフィックスオブジェクト１〜３を描画する命令に対し、影響を及ぼし、変更命令２は、グラフィックスオブジェクト２、３を描画する命令に対し、影響を及ぼし、変更命令３は、グラフィックスオブジェクト３を描画する命令に対し、影響を及ぼす。これに対し、上記２つのオペレータで囲まれる部分外のグラフィックスオブジェクト４を描画する命令は、変更命令１〜３の影響は受けず、変更命令４のみの影響を受ける。このように、ｑオペレータとＱオペレータとで囲み、カプセル化することで、カプセル化された範囲内にある変更命令の影響を受けることなく、グラフィックスオブジェクトを追加することができる。また、このグラフィックスオブジェクトの追加により、対象ページにグラフィックスを追加することができる。
【００５４】
図１０を参照して、グラフィックを追加する編集処理装置の制御方法を説明する。図１０に示す処理フローでは、処理が開始され（Ｓ１０００）、編集対象のＰＤＦ文書の読出要求を受けて、記憶部８００からそのＰＤＦ文書の文書ファイルを読み出す（Ｓ１０１０）。次に、対象ページのページ指定を受けて、そのページを構成するオブジェクト群を読み出す（Ｓ１０２０）。オブジェクト群は、図９に示すように、管理オブジェクト、複数のグラフィックスオブジェクトから構成される。図１０に示す実施形態では、既にｑオペレータを含むオブジェクト、Ｑオペレータを含むオブジェクトが含まれているか否か、ｑオペレータに対するＱオペレータが設けられているかどうかを、ネスト関係およびネスト数によりチェックする（Ｓ１０３０）。この処理の詳細については後述する。追加するグラフィックスに関する情報の入力を受ける（Ｓ１０４０）。この情報の入力を受け、カプセル化処理を実行し、グラフィックスオブジェクトを生成して追加する処理を実行し（Ｓ１０５０）、その追加する処理の終了を受けて処理を終了する（Ｓ１０６０）。
【００５５】
次に、図１１および図１２を参照して、図１０に示すＳ１０３０の処理を詳細に説明する。図１１では、対象ページのオブジェクト群を読み出し、取得することから開始する（Ｓ１１００）。オブジェクト群は、読出部８１０により読み出される。オブジェクト群は、管理オブジェクトを含んでおり、この管理オブジェクトのコンテンツ項目は、実行順に配列するオブジェクト識別子を含んでいる。この実行順にループを開始し、すべてのコンテンツストリーム（オブジェクト）に対するネスト数の確認処理が終了したか否か判定する（Ｓ１１１０）。すべてのコンテンツストリームの処理が終了していない場合、実行順位が上位のオブジェクト識別子に対応するオブジェクトから順に１つずつ取り出す（Ｓ１１２０）。オブジェクトは圧縮されている場合があるため、次に、取り出したオブジェクトが圧縮されているか否かを判定する（Ｓ１１３０）。圧縮されている場合には、そのオブジェクトのデータの展開処理を行う（Ｓ１１４０）。Ｓ１１４０で展開処理が行われたオブジェクト、Ｓ１１３０で圧縮されていないと判定されたオブジェクトは、Ｓ１１５０でネスト関係およびネスト数を確認する。
【００５６】
詳細には、オブジェクトにｑオペレータが含まれているか判定し、含まれていれば、ネスト数を１つ増加する。次に、ネスト数が、ＰＤＦ仕様上の限界値２７（最大ネスト数２８−１）より大きいか否か判定する。大きいと判定した場合には、ネスト関係が異常であり、エラー処理を行う。上記のようなエラーメッセージの通知や、処理の停止等を実行することができる。
【００５７】
オブジェクトにＱオペレータが含まれているか判定し、含まれていれば、ネスト数を１つ減少させる。オブジェクトにｑオペレータが含まれていればＱオペレータは含まれない。これらｑオペレータおよびＱオペレータは、以前にオブジェクトを追加した場合等に含まれる。その次に、ネスト数が、負の値であるか否かを判定する。負の値であると判定した場合には、これもネスト関係が異常であり、エラー処理を行う。上記と同様の処理を行うことができる。
【００５８】
このようにして、実行順にオブジェクトを取り出し、ネスト関係およびネスト数を確認する。一般に、ｑオペレータとＱオペレータは対で使用されるため、ネスト数は０である。ｑオペレータが含まれるオブジェクトを取り出し、確認している場合には、ネスト数が１に増加するが、その後のＱオペレータが含まれるオブジェクトの確認の際には０へと減少される。すべてについて終了したところで、Ｓ１１６０へ進み、最終的なネスト数が０であるか否か判定する。この最終的なネスト数は、ｑオペレータに対し、Ｑオペレータが設けられ、これらが対となっていれば、このネスト数は確実に０となる。しかしながら、Ｑオペレータによる閉じ忘れ等がある場合、ネスト数は０以外の数値となる。このため、ここでネスト数が０か否かを判定する。ネスト数が０である場合、ネスト関係が正常であるため、Ｓ１１７０へ進み、ネスト数の確認処理を終了する。ネスト数が０以外の場合には、ネスト関係が異常であるため、Ｓ１１８０へ進み、上記のようなエラー処理を実行する。エラー処理の終了後、Ｓ１１９０へ進み、異常終了する。
【００５９】
図１２では、図１１に示す処理と同様、対象ページのオブジェクト群を読み出し、取得することから開始する（Ｓ１２００）。実行順にループを開始し、すべてのコンテンツストリーム（オブジェクト）に対するネスト数の確認処理が終了したか否か判定する（Ｓ１２１０）。すべてのコンテンツストリームの処理が終了していない場合、実行順位が上位のオブジェクト識別子に対応するオブジェクトから順に１つずつ取り出す（Ｓ１２２０）。オブジェクトは圧縮されている場合があるため、次に、取り出したオブジェクトが圧縮されているか否かを判定する（Ｓ１２３０）。圧縮されている場合には、オブジェクトの展開処理を行う（Ｓ１２４０）。Ｓ１２４０で展開処理が行われたオブジェクト、Ｓ１２３０で圧縮されていないと判定されたオブジェクトは、Ｓ１２５０でネスト関係およびネスト数を確認する。
【００６０】
ネスト数の確認は、上記と同様にして実行される。すべてについて終了したところで、Ｓ１２６０へ進み、最終的なネスト数が０であるか否か判定する。この最終的なネスト数は、ｑオペレータに対し、Ｑオペレータが設けられ、これらが対となっていれば、このネスト数は確実に０となる。しかしながら、Ｑオペレータによる閉じ忘れ等がある場合、ネスト数は０以外の数値となる。このため、ここでネスト数が０か否かを判定する。ネスト数が０である場合、正常であるため、Ｓ１２７０へ進み、ネスト数の確認処理を終了する。ネスト数が０以外の場合には、Ｓ１２８０へ進み、必要な数のＱオペレータを含むオブジェクトを生成し、ｑオペレータを含むオブジェクトと対になるようにそれらを挿入する。この挿入処理が終了後、Ｓ１２７０へ進み、ネスト数の確認処理を終了する。図１２に示す実施形態は、ネスト数が正の値（すなわち、ｑオペレータの数がＱオペレータの数より多い）である場合について実行される処理である。
【００６１】
図１３を参照して、図１０に示すＳ１０５０の処理を詳細に説明する。まず、管理オブジェクト（図９に示すオブジェクトでは、「３０obj」）のコンテンツ項目の情報を取得する（Ｓ１３００）。図９で言えば、追加のオブジェクトが追加される前であるから、「４０Ｒ５０Ｒ」という情報となる。この情報は、「４０obj」、「５０obj」の順に実行することを意味する。
【００６２】
オブジェクトの追加に伴って、ｑオペレータを含むオブジェクトを生成する（Ｓ１３１０）。すなわち、図９で言えば、「７０obj」である。次に、このオブジェクトのオブジェクト識別子（７０）を、管理オブジェクトのコンテンツ項目の先頭に「７０Ｒ」という形式で追加する（Ｓ１３２０）。その結果、「７０Ｒ４０Ｒ５０Ｒ」となり、「７０obj」、「４０obj」、「５０obj」の順に実行されることとなる。
【００６３】
ｑオペレータに対応して設けられるＱオペレータを含むオブジェクトを生成する（Ｓ１３３０）。すなわち、図９で言えば、「８０obj」である。このオブジェクトのオブジェクト識別子（８０）を、管理オブジェクトのコンテンツ項目内の末尾に「８０Ｒ」という形式で追加する（Ｓ１３４０）。その結果、「７０Ｒ４０Ｒ５０Ｒ８０Ｒ」となる。
【００６４】
追加するオブジェクト毎にループを行い、すべての追加オブジェクトの処理が終了したか否かを判定する（Ｓ１３５０）。追加するオブジェクトがある場合、まず、追加するグラフィックスオブジェクトを生成する（Ｓ１３６０）。このオブジェクトは、グラフィックスオブジェクトを描画する命令を含む。このオブジェクトもオブジェクト識別子を有し、次に、オブジェクト識別子を、管理オブジェクトのコンテンツ項目の末尾に追加する（Ｓ１３７０）。図９で言えば、オブジェクト識別子（６０）の追加の結果、「７０Ｒ４０Ｒ５０Ｒ８０Ｒ６０Ｒ」となっている。
【００６５】
さらに追加するオブジェクトがある場合にはＳ１３５０〜Ｓ１３７０の処理を繰り返し、すべての追加が終了したところで、追加処理を終了する（Ｓ１３８０）。このように、「４０obj」、「５０obj」は、ｑオペレータとＱオペレータとで囲まれ、カプセル化されているため、追加される「６０obj」は、既存の「４０obj」、「５０obj」に含まれる変更命令１〜３の影響を受けない。また、上記のように、単にｑオペレータを含むオブジェクトおよびＱオペレータを含むオブジェクトを挿入し、追加のオブジェクトを末尾に追加するのみであるため、グラフィックス状態の解析を必要とせず、大幅に計算時間を短縮することができる。
【００６６】
図１０〜図１３に示す処理は、各処理を実行するハードウェアを組み合わせて用いることにより実現することもできるし、プロセッサ７１０により実行されるプログラムとして提供することもできる。このプログラムは、コンピュータ可読な記録媒体として提供することができる。記録媒体としては、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、メモリカード等とすることができる。
【００６７】
これまで本発明を図面に示した実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、他の実施の形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【図面の簡単な説明】
【００６８】
【図１】ＰＤＦファイルの構成を示した図。
【図２】ＰＤＦファイルのファイルボディの記述イメージを例示した図。
【図３】ファイルボディの記述イメージ、マージされたオブジェクトのイメージ、描画イメージを例示した図。
【図４】コンテンツストリームの内容を例示した図。
【図５】ｑオペレータおよびＱオペレータを使用したコンテンツストリームの内容を例示した図。
【図６】既存のＰＤＦ文書のページにグラフィックスを追加する変更を行う場合の記述イメージ、グラフィックスオブジェクトのイメージ、描画イメージを例示した図。
【図７】本発明の編集処理装置の実施形態を示した図。
【図８】編集処理装置の構成ブロック図。
【図９】編集処理装置により、既存のＰＤＦ文書のページにグラフィックスを追加する変更を行う場合の記述イメージ、グラフィックスオブジェクトのイメージ、描画イメージを示した図。
【図１０】グラフィックスの追加処理の全体フローを示した図。
【図１１】ネスト数の確認処理の第１実施形態を示したフロー図。
【図１２】ネスト数の確認処理の第２実施形態を示したフロー図。
【図１３】グラフィックスオブジェクトの追加処理フローを示した図。
【符号の説明】
【００６９】
１００…ＰＤＦファイル、１１０…ファイルヘッダ、１２０…ファイルボディ、１３０…相互参照表、１４０…ファイルトレーラ、２００、２１０、２２０…オブジェクト、７００…編集処理装置、７１０…プロセッサ、７２０…記憶装置、７３０…表示装置、７４０…入力装置、８００…記憶部、８１０…読出部、８２０…カプセル化処理部、８３０…編集部
【図１】
2008026943.tif 000003
【図２】
2008026943.tif 000004
【図３】
2008026943.tif 000005
【図４】
2008026943.tif 000006
【図５】
2008026943.tif 000007
【図６】
2008026943.tif 000008
【図７】
2008026943.tif 000009
【図８】
2008026943.tif 000010
【図９】
2008026943.tif 000011
【図１０】
2008026943.tif 000012
【図１１】
2008026943.tif 000013
【図１２】
2008026943.tif 000014
【図１３】
2008026943.tif 000015