取的是原图,刚才测试发现,竖图照片可以获得EXIF,横图就获取不到,请官方尽快修复!!!
第一张是横图。
这个只能在iphone上测试,开发工具上选择图片时是不会把HEIC的图片转成JPG的,所以不支持。移动端Android和IOS的微信都会chooseImage出jpg的图片
——————————————————————
果然是微信把HEIC转成JPG时有些会丢失GPS信息
测试方法是chooseImage后,把微信生成的JPG临时图片上传到云存储,再手动下载下来,就发现横图的GPS信息丢失了,竖图还在
请具体描述问题出现的流程,并提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。
wx.chooseImage({
count: 9,
sizeType: ['original'],
sourceType: ['album'],
success: async res => {
prompt.showLoading("读取中");
let mks = [];
for (let i = 0; i<res.tempFilePaths.length; i++) {
console.log(res.tempFilePaths[i])
wx.getImageInfo({
src: res.tempFilePaths[0],
success (res) {
console.log(res);
}
})
wx.cloud.uploadFile({
cloudPath: i + ".jpg",
filePath: res.tempFilePaths[i],
success:function(res) {
console.log("上传成功");
}
})
let fileInfo = wx.getFileSystemManager().readFileSync(res.tempFilePaths[i]);
let exif = myexif.handleBinaryFile(fileInfo);
console.log(exif)
if (!exif.data.GPSLatitude || exif.data.GPSLatitude.length != 3) { // 没有定位信息
break;
}
else {
// 地图编码 WGS转成腾讯的GCJ
let loc = wxc.transformFromWGSToGCJ(exif.data.GPSLatitude[0] + exif.data.GPSLatitude[1]/60+ exif.data.GPSLatitude[2]/3600, exif.data.GPSLongitude[0] + exif.data.GPSLongitude[1]/60+ exif.data.GPSLongitude[2]/3600);
let mk = await _.getAddress(loc, exif.data.DateTimeOriginal);
if (mk.province && mk.city && mk.datetime) mks.push(mk);
}
}
+1,楼主最后咋搞定的啊
没有人知道吗?