apache PDFboxをandroidで使えるかどうか試みた

apache PDFboxをandroidで使えるかどうか試みた。

[事前準備]

appのbuild.gradleのdependenciesに以下を追記した。

compile ('org.apache.pdfbox:pdfbox:2.0.5'){
    exclude group: 'commons-logging', module: 'commons-logging'
}
compile ('org.apache.pdfbox:fontbox:2.0.5'){
    exclude group: 'commons-logging', module: 'commons-logging'
}

[結果]

以下の箇所でアプリが落ちる。

PDDocument document = new PDDocument();

ログキャットには以下のエラーが表示される。

java.lang.NoClassDefFoundError: Failed resolution of: Ljava/awt/color/ColorSpace;

java/awt/color/ColorSpaceは、androidには含まれていないため発生する。

よって、現時点では、apache PDFBoxはandroidでは使用できないと思われる。

[解決策]

android向けのPDFboxがある。

ただし、開発が進行中のようです。

使用する場合

appのbuild.gradleのdependenciesに以下を追記する。

compile 'com.tom_roush:pdfbox-android:1.8.9.1'

日本語の文字をPDFファイルに出力することができた。

画像の挿入を試みたが、やり方がわからなかったので、調べて試す必要がある。