我正在尝试将Java代码移植到android代码。源代码在这里:截图:java
这里
RawImage raw=device.getScreenshot();
它捕捉到安卓屏幕的截图,并将其保存为RawImage。
这个RawImage是在"ddmlib.RawImage“(ddms )中定义的,它被进一步转换为BufferImage。现在的问题是- android不支持java.awt.image.BufferedImage。
因此,这个RawImage是如何在位图或任何其他安卓支持的图像格式中被转换的。
或者,是否有任何方法可以直接使用RawImage来显示或保存外部存储?
发布于 2017-03-06 09:09:21
你可以从网站上找到答案。
http://www.programcreek.com/java-api-examples/index.php?api=com.android.ddmlib.RawImage
你可以测试源代码(我已经测试过了,没问题):
// convert raw data to an Image
BufferedImage image = new BufferedImage(rawImage.width, rawImage.height, BufferedImage.TYPE_INT_ARGB);
int index = 0;
int IndexInc = rawImage.bpp >> 3;
for (int y = 0 ; y < rawImage.height ; y++) {
for (int x = 0 ; x < rawImage.width ; x++) {
int value = rawImage.getARGB(index);
index += IndexInc;
image.setRGB(x, y, value);
}
}
if (!ImageIO.write(image, "png", new File(filepath))) {
throw new IOException("Failed to find png writer");
}https://stackoverflow.com/questions/23903451
复制相似问题