80

小さなプロジェクトの場合、pdf ファイルを解析し、それらの特定の部分 (文字の単純なチェーン) を取得する必要があります。これを行うためにpythonを使用したいと思います.いくつかの方法で私が望むことを行うことができるいくつかのライブラリを見つけました.

しかし、いくつかの調査の後、PDFファイルの実際の構造はどうなっているのだろうと思っています.オンラインのどこかに仕様や説明があるかどうかは誰にもわかりませんか? Adobe でリンクを見つけましたが、リンク切れのようです :(

4

12 に答える 12

48

ここにAdobeの参考資料へのリンクがあります

http://www.adobe.com/devnet/pdf/pdf_reference.html

ただし、PDF はプレゼンテーションに関するものであり、構造に関するものではないことを知っておく必要があります。解析は簡単ではありません。

于 2008-09-17T23:13:19.867 に答える
44

GNU Introduction to PDFが構造を理解するのに役立つことがわかりました。これには、完全に詳細に説明されている読みやすいPDF ファイルの例が含まれています。

その他の役立つリンク:

于 2014-08-12T15:31:26.117 に答える
24

私が最初に PDF を使い始めたとき、PDF リファレンスをナビゲートするのが非常に難しいことに気付きました。ファイル構造の概要は構文にあり、アドビがドキュメント構造と呼んでいるものはオブジェクト構造であり、ファイル構造ではないことを知っておくと役立つ場合があります。それは構文にもあります。オペレーターの説明は、付録 A に隠されています。コンテンツ ストリームで何が起こっているかを理解するのに非常に役立ちます。色空間を扱うのに苦労したことがあるなら、それがグラフィックスに隠されていることに気付くでしょう! これらの指針が、私が行ったよりも迅速に物事を見つけるのに役立つことを願っています.

Windows を使用している場合、pdftron CosEditを使用すると、オブジェクト構造を参照して理解することができます。ファイルを調べることはできますが、保存することはできません。

于 2008-09-18T13:26:55.773 に答える
10

これは PDF 1.7の未加工のリファレンスで、PDF ファイルの構造を説明する記事はこちらです。Vim を使用している場合、pdftk プラグインはドキュメントを少し生の形式で探索するのに適した方法であり、pdftkユーティリティ自体 (およびその GPL ソース) はドキュメントを分解する優れた方法です。

于 2008-09-17T23:18:21.197 に答える
7

私はほとんど同じことをしようとしています。PDF リファレンスは非常に読みにくいドキュメントです。このチュートリアルは、より良いスタートだと思います。

于 2009-07-09T07:13:14.460 に答える
6

これは少し光を当てるのに役立つかもしれません:(PDF32000.bookの11ページから)

PDF 構文は、図 1 に示すように 4 つの部分であると考えると最もよく理解できます。

• オブジェクト。PDF ドキュメントは、基本的なタイプのデータ オブジェクトの小さなセットから構成されるデータ構造です。7.2 節「語彙規則」では、オブジェクトやその他の構文要素を記述するために使用される文字セットについて説明しています。7.3 節「オブジェクト」では、オブジェクトの構文と必須のプロパティについて説明します。サブ節 7.3.8、「ストリーム オブジェクト」では、最も複雑なデータ型であるストリーム オブジェクトの完全な詳細を提供します。

• ファイル構造。PDF ファイル構造は、オブジェクトが PDF ファイルに格納される方法、アクセスされる方法、および更新される方法を決定します。この構造は、オブジェクトのセマンティクスから独立しています。7.5 項「ファイル構造」では、ファイル構造について説明します。7.6 節「暗号化」では、ドキュメントのコンテンツを不正アクセスから保護するためのファイル レベルのメカニズムについて説明しています。

• ドキュメント構造。PDF ドキュメント構造は、ページ、フォント、注釈など、基本的なオブジェクト タイプを使用して PDF ドキュメントのコンポーネントを表す方法を指定します。7.7 節「文書構造」では、全体的な文書構造について説明しています。後の節では、コンポーネントの詳細なセマンティクスについて説明します。

• コンテンツ ストリーム。PDF コンテンツ ストリームには、ページまたはその他のグラフィック エンティティの外観を記述する一連の命令が含まれています。これらの命令は、オブジェクトとしても表されますが、文書構造を表すオブジェクトとは概念的に異なり、個別に説明されています。7.8 項「コンテンツ ストリームとリソース」では、PDF コンテンツ ストリームとそれに関連するリソースについて説明します。

PDF ファイルをナビゲートするには、ちょっとした努力が必要なようです。

于 2011-07-30T03:54:15.950 に答える
4

Didier には、PDF を解析するためのツールがあります。

http://didierstevens.com/files/software/pdf-parser_V0_4_3.zip

またはここ:

http://blog.didierstevens.com/programs/pdf-tools/には、関連する pdf 分析ツールがいくつかカタログ化されています。

別のツールは次のとおりです。

http://mshahzadlatif.wordpress.com/2011/09/28/view-pdf-structure-using-adobe-acrobat-or-a-free-tool-called-pdfxplorer/

于 2014-03-02T03:44:13.667 に答える
2

PDF はレイアウト指向の構造を持っているため、PDF からテキストを抽出するのは難しい問題です。ほとんど成功しなかった CPAN での試みのドキュメントとソース コードを参照できます(私の実装は Perl です)。PDF のデータ構造は非常に優れており、よく設計されていますが、読むよりも書く方が簡単です。

于 2008-09-19T02:51:42.237 に答える
2

手がかりを得る 1 つの方法は、空白のページで構成される PDF ファイルを作成することです。コンピューターに CutePDF Writer があり、1 ページの空白のワードパッド ドキュメントを作成しました。.pdf ファイルに印刷し、メモ帳を使用して .pdf ファイルを開きました。

次に、このファイルのコピーを使用して、関心のある行またはテキストのブロックを削除してから、Acrobat Reader で再読み込みします。機能する 1 ページの PDF ドキュメントを作成するのに必要な情報が非常に少ないことに驚かれることでしょう。

コードから PDF フォームを作成するスプレッドシートを作成しようとしています。

于 2010-08-24T16:52:37.777 に答える