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_blobPNG形式を設定するには、行の後に具体的に呼び出す必要がありました。

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