7

image/jpeg 和 image/png 包具有读取和写入 jpeg 和 png 图像的 Decode 和 Encode 函数,但 image/gif 包没有 - 只有 Decode 和 DecodeAll。

那么,关于如何将 gif image.Image 编码为 io.Writer 的任何想法?

4

1 回答 1

8

Go 标准库不包含 GIF 编码器。

我认为您最好的选择是使用cgo与编码 GIF 的 C 库交互。 giflib看起来相当直接。

或者,您可以移植giflib 的相关部分以将它们提交到标准库。

GIF 编码不普及是有历史原因的——它被使用的 LZW 压缩专利所涵盖。然而,这些专利现在已经过期,所以没有理由不在标准库中使用压缩器,除了 GIF 不像以前那样流行!

于 2013-06-19T07:13:24.130 回答