【问题标题】:How to covert ddmlib.RawImage into bitmap or jpg image in android?如何将 ddmlib.Raw 图像转换为 android 中的位图或 jpeg 图像?
【发布时间】:2017-03-06 17:11:45
【问题描述】:

我正在尝试将 Java 代码移植到 android 代码。源代码在这里: screenshot:java

这里

RawImage raw=device.getScreenshot();

截取安卓屏幕截图并保存为RawImage

这个 RawImage 在 "ddmlib.RawImage" (ddms) 中定义,它被进一步转换为 BufferImage。现在的问题是 - android 不支持 java.awt.image.BufferedImage。

那么,RawImage 是如何被位图或任何其他 android 支持的图像格式覆盖的。

或者,有什么方法可以直接使用RawImage 来显示或保存在外部存储中?

【问题讨论】:

  • if (!ImageIO.write(image, "png", new File(filepath))) { throw new IOException("Failed to find png writer"); }
  • 你有没有注意到这个你附加的链接“screenshot:java”
  • @AM : ImageIO 也不被android支持link

标签: android ddms android-bitmap


【解决方案1】:

你可以从网站上找到答案

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");
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-29
    • 2010-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多