feat(提升性能): 更快的加载图片
build.yaml / build (push) Successful in 38s

This commit is contained in:
2026-07-13 16:17:08 +08:00
parent 19ba4562a1
commit 1004781aed
2 changed files with 17 additions and 0 deletions
+13
View File
@@ -21,6 +21,7 @@ import (
"image"
"image/color"
canvas_image "github.com/tdewolff/canvas/image"
_ "github.com/xiaoqidun/jbig2"
_ "golang.org/x/image/bmp"
)
@@ -29,6 +30,18 @@ import (
// 入参: data 图片数据
// 返回: image.Image 图片对象, string 图片格式, error 错误信息
func decodeImageData(data []byte) (image.Image, string, error) {
if _, format, err := image.DecodeConfig(bytes.NewReader(data)); err == nil {
switch format {
case "jpeg":
if img, err := canvas_image.NewJPEGImage(bytes.NewReader(data)); err == nil {
return img, format, nil
}
case "png":
if img, err := canvas_image.NewPNGImage(bytes.NewReader(data)); err == nil {
return img, format, nil
}
}
}
img, format, err := image.Decode(bytes.NewReader(data))
if err == nil {
return img, normalizeSealType(format), nil