Go 语言

Go 语言教程 Go 语言环境安装 Go 语言结构 Go 语言基础语法 Go 语言数据类型 Go 语言变量 Go 语言常量 Go 语言运算符 Go 语言条件语句 Go 语言 if 语句 Go 语言 if...else 语句 Go 语言 if 语句嵌套 Go 语言 switch 语句 Go 语言 select 语句 Go 语言循环语句 Go 语言 for 循环 Go 语言循环嵌套 Go 语言 break 语句 Go 语言 continue 语句 Go 语言 goto 语句 Go 语言函数 Go 语言函数值传递值 Go 语言函数引用传递值 Go 语言函数作为值 Go 语言函数闭包 Go 语言函数方法 Go 语言变量作用域 Go 语言数组 Go 语言多维数组 Go 语言向函数传递数组 Go 语言指针 Go 语言指针数组 Go 语言指向指针的指针 Go 语言指针作为函数参数 Go 语言结构体 Go 语言切片(Slice) Go 语言范围(Range) Go 语言Map(集合) Go 语言递归函数 Go 语言类型转换 Go 语言接口 Go 错误处理 Go 语言开发工具Go 语言标准库

Go 语言标准库


package gif

import "image/gif"

gif包实现了gif文件的编码器和解码器。gif格式参见:http://www.w3.org/Graphics/GIF/spec-gif89a.txt

Go语言标准库 >>


  • type Options
  • func Decode(r io.Reader) (image.Image, error)
  • func DecodeConfig(r io.Reader) (image.Config, error)
  • func Encode(w io.Writer, m image.Image, o *Options) error
  • type GIF
  • type Options

    type Options struct {
        // NumColors是图像中的最多颜色数,范围[1, 256]
        NumColors int
        // Quantizer用于生成NumColors大小的调色板,为nil时默认使用palette.Plan9
        Quantizer draw.Quantizer
        // Drawer用于将图像写入期望的调色板格式的图像,为nil时会使用draw.FloydSteinberg
        Drawer draw.Drawer
    }

    Options是编码参数。

    func Decode

    func Decode(r io.Reader) (image.Image, error)

    从文件流解码并返回GIF文件中的第一幅图像。

    func DecodeConfig

    func DecodeConfig(r io.Reader) (image.Config, error)

    返回GIF图像的色彩模型和尺寸;函数不会解码整个图像文件。

    func Encode

    func Encode(w io.Writer, m image.Image, o *Options) error

    函数将图像以GIF格式写入w中。

    type GIF

    type GIF struct {
        Image     []*image.Paletted // 连续的图像
        Delay     []int             // 每一帧延迟时间,单位是0.01s
        LoopCount int               // 总的循环时间
    }

    GIF类型代表可能保存在GIF文件里的多幅图像。

    func DecodeAll

    func DecodeAll(r io.Reader) (*GIF, error)

    函数从r中读取一个GIF格式文件;返回值中包含了连续的图帧和时间信息。

    func EncodeAll

    func EncodeAll(w io.Writer, g *GIF) error

    函数将g中所有的图像按指定的每帧延迟和累计循环时间写入w中。