1

我正在使用相对较新的webP图像格式进行一些实验,该格式在 android 4 (ICS) 上受支持,如图所示

到目前为止,为了在加载之前获取图像大小,我使用了下一个代码(类似于 google在此处显示的内容):

final BitmapFactory.Options options=new BitmapFactory.Options();
options.inJustDecodeBounds=true;
BitmapFactory.decodeStream(inputStream,null,options);
//image size is in options.outWidth,options.outHeight 

但是,当我在具有透明度的 webP 图像上使用它时,它似乎根本无法获取此信息(宽度和高度均返回 -1)。

谷歌是否有可能在解码此图像文件类型时出现错误?

有没有办法克服这个?

为了测试它,只需将具有透明度的 png 文件(就像我使用过的这个文件,并通过paint.net应用程序添加了一些透明像素)转换为 webP 格式(使用谷歌的工具),并尝试读取分辨率像我使用的代码一样的文件。

4

1 回答 1

0

我也遇到了这个问题。

遗憾的是,根据这个错误报告,仅在 Android JB-MR2 (4.2) 中添加了对具有透明度的 WEBP 的支持。

所以在 android 4.0 到 4.2 WEBP 只有在没有 alpha 通道的情况下才有效。

于 2013-06-04T09:21:55.860 回答