将JPanel图形导出为.png或.gif或.jpg
||
我正在尝试使用Java开发某种绘画。
我有一个位于JPanel内部的JComponent。
我已经可以在该JComponent中绘制线条和矩形了。
现在,如何将这些工程图导出为图像(png,gif,jpg)?
我尝试了这个:
BufferedImage b = new BufferedImage(1700,1100,BufferedImage.TYPE_INT_RGB);
this.print(getGraphics());
try{ImageIO.write(b,\"png\",new File(\"test.png\"));}catch (Exception e) {}
但这只会创建全黑的.png文件。
救命!!!
解决!!!
BufferedImage bi = new BufferedImage(this.getSize().width, this.getSize().height, BufferedImage.TYPE_INT_ARGB);
Graphics g = bi.createGraphics();
this.paint(g); //this == JComponent
g.dispose();
try{ImageIO.write(bi,\"png\",new File(\"test.png\"));}catch (Exception e) {}
没有找到相关结果
已邀请:
2 个回复
蔬谢窗港
是错误的方法。 我猜应该起作用(尚未测试过)的是: 获得
的图形(ѭ4and)并使用该图形对象来
面板/组件。 (例如
)
际恃啸称桅
您可以自行更改。