Fix: Crop is doing resize. Closes #128

master
Dan Persa 9 years ago
parent e099e4c9f5
commit 9b6989c3ce

@ -176,7 +176,7 @@ func TestImageCropByWidth(t *testing.T) {
t.Errorf("Cannot process the image: %s", err)
}
err = assertSize(buf, 600, 375)
err = assertSize(buf, 600, 1050)
if err != nil {
t.Error(err)
}
@ -190,7 +190,7 @@ func TestImageCropByHeight(t *testing.T) {
t.Errorf("Cannot process the image: %s", err)
}
err = assertSize(buf, 480, 300)
err = assertSize(buf, 1680, 300)
if err != nil {
t.Error(err)
}

@ -401,12 +401,20 @@ func imageCalculations(o *Options, inWidth, inHeight int) float64 {
}
// Fixed width, auto height
case o.Width > 0:
factor = xfactor
o.Height = roundFloat(float64(inHeight) / factor)
if o.Crop {
o.Height = inHeight
} else {
factor = xfactor
o.Height = roundFloat(float64(inHeight) / factor)
}
// Fixed height, auto width
case o.Height > 0:
factor = yfactor
o.Width = roundFloat(float64(inWidth) / factor)
if o.Crop {
o.Width = inWidth
} else {
factor = yfactor
o.Width = roundFloat(float64(inWidth) / factor)
}
// Identity transform
default:
o.Width = inWidth

Loading…
Cancel
Save