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

John Hewson commented on PDFBOX-3100:
-------------------------------------

This is by design. PDFRenderer is the entry point for all rendering. You can 
supply a custom PageDrawer but you can't create one which is independent of a 
PDFRenderer. Note that PageDrawerParameters maintains a field which references 
its parent PDFRenderer, so it's not possible to create one without the other.

You could subclass PDFRenderer and PageDrawer then override PageDrawer#drawPage 
to override the graphics and box, that way you could reset the graphics and use 
the media box. See our CustomPageDrawer example for guidance.

One other thing to bare in mind is that content is cropped to the crop box, so 
the area between the crop box and the media box will always be empty. You could 
render as usual using PDFRenderer and then draw the resulting image onto a new 
image which is the size of the media box.

> Allow flexible calling of PageDrawer
> ------------------------------------
>
>                 Key: PDFBOX-3100
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-3100
>             Project: PDFBox
>          Issue Type: Bug
>          Components: Rendering
>    Affects Versions: 2.0.0
>            Reporter: simon steiner
>         Attachments: newpdfbox.patch
>
>
> You used to be able to do:
>                 PageDrawer drawer = new PageDrawer(null);
>                 drawer.drawPage(g2d, page, mediaBox);
> Now you have to do:
> new PDFRenderer(doc).renderPageToGraphics(1, g2d);
> I don't want to use pdfbox PDFRenderer.renderPage impl, due to my custom 
> renderer.
> I cant do as PageDrawerParameters has private constructor:
>                 PageDrawerParameters parameters = new 
> PageDrawerParameters(new PDFRenderer(pdDocument), page);
>                 PageDrawer drawer = new PageDrawer(parameters);
>                 drawer.drawPage(g2d, mediaBox);



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to