Ciao a tutti,
ho la necessità di salvare il contenuto di un JPanel in un'immagine jpeg.
Ho fatto diverse prove ma l'unica cosa che mi riesce è fare una cattura dell'immagine mediante il Robot... con un risultato non molto buono.
Con un codice di questo tipo mi viene fuori un'immagine con solo lo sfondo:
Secondo voi può essere "colpa" del contenuto del jpanel? (mostra un file dxf )codice://PROVA 2 String fileName2; fileName2="prova2"; BufferedImage image = new java.awt.image.BufferedImage( jPanel1.getWidth(), jPanel1.getHeight(), BufferedImage.TYPE_INT_RGB); Graphics2D g = image.createGraphics(); g.setRenderingHint( RenderingHints.KEY_FRACTIONALMETRICS, RenderingHints.VALUE_FRACTIONALMETRICS_ON ); g.setRenderingHint( RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON); // g.setRenderingHint( RenderingHints.KEY_COLOR_RENDERING , RenderingHints.VALUE_COLOR_RENDER_QUALITY ); // provato, ma non cambia nulla // g.setRenderingHint( RenderingHints.KEY_ALPHA_INTERPOLATION , RenderingHints.VALUE_ALPHA_INTERPOLATION_QUALITY); // provato, ma non cambia nulla jPanel1.paintAll(g); g.dispose(); try { javax.imageio.ImageIO.write(image, "jpeg", new java.io.File("./" + fileName2 + ".jpg")); } catch (IOException ex) { ex.printStackTrace(); } image.flush();
Grazie a tutti in ogni caso![]()

Rispondi quotando