[ https://issues.apache.org/jira/browse/PDFBOX-4583?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16877039#comment-16877039 ]
Jan Buschtöns commented on PDFBOX-4583: --------------------------------------- {code:java} public void paint(final Graphics g) { final Graphics2D g2 = (Graphics2D) g; try { final int r = 20; final double scale = 1.1; final AffineTransform transform = g2.getTransform(); transform.scale(scale, scale); g2.setTransform(transform); final Rectangle rectangle = new Rectangle(r, r); g2.clip(rectangle); g2.setColor(Color.WHITE); g2.fill(rectangle); final PDDocument pdDocument = PDDocument.load(App.class.getResourceAsStream("/de/abm/bug/x.pdf")); final PDFRenderer pdfRenderer = new org.apache.pdfbox.rendering.PDFRenderer(pdDocument); pdfRenderer.renderPageToGraphics(0, g2); g2.setTransform(transform); g2.setColor(Color.black); g2.drawRect(0, 0, r, r); } catch (final IOException e) { throw new RuntimeException(e); } } } {code} I added a transformation that scales. For scale 1.001 I an see the sqare, for 1.01 I see half a square, for 1.1 I see nothing. > Drawing only a portion of a PDF (Graphics.clip is ignored/overwritten) > ---------------------------------------------------------------------- > > Key: PDFBOX-4583 > URL: https://issues.apache.org/jira/browse/PDFBOX-4583 > Project: PDFBox > Issue Type: Bug > Components: Rendering > Affects Versions: 2.0.15 > Reporter: Jan Buschtöns > Assignee: Tilman Hausherr > Priority: Major > Fix For: 2.0.17, 3.0.0 PDFBox > > Attachments: clip_PDFBox_FORMGEN-2184-master.zip > > > I want to use PDFBox to draw PDFs in a swing application. > I want to draw only a portion of the PDF. As far as I know, the way to do > this in swing is with the "clip"-method on the Graphics object. However, no > matter what clip I set, the whole PDF is drawn. > PDFRenderer calls "setClip", when it probably should use "clip". The latter > sets the current clip to the intersection of the old current clip and the > provided shape, whereas the former resets the current clip > I've attached an example maven project, but the gist is: > {code:java} > @Override > public void paint(final Graphics g) { > > final Graphics2D g2 = (Graphics2D) g; > try { > PDDocument pdDocument = > DDocument.load(App.class.getResourceAsStream("somepdf.pdf")); > g2.clip(new Rectangle(20, 20)); > final PDFRenderer pdfRenderer = new > org.apache.pdfbox.rendering.PDFRenderer(pdDocument); > pdfRenderer.renderPageToGraphics(0, g2); > } catch (final IOException e) { > throw new RuntimeException(e); > } > } > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@pdfbox.apache.org For additional commands, e-mail: dev-h...@pdfbox.apache.org