无法从图像中获取方向
Can't get a orientation from image
我正在研究一种解决方案,以解决以下问题:某些手机制作的图像由于在 exif 数据中有方向而显示为横向或倒置。到目前为止,我得到了方向,但是这个变量没有及时传回以进行下一个旋转步骤。
function getOrientation(image){
let ort = 1;
EXIF.getData(image, function () {
ort = EXIF.getTag(this, 'Orientation');
});
return ort;
}
来自 ort 的值稍后与 canvas 结合使用以旋转上传的图像。如下图,但是每次变化都会让值变成1或者undefined。
let orientation = getOrientation(files);
let data = rotateImage(files, orientation);
将名为 ort 的变量传递回调用 getOrientation() 的函数的最佳方法是什么?
在尝试了多种方法之后,我能够通过将 orietation 设置为全局变量并使用 setTimeout 让 rotateImage 延迟执行来修复它。通过这样做,getOrientation 可以完成并且 rotateImage 可以在超时结束后使用 let 方向。
我正在研究一种解决方案,以解决以下问题:某些手机制作的图像由于在 exif 数据中有方向而显示为横向或倒置。到目前为止,我得到了方向,但是这个变量没有及时传回以进行下一个旋转步骤。
function getOrientation(image){
let ort = 1;
EXIF.getData(image, function () {
ort = EXIF.getTag(this, 'Orientation');
});
return ort;
}
来自 ort 的值稍后与 canvas 结合使用以旋转上传的图像。如下图,但是每次变化都会让值变成1或者undefined。
let orientation = getOrientation(files);
let data = rotateImage(files, orientation);
将名为 ort 的变量传递回调用 getOrientation() 的函数的最佳方法是什么?
在尝试了多种方法之后,我能够通过将 orietation 设置为全局变量并使用 setTimeout 让 rotateImage 延迟执行来修复它。通过这样做,getOrientation 可以完成并且 rotateImage 可以在超时结束后使用 let 方向。