pothoven-attachment_fu 3.2.1 → 3.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/CHANGELOG CHANGED
@@ -1,5 +1,9 @@
1
+ * Nov 15, 2012 *
2
+ * Removed 'crop:' option as already included when prefixing geometry with a 'c'. Add note to docs.
3
+ * Added option to sharpen resized images ':sharpen_on_resize'
4
+
1
5
  * Oct 26, 2012 *
2
- * Merged with https://github.com/tdd/attachment_fu fork to include GEM support for use in Rails 3.2
6
+ * Merged with https://github.com/tdd/attachment_fu fork to include GEM support for use in Rails 3.2, and bumped version to 3.2.x to indicate Rails 3.2 support.
3
7
 
4
8
  * Oct 25, 2012 *
5
9
  * Fix to support Ruby 1.9.3
@@ -37,29 +37,8 @@ module Technoweenie # :nodoc:
37
37
  end if image?
38
38
  end
39
39
 
40
- # Override image resizing method so we can support the crop option
41
- # Thanks: http://stuff-things.net/2008/02/21/quick-and-dirty-cropping-images-with-attachment_fu/
42
- def resize_image(img, size)
43
- img.delete_profile('*')
44
-
45
- # resize_image take size in a number of formats, we just want
46
- # Strings in the form of "crop: WxH"
47
- if (size.is_a?(String) && size =~ /^crop: (\d*)x(\d*)/i) ||
48
- (size.is_a?(Array) && size.first.is_a?(String) &&
49
- size.first =~ /^crop: (\d*)x(\d*)/i)
50
- img.crop_resized!($1.to_i, $2.to_i)
51
- # We need to save the resized image in the same way the
52
- # orignal does.
53
- quality = img.format.to_s[/JPEG/] && get_jpeg_quality
54
- out_file = write_to_temp_file(img.to_blob { self.quality = quality if quality })
55
- self.temp_paths.unshift out_file
56
- else
57
- old_resize_image(img, size) # Otherwise let attachment_fu handle it
58
- end
59
- end
60
-
61
40
  # Performs the actual resizing operation for a thumbnail
62
- def old_resize_image(img, size)
41
+ def resize_image(img, size)
63
42
  size = size.first if size.is_a?(Array) && size.length == 1 && !size.first.is_a?(Fixnum)
64
43
  if size.is_a?(Fixnum) || (size.is_a?(Array) && size.first.is_a?(Fixnum))
65
44
  size = [size, size] if size.is_a?(Fixnum)
@@ -68,10 +47,13 @@ module Technoweenie # :nodoc:
68
47
  dimensions = size[1..size.size].split("x")
69
48
  img.crop_resized!(dimensions[0].to_i, dimensions[1].to_i)
70
49
  else
71
- img.change_geometry(size.to_s) { |cols, rows, image| image.resize!(cols<1 ? 1 : cols, rows<1 ? 1 : rows) }
50
+ img.change_geometry(size.to_s) { |cols, rows, image|
51
+ image.resize!(cols<1 ? 1 : cols, rows<1 ? 1 : rows)
52
+ }
72
53
  end
73
54
  self.width = img.columns if respond_to?(:width)
74
55
  self.height = img.rows if respond_to?(:height)
56
+ img = img.sharpen if attachment_options[:sharpen_on_resize] && img.changed?
75
57
  img.strip! unless attachment_options[:keep_profile]
76
58
  quality = img.format.to_s[/JPEG/] && get_jpeg_quality
77
59
  out_file = write_to_temp_file(img.to_blob { self.quality = quality if quality })
@@ -45,7 +45,8 @@ module Technoweenie # :nodoc:
45
45
  # * <tt>:min_size</tt> - Minimum size allowed. 1 byte is the default.
46
46
  # * <tt>:max_size</tt> - Maximum size allowed. 1.megabyte is the default.
47
47
  # * <tt>:size</tt> - Range of sizes allowed. (1..1.megabyte) is the default. This overrides the :min_size and :max_size options.
48
- # * <tt>:resize_to</tt> - Used by RMagick to resize images. Pass either an array of width/height, or a geometry string.
48
+ # * <tt>:resize_to</tt> - Used by RMagick to resize images. Pass either an array of width/height, or a geometry string. Prefix geometry string with 'c' to crop image, ex. 'c100x100'
49
+ # * <tt>:sharpen_on_resize</tt> - When using RMagick, setting to true will sharpen images after resizing.
49
50
  # * <tt>:jpeg_quality</tt> - Used to provide explicit JPEG quality for thumbnail/resize saves. Can have multiple formats:
50
51
  # * Integer from 0 (basically crap) to 100 (basically lossless, fat files).
51
52
  # * When relying on ImageScience, you can also use one of its +JPEG_xxx+ constants for predefined ratios/settings.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pothoven-attachment_fu
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.1
4
+ version: 3.2.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors: