微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将使用Java图形制作的图形保存为独立对象

如何解决如何将使用Java图形制作的图形保存为独立对象

我的问题是我需要将用Java图形绘制的内容保存为独立的对象,以便稍后对其重新着色,独立地擦除它们...

这是我要导入的eclipse project。 (主要类是Paint类)

这是我用来绘制的方法

  protected void paintComponent(Graphics g) {
if (imagen == null) {
  imagen = createImage(getSize().width,getSize().height);
  graficos = (Graphics2D) imagen.getGraphics();
  graficos.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);
  clear();
}
g.drawImage(imagen,null); }

我通过MouseMotionListener调用函数,然后开始绘制。但是,当然,这只是使它看上去而已,我需要在单击之间单击之间保存图形

You can see it better in this image

解决方法

创建任何组件图像的基本逻辑是:

Dimension d = component.getSize();
BufferedImage image = new BufferedImage(d.width,d.height,BufferedImage.TYPE_INT_RGB);
Graphics2D g2d = image.createGraphics();
component.print( g2d );
g2d.dispose();
ImageIO.write(image,".jpg",new File(...));

您可以检出Screen Image的可重用类,该类可以为您完成此操作并提供更多功能。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。