使用BitmapFactory解码ico格式

时间:2014-03-24 06:57:03

标签: java android android-layout bitmap

我正在尝试在图片视图上呈现.ico个文件。但是我无法得到Bitmap。我在下面粘贴了代码。

Bitmap bitmap = BitmapFactory.decodeByteArray( inputByte, 0, input.length);

其中输入是来自windows end的.ico图像的字节流。 我观察到Bitmap对象已经创建,但是当我打印heightwidth时,尺寸为0。

1 个答案:

答案 0 :(得分:1)

来自developer.android.com上的文档:

  

Android支持三种格式的位图文件:.png   (首选),.jpg(可接受),。gif(气馁)。

好的,这不是你想听到的答案。您是否考虑过将.ico字节转换为另一种格式,然后再将其推送到设备?

ico文件格式为publicly documented。您可以考虑编写代码以从ico中提取BMP(并从RGB字节手动构建Bitmap)。或者如果ico是png格式,您可以直接从ico文件的中间提取PNG字节,然后调用相应的BitmapFactory.decode方法。 ico文件有点不同 - 因为它们包含几个不同分辨率的图像。