fix(rotate): pre-rotate image based on EXIT orientation

master
Tomas Aparicio 10 years ago
parent aca57af419
commit b198ea2ecc

@ -32,6 +32,14 @@ func Resize(buf []byte, o Options) ([]byte, error) {
debug("Options: %#v", o)
// Initial image auto rotate / flip for proper transformation calculus
if o.Rotate == 0 {
image, err = rotateAndFlipImage(image, o)
if err != nil {
return nil, err
}
}
inWidth := int(image.Xsize)
inHeight := int(image.Ysize)
@ -74,12 +82,6 @@ func Resize(buf []byte, o Options) ([]byte, error) {
return nil, err
}
// Rotate / flip image, if necessary
image, err = rotateAndFlipImage(image, o)
if err != nil {
return nil, err
}
// Transform image, if necessary
if shouldTransformImage(o, inWidth, inHeight) {
image, err = transformImage(image, o, shrink, residual)
@ -102,6 +104,12 @@ func Resize(buf []byte, o Options) ([]byte, error) {
return nil, err
}
// Transform to original rotation, if necessary
image, err = rotateAndFlipImage(image, o)
if err != nil {
return nil, err
}
// Flatten image on a background, if necessary
image, err = imageFlatten(image, imageType, o)
if err != nil {

Loading…
Cancel
Save