Googleドキュメントのように(大まかに)スタイルとレイアウトを維持しながら、PDFからテキストコンテンツ(画像ではない)を抽出するにはどうすればよいですか?
6 に答える
PDFからテキストを抽出し、その位置を取得するには、PDFMinerを使用できます。PDFMinerは、テキストを適切な位置に保ちながら、PDFをHTMLで直接エクスポートすることもできます。
ユースケースはわかりませんが、PDFは実際にはプレゼンテーション指向であり、コンテンツ指向ではなく、テキストフローが連続的ではないため、これを行うときに発生する可能性のある多くの問題があります。したがって、テキストを編集可能にしたい場合、それは簡単な作業ではありません。
あなたがグーグルのようにそれをしたいなら:
GoogleはPDFを画像に変換してから、テキストがあった場所の画像をJavaScriptの強調表示可能な領域(Voodooの魔法のようなもの)でオーバーレイします。カーソルで領域をスクロールすると、領域はテキストのように見えますが、そうではありません。これはあなたが知るのに役立たないかもしれません、しかしそれは彼らがそれをする方法です。リバースエンジニアリングを行う場合は、https://www.mercurial-scm.org/から始めることができます。ホームページでは、JavaScriptを使用して同じことを行い、テキストを強調表示してコピーできるようにします。PDFからテキストを抽出し、他の回答で言及されているライブラリのいずれかを含むページでその場所を見つけることができます。次に、ファイルの抽出された画像を同じスタイルのJavaScript領域でオーバーレイできます。
Xpdf には、素晴らしい仕事をするユーティリティ呼び出し PDFtoText があります。http://foolabs.com/xpdf/download.html
Pythonでこれを行うことに心を決めていない場合は、Ghostscriptでこれを行うことができます。プレーンテキストを取得するには、pdf2ascii(GSに付属のスクリプト)を確認してください。スタイルはいくつかの異なる方法で指定できるため、より複雑です。
Acrobat Professional はその仕事を行うことができます。[ファイル] メニューで、[エクスポート] を選択します。次に、[テキスト] を選択します。