我需要将rmagick中的图像从当前大小调整为固定宽度到宽度300而不会丢失图像质量。目前我正在关注jpg图像
if previewImage.columns > 300 previewImage.change_geometry!("300x") { |cols, rows, img| img.resize!(cols, rows) } end
我不确定这是否是最佳方式,因为我在结果图像中失去清晰度。我希望能够通过丢失最少的图像质量来调整大小。
我知道有过滤器和压缩技术: JPG JPEGCompression,LosslessJPEGCompression
但不知道哪个会提供最好的结果,或者我可以将图像转换为png然后调整大小?
答案 0 :(得分:3)
转换为PNG将是无损的。调整大小总是意味着质量的一些损失(你可以尝试各种图像magick调整大小过滤器,看看哪一个最适合你的图像...真的没有“最好的”,这就是为什么他们让你选择。如果图像你所处理的通常是相同的,你应该能够通过试验选择一个最佳的。从PNG转换回JPG意味着更多的损失,所以如果你去那条路线,我会把图像保留在PNG。