(57)【要約】【課題】ＰＤＦに係る知識に乏しい人であっても，ＸＯｂｊｅｃｔがＰＤＦファイルに含まれるページの先頭に配置されているか検査できるようにする。【解決手段】ＰＤＦファイル分析プログラム２は，ＰＤＦファイルのページ内で印刷されるグラフィック要素を描写する命令のシークエンスを記述したコンテンツストリーム４３を分析し，コンテンツストリーム４３によって描写されるグラフィック要素を抽出するステップ，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素がページの先頭に配置されているか検査するステップ，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素の配置位置の検査結果をディスプレイ１ｅに表示するステップを順に実行する。【選択図】図４
2016057807.tif 000002
【特許請求の範囲】
【請求項１】
ＰＤＦ（Portable Document Format）ファイルを検査するコンピュータが，ＰＤＦファイルのページ内で印刷されるグラフィック要素を描写する命令のシークエンスを記述したコンテンツストリームを分析し，前記コンテンツストリームによって描写される前記グラフィック要素を抽出するステップ，コンピュータが，ＸＯｂｊｅｃｔを呼び出して描写する前記グラフィック要素がページの先頭に配置されているか検査するステップ，コンピュータが，前記ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素の配置位置の検査結果をディスプレイに表示するステップ，を順に実行することを特徴とするＰＤＦファイル検査方法。
【請求項２】
ＰＤＦファイルのページ内で印刷されるグラフィック要素を描写する命令のシークエンスを記述したコンテンツストリームを分析し，前記コンテンツストリームによって描写される前記グラフィック要素を抽出するステップ，ＸＯｂｊｅｃｔを呼び出して描写する前記グラフィック要素がページの先頭に配置されているか検査するステップ，前記ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素の配置位置の検査結果をディスプレイに表示するステップ，をコンピュータに実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，ＲＩＰ処理の対象となるＰＤＦファイルのページ内におけるＸＯｂｊｅｃｔの配置位置を容易に検査できるようにした発明である。
【背景技術】
【０００２】
受取人のニーズに合わせたメッセージを印刷した印刷物（例えば，チラシ）を用いるワントゥーワンマーケティングや，受取人のトランザクション文書（例えば，収支明細）にマーケティング用のメッセージを差し込んで印刷した印刷物を用いるトランザクションプロモーションが注目を浴び，受取人毎に内容の異なる印刷物を印刷するバリアブル印刷（Variable Data Printing）の重要性が高まっている。
【０００３】
広く普及している文書フォーマットの一つであるＰＤＦ（Portable Document Format）は，バリアブル印刷が可能なように本来設計されているが，バリアブル印刷の重要性が高まったことを受けて，バリアブル印刷に必要な機能を強化したＰＤＦ／ＶＴ規格が２０１０年にＩＳＯ１６６１２−２として発行されている。
【０００４】
バリアブル印刷を行う際，受取人のためのページ群を受取人毎に含むＰＤＦファイルをＲＩＰ（RIP: Raster Image Processor）処理することで，ラスタ形式の印刷データを受取人毎に生成することになるが，大量のバリアブル印刷を効率良く行うためには，ＲＩＰ処理の高速化が必要になる。
【０００５】
ＲＩＰ処理の高速化を図る手法は様々あるが，バリアブル印刷に用いるＰＤＦファイルには，複数のページで反復して使用する画像が含まれるため，複数のページで反復して使用する画像に注目してＲＩＰ処理の高速化を図る試みがなされている。
【０００６】
例えば，特許文献１では，複数のページで反復して使用する画像のレンダリングに工夫を凝らした発明が開示されている。また，複数のページで反復して使用する画像が入れ子になっていることで，ＰＤＦファイルに含まれるオブジェクトの階層構造が複雑になると，ＰＤＦファイルに係るＲＩＰ処理の速度が低下するため，特許文献２では，ＰＤＦファイルに含まれるオブジェクトの階層構造を表示可能なページデータを容易に生成できる発明が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１１−１５４６３６号公報
【特許文献２】特開２０１４−０６７１９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
一方で，ＰＤＦは，反復して使用する画像をＸＯｂｊｅｃｔとして定義できるように設計されており，反復して使用する画像を定義したＸＯｂｊｅｃｔをページの先頭に配置すると、反復して使用する画像を定義したＸＯｂｊｅｃｔのレンダリング結果がキャッシュに入り，ＲＩＰ処理を高速化できることが知られている。
【０００９】
ＰＤＦファイルを生成するアプリケーションの機能を用いれば，ＰＤＦファイルのオブジェクト階層構造を表示することが可能で，ＰＤＦファイルのオブジェクト階層構造から，反復して使用する画像を定義したＸＯｂｊｅｃｔの配置位置がわかるが，ＰＤＦに係る知識に乏しい人は，ＰＤＦファイルのオブジェクト階層構造を見ても，反復して使用する画像を定義したＸＯｂｊｅｃｔの配置位置を検査できない問題がある。
【００１０】
そこで，本発明は，ＰＤＦに係る知識に乏しい人であっても，複数のページから反復して使用される画像を定義したＸＯｂｊｅｃｔが，ＰＤＦファイルに含まれるページの先頭に配置されているか検査できる方法およびコンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決する第１の発明は，ＰＤＦファイルを検査するコンピュータが，ＰＤＦファイルのページ内で印刷されるグラフィック要素を描写する命令のシークエンスを記述したコンテンツストリームを分析し，前記コンテンツストリームによって描写される前記グラフィック要素を抽出するステップ，コンピュータが，ＸＯｂｊｅｃｔを呼び出して描写する前記グラフィック要素がページの先頭に配置されているか検査するステップ，コンピュータが，前記ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素の配置位置の検査結果をディスプレイに表示するステップ，を順に実行することを特徴とするＰＤＦファイル検査方法である。
【００１２】
更に，第２の発明は，ＰＤＦファイルのページ内で印刷されるグラフィック要素を描写する命令のシークエンスを記述したコンテンツストリームを分析し，前記コンテンツストリームによって描写される前記グラフィック要素を抽出するステップ，ＸＯｂｊｅｃｔを呼び出して描写する前記グラフィック要素がページの先頭に配置されているか検査するステップ，前記ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素の配置位置の検査結果をディスプレイに表示するステップ，をコンピュータに実行させるためのコンピュータプログラムである。
【発明の効果】
【００１３】
上述した本発明によれば，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素が，ＰＤＦファイルのページの先頭に配置されているか自動的に検査されるため，ＰＤＦに係る知識に乏しい人であっても，複数のページから反復して使用される画像を定義したＸＯｂｊｅｃｔが，ＰＤＦファイルに含まれるページの先頭に配置されているか検査できる。
【図面の簡単な説明】
【００１４】
【図１】ＰＤＦファイル分析プログラムをインストールしたコンピュータを説明する図。
【図２】ＰＤＦファイルの構造を説明する図。
【図３】ＰＤＦファイルのオブジェクト階層構造を説明する図。
【図４】ＰＤＦファイル分析プログラムの動作を説明する図。
【図５】配置位置の検査結果を表示する画面を説明する第１図。
【図６】配置位置の検査結果を表示する画面を説明する第２図。
【図７】配置位置の検査結果を表示する画面を説明する第３図。
【発明を実施するための形態】
【００１５】
ここから，本発明の好適な実施形態を記載する。なお，以下の記載は本発明の範囲を束縛するものでなく，理解を助けるために記述するものである。
【００１６】
図１は，本実施形態に係るＰＤＦファイル分析プログラム２をインストールしたコンピュータ１を説明する図である。ＰＤＦファイル分析プログラム２をインストールしたコンピュータ１は，コンピュータプログラムを実行するＣＰＵ１ａ，ＢＩＯＳなどを記憶するＲＯＭ１ｂ，コンピュータ１のメインメモリとなるＲＡＭ１ｃ，本実施形態に係るＰＤＦファイル分析プログラム２を記憶するハードディスク１ｄ，画像や動画を表示するためのディスプレイ１ｅ，文字の入力に用いるキーボード１ｆ，ディスプレイ１ｅに表示されているポインタの操作に用いるポィンティングデバイス１ｇ，ネットワーク通信するためのネットワークインターフェース１ｈ，ＤＶＤ等のメディアからデータを読み出すためのメディアドライブ１ｉを備える。
【００１７】
本実施形態に係るＰＤＦファイル分析プログラム２は，ＰＤＦに係る知識に乏しい人であっても，複数のページから反復して使用される画像を定義したＸＯｂｊｅｃｔが，ＲＩＰ処理の対象となるＰＤＦファイルに含まれるページの先頭に配置されているか検査できるようにするためのコンピュータプログラムで，本実施形態に係るＰＤＦファイル分析プログラム２は，Ａｄｏｂｅ社のＡｃｒｏｂａｔ（登録商標）に代表されるＰＤＦ作成ソフトのプラグインで実現することが好適である。
【００１８】
まず，ＲＩＰ処理の対象となるＰＤＦファイルについて説明する。図２は，ＰＤＦファイルのファイル構造３を説明する図，図３は，ＰＤＦファイルのオブジェクト階層構造４を説明する図である。
【００１９】
ＰＤＦファイルは，バリアブル印刷の入稿データとなるＰＤＦ形式のファイルで，図２に図示したように，ＰＤＦファイルのファイル構造３は，ＰＤＦファイルの識別情報を記述したヘッダー３０，ＰＤＦファイルの本体となるボディー３１，ＰＤＦファイルの本体となるボディー３１にアクセスするための情報を記述したクロスリファレンステーブル３２，および，クロスリファレンステーブル３２の位置等の情報を記述したトレイラ３３の４つの要素から構成される。
【００２０】
図３に図示しているように，ＰＤＦファイルのオブジェクト階層構造４において，ＰＤＦファイルのボディー３１に含まれる様々なオブジェクトは，ドキュメントカタログ４０をルートとする階層状にまとめられており，オブジェクト階層構造４のルートの入り口となるカタログディクショナリーがＰＤＦファイルのトレイラ３３に記述されている。
【００２１】
また，図３に図示しているように，ＰＤＦファイルのオブジェクト階層構造４において，ＰＤＦファイルに含まれるページ毎にページオブジェクト４２が設けられ，ＰＤＦファイルに含まれるページ群は，ページツリー４１を起点とするツリー状になっている。ＰＤＦファイルのページ内で印刷されるグラフィック要素を描写する命令のシークエンスを記述したコンテンツストリーム４３は，ページオブジェクトに対応付けられ，ページオブジェクトには，コンテンツストリーム４３の他に，ページのサムネイル画像４４とページの注釈４５が対応付けられる。
【００２２】
図４は，本実施形態に係るＰＤＦファイル分析プログラム２の動作を説明する図である。本実施形態に係るＰＤＦファイル分析プログラム２は，ＰＤＦ作成ソフトのメニューの中から，ＰＤＦファイル分析プログラム２を起動させるメニューが選択されるなど，ＰＤＦファイル分析プログラム２を起動させる操作がコンピュータ１上でなされると起動し，指定されたＰＤＦファイルに対して，図４を用いて説明する処理を実行する。
【００２３】
本実施形態に係るＰＤＦファイル分析プログラム２は，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素の配置位置を検査する際，コンテンツストリーム４３を分析し，コンテンツストリーム４３によって描写されるグラフィック要素を抽出する（Ｓ１）。本実施形態に係るＰＤＦファイル分析プログラム２は，コンテンツストリーム４３を分析する際，ＰＤＦファイルのトレイラ３３に記述されているカタログディクショナリーを読み出して，ＰＤＦファイルのオブジェクト階層構造４のルートにアクセスし，次に，オブジェクト階層構造４のルート直下のページツリー４１から，１ページ目のページオブジェクト４２にアクセスし，１ページ目のページオブジェクト４２に対応付けられているコンテンツストリーム４３を分析する。なお，本実施形態に係るＰＤＦファイル分析プログラム２がコンテンツストリーム４３から抽出するグラフィック要素には，ＸＯｂｊｅｃｔを呼び出して描写する画像に加え，ＸＯｂｊｅｃｔを呼び出すことなく描写する画像とテキストなどが含まれる。
【００２４】
次に，本実施形態に係るＰＤＦファイル分析プログラム２は，コンテンツストリーム４３から抽出するグラフィック要素の中に，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素があるか確認し，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素がある場合は，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素がページの先頭に配置されているか検査する（Ｓ２）。ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素がページの先頭に配置されているかは，ＸＯｂｊｅｃｔを呼び出す命令をコンテンツストリーム４３から検索し，ＸＯｂｊｅｃｔの呼び出しに必要な一連の命令が，コンテンツストリーム４３の先頭に配置されているか否かで検査できる。
【００２５】
次に，本実施形態に係るＰＤＦファイル分析プログラム２は，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素の配置位置の検査結果をディスプレイ１ｅに表示して，図４で図示した手順は終了する（Ｓ３）。なお，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素の配置位置の検査結果は，ＰＤＦファイルのオブジェクト階層構造４と共に表示することが好適である。具体的には，ＰＤＦファイルのオブジェクト階層構造４において，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素が配置されている個所をハイライト表示し，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素がページの先頭に配置されていない場合は，その旨を伝えるメッセージを表示させることが好適である。
【００２６】
図５は，配置位置の検査結果を表示する画面を説明する第１図，図６は，配置位置の検査結果を表示する画面を説明する第２図，図７は，配置位置の検査結果を表示する画面を説明する第３図である。
【００２７】
図５は，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素がページの先頭に配置されているときの画面５である。図５の画面５では，ＰＤＦファイルのオブジェクト階層構造４そのものを表示し，コンテンツストリーム４３に含まれる命令で，ＸＯｂｊｅｃｔを呼び出す命令５ａ（ここでは，Do［名前付きXObjectの呼び出し］）をハイライト表示し，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素の配置位置の検査結果として，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素の配置位置が先頭に配置されていることを意味するメッセージ５ｂを表示している。
【００２８】
図６は，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素がページの先頭に配置されていないときの画面６である。図６の画面５では，図５と同様に，ＰＤＦファイルのオブジェクト階層構造４そのものを表示し，コンテンツストリーム４３に含まれる命令で，ＸＯｂｊｅｃｔを呼び出す命令６ａ（ここでは，Do［名前付きXObjectの呼び出し］）をハイライト表示し，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素の配置位置の検査結果として，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素の配置位置が先頭に配置されていないことを意味するメッセージ６ｂを表示している。
【００２９】
なお，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素の配置位置の検査結果と共に表示する内容は，ＰＤＦファイルのオブジェクト階層構造４でなく，コンテンツストリーム４３から抽出したグラフィック要素を表示する画面であってもよい。図７の画面７では，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素の配置位置の検査結果と共に，コンテンツストリーム４３から抽出したグラフィック要素を表示し，この画面７において，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素に対応する個所７ａ（ここでは，フォームＸＯｂｊｅｃｔ）をハイライト表示している。また，この画面７では，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素の配置位置の検査結果として，ＸＯｂｊｅｃｔを呼び出して描写するグラフィック要素の配置位置が先頭に配置されていないことを意味するメッセージ７ｂを表示している。
【符号の説明】
【００３０】
１    コンピュータ
２    ＰＤＦファイル分析プログラム
３    ＰＤＦファイルのファイル構造
３０  ヘッダー
３１  ボディー
３２  クロスリファレンステーブル
３３  トレイラ
４    ＰＤＦファイルのオブジェクト階層構造
４０  ドキュメントカタログ
４１  ページツリー
４２  ページオブジェクト
４３  コンテンツストリーム
【図１】
2016057807.tif 000003
【図２】
2016057807.tif 000004
【図３】
2016057807.tif 000005
【図４】
2016057807.tif 000006
【図５】
2016057807.tif 000007
【図６】
2016057807.tif 000008
【図７】
2016057807.tif 000009