我尝试使用以下代码将 base64 png 图像写入文件:imageReader := base64.NewDecoder(base64.StdEncoding, strings.NewReader(Images[i]))pngImage, _, err := image.Decode(imageReader)if err != nil { beego.Error(err)}bounds := pngImage.Bounds()if imgFile, err = os.Create(fileName + ".png"); err != nil { return Data{}}defer imgFile.Close()_, err = imgFile.Write([]byte(pngImage))界限没问题。最后一行的错误消息是无法将 pngImage(类型 image.Image)转换为类型 []byte显然,因为 image.Image 不是 byte[]。但是我该如何转换呢?或者有没有更简单的版本来做到这一点。
1 回答
宝慕林4294392
TA贡献2021条经验 获得超8个赞
用于png.Encode()
将 an 编码image.Image
为文件 ( io.Writer
)。
最后一行应替换为:
err = png.Encode(imgFile, pngImage)
png.Encode()
将生成字节序列并将其发送到指定的io.Writer
(os.File
当然可以是一个),以 PNG 格式描述指定的图像。
- 1 回答
- 0 关注
- 316 浏览
添加回答
举报
0/150
提交
取消