gif包实现了gif图片的解码及编码
func Decode(r io.Reader) (image.Image, error) //Decode从r中读取一个GIF图像,然后返回的image.Image是第一个嵌入的图。
func DecodeConfig(r io.Reader) (image.Config, error) //DecodeConfig不需要解码整个图像就可以返回全局的颜色模型和GIF图片的尺寸。
type Config struct {
ColorModel color.Model
Width, Height int
}
Config返回图像的颜色model和尺寸
func Encode(w io.Writer, m image.Image, o *Options) error //将图片m按照gif模式写入w中
type Options struct {
// NumColors是图片中使用颜色的最大值,它的范围是1-256
NumColors int
// Quantizer经常被用来通过NumColors产生调色板,palette.Plan9 被用来替代nil Quantizer
Quantizer draw.Quantizer
// Drawer i用于将源图片转化为期望的调色板, draw.FloydSteinberg 用来替代一个空 Drawer.
Drawer draw.Drawer
}
func EncodeAll(w io.Writer, g *GIF) error //将图片按照帧与帧之间指定的循环次数和时延写入w中