Я использую операторскую волну для загрузки изображений. Мне нужно, чтобы моя основная версия изображения оставалась в исходном формате, а другие версии были преобразованы в gif.
На данный момент я делаю что-то вроде этого:
def filename
change_ext_to_gif(super)
end
def change_ext_to_gif(ext)
ext.chomp(File.extname(ext)) + ".gif"
end
version :preview do
process :resize_to_fill => [60, 60]
process :convert => "gif"
end
version :full do
process :resize_to_limit => [320, 320]
process :convert => "gif"
end
version :mobile do
process :resize_to_limit => [72, 96]
process :convert => "gif"
end
Конечно, это также меняет расширение моего исходного файла. Есть ли способ решить эту проблему? Думаю, мне нужно переопределить некоторые методы в блоках версии. Но я не смог их понять (я попытался переопределить имя файла и URL-адрес, это помогает, но предотвращает удаление файлов версии).