Mod, fix autoRotate not clearing orientation exif data

This commit is contained in:
Gabe Farrell 2023-06-27 21:24:26 +00:00
parent 44c1dfbd7e
commit d9221924d2
2 changed files with 17 additions and 7 deletions

3
go.mod Normal file
View file

@ -0,0 +1,3 @@
module github.com/gosuimg/bimg
go 1.20

View file

@ -45,18 +45,25 @@ func resizer(buf []byte, o Options) ([]byte, error) {
} }
// Auto rotate image based on EXIF orientation header // Auto rotate image based on EXIF orientation header
image, rotated, err := rotateAndFlipImage(image, o) // image, rotated, err := rotateAndFlipImage(image, o)
// if err != nil {
// return nil, err
// }
if (imageType == JPEG || imageType == HEIF || imageType == AVIF) && !o.NoAutoRotate {
image, err = vipsAutoRotate(image)
if err != nil { if err != nil {
return nil, err return nil, err
} }
}
// If JPEG or HEIF image, retrieve the buffer // If JPEG or HEIF image, retrieve the buffer
if rotated && (imageType == JPEG || imageType == HEIF || imageType == AVIF) && !o.NoAutoRotate { // if rotated && (imageType == JPEG || imageType == HEIF || imageType == AVIF) && !o.NoAutoRotate {
buf, err = getImageBuffer(image) // buf, err = getImageBuffer(image)
if err != nil { // if err != nil {
return nil, err // return nil, err
} // }
} // }
inWidth := int(image.Xsize) inWidth := int(image.Xsize)
inHeight := int(image.Ysize) inHeight := int(image.Ysize)