[ https://issues.apache.org/jira/browse/PDFBOX-3359?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15304214#comment-15304214 ]
Tilman Hausherr commented on PDFBOX-3359: ----------------------------------------- [~ivanrf] please test again and give feedback. I combined both the old code (clear before transforming, works fine for images) and the new code (clear after transforming, works for graphics). > Drawing to Graphics2D / ScratchFileBuffer not closed > ---------------------------------------------------- > > Key: PDFBOX-3359 > URL: https://issues.apache.org/jira/browse/PDFBOX-3359 > Project: PDFBox > Issue Type: Bug > Components: Rendering > Affects Versions: 2.0.1 > Reporter: Ivan Ridao Freitas > > First, there is a little bug on PDFRenderer.renderPageToGraphics(int > pageIndex, Graphics2D graphics, float scale) when using scale != 1 the call > to clearRect() fills the original size with white background, but it should > fill the scaled size. > Second, I implemented a JPanel which is painted using that function and on > every paint this message goes to the console: > "DEBUG ScratchFileBuffer:516 - ScratchFileBuffer not closed!". Here is the > code to test it, run it and *resize the JFrame*: > {code:title=PanelTest.java|borderStyle=solid} > import java.awt.Dimension; > import java.awt.Graphics; > import java.awt.Graphics2D; > import java.io.File; > import java.io.IOException; > import javax.swing.JFrame; > import javax.swing.JPanel; > import javax.swing.SwingUtilities; > import javax.swing.WindowConstants; > import org.apache.pdfbox.pdmodel.PDDocument; > import org.apache.pdfbox.rendering.PDFRenderer; > public class PanelTest { > > private static JPanel getTestPanel() { > PDDocument doc = null; > try { > doc = PDDocument.load(new File("anyfile.pdf")); > } catch (IOException e) { > e.printStackTrace(); > } > final PDFRenderer renderer = new PDFRenderer(doc); > JPanel panel = new JPanel() { > @Override > protected void paintComponent(Graphics g) { > try { > renderer.renderPageToGraphics(0, (Graphics2D) g, 0.5f); > } catch (IOException e) { > e.printStackTrace(); > } > } > }; > return panel; > } > public static void main(String[] args) throws Exception { > SwingUtilities.invokeLater(new Runnable() { > @Override > public void run() { > JFrame frame = new JFrame(); > frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); > frame.add(getTestPanel()); > frame.pack(); > frame.setSize(600, 400); > Dimension paneSize = frame.getSize(); > Dimension screenSize = frame.getToolkit().getScreenSize(); > frame.setLocation((screenSize.width - paneSize.width) / 2, > (screenSize.height - paneSize.height) / 2); > frame.setTitle("Test"); > frame.setVisible(true); > } > }); > } > } > {code} > Ivan -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@pdfbox.apache.org For additional commands, e-mail: dev-h...@pdfbox.apache.org