RMagick Setting Quality or Compression


#1

I am trying to dynamically set the compression or quality of an image
when displaying it. I have seen in the RMagick documentation how to
set the quality only when writing the file to disk. How can I set the
quality dynamically or set the compression?

The method “image.quality=” does not exist and
“image.compression_type=” is not in the documentation. I have tried
image.compression= Magick::CompressionType.new(‘JPEGCompression’,50),
but that doesn’t work.

Thanks!

–Tom


#2

Okay, I’ve figured out how to set the quality with the .to_blob
method:

image.to_blob { self.quality=50 }

That will let me do what I am trying to do. If there are any RMagick
pros out there, I still would like to know

  1. How can you change the JPEGCompression? It looks like it is always
    set to 5.
  2. What is the difference between setting the JPEGCompression and
    Quality? Is one better than the other?

Thanks,
Tom


#3

img.write(“image.jpg”){self.quality = 75}

:slight_smile: