ruby-on-rails - Ruby on Rails - Carrierwave 获取图像尺寸宽度和高度

标签 ruby-on-rails ruby-on-rails-3 rubygems bundle carrierwave

我需要知道当前carrierwave实例的宽度和高度

例如:

image_tag image.photo_url,:width => image.photo.width, :height => image.photo.height

但问题是 image.photo.width 和 image.photo.height 不起作用。

有什么想法吗?

最佳答案

您必须安装 ImageMagick、RMagick 或 MiniMagick。然后打开文件(图像),然后才能找出它的高度。

示例:https://github.com/jnicklas/carrierwave#conditional-versions (参见 is_landscape? 方法),复制于此:

  def is_landscape? picture
    image = MiniMagick::Image.open(picture.path)
    image[:width] > image[:height]
  end

或其他相关问题:

Carrierwave and mini_magick finding widths & height

关于ruby-on-rails - Ruby on Rails - Carrierwave 获取图像尺寸宽度和高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12022653/

相关文章:

ruby-on-rails - 使用 Rails 3 Hook gem 以在 Rack 堆栈上添加中间件

ruby-on-rails - 如何在 rails 中创建 postgres 触发器?

ruby-on-rails - Rails 3 使用范围进行多参数过滤

jquery - 可重复使用的远程模态 Rails

ruby-on-rails - Rails无法在Docker上启动

ruby-on-rails - 从 ActiveRecord 中的模型中获取范围

ruby-on-rails - 设计,如何在保存时将电子邮件降级?

ruby-on-rails - Rails Gemfile 默认为 'https' - 'bundle install' 失败

ruby - 停止 bundler (或其他)将 ".pre.dev"添加到 gem 版本

ruby-on-rails - 第一次安装 Rails,帮助 gem /rake