Ruby on Rails的 - Carrierwave获取图像尺寸的宽度和高度(Ruby on

2019-07-31 01:40发布

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

例如:

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

但问题是,image.photo.width和image.photo.height不工作。

有任何想法吗 ?

Answer 1:

你必须安装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和mini_magick发现宽度和高度



文章来源: Ruby on Rails - Carrierwave get the image dimension width and height