猿问

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

我现在有一张类型不清楚的图片,他可能是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

}


慕桂英4014372
浏览 160回答 1
1回答

白板的微信

使用以下函数将 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函数将任意图像类型转换为目标图像类型。
随时随地看视频慕课网APP

相关分类

Go
我要回答