2

我需要将 rmagick 中的图像从其当前大小调整为固定宽度到 300 的宽度,而不会丢失图像质量。目前我正在关注 jpg 图像

 if previewImage.columns > 300
       previewImage.change_geometry!("300x") { |cols, rows, img|
           img.resize!(cols, rows)
       }
   end

我不确定这是否是最好的方法,因为我在生成的图像中失去了清晰度。我希望能够通过损失最少的图像质量来调整大小。

我知道有过滤器和压缩技术:JPG JPEGCompression、LosslessJPEGCompression

但不知道哪个会提供最好的结果,或者我可以将图像转换为 png 然后调整大小?

4

1 回答 1

3

转换为 PNG 将是无损的。调整大小总是意味着质量下降(您可以尝试各种图像魔术调整大小过滤器,看看哪一个最适合您的图像......确实没有“最好”的一个,这就是他们让您选择的原因。如果图像你处理的一般都是一样的,你应该可以通过实验来选择一个最佳的。从PNG转换回JPG意味着更多的损失,所以如果你走那条路,我会把图像保留在PNG。

于 2010-09-10T06:48:06.723 回答