在查找图像的exif信息时遇到错误(base64图像数据):
Exif.getData(path, () => {
const tag = Exif.getTag(this, 'Orientation');
console.log(tag);
});
ReferenceError: self is not defined
/usr/local/lib/node_modules/exif-js/exif.js:931
if ((self.Image && img instanceof self.Image)
^
任何人都可以提供帮助
答案 0 :(得分:0)
您是在客户端JS或Node.js中执行此代码段吗?
目前exif.js是基于self对象开发的。它仅支持客户端Javascript。
在窗口加载后注册exif.js,附加样本片段以供参考。
window.onload=getExif;
function getExif() {
var img1 = document.getElementById("img1");
EXIF.getData(img1, function() {
var make = EXIF.getTag(this, "Make");
var model = EXIF.getTag(this, "Model");
var makeAndModel = document.getElementById("makeAndModel");
makeAndModel.innerHTML = `${make} ${model}`;
});
var img2 = document.getElementById("img2");
EXIF.getData(img2, function() {
var allMetaData = EXIF.getAllTags(this);
var allMetaDataSpan = document.getElementById("allMetaDataSpan");
allMetaDataSpan.innerHTML = JSON.stringify(allMetaData, null, "\t");
});
}