gpt4 book ai didi

ruby-on-rails - CarrierWave::RMagick resize_to_fit 后 PNG 图像质量损失

转载 作者:行者123 更新时间:2023-12-04 08:55:50 26 4
gpt4 key购买 nike

我正在使用 CarrierWave::RMagick为 Rails 应用程序创建图像的缩略图版本,我注意到当图像缩小时质量会下降。这在一定程度上是可以理解的,因为我们在缩小的图像中像素较少,因此质量较低,但我希望质量更好。我给你看一个例子:

Original Photoshop (Bicubic) RMagick

从左到右,第一个是原图(100x105),第二个是Photoshop的Bicubic resize(95x100),第三个是RMagick的resize_to_fit的结果(95x100)。

对于此示例,原始图像仅比我想要的缩略图稍大,但我基本上强制每个缩略图最大为 100x100。我希望你能看到缩小图像之间的差异。将 Photoshop 的质量与 RMagick 的质量进行比较可能很愚蠢,但即使在 Chrome 中缩小以缩小图像也会产生更好质量的图像。

我基本上在 CarrierWave 上传器类中使用它:

  version :thumb do
process :resize_to_fit => [100, 100]
end

关于如何提高图像质量的任何想法?或者是否有任何可以做得更好的 RMagick 替代品?

编辑:我试过 this ,虽然这没有任何区别。无论如何,我认为这是针对 JPEG 图像的。

最佳答案

问题似乎出在 imagemagick 库中,而不是特定于carrierwave 或rmagick。

您可以在命令行中对此进行测试。这两个命令使用 imagemagick 自己的 mogrify 产生与 rmagick 相同的模糊输出。命令:

mogrify -resize 100x100 original.png
mogrify -resize 100x100 -quality 100 original.png

imagemagick docs建议 -resize命令(由carrierwave 通过rmagick 或minimagick 使用)为像我们在这里测试的那样的小变化创建模糊的结果,你最好使用 -adaptive-resize命令,但在我的快速测试中,我无法产生更好的结果。

别人有 reported better results使用 graphicsmagick 而不是 imagemagick(这可能还需要从 rmagick 切换到 minimagick),但我还没有测试过。

关于ruby-on-rails - CarrierWave::RMagick resize_to_fit 后 PNG 图像质量损失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12873936/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com