【问题标题】:Resize an image filesize with paperclip使用回形针调整图像文件大小
【发布时间】:2014-01-06 17:23:00
【问题描述】:

我使用回形针将图像上传到服务器。我使用以下代码缩放中等图像:

:medium => "280x100>"

但我还需要将原始图像文件大小调整为 1Mb。 有没有办法用回形针功能做到这一点?

【问题讨论】:

    标签: ruby-on-rails file-upload imagemagick paperclip image-manipulation


    【解决方案1】:

    目前还没有这样的功能,但是您可以按照https://github.com/thoughtbot/paperclip#validations 中的描述添加文件大小验证,所以它看起来像这样:

    validates_attachment :avatar, :size => { :less_than => 1.megabytes }
    

    【讨论】:

    • 我已经添加了验证,但您可能是对的。也许如果需要迭代调整大小并检查文件大小会有所帮助
    【解决方案2】:

    我不知道如何更改文件大小的图像大小,但您可以调整原始图像的大小:

    class Image < ActiveRecord::Base
      before_save :resize
    
      def resize
        self.image = self.image.resize "1024x1024"
      end
    end
    

    【讨论】:

    • 我也想过这样的事情,但之前检查了原始文件大小。如果超过 1 Mb,则调整图像大小
    猜你喜欢
    • 2011-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-25
    • 2014-07-18
    • 2018-03-04
    相关资源
    最近更新 更多