发布此问题的目的是帮助电枢编码器以及所有人员摆脱以下问题(我从网上发现了一些引起轰动的问题的误导性答案)


通过Java机器人捕获桌面图像
图像转换/编码为base64字符串


答案代码由我自己发布,并保证100%的工作状态

最佳答案

我认为无需创建BufferedImage使其简单地像:

public String captureToBase64() {

    Rectangle screenSize = new
    Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
    BufferedImage screenCapture = null;
    String base64Encoded = "";

    try {

        screenCapture = new Robot().createScreenCapture(screenSize);
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        ImageIO.write(screenCapture, "jpg", baos);
        baos.flush();
        byte[] encodeBase64 = Base64.encodeBase64(baos.toByteArray());
        base64Encoded = new String(encodeBase64);
        baos.close();

    } catch (AWTException e) {
        e.getMessage();
    }

    return base64Encoded;
}

关于java - 捕获屏幕截图并将其转换为base64字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44205140/

10-10 09:25