0
1

More than 1 year has passed since last update.

Java PDFからテキストを抽出

Last updated at Posted at 2021-09-26

今回は、Spire.PDF for Javaという素晴らしい ライブラリを使って、PDFからテキストを抽出する方法を紹介したいと思います。

Spire.PDF for Javaとは?

Spire.PDF for Java is a PDF API that enables Java applications to read, write and save PDF documents without using Adobe Acrobat.

英語が苦手な方への翻訳:

Spire.PDF for Javaは、Eiceblue社が開発され、開発者が JavaプラットホームでPDFのドキュメントを迅速かつ高品質で作成・編集・変換印刷するために設計された専門的なPDF処理APIです。 そして、無料版商用版がありますが、今回の記事で商用版を紹介しています。

準備

1.E-iceblueの公式サイトからSpire.PDF for Javaをダウンロードしてください。

f:id:lendoris:20210926111007p:plain

2.IDEを起動して新規プロジェクトを作成してから、インストールされたファイルにある相応しいSpire.PDF.jarを参照に追加してください。

元のファイル

f:id:lendoris:20210926111056p:plain

import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import java.io.*;

public class Extract_Text {

    public static void main(String[] args) {

        //PdfDocumentオブジェクトを作成します
        PdfDocument doc = new PdfDocument();
        //PDFファイルをロードします。
        doc.loadFromFile("test.pdf");

        //StringBuilderオブジェクトを作成します。         
        StringBuilder sb = new StringBuilder();   

        PdfPageBase page;                
        //PDF ページをループします。
        for(int i= 0;i<doc.getPages().getCount();i++){
            page = doc.getPages().get(i);            
            sb.append(page.extractText(true));
        }
        FileWriter writer;
        try {

            writer = new FileWriter("ExtractText.txt");
            writer.write(sb.toString());
            writer.flush();
        } catch (IOException e) {
            e.printStackTrace();
        }

        doc.close();
    }
}

実行結果

f:id:lendoris:20210926111112p:plain

以下の関連記事もご参照

PDF変換機能:Convert PDF to Word in Java

PDFの作成法:Create a PDF Document in Java

PDFを印刷:Create a PDF Document in Java

終わりに

Spire.PDF for Javaは、パワフルな機能を満載しているので、使いやすいし、開発者にとってかなり便利なツールだと思います。


 

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1