【问题标题】:Android save gif from byte arrayAndroid从字节数组中保存gif
【发布时间】:2014-12-07 17:42:32
【问题描述】:

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

但如果我将字节数组保存为 png 或 jpg 就一切正常。有谁知道问题出在哪里?

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

【问题讨论】:

    标签: java android gif


    【解决方案1】:

    GIF 仅限于 256 色,不支持真正的透明度。

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

    JPEG 对照片等复杂图像具有更好的压缩效果。

    png 具有比gif 更宽的调色板,并且 gif 是专有的,而 png 不是。 gif 可以做动画,而 normal-png 不能。 png-transparency 仅受大约比IE6 更新的浏览器支持,但有针对该问题的 Javascript 修复程序。两者都支持 alpha 透明度。一般来说,我会说您应该将 png 用于大多数网络图形,而将 jpeg 用于照片、屏幕截图或类似内容,因为 png 压缩在这些方面效果不佳。

    【讨论】:

    • TY 响应,但问题是我正在从存储为 .gif 文件的数据库中获取数据。
    • 但是你说得对,我在安卓端把gif转成png,画质还不错。
    猜你喜欢
    • 2017-03-02
    • 2014-12-22
    • 1970-01-01
    • 1970-01-01
    • 2012-07-13
    • 2011-12-20
    • 2013-03-09
    • 2017-01-24
    • 2013-10-18
    相关资源
    最近更新 更多