2011-10-12 105 views
2

我在Rails中使用了rmagick將我從一種文件類型上傳的圖像轉換爲JPEG。我現在可以從新圖像中調用它;我所做的:Rails回形針更改文件

image = Magick::ImageList.new 'public/system/photos/' + @picture.id.to_s + 
           '/original/' + @picture.photo_file_name 

image.write 'public/system/photos/' + @picture.id.to_s + '/original/' + 
      @picture.photo_file_name.sub(/\.\w*/, '.jpg') 

@picture.photo_file_name = @picture.photo_file_name.sub /\.\w*/,'.jpg' 

現在我已經創建了兩個文件,應該如何刪除原始文件,或覆蓋原來的文件,而不是創建一個新的像我現在?

+0

如果您已經使用Paperclip,爲什麼不只是讓Paperclip爲您做轉換。 –

+0

@Jordan我到現在爲止忘了這個問題,怎麼會這樣? – jack

回答

0

回覆:在評論的討論,這裏是從回形針文檔的例子:

class User < ActiveRecord::Base 
    has_attached_file :photo, 
        :styles => { 
         :small => { 
         :geometry => '38x38#', 
         :quality => 40, 
         :format => 'JPG' 
         }, 
         :medium => { 
         :geometry => '92x92#', 
         :quality => 50 
         } 
end 

注意 「:format => 'JPG'」 行。正如您所看到的,告知Paperclip將文件轉換爲JPEG文件的操作非常簡單,因爲如果您正在使用Paperclip,則無需直接對rmagick執行單獨的轉換步驟。