从文件中检索exif数据时,坐标将以3个数字的数组的形式提供给您.
i.exif['gps_latitude'] => ["6/1", "4/1", "911/50"]
这需要转换为更常见的浮动格式以供一般使用.
我能想到的最直接的方法是将字符串转换为Rational
数字:
arr = ["6/1", "4/1", "911/50"] d, m, s = arr.map(&:to_r) #=> [(6/1), (4/1), (911/50)]
并通过以下方式计算十进制度的值:
lat = d + m / 60 + s / 3600 #=> (1092911/180000)
要获取浮点值:
lat.to_f #=> 6.071727777777777