gpt4 book ai didi

go - 如何将图片转换为image.RGBA?

转载 作者:行者123 更新时间:2023-12-01 21:16:07 61 4
gpt4 key购买 nike

我现在有类型不清楚的图片,他可能是jpeg gif,我想将其转换为image.Image,我该怎么办?

下面是我的代码

func imageToPng(img image.Image) (image.Image, error) {

var reader = bytes.NewBuffer(nil)
err := png.Encode(reader, img)
if err != nil {
return nil, err
}

img, err = png.Decode(reader)
if err != nil {
return nil, err
}

return img, nil
}

最佳答案

使用以下函数将image.Image转换为* image.RGBA。

func imageToRGBA(src image.Image) *image.RGBA {

// No conversion needed if image is an *image.RGBA.
if dst, ok := src.(*image.RGBA); ok {
return dst
}

// Use the image/draw package to convert to *image.RGBA.
b := src.Bounds()
dst := image.NewRGBA(image.Rect(0, 0, b.Dx(), b.Dy()))
draw.Draw(dst, dst.Bounds(), src, b.Min, draw.Src)
return dst
}

draw.Draw函数将任意图像类型转换为目标图像类型。

关于go - 如何将图片转换为image.RGBA?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61720744/

61 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com