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

tan*_*nya 15 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"
Run Code Online (Sandbox Code Playgroud)

我想知道是否可以在上传时将tiff图像转换为jpg或png.

非常感谢

tan*_*nya 29

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

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

 :styles => {
    :thumb => ["150x172#",:jpg],
    :large => ["100%", :jpg]
  }
Run Code Online (Sandbox Code Playgroud)

这将创建在主图像文件夹2个其他文件夹,thumblarge.如果要显示图像(最初是tiff),只需显示"大"文件夹中的jpeg版本.

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

干杯


Ver*_*gün 12

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

:styles => {
....
  :original => ["100%", :jpg]
}
Run Code Online (Sandbox Code Playgroud)

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