6

jpeg 画像を pdf ファイルに変換するために、PDFClown .jar ライブラリを使用します。ただし、次のエラーが表示されます。

java.lang.RuntimeException: java.io.EOFException

ここでコードを見つけることができます:

org.pdfclown.documents.contents.entities.Image image = 
org.pdfclown.documents.contents.entities.Image.get("c:" + java.io.File.separator + "bg.jpg");
org.pdfclown.documents.contents.xObjects.XObject imageXObject = image.toXObject(document);
composer.showXObject(imageXObject);                 
composer.flush();       
document.getFile().save("c:\\test.pdf" , SerializationModeEnum.Standard);

何が悪いのか教えてください。

4

1 に答える 1

1

私はちょうどあなたの問題を再現しようとしました:

public void testAddPicture() throws IOException
{
    org.pdfclown.files.File file = new org.pdfclown.files.File();

    Page page = new Page(file.getDocument());
    file.getDocument().getPages().add(page);
    PrimitiveComposer primitiveComposer = new PrimitiveComposer(page);

    Image image = Image.get("src\\test\\resources\\mkl\\testarea\\pdfclown0\\content\\Willi-1.jpg");
    XObject imageXObject = image.toXObject(file.getDocument());
    primitiveComposer.showXObject(imageXObject, new Point2D.Double(100,100), new Dimension(300, 300));                 

    primitiveComposer.flush();

    file.save(new File(RESULT_FOLDER, "PdfWithImage.pdf"), SerializationModeEnum.Standard);
    file.close();
}

( ShowImage.java )

私は no を取得しますがEOFException、代わりに結果は期待どおりに見えます:

結果の PDF のスクリーンショットと画像

したがって、この問題は JPG ファイルに関連していると思われます。その内容が破損しているか、PdfClown の JPG サポートを超えているか、ファイル システムのアクセス許可に関連する問題である可能性があります。

于 2015-12-21T11:00:13.833 に答える