Scan Tailorを使用してPDFを処理するには(キャプチャされたPDFページの背景を削除するまたはPDFページ分割)、プログラムに入力画像が必要なため、PDF自体を入力することはできません。pdftoppm MY_PDF NAME_OF_IMAGE -png
低品質のPDFにも同様のコマンドを使用しましたが、結果の画像が元のPDFよりも悪かった。
pdfimages
しかし、ツールを使用した結果は元のものpoppler-utils
と同じくらい良いです。
他の変数が使用されている場合-png
(または変数が使用されておらず出力がある場合ppm
)、値は変更されません。
pdfimages
私はそれが今からpdftoppm
予想されるプレーンテキストを提供しているのでまったく良くないことがわかりました。
PDFから抽出してpdfimages
ドルフィンで見ると画像が悪い
同じPDFから抽出してドルフィンで見た場合、pdftoppm
正しい画像:
なぜこれらの違いがありますか?
答え1
違いはツールの目的から来ています。 PDFが柔軟なファイル形式であることがわかると、これは明らかになります。これには、テキスト、ベクターグラフィック、およびラスターイメージを含めることができます(このリストは完全なリストではありません)。 「レイアウト情報を含むzip」(全体の簡略化)と考えることができます。
pdftoppm
PDF全体を「レンダリング」または「ラスタライズ」します。すべてのテキストとグラフィックはラスター化された出力イメージになります。
埋め込まれたラスター画像のピクセルが出力「キャンバス」のピクセルとほとんど揃わないため、補間が発生し品質が低下します。これは出力解像度(オプション-r
)を大幅に増やすことで対応できます。もちろん、これはファイルサイズも増加することを意味します。pdfimages
ラスターイメージはPDFファイルから抽出されます。テキストまたはベクターグラフィックは無視されます。
ラスターイメージはそのまま抽出されるため、元の品質は維持されますが、レイアウトに関する情報は失われます。
入力PDFにラスター画像のみが含まれていて、他の画像がまったく含まれていない場合、出力は同様に見えることがあります。
あなたの例では、コピー機のスキャン機能はテキストブロックを識別して高品質で保存しようとします。文書の残りの部分(白い背景など)は、保存スペースを節約するために低品質で保存されます。あなたが見つけたように、これは誰かに有利かもしれないし、そうではないかもしれません。