Manoj Patel created PDFBOX-1306: ----------------------------------- Summary: Transparent PNG file display with black border Key: PDFBOX-1306 URL: https://issues.apache.org/jira/browse/PDFBOX-1306 Project: PDFBox Issue Type: Bug Reporter: Manoj Patel
Hi, I have added Transparent PNG file in PDF with PDFBox and it's display black border around image. I have added same PNG file with IText and it's display good in PDF. I have used below function to add PNG file. I am using latest PDFBox SVN code to add PNG file. public void createPDFFromImage( String inputFile, String image, String outputFile ) throws IOException, COSVisitorException { // the document PDDocument doc = null; try { doc = PDDocument.load( inputFile ); //we will add the image to the first page. PDPage page = (PDPage)doc.getDocumentCatalog().getAllPages().get( 0 ); PDXObjectImage ximage = null; /*if( image.toLowerCase().endsWith( ".jpg" ) ) { ximage = new PDJpeg(doc, new FileInputStream( image ) ); } else if (image.toLowerCase().endsWith(".tif") || image.toLowerCase().endsWith(".tiff")) { ximage = new PDCcitt(doc, new RandomAccessFile(new File(image),"r")); } else { BufferedImage awtImage = ImageIO.read( new File( image ) ); FileInputStream inputStream = new FileInputStream(image); PDStream stream = new PDStream(doc, inputStream); ximage = new PDPixelMap(stream); //throw new IOException( "Image type not supported:" + image ); }*/ System.out.println("Testing"); BufferedImage stampImage = null; try{ stampImage = ImageIO.read(new File(image)); }catch(Exception e){ e.printStackTrace(); } ximage = new PDJpeg(doc, stampImage ); //ximage = new PDPixelMap(doc, stampImage); COSStream stream = ximage.getCOSStream(); PDStream pdStream = new PDStream(stream); ximage = new PDPixelMap(pdStream); //BoxImage imageData = BoxImage.getInstance(image); //System.out.println(""+imageData.getImageType()); PDPageContentStream contentStream = new PDPageContentStream(doc, page, true, true, true); AffineTransform transform = new AffineTransform(stampImage.getWidth(), 0, 0, stampImage.getHeight(), 20, 200); //contentStream.drawImage( ximage, 20, 20 ); contentStream.drawXObject(ximage, transform); contentStream.close(); doc.save( outputFile ); } finally { if( doc != null ) { doc.close(); } } } -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira