回形针 - 将tiff图像转换为jpg或png

时间:2011-09-29 06:55:55

标签: ruby-on-rails paperclip

我正在使用回形针来允许用户上传图片,我想将图片转换为jpg / png 只有它是一个tiff图像。

我在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。

非常感谢

2 个答案:

答案 0 :(得分:29)

终于找到了解决方案。认为它可能对其他人有帮助。

在image.rb中,输入以下代码行:

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

这将在主图像文件夹thumblarge中创建2个附加文件夹。如果要显示图像(最初是tiff),只需显示“大”文件夹中的jpeg版本。

请注意,原始tiff图像仍将存储在主图像文件夹下的“原始”文件夹中。

干杯

答案 1 :(得分:12)

Tanya你的解决方案很好。但是,如果您不关心文件类型,则可以通过传递:original选项将所有图像存储为jpg。例如:

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

这将有助于确保在调用文件的任何地方都会遇到问题。