2012-03-28 6 views
10

Я использую:carrierwave + mini_magick самоцветы = не изображение ошибки

- carrierwave 0.6.0 
- rails 3.2.1 
- mini_magick 3.4 
- ruby 1.9.2p290 

И во время загрузки изображения я хочу, чтобы изменить размер при загрузке ПИК:

(image_uploader.rb) 
process :resize_to_fit => [200, 200] 

Но после загрузки изображения я получил ошибка:

1 error prohibited this organization from being saved: 
Image image Failed to manipulate with MiniMagick, maybe it is not an image? Original Error: MiniMagick::Invalid 

PS. Если я не изменяю размер, загрузка изображений работает нормально.

PS2. Я пытался добавить в конфигурационный/environment.rb: (. До сих пор не работает - кстати это он требуется при использовании mini_magick как драгоценный камень?)

require 'rubygems' 
require "mini_magick" 

, но без успеха

ответ

16

Я уверен, что вы» ве решили эту проблему сейчас, но вот решение, которое работало для меня только сейчас (по крайней мере, надеюсь, это почти два месяца спустя!):


Uninstall ImageMagick через доморощенного:

  • brew uninstall imagemagick

Протирайте доморощенного каталог:

  • brew cleanup --force -s
  • --force удаляет все устаревшие бочонок только варит, -s удаляет все кэшированные Загрузки

Переустановить imagemagick:

  • brew install imagemagick

После всего этого, вы должны быть хорошо идти!

+1

ха! Я решил это, но спасибо за помощь! :) кстати. не доморощенный только для mac? Я на Ubuntu;) – mrmnmly

+1

@ofcapl О, мужчина, это! Виноват! Я думаю, что я смотрел на аналогичную проблему, когда человек с проблемой использовал доморощенный, и я немного перепутал ... Извините! –

+0

@ Ruschill. Работы по установке доморощенного. Любая идея, почему это необходимо? Получение ощущения imagemagick хрупкое. – Jerome

0

Ответ Б. Русчилля, похоже, решил проблему многих народов, к сожалению, это не для меня. Также не было найдено много решений в интернетах.

Оказывается, у меня была устаревшая версия libjpeg. Я исправил это путем удаления и повторной установки с использованием варева. Это может случиться и для других форматов изображений. Возможно, сделать то же самое для соответствующих lib s может решить проблему.

TL; DR

brew remove libjpeg 
brew install libjpeg