OpenRTF
OpenRTF copied to clipboard
Not able to add PNG image into RTF
Summary:
It is not possible to add PNG image into RTF document.
Following exception is thrown:
com.lowagie.text.DocumentException: Only BMP, PNG, WMF, GIF and JPEG images are supported by the RTF Writer
at com.lowagie.text.rtf.graphic.RtfImage.<init>(RtfImage.java:179)
at com.lowagie.text.rtf.RtfMapper.mapElement(RtfMapper.java:168)
at com.lowagie.text.rtf.RtfWriter2.add(RtfWriter2.java:186)
at com.lowagie.text.Document.add(Document.java:302)
Steps to reproduce:
The problem can be reproduce by adding following code into CreateSimpleRTFDocumentTest.java file:
document.add(new Paragraph("pngnow.png"));
Image png = Image.getInstance("pngnow.png");
document.add(png);
The "pngnow.png" file is taken from LibrePDF/OpenPDF source code.
Note: Adding JPG file works without problems.
Edited:
It seems that problem was introduced by this commit in OpenPDF repository. The class PngImage.java (and others) was removed. As a result the method setOriginalType(Image.ORIGINAL_PNG) is now not called at all.
Thank you for reporting this. Pull requests welcome.