0

我正在尝试调整图像大小并降低从数据库中提取的图像的质量,并能够以减小的大小将其保存回数据库。

到目前为止,我正在尝试以下 RMagick 方法:

image = Image.from_blob(origImage.data).first do
        self.format = "png"
      end
      image.resize_to_fit!(width)
      image.quality = 60
      newImage = image.to_blob

但是 image.quality 的值对来自to_blob的数据大小没有影响

我这样做正确吗?

4

1 回答 1

1

尝试将质量参数放在 to_blob 方法上。

# image.quality = 60 # ignore this
newImage = image.to_blob { self.quality = 60 }

您可能在那里输出与 origImage 相同的格式 -format似乎不适用于from_blob. from_blob我必须在设置PNG格式的行之后专门调用它。

image = Magick::Image.from_blob(origImage.data).first do
#    self.format = 'PNG'
end
image.format = 'PNG'
于 2013-02-01T16:00:31.670 回答