发布此问题的目的是帮助电枢编码器以及所有人员摆脱以下问题(我从网上发现了一些引起轰动的问题的误导性答案)
通过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/