> Alex Sviridov <ooo_satu...@mail.ru> hat am 1. Juli 2015 um 10:16 geschrieben:
> 
> 
>  I want to display all page thumbnails. However I came across memory size
> problem with PDFRenderer or PDDocument - I don't know which one. 
> 
> I have the following code:
>    ....
>     private PDDocument pdfDocument;
>     
>     private PDFRenderer pdfRenderer;
> 
>     public WritableImage getPageThumbImage(int page){
>         WritableImage result=null;
>         try {
>             BufferedImage bi=pdfRenderer.renderImageWithDPI(page, 12,
> ImageType.RGB);
>             result=SwingFXUtils.toFXImage(bi, null);
>         } catch (IOException ex) {
>              ....
>         }
>         return result;
>     }
>  .....
> The method getPageThumbImage I run in for loop for every page.I set java
> memory heap to 500mb. 
> And I can get about 30 images using getPageThumbImage (if I set more memory I
> get more). 
> In my application I have real time memory graphs and they show that memory is
> very fast filled. 
> When there is no more free memory getPageThumbImage hangs - no exception,
> nothing. But the code stops.
> When I do pdfDocument=null,pdfRenderer=null I get about 400mb free memory. How
> to solve this problem?
There are 2 possible issues and maybe both are relevant.

1. PDFBox consumes more or less memory to load a pdf depending on the size and
the content of the pdf.

- Are you using the latest 2.0.0-SNAPSHOT? There were some improvements
concerning the memory footprint lately
- Try to use of a scratch file (there are load methods including a boolean
switcht ot activate that)

2. Your own implementation consumes more or less memory to process those
thumbnails

- check if you are releasing all resources (ecspecially those images you're
creating) you are using during your process

HTH,
Andreas

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@pdfbox.apache.org
For additional commands, e-mail: users-h...@pdfbox.apache.org

Reply via email to