Android从字节数组中保存gif

时间:2014-10-13 07:54:18

标签: java android gif

当我使用下面的代码将字节数组保存到gif时,gif文件模糊不清。

但如果我将字节数组保存到png或jpg就可以了。有人知道问题是什么吗?

public writeToFile(byte[] array) { 
    try { 
        String path = "..."; 
        FileOutputStream stream = new FileOutputStream(path); 
        stream.write(array); 
    } catch (FileNotFoundException e) { 
        e.printStackTrace(); 
    } 
}

1 个答案:

答案 0 :(得分:3)

GIF限制为256色,不支持真正的透明度。

enter image description here

您应该使用PNG而不是GIF,因为它提供了更好的压缩和功能。 PNG非常适合小型和简单的图像,如徽标,图标等。

JPEG可以通过照片等复杂图像进行更好的压缩。

png具有比gif更宽的颜色托盘,并且gif是专用的,而png不是。{ gif可以做动画,普通png不能。浏览器仅支持png-transparency大致比IE6更近,但是有一个Javascript修复此问题。两者都支持alpha透明度。一般来说,我会说你应该使用png进行大多数webgraphics,同时使用jpeg进行照片,屏幕截图或类似的操作,因为png压缩在使用时效果不是很好。