如何使用javascript从图像中删除EXIF数据?
我从HTML文件输入中读入一个文件。对于iOS,我可以用相机拍照。问题是,如果您使用相机拍照,内容将包含EXIF数据(至少如果我使用FileReader API读取文件内容) 如果图像包含EXIF数据,则无法使用画布裁剪。因为 每次调用如何使用javascript从图像中删除EXIF数据?,javascript,ios,image,exif,Javascript,Ios,Image,Exif,我从HTML文件输入中读入一个文件。对于iOS,我可以用相机拍照。问题是,如果您使用相机拍照,内容将包含EXIF数据(至少如果我使用FileReader API读取文件内容) 如果图像包含EXIF数据,则无法使用画布裁剪。因为 每次调用.toDataURL()时,图像都会被破坏。我猜是 它无法识别EXIF数据,也不知道如何使用 进出口银行数据 文件内容正在由base64编码 FileReader.readAsDataURL()。我把它插入img.src 裁剪是通过使用ctx绘制新图像来完成的。d
.toDataURL()
时,图像都会被破坏。我猜是
它无法识别EXIF数据,也不知道如何使用
进出口银行数据
文件内容正在由base64编码
FileReader.readAsDataURL()
。我把它插入img.src
裁剪是通过使用ctx绘制新图像来完成的。drawImage(…)
基于旧图像
我终于用c.toDataURL()
获得了新的图像数据
那么我的问题是如何使用javascript删除EXIF数据呢?注意,您写道:
图像被破坏
我认为问题不在EXIF数据中。我认为你有:
对于具有以下特性的设备,画布元素的最大大小为300万像素:
小于256 MB RAM和500万像素(适用于具有更大或更高容量的设备)
等于256 MB内存
这一限制不会引发任何错误,因此您将尝试渲染或读取6MB图像,您将得到一个损坏的blob/dataURL字符串,等等。您会认为文件API被破坏了,画布方法toDataURL/toBlob被破坏了,您是对的。但浏览器中没有bug,这是一个系统限制
已知有修复iOS限制的LIB:
yourImgSrc=window.URL.createObjectURL(yourFile)代码>,然后将其导入画布。画布输出中不应有任何exif。。。