You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pdfbox.apache.org by "Paulo R C Mello Junior (JIRA)" <ji...@apache.org> on 2013/10/02 21:47:42 UTC

[jira] [Created] (PDFBOX-1735) Convert page pdf to image

Paulo R C Mello Junior created PDFBOX-1735:
----------------------------------------------

             Summary: Convert page pdf to image
                 Key: PDFBOX-1735
                 URL: https://issues.apache.org/jira/browse/PDFBOX-1735
             Project: PDFBox
          Issue Type: Bug
    Affects Versions: 1.8.2
         Environment: Windows 8
JDK 1.7

            Reporter: Paulo R C Mello Junior


I'm in the fight to perfectly convert a PDF to an image.
But the stacktrace below breaks my application!

---
Out 02, 2013 3:22:35 PM org.apache.pdfbox.pdmodel.graphics.xobject.PDPixelMap getRGBImage
SEVERE: Something went wrong ... the pixelmap doesn't contain any data.
Out 02, 2013 3:22:35 PM org.apache.pdfbox.util.operator.pagedrawer.Invoke process
WARNING: getRGBImage returned NULL
Out 02, 2013 3:22:35 PM org.apache.pdfbox.util.PDFStreamEngine processOperator
INFO: unsupported/disabled operation: i

---
I really need to fix this problem in order to succeed in converting
You know why this error occurs?
You know how I can fix this error?
is some dependence of my environment that i forgot? or a failure of PDFBox framewor ?

Follow my code below:
---

	public static List<BufferedImage> getPdfPagesAsImages(String pdfPath, int i)
			throws FileNotFoundException, IOException {
		List<BufferedImage> bImages = new ArrayList<BufferedImage>();
		
		File f = new File(pdfPath);
		if (f.exists()) {
		int resolution = 185;
		PDDocument pdfDocument = null;

		pdfDocument = PDDocument.loadNonSeq(f, null);

		if (pdfDocument != null) {
			@SuppressWarnings("unchecked")
			List<PDPage> pages = (List<PDPage>) pdfDocument
					.getDocumentCatalog().getAllPages();
			int j = 1;
			for (PDPage p : pages) {
				System.out.println(j);
				BufferedImage convertedImage = p.convertToImage(
						BufferedImage.TYPE_INT_BGR , resolution);
				saveImageToRepository(i, j, convertedImage);			
				j++;
				if (isNegativeImage(convertedImage)) {
					bImages.add(invertNegativeImage(convertedImage));
				} else {
					bImages.add(convertedImage);
				}
				
			}
			System.out.println(pdfPath +" sucess");
		}	
		pdfDocument.close();
		}else{
			System.out.println(pdfPath +" nao existe");
		}
		return bImages;
	}


	private static void saveImageToRepository(int i, int j,
			BufferedImage convertedImage) throws IOException {
		File outputfile = new File("C:/Desenvolvimento/bkp/convertido/" + i + j+ ".png");
		ImageIO.write(convertedImage, "png", outputfile);


	}


---
I create a list of images
these images are saved to be loaded in the browser later on a JSF component.



--
This message was sent by Atlassian JIRA
(v6.1#6144)