2013-02-18 45 views
1

我有以下代碼,調整大小和圖像,然後添加一些十六進制背景。在localhost這個工作,但在Heroku我得到以下錯誤照片無法操作MiniMagick,也許它不是一個圖像?錯誤

version :big do 
    process :offer_resize_and_pad 
end 

def offer_resize_and_pad 
    img = resize_and_pad(600, nil, model.hex, 'Center') 
    img 
end 

"Photo Failed to manipulate with MiniMagick, maybe it is not an image? Original Error: Command (\"mogrify -thumbnail \"600x>\" -background \"#fff\" -gravity \"Center\" -extent \"600x\" /tmp/mini_magick20130217-2-1hts61y.jpg\") failed: {:status_code=>1, :output=>\"mogrify: Empty JPEG image (DNL not supported) /tmp/mini_magick20130217-2-1hts61y.jpg」 @ jpeg.c/EmitMessage/232。\ n \」

+0

這可能是因爲你沒有相同的訪問文件系統在Heroku上,你就做你的本地機器即/ tmp目錄 – Yule 2013-02-18 11:41:12

+0

你有一點,但是,我該如何解決這個問題?還有其他來自其他上傳者的圖片,這是工作。 – vladCovaliov 2013-02-18 11:46:00

+0

當我將我的Gemfile從mini_magick(4.0.1)更新到(4.3.6)時,出現類似的錯誤,請參閱https://github.com/minimagick/minimagick/issues/338 – vanboom 2015-11-21 17:00:38

回答

0

我以前用過RMagick代替Mini_magick,有一些語法變化,似乎工作:)。

include CarrierWave::RMagick 

def offer_resize_and_pad 
    img = resize_and_pad(600, 280, model.hex, ::Magick::CenterGravity) 
    img 
end 
+1

請擴展您的答案。爲了讓答案對未來的訪問者有所幫助,你應該發佈最終爲你工作的解決方案。 – andr 2013-02-18 12:19:13

相關問題