Dee*_*rma 3 javascript exif node.js
我想使用 NodeJS 从图片中提取 GPS Exif 标签。我得到了这种格式的数据:
{
"gps": {
"GPSTimeStamp": [2147483647, 76, 41],
"GPSLongitude": [76, 41, 56.622],
"GPSLatitude": [30, 43, 8.754],
"GPSAltitude": 0,
"GPSDateStamp": "14615748802"
}
}
Run Code Online (Sandbox Code Playgroud)
有没有办法把它转换成经纬度?
当我在 Android 中检查 Exif 数据时,它会显示正确的纬度和经度,但在 NodeJS 中我以这种格式获取数据。
哦,我刚刚知道了离题、分、秒和方向的概念。我在数组中得到了三个值,分别是 digree 、 minute 和 seconds
要解析您的输入,请使用以下内容。
function ParseDMS(input) {
var parts = input.split(/[^\d\w]+/);
var lat = ConvertDMSToDD(parts[0], parts[1], parts[2], parts[3]);
var lng = ConvertDMSToDD(parts[4], parts[5], parts[6], parts[7]);
}
Run Code Online (Sandbox Code Playgroud)
以下将您的 DMS 转换为 DD
function ConvertDMSToDD(degrees, minutes, seconds, direction) {
var dd = degrees + minutes/60 + seconds/(60*60);
if (direction == "S" || direction == "W") {
dd = dd * -1;
} // Don't do anything for N or E
return dd;
}
Run Code Online (Sandbox Code Playgroud)
因此,您的输入将产生以下内容:
36°57'9" N = 36.9525000
110°4'21" W = -110.0725000
Run Code Online (Sandbox Code Playgroud)