2009-11-05 23 views
6

PDFファイルのテキスト(単語)を1つの長い文字列または1つの文字列として取得する最も簡単な方法は何ですか?PDfから文字列へ

私はpdfboxを試しましたが、それは私のために働いていません。

+1

pdfboxについては動作しませんでしたか?既存の問題の代替案や修正をお探しですか? – Catchwa

+0

さて、私はAPIが設計されたのが好きではなかった、私はiTextを見ていたし、それはより良い選択肢だと思う。 APIは私のニーズにとってより論理的なようです。 – Ankur

答えて

1

JPedalMultivalentJavaでテキスト抽出を提供するか、あなたは多くの新しいPDFファイル上Runtime.exec

2

PDFBoxのbarfs、埋め込まれたPNG画像と特にを使用してxpdfにアクセスすることができました。

私はPDFTextStream

4

iTextを使って、非常に感銘を受けました。次のスニペットは例としてテキストを抽出します。

 
PdfTextExtractor parser =new PdfTextExtractor(new PdfReader("C:/Text.pdf")); 
parser.getTextFromPage(3); 

0

さて、私は(それがPDFBoxに基づいています)PDFからの生のテキストを抽出するためにティカを使用していたが、私はあなたが(自動検出が助ける、さまざまなファイル形式からテキストを抽出する必要がある場合にのみ、ティカは便利だと思いますたくさん)。

pdfのみをテキストに解析したい場合は、他のapis(iTextやPDFBoxなど)よりもはるかに優れたパーサーであるため、PDFTextStream を提案します。

PDFTextStreamを使うと、構造化されたテキスト(ページ - >ブロック - >線 - > textUnits)を簡単に取得でき、文字エンコーディング、高さ、ページ内の文字の位置などの関連情報を抽出することができます。 ..

例:

public class ExtractTextAllPages { 
    public static void main (String[] args) throws IOException { 
     String pdfFilePath = args[0]; 
     PDFTextStream pdfts = new PDFTextStream(pdfFilePath); 
     StringBuilder text = new StringBuilder(1024); 
     pdfts.pipe(new OutputTarget(text)); 
     pdfts.close(); 
     System.out.printf("The text extracted from %s is:", pdfFilePath); 
     System.out.println(text); 
    } 
} 
関連する問題