web-dev-qa-db-ja.com

pdftotextよりも優れたpdf to textコンバータがありますか?

Pdftotext(poppler-utilsの一部)を使用して、PDFドキュメントをテキストに変換しています。大部分は動作しますが、私がしたいことの1つは、別々の段落をつなぎ合わせるのではなく、空白の行を挿入することでした。

これを行うためにpdftotextを取得する方法はありますか?そうでない場合、これを行うことができる別のpdf to textユーティリティがありますか?

60
dan

Calibre。 からebook-convertを試すことができます

どちらかといえば、それは他の方向に間違っていると言います:あまりにも多くの改行。

しかし、私が間違いなく検討したいもう1つのことは、 pdfreflow を使用してHTMLに変換し、次にHTMLをTXTに変換することです。

25
frabjous

pdftotext を使用している場合、-layoutフラグを使用して、入力pdfファイルのページ上のテキストのレイアウトを保持できます。

pdftotext -layout input.pdf output.txt
115
Noah

オープンソース(および自動化)のファンとして、私はこれを言いたくありませんが、(非常に大きく複雑なPDFで)得られた最良の結果は、それをAdobe Readerで開き、ファイル|テキストとして保存を選択することでした。

(読者としてではなく、テキスト分析実験の前処理をしていますが、最初と2番目の選択は同じだと思います。)

出力を並べて比較しています。私の2番目の選択肢は、ebook-convertです。

Adobe:改ページの場合はFFのまま、ページ番号の場合は残り、見出し/段落は単一行に変換されませんが、ハイフンは修正されています。 PDFに隠されたジャンクは出力されませんでした。セクションの開始時に、大資本を正しく獲得しました。 「T」ではなく、「T」でもありません。

ebook-convert:ページ番号に残っており、ヘッダー/フッターに隠されたジャンクがあります(FFはありません)。ほとんどの段落を単一行に変換します。それが逃したものはダブルスペースです!箇条書きは常にテキストと一致するとは限りません。チャプターの冒頭で正しく「The」を取得しました。

pdftotext(--layoutなし):悪くはありませんが、箇条書きは並んでいますが、ヘッダー/フッターのノイズです。 FFがそこにあります。ハイフンが削除されました。チャプタービッグレターの開始が最悪: "T\n\nhe"。

pdftotext(with --layout):同様ですが、インデントが増えます。章の開始のための「T he」。

pdftohtml >> pdfreflow >> htmltotext:ページ番号を削除しましたが、ヘッダー/フッターにジャンクが残っています。章の開始のための「T he」。ハイフンが削除されました。 (段落ごとに複数行を使用しますが、他のバージョンと同じ改行ではありません!)

14
Darren Cook

Googleアカウントをお持ちの場合は、Googleドキュメントを使用してPDFをアップロードし、編集可能なテキストに変換できます。

5
xangua

また、pypdfを試し、2つのドキュメントのpdftotextと比較しました。それはより多くの改行を持ち、いくつかのセクション名を分割しました(参照はR E F E R E N C E Sでした)。

pdf2txtは完全なガベージを出力しました。

Pdftotextが出力を台無しにする場合は、pdfBox(Java)をよく使用します。試してみてください。

1
Max