image_processing
image_processing copied to clipboard
Is sharpening enabled or not?
After upgrading to Rails 6.1 I noticed a change in the thumbnail image quality... they seem a little bit blurred. I don't know if this happened some months ago or after the upgrade, however I think that the quality of images was better 1 year ago when we decided the compression options.
Then I have also found this: https://guides.rubyonrails.org/upgrading_ruby_on_rails.html#active-storage-now-requires-image-processing
Now I am really confused and I cannot find a clear documentation about sharpening and other options enabled by default by this gem.
- Does
resizeapply sharpening automatically? - Does
resize_to_fit/limit/fillapply sharpening automatically? - Is sharpening applied automatically by this gem in the following case (that doesn't use
resizeand doesn't useresize_to_*)?
image.variant({
geometry: '600x300^',
gravity: 'center',
crop: '600x300+0+0',
'sampling-factor': '4:2:0',
strip: true,
quality: 85,
interlace: 'JPEG',
colorspace: 'sRGB'
})
Thanks in advance for the clarification
Version: image_processing 1.12.1 (latest)
Default sharpening was recently removed from the MiniMagick backend, see https://github.com/janko/image_processing/pull/67 and https://github.com/carrierwaveuploader/carrierwave/issues/2481 for more details. TL;DR: The sharpening parameters were making some thumbnails worse than the default version. I didn't manage to acquire enough knowledge to choose safer sharpening parameters, so I've decided to disable it.
To answer your questions:
resizedoesn't apply sharpeningresize_*macros did apply sharpening, but not anymore- sharpening is not applied by deafult
You can enable sharpening with resize_* macro by passing as the last argument sharpen: {}, or just adding sharpen: "0x1" or whatever sharpening parameters you prefer (0x1 was the default).
@janko Janko, would you know how I could sharpening when using a process resize_to_* macro with Carrierwave?