Android アプリケーションで画像ファイル (jpeg) を pdf ファイルに変換しようとしています。itextpdf jar とdroidtext jarを使用しました。どちらも私にはうまくいきません。以下は、itextpdfを使用している間のコードです。
Document document = new Document();
String directoryPath = Environment.getExternalStorageDirectory().toString();
File newPdfFile = new File(directoryPath, "textview8.pdf");
FileOutputStream fileOutputStream = null;
try {
fileOutputStream = new FileOutputStream(newPdfFile);
} catch (FileNotFoundException fnfe) {
Log.w(TAG, "# Exception caz of fileOutputStream : " + fnfe);
}
BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(fileOutputStream);
try {
PdfWriter.getInstance(document, bufferedOutputStream);
} catch (DocumentException de) {
Log.w(TAG, "# Exception caz of PdfWriter.getInstance : " + de);
}
document.open();
Image image = null;
try {
image = Image.getInstance(directoryPath + File.separator + "textview1.JPEG");
} catch (BadElementException bee) {
Log.w(TAG, "# First exception caz of image : " + bee);
} catch (MalformedURLException mue) {
Log.w(TAG, "# Second exception caz of image : " + mue);
} catch (IOException ioe) {
Log.w(TAG, "# Third exception caz of image : " + ioe);
}
try {
document.add(image);
} catch (DocumentException de) {
Log.w(TAG, "# Exception caz of document.add : " + de);
}
try {
bufferedOutputStream.flush();
bufferedOutputStream.close();
fileOutputStream.flush();
fileOutputStream.close();
} catch (IOException ioe) {
Log.w(TAG, "# Exception caz of bufferedOutputStream.flush : " + ioe);
}
document.close();
NullPointerException
これにより、コード行が原因でエラーが発生しますdocument.close();
その行にコメントを付けてプログラムを実行すると、次のエラーが表示されます。
Could not find class 'com.itextpdf.awt.PdfPrinterGraphics2D', referenced from method com.itextpdf.text.pdf.PdfContentByte.createPrinterGraphicsShapes
しかし、彼らが見つけられないと言っているクラスは既にjarファイルにあります。これは、com.itextpdf.awt.PdfPrinterGraphics2Dがプロジェクトに存在することを意味します。
itextpdf-5.1.3.jarもビルド パスに追加しました。エミュレータだけでなく実機でも試してみました。
私が間違ったことを理解できません。助けてください...