I'm trying to capture a screenshot of the current scene and save it as either a png/jpg and pdf. Both options are successful when it comes to saving the screenshot however, the image doesn't come out right. As the image shows, the screenshot is completely awful and I can't seem to make it work. The image is also cute off when saved for some reason.
public void sceneCapture() throws IOException, InterruptedException, Exception
{
File fa = new File("test.jpg");
snapshot = quotes.getScene().snapshot(null);
RenderedImage renderedImage = SwingFXUtils.fromFXImage(snapshot, null);
BufferedImage image = new BufferedImage(600, 750, BufferedImage.TYPE_INT_RGB);
image.setData(renderedImage.getData());
ImageIO.write(image, "jpg", fa);
int[] RGB_MASKS = {0xFF0000, 0xFF00, 0xFF};
ColorModel RGB_OPAQUE = new DirectColorModel(32, RGB_MASKS[0], RGB_MASKS[1], RGB_MASKS[2]);
java.awt.Image img = Toolkit.getDefaultToolkit().createImage("test.jpg");
PixelGrabber pg = new PixelGrabber(img, 0, 0, -1, -1, true);
pg.grabPixels();
int width = pg.getWidth(), height = pg.getHeight();
DataBuffer buffer = new DataBufferInt((int[]) pg.getPixels(), pg.getWidth() * pg.getHeight());
WritableRaster raster = Raster.createPackedRaster(buffer, width, height, width, RGB_MASKS, null);
BufferedImage bi = new BufferedImage(RGB_OPAQUE, raster, false, null);
String to = "test.jpg";
ImageIO.write(bi, "jpg", new File(to));
}
Really need help with this problem. Thank you
Current State:
Desired State: