-1
자바에서 간단한 페인트 응용 프로그램을 만들고 있습니다. 사용자가 클릭 할 때 캔버스에 드로잉을 저장해야하는 버튼이 있습니다. 어떻게해야합니까?자바에서 캔버스의 스크린 샷을 찍고 영구 저장 장치에 저장하는 방법?
자바에서 간단한 페인트 응용 프로그램을 만들고 있습니다. 사용자가 클릭 할 때 캔버스에 드로잉을 저장해야하는 버튼이 있습니다. 어떻게해야합니까?자바에서 캔버스의 스크린 샷을 찍고 영구 저장 장치에 저장하는 방법?
오프라인 버퍼에 페인트 한 다음 디스크에 저장해야합니다. 편리한 클래스
BufferedImage offImage = (BufferedImage)createImage(getWidth(), getHeight());
Graphics2D g2 = offImage.createGraphics();
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
g2.setRenderingHint(RenderingHints.KEY_RENDERING , RenderingHints.VALUE_RENDER_QUALITY);
paintComponent(g2);
paintChildren(g2);
ImageIO.write(offImage, "png", "snapshot.png");
paintComponent() 및 paintChildren()을 별도로 호출하지 말고 캔버스로 사용중인 구성 요소에서 paint()를 호출하십시오. 어떤 사람들은'print (....) '를 사용하는 것이 더 효율적이라고 제안했다. – camickr
체크 아웃 [화면 이미지 (https://tips4java.wordpress.com/2008/10/13/screen-image/)이 작업을 수행 할 수 있습니다. – camickr