Sha256: 84b50aa8871ec5bec01c087ccbc9cfe4493ff97f6d1a2e30ce08cec2c6d15504

Contents?: true

Size: 463 Bytes

Versions: 1

Compression:

Stored size: 463 Bytes

Contents

module FastImageParsing
  class Bmp < ImageBase # :nodoc:
    def dimensions
      d = @stream.read(32)[14..28]
      header = d.unpack("C")[0]

      result = if header == 12
                 d[4..8].unpack('SS')
               else
                 d[4..-1].unpack('l<l<')
               end

      # ImageHeight is expressed in pixels. The absolute value is necessary because ImageHeight can be negative
      [result.first, result.last.abs]
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
fastimage-2.4.0 lib/fastimage/fastimage_parsing/bmp.rb