如何使用javascript从图像中删除EXIF数据
How to remove EXIF data from image using javascript?
我从HTML文件输入中读取文件。对于 iOS,我可以从相机中拍照。问题是,如果你用相机拍照,内容将包括EXIF数据(至少如果我使用FileReader API读取文件内容)。
如果图像包含 EXIF 数据,我无法使用画布裁剪。因为 每次我打电话给
.toDataURL()
时,图像都会被破坏.我的猜测是 它无法识别EXIF数据,也不知道如何裁剪图像 EXIF数据。文件内容由 base64 编码
FileReader.readAsDataURL()
.我把它插入img.src。裁剪是通过绘制基于旧图像
ctx.drawImage(...)
的新图像来完成的 我终于得到了c.toDataURL()
的新图像数据.
所以我的问题如何使用 javascript 删除 EXIF 数据?
注意,你写道:
图像被破坏
我认为问题不在于EXIF数据。我认为你有iOS画布的限制:
画布元素的最大大小为 300 万像素,适用于具有以下条件的设备 小于 256 MB RAM 和 5 百万像素,适用于具有更大或 等于 256 MB 内存。
此限制不会引发任何错误,因此您将尝试呈现或读取 6MB 图像,您将获得损坏的 blob/dataURL 字符串,依此类推。你会认为File API坏了,画布方法到DataURL/toBlob坏了,你会是对的。但是错误不在浏览器中,这是系统限制。
有已知的库可以修复iOS限制:
- Javascript-load-image
- ios-imagefile-megapixel
相关文章:
- 使用php或javascript从facebook相册URL中删除多余的部分
- RegEx删除空属性?例如,如果(class=“”||class=“”)移除;否则就下课
- 如何删除多行HTML排列中的空白
- 如何从rails中的代码中删除新行( )
- 删除对HTML元素的拖动
- 当图像转换为本地存储的DataURL时,EXIF被删除
- 按顺序添加和删除类
- iframe正在添加标签,需要删除它们
- 如何在HTML输入字段中添加不可删除的后缀
- addData()从最新图表中删除.js 2.1.3-怎么了
- 如何覆盖锚点元素's href目标,并在我点击转到目标javascript时删除其他错误
- 删除CKEditor工具栏按钮,但不删除功能
- 当浏览器上的后退按钮到达主页时,我需要删除Class
- 正在删除node.js中已验证的网站
- 正在从页面中删除iframe
- 如何从 HTML 查询中删除项目
- 如何在iOS应用程序中从Firebase中删除超过6小时的数据
- 未捕获的类型错误:无法读取属性'删除'的未定义
- 在不知道深度或父属性的情况下从对象中删除属性
- 如何使用javascript从图像中删除EXIF数据