内部PDF構造を参照する


18

Adobe 9.0で内部PDF構造を参照する方法は?

このオプションを備えた詳細メニューは見つかりませんでした。

どんな体も助けてくれますか?

pdf 

回答:


23

PDFの内部構造を参照するには、いくつかの方法があります。

PDFは人間が読むことができる

セキュリティパスワードがなければ、その多くは人間が読める形式です。PDFにパスワードがある場合、すべての文字列とストリーム(既に圧縮されているため、損失はありません)は、疑似ランダムガベージになります。圧縮されたデータストリームはたくさんありますが、お気に入りのテキストエディタでは、その多くは次のようになります。

2 0 obj
<< /Type /Page 
   /MediaBox [0 0 612 792]
   /Contents 4 0 R
   /Resources << /Fonts 
     << /F1 5 0 R>> 
   >>
>>
endobj

警告:空白はほとんど無関係であり、通常は可能であれば削除されます。少しわかりやすくするために、これをきれいにしただけです。

<<および>>「辞書」の開始と終了。辞書はキー/値のペアで構成されています。キーは常に「名前」です。すべての名前は「/」で始まります。値は、別の名前を含む、何でもかまいません。

[および]「配列」の開始と終了。配列は、ほぼすべてのもので構成できます。

数字は「数字」です。浮動小数点など。

()および<>「文字列」の開始と終了。<>文字列は16進値としてリストされ、()はANSI文字列です。

Pet Peeve:/ Namesと(Strings)はまったく異なるエスケープシステムを使用します。Grr。

間接参照は、PDF内の他のオブジェクトを指します:
<objNum> <generationNum-AlwaysZero> R

上記のサンプルオブジェクトでは、コンテンツストリームはPDF内のオブジェクト4にあります。それを見つけるには、エディターのテキスト検索で「N 0 obj」を使用します。ここで、Nは目的のオブジェクト番号です。
警告:PDFには数百、場合によっては数千のオブジェクトがあります。「1 0 obj」を検索すると、ヒット数が多くなります。

あなたが内部構造を見たいと思っているなら、おそらくあなたはすでにこれらすべてを知っているでしょう。同じことを知りたい人はそうではないかもしれません。

警告:テキストエディターでPDFを編集しないでください。バイナリのものはすべて壊れてしまいますが、バイトオフセットはPDFでは非常に重要です。

Acrobatプラグイン[s]

Windjack SolutionsによるPDF CanOpenerと呼ばれるacrobatプラグインがあります(提携なし)。スリックです。PDF構造をツリーとして参照したり、コンテンツストリームを確認(および変更)したりすることができます。

サードパーティのアプリ

たくさん。多くの人々は、PDFを解析する学習の一部として、またはデバッグツールとして1つを構築します。彼らは非常に便利です。

iText RUPS(Java PDFライブラリであるiTextの一部、現在GitHubにあります)

PDFオブジェクトブラウザ

PDFハタネズミ


1
PDF Voleリンクが...今壊れているようだ
DNA

5
道によるiTextのRUPS、ない正確にフレンドリーなGUIが、作品のための+1は、現在のプロジェクトのURLは(のようですsourceforge.net/projects/itextrups
ハイメHablutzel

2
iText RUPS
bmaupin

1
pdfvoleのソースコードのコピーがここにあります:github.com/Rossi1337/pdf_vole
yms

1
PDFに圧縮されたデータストリームがある場合、qpdfコマンドラインユーティリティはそれらをデコード/デフレートし、よりわかりやすい内容のPDFを書き出すことができます: `qpdf --decode-level = all --stream-data = uncompress inputfile.pdf expandedfile。 pdf
skierpage




2

無料のPDF-XChangeエディターには、PDFファイルのツリー構造を表示できるコンテンツパネルがあります。

View -> Panes -> Content

2

PDF Voleが壊れているようです。誰かがまだツールを探しているなら、私は無料のPDF Analyzerを使用しています。

ここに画像の説明を入力してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.