【问题标题】:Gem to crop image to multiple sizes in rails宝石可在导轨中将图像裁剪为多种尺寸
【发布时间】:2011-10-28 12:16:05
【问题描述】:

当用户更新图像时,我想将其裁剪为不同的尺寸以适应应用程序中的不同规格,例如个人资料页面的较大尺寸图像,cmets 的较小图像等。是否有任何可用的宝石导轨?

【问题讨论】:

    标签: ruby-on-rails ruby rubygems ruby-on-rails-3.1


    【解决方案1】:

    我建议您为此使用Paperclip gem。有了它,您可以为图像定义多种尺寸。您确实需要安装 ImageMagick 才能正常工作。你的 ruby​​ 模型会有这样的一行:

    has_attached_file :image, :styles => { :small => "150x150>", :medium => "400x400#", :large => "640x640" }
    

    默认行为是调整到最小尺寸并保持纵横比。你可以使用一些选项来改变它:

    1. 尾随 #,缩略图将被居中裁剪,以确保请求的尺寸。
    2. trailing >,缩略图只有在当前请求的尺寸较大时才会被修改。

    在您的代码中,您可以在视图中使用image_tag @model.image.url(:small) 请求图像。

    如果您想了解更多信息,Ryan bates 对此有很好的railscast。 Paperclip 在 GitHub 上也有一个广泛的 wiki。

    【讨论】:

      【解决方案2】:

      尝试使用paperclip gemcarrierwave 处理附件

      您还可以查看 ImageMagick、RMagick 或 ImageScience 项目

      【讨论】:

        【解决方案3】:

        我所知道的最轻量级的图像处理库/gem 是Devil。 ImageMagick/Cairo 可能很难安装。我从来没有遇到过 DeviL 的任何问题。干杯。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-10-01
          • 2019-01-11
          • 2010-12-26
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-07-25
          • 1970-01-01
          相关资源
          最近更新 更多