class Magick::Image
def get_exif_by_number(*tag)
def get_exif_by_number(*tag) hash = {} if tag.empty? exif_data = self['EXIF:!'] exif_data&.split("\n")&.each do |exif| tag, value = exif.split('=') tag = tag[1, 4].hex hash[tag] = value end else get_exif_by_number # ensure properties is populated with exif data tag.each do |num| rval = self[sprintf('#%04X', num.to_i)] hash[num] = rval == 'unknown' ? nil : rval end end hash end