Index: /Volumes/Data/Dev/sandbox/drupal6/sites/all/modules/contrib/imagefield_crop/imagefield_crop.js
===================================================================
--- /Volumes/Data/Dev/sandbox/drupal6/sites/all/modules/contrib/imagefield_crop/imagefield_crop.js	(revision 3)
+++ /Volumes/Data/Dev/sandbox/drupal6/sites/all/modules/contrib/imagefield_crop/imagefield_crop.js	(working copy)
@@ -45,6 +45,7 @@
         aspectRatio: Drupal.settings.imagefield_crop[id].box.ratio,
         boxWidth: Drupal.settings.imagefield_crop[id].box.box_width,
         boxHeight: Drupal.settings.imagefield_crop[id].box.box_height,
+        minSize: [Drupal.settings.imagefield_crop[id].minimum.width, Drupal.settings.imagefield_crop[id].minimum.height],
         setSelect: [
           parseInt($(".edit-image-crop-x", widget).val()),
           parseInt($(".edit-image-crop-y", widget).val()),
Index: /Volumes/Data/Dev/sandbox/drupal6/sites/all/modules/contrib/imagefield_crop/imagefield_crop_widget.inc
===================================================================
--- /Volumes/Data/Dev/sandbox/drupal6/sites/all/modules/contrib/imagefield_crop/imagefield_crop_widget.inc	(revision 3)
+++ /Volumes/Data/Dev/sandbox/drupal6/sites/all/modules/contrib/imagefield_crop/imagefield_crop_widget.inc	(working copy)
@@ -32,10 +32,15 @@
     '#type' => 'checkbox',
     '#title' => t('Enforce crop box ratio'),
     '#default_value' => isset($widget['enforce_ratio']) ? $widget['enforce_ratio'] : 1,
-    '#description' => t('Check this to force the ratio of the output on the crop box. NOTE: If you leave this unchecked but enforce an output resolution, the final image might be distorted'),
+    '#description' => t('Check this to force the ratio of the output on the crop box. NOTE: If you leave this unchecked but enforce an output resolution, the final image might be distorted.'),
     '#element_validate' => array('_imagefield_crop_widget_settings_enforce_ratio_validate'),
   );
-
+  $form['enforce_minimum'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Enforce minimum crop size based on the output size'),
+    '#default_value' => 0,
+    '#description' => t('Check this to force a minimum cropping selection equal to the output size. NOTE: If you leave this unchecked you might get zoomed pixels if the cropping area is smaller than the output resolution.'),
+  );
   $form['croparea'] = array(
     '#type' => 'textfield',
     '#title' => t('The resolution of the cropping area'),
@@ -79,7 +84,7 @@
 }
 
 function imagefield_crop_widget_settings_save($widget) {
-  $settings = array('collapsible', 'resolution', 'enforce_ratio', 'croparea');
+  $settings = array('collapsible', 'resolution', 'enforce_ratio', 'croparea', 'enforce_minimum');
   return array_merge($settings, module_invoke('imagefield', 'widget_settings_save', $widget));
 }
 
@@ -195,6 +200,10 @@
           'box_width' => (integer)$bwidth,
           'box_height' => (integer)$bheight,
         ),
+        'minimum' => array(
+          'width'   => $field['widget']['enforce_minimum'] ? $w : NULL,
+          'height'  => $field['widget']['enforce_minimum'] ? $h : NULL,
+        ),
         'preview' => $preview_js,
       ),
     );
