2013-07-23 23 views
0

我已經在這段時間裏撓了撓頭。我有一個上傳到AWS的截圖上傳類。問題在於resize_and_pad,因爲圖像被正確調整大小並填充,但無論我輸入背景的Hexcode總是用白色填充。CarrierWave resize_and_pad方法總是使用白色

如何獲得填充爲黑色而不是白色?

class ScreenshotUploader < CarrierWave::Uploader::Base 
    require 'carrierwave/processing/rmagick' 
    include CarrierWave::RMagick 
    process resize_and_pad: [200, 100, "#000000"] 
    end 
end 

回答

1

我不得不切換到Mini_Magick庫而不是Rmagick,一切工作正常。

require 'carrierwave/processing/mini_magick' 
class ScreenshotUploader < CarrierWave::Uploader::Base 
    include CarrierWave::MiniMagick 
    process resize_and_pad: [200, 100, "#000", "Center"] 
end 
2

resize_and_pad發生在4個參數,你錯過了一個參數:重力。

過程resize_and_pad:200,100, 「#000000」,Magick :: CenterGravity]

應該這樣做。

下面是官方文檔:link

+0

嗨rb,我曾嘗試在以前添加此項,但它仍然出現爲白色。 – dodgerogers747

+1

它爲我工作。我會檢查image-magick是否真的貼上圖像。如果圖像很小並且不需要填充,它將不會填充給定的顏色。嘗試上傳比200x100大的比例的圖片。 – rb512

相關問題