我正在尝试将 []byte 对象转换为图像并将其保存为 Golang 中的 jpeg。我尝试使用Decode图像功能,但它总是返回<nil>。func saveFrames(imgByte []byte) { img, _, _ := image.Decode(bytes.NewReader(imgByte)) out, err := os.Create("./img.jpeg") if err != nil { fmt.Println(err) os.Exit(1) } err = jpeg.Encode(out, img) if err != nil { fmt.Println(err) os.Exit(1) }}
2 回答
小唯快跑啊
TA贡献1863条经验 获得超2个赞
你没有传递Options,to jpeg.Encode,你也可以将它设置为 nil。
func serveFrames(imgByte []byte) {
img, _, err := image.Decode(bytes.NewReader(imgByte))
if err != nil {
log.Fatalln(err)
}
out, _ := os.Create("./img.jpeg")
defer out.Close()
var opts jpeg.Options
opts.Quality = 1
err = jpeg.Encode(out, img, &opts)
//jpeg.Encode(out, img, nil)
if err != nil {
log.Println(err)
}
}
如果打开,不要忘记关闭任何文件。
log.Fatalln(...)如果您想打印错误消息并在出现任何错误时退出,您可以使用, 。
- 2 回答
- 0 关注
- 207 浏览
添加回答
举报
0/150
提交
取消