Is there a simple way to get image dimensions in Ruby?

前端 未结 8 895
隐瞒了意图╮
隐瞒了意图╮ 2020-12-14 06:57

I\'m looking for an easy way to get width and height dimensions for image files in Ruby without having to use ImageMagick or ImageScience (running Snow Leapard).

相关标签:
8条回答
  • 2020-12-14 07:28

    There's also a new (July 2011) library that wasn't around at the time the question was originally asked: the Dimensions rubygem (which seems to be authored by the same Sam Stephenson responsible for the byte-manipulation techniques also suggested here.)

    Below code sample from project's README

    require 'dimensions'
    
    Dimensions.dimensions("upload_bird.jpg")  # => [300, 225]
    Dimensions.width("upload_bird.jpg")       # => 300
    Dimensions.height("upload_bird.jpg")      # => 225
    
    0 讨论(0)
  • 2020-12-14 07:30

    As of June 2012, FastImage which "finds the size or type of an image given its uri by fetching as little as needed" is a good option. It works with local images and those on remote servers.

    An IRB example from the readme:

    require 'fastimage'
    
    FastImage.size("http://stephensykes.com/images/ss.com_x.gif")
    => [266, 56]  # width, height
    

    Standard array assignment in a script:

    require 'fastimage'
    
    size_array = FastImage.size("http://stephensykes.com/images/ss.com_x.gif")
    
    puts "Width: #{size_array[0]}"
    puts "Height: #{size_array[1]}"
    

    Or, using multiple assignment in a script:

    require 'fastimage'
    
    width, height = FastImage.size("http://stephensykes.com/images/ss.com_x.gif")
    
    puts "Width: #{width}"
    puts "Height: #{height}"
    
    0 讨论(0)
提交回复
热议问题