2011-09-29 125 views
15

我使用回形針允許用戶上傳圖像,並且只有在圖像爲tiff圖像時纔會將圖像轉換爲jpg/png 。回形針 - 將tiff圖像轉換爲jpg或png

我使用下面的代碼在我image.rb:

validates_attachment_presence :data 
    validates_attachment_content_type :data, 
    :content_type => ['image/jpeg', 'image/pjpeg', 
            'image/jpg', 'image/png', 'image/tif', 'image/gif'], :message => "has to be in a proper format" 

我想知道是否有可能上傳時,他們TIFF圖像轉換成JPG或PNG。

非常感謝

回答

29

終於找到了解決辦法。認爲這可能對別人有幫助。

在image.rb,進入下面的代碼行:

:styles => { 
    :thumb => ["150x172#",:jpg], 
    :large => ["100%", :jpg] 
    } 

這將創建在主圖像文件夾2個的其他文件夾,並thumblarge。如果你想顯示圖像(最初是tiff),只需顯示'large'文件夾中找到的jpeg版本。

請注意,原始tiff圖像仍將存儲在主圖像文件夾下的「原始」文件夾中。

乾杯

10

Tanya您的解決方案很好。但是,如果您不關心文件類型,則可以通過傳遞:original選項將所有圖像存儲爲jpg。例如:

:styles => { 
.... 
    :original => ["100%", :jpg] 
} 

這將有助於確保無處調用文件的位置會遇到問題。