2012-03-12 84 views
3

我上傳裏面有:carrierwave水印的圖像

version :profile do 
    process :resize_to_fill => [300, 300] 
    process :quality => 90 
    process :watermark 
    end 

那麼:同時ImageMagick的安裝

  • def watermark 
        manipulate! do |img| 
         logo = Magick::Image.read("#{Rails.root}/assets/images/watermarks/watermark.png").first 
         img = img.composite(logo, Magick::SouthEastGravity, Magick::OverCompositeOp) 
        end 
        end 
    
    • 上面將無法工作沒有任何錯誤日誌所以很很難調試

    • 有沒有辦法調試和修復以上代碼,以製作一個適用於載波的工作水印方法?

  • +0

    到圖像的路徑看起來錯誤 - 資產通常在app /資產 – 2012-06-11 07:16:13

    +0

    你能請張貼的答案我們 – 2014-06-22 20:28:45

    回答

    5

    你在哪裏寫結果到磁盤?

    我相信composite方法本身不會將結果寫入磁盤。您必須撥打img.write('composite.gif')(或您想要的任何文件名)才能實際保存組合結果。

    我想有可能carrierwave爲您做這件事,但是您可以通過檢查文件的輸出內容和/或時間戳來查看上傳後文件是否被修改了嗎?

    編號:http://rmagick.rubyforge.org/src_over.html - 約一半下來的頁面