Turn an array of pixels into an Image object with Java's ImageIO?

前端 未结 6 1164
粉色の甜心
粉色の甜心 2020-12-05 00:14

I\'m currently turning an array of pixel values (originally created with a java.awt.image.PixelGrabber object) into an Image object using the following code:



        
6条回答
  •  既然无缘
    2020-12-05 01:11

    I've had good success using java.awt.Robot to grab a screen shot (or a segment of the screen), but to work with ImageIO, you'll need to store it in a BufferedImage instead of the memory image source. Then you can call one static method of ImageIO and save the file. Try something like:

    // Capture whole screen
    Rectangle region = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
    BufferedImage capturedImage = new Robot().createScreenCapture(region);
    
    // Save as PNG
    File imageFile = new File("capturedImage.png");
    ImageIO.write(capturedImage, "png", imageFile);
    

提交回复
热议问题