image - 如何将 []byte 对象转换为图像并将其作为 jpeg 图像存储在磁盘上
问题描述
我正在尝试将 []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)
}
}
解决方案
您没有传递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(...)
如果您想打印错误消息并在出现任何错误时退出,您可以使用。
推荐阅读
- javascript - CSS 和 Material UI - 如何让表格内容只向下扩展 || 如何设置容器顶部的固定位置
- php - Laravel 碳的使用
- wordpress - Wordpress 主题编辑文件权限问题
- python - 在python中为随机选择的选项分配一个值
- jquery - 使用 jquery 向现有背景图像添加背景渐变
- c++ - 使用可变参数调用函数,其中可变参数是引用
- c# - 如何使用 TryFindParent
- python - 如何在分组的 Python 数据框中获取值
- mongodb - mongodb中如何查询子对象中的数组元素是否大于0并删除
- pug - Alpine.js 和 Spruce 中的变量插值