如何使用golang压缩和调整gif的大小

如何使用golang压缩和调整gif的大小,go,image-processing,gif,Go,Image Processing,Gif,是否有方法或库来压缩和调整gif使用golang的大小 ps:我尝试过,但它不支持gif。我从未使用过,但我认为您可以使用std库读取/写入gif(导入“图像/gif”)。然后使用类似“resize”(请参阅)的方法调整大小 现在你可以得到一个GIF结构 type GIF struct { Image []*image.Paletted // The successive images. 然后,您可以在GIF中调整每个图像的大小 for _,img:=range gif.Ima

是否有方法或库来压缩和调整gif使用golang的大小


ps:我尝试过,但它不支持gif。

我从未使用过,但我认为您可以使用std库读取/写入gif(导入“图像/gif”)。然后使用类似“resize”(请参阅)的方法调整大小

现在你可以得到一个GIF结构

type GIF struct {
        Image []*image.Paletted // The successive images.
然后,您可以在GIF中调整每个图像的大小

for _,img:=range gif.Image{
    resize(img)
}

PS:image.Paletted implemented image.image,因此您可以使用它来调整图像大小。

bimg通过C绑定使用libvips。您的LIPVB是否支持gif格式?
resize
只支持调整图像大小,不支持压缩图像。图像是一个界面(
https://golang.org/pkg/image/#Image
)。Palette实现了该接口。检查
https://golang.org/pkg/image/#Paletted
for _,img:=range gif.Image{
    resize(img)
}