Изменение разрешения вашего файла не меняет (и не должно изменять) размер файла.Разрешение - это число точек на дюйм, а размер файла определяется (после контроля всего остального, например, размера файла, сжатия и т. Д.) Количеством фактических пикселей, независимо от того, сколько дюймов они потребляют.
Если вы хотите изменить разрешение вашего изображения (то есть то, что говорят Photoshop, GIMP и т. Д.), Единственное, что я нашел, что работает, это создание нового изображения с надлежащим разрешением, а затем наложение вашего оригинала наЭто.Это кажется контрпродуктивным, но это единственный способ заставить его работать вообще.
Пример кода:
image = Magick::Image.read("my300x300file.jpg").first
dpi_image = Magick::Image.new(image.columns, image.rows) {
self.density = "72x72"
self.background_color = "none"
}
image = dpi_image.composite(image, Magick::CenterGravity, Magick::OverCompositeOp)