diff --git a/lib/cropping.js b/lib/cropping.js
index <HASH>..<HASH> 100644
--- a/lib/cropping.js
+++ b/lib/cropping.js
@@ -260,8 +260,11 @@ function crop_aoi_auto(options) {
     //calculate the pixel ratio between the target size and the AOI
     var d = (options.source.aoi.w * options.source.aoi.h) / (options.target.w * options.target.h);
 
-    // if d > 1 the target is smaller than the aoi, treat it as if is was the same size
+    d = 1 - d; //reverse it, so that 0 means "equal to the emnphasis version"
+
+    // limit do to me within [0,1]. anything else doesn't make sense
     d = d > 1 ? 1 : d;
+    d = d < 0 ? 0 : d;
 
     var coverage = crop_aoi_coverage(options);
     var emphasis = crop_aoi_emphasis(options);
@@ -272,7 +275,7 @@ function crop_aoi_auto(options) {
     crop.w = emphasis.w + d * (coverage.w - emphasis.w);
     crop.h = emphasis.h + d * (coverage.h - emphasis.h);
 
-    return crop;
+    return floor_crop_rect(crop);
 }
 
 function crop(options) {
fixed auto-cropping problems. refs #<I>