You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pdfbox.apache.org by "Tilman Hausherr (JIRA)" <ji...@apache.org> on 2013/10/02 22:27:42 UTC

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

    [ https://issues.apache.org/jira/browse/PDFBOX-1735?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13784389#comment-13784389 ] 

Tilman Hausherr commented on PDFBOX-1735:
-----------------------------------------

Despite the stacktrace, I still get a rendered image. It is inverted - either this is a bug, or you're working with microfilms. The error message indicates that an image there is encoded in the JPG2000 format. The source code looks conflicting whether it is supported or not.

> 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
>         Attachments: n130567_116-01.png, N130567_116.pdf
>
>
> 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.
> Thank you!



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