2011-10-12 13 views
5

私は30,000以上のPDFファイルを持っています。一部のファイルはすでにOCRであり、一部のファイルはOCRではありません。どのファイルがすでにOCRされているのか、どのpdfsがイメージのみであるのかを知る方法はありますか?OCRが必要なPDFファイルを特定する方法は?

OCRプロセッサを使用してすべてのファイルを実行した場合、これまで以上に時間がかかります。

答えて

3

PDFファイルからテキストを抽出し、それが "空"であるかどうかを確認する小さなスクリプトを作成します。テキストがある場合、PDFはすでにOCRされています。テキストを抽出するには、ghostscriptまたはXPDFのいずれかを使用できます。

EDIT: これはあなたが始める必要があります:あなたはあなたが必要かどうかを確認するためにいくつかのより多くの作業を行う必要がありますので、

foreach ($pdffile in get-childitem -filter *.pdf){ 
    $pdftext=invoke-expression ("\path\to\xpdf\pdftotext.exe '"+$pdffile.fullname+"' -"); 
    write-host $pdffile.fullname 
    write-host $pdftext.length; 
    write-host $pdftext; 
    write-host "-------------------------------"; 
} 

は、残念ながら、あなたのPDFに画像のみを持っている場合でもpdftotextは、いくつかのテキストを抽出しますOCRのpdfへ

+0

感謝を与えました。少なくともあなたは私に何か考えを与えてくれました。 PowerShellスクリプトをghostscriptまたはxpdfで構築できますか?私が試すことができる便利なものがありますか?再度、感謝します。 –

+0

私の答えにいくつかのスクリプトを追加 –

+0

コードスニペットありがとう。私はそれを試してみましょう。 –

0

XPDFは別の方法で私のために働いていました。しかし、それが正しい方法であるかどうかは分かりません。

My PDFs with imageもテキストコンテンツを提供しました。だからpdffonts.exeを使用して、フォントが文書に埋め込まれているかどうかを確認しました。私の場合、すべての画像ファイルに埋め込み値が表示されました。すべての検索可能なPDFとして

> Config Error: No display font for 'Symbol' 
> Config Error: No display font for 'ZapfDingbats' 
> name         type    emb sub uni object ID 
> ------------------------------------ ----------------- --- --- --- --------- 
> Helvetica       Type 1   no no no  7 0 

どこに答えるための 'はい'

> Config Error: No display font for 'Symbol' 
> Config Error: No display font for 'ZapfDingbats' 
> name         type    emb sub uni object ID 
> ------------------------------------ ----------------- --- --- --- --------- 
> ABCDEE+Calibri      TrueType   yes yes no  7 0 
> ABCDEE+Calibri,Bold     TrueType   yes yes no  9 0 
関連する問題