Mini_Magick и CarrierWave не изменяют размер изображения

#ruby-on-rails #carrierwave #minimagick

#ruby-on-rails #carrierwave #minimagick

Вопрос:

Внутри моего avatar_uploader.rb я определил это

 include CarrierWave::MiniMagick
process resize_to_fit: [100, 100]
  

Загрузка изображений работает отлично. У меня возникли проблемы с изменением размера. Никаких ошибок, ничего подобного. Изображения просто не изменяются вообще. Я даже пытался кодировать размер в моем index.html.erb представлении следующим образом

 <%= image_tag(tutor.profile.avatar.url, size: "50, 50") if tutor.profile.avatar? %>
  

Но это тоже не работает. Я прочитал страницы CarrierWave и MiniMagick gem github, и, по-видимому, других дополнительных шагов нет.

Кто-нибудь знает, пропустил ли я что-нибудь?

Ответ №1:

Вы пробовали это решение :


 image = MiniMagick::Image.new(avatar_file.path) do |b|
        b.resize '150x150^'
        b.gravity 'Center'
        b.crop '150x150 0 0'
      end
  image.format 'jpg'
  image.write path
  

Однажды я использовал RMagick, но для этого потребовалось много ресурсов, поэтому я нашел альтернативу, и это звучит действительно здорово!

Комментарии:

1. Я попробую и дам вам знать. Есть идеи, в чем разница между изменением размера с помощью MiniMagick и указанием размера в rails image_tag?