javascript - JS 客户端 Exif 方向 : Rotate and Mirror JPEG Images

标签 javascript rotation html5-canvas exif

数码相机照片通常保存为带有 EXIF“方向”标签的 JPEG。为了正确显示,需要根据设置的方向旋转/镜像图像,但浏览器会忽略渲染图像的此信息。即使在大型商业网络应用程序中,对 EXIF 方向的支持也可能参差不齐 1 .同一来源还很好地总结了 JPEG 可以具有的 8 种不同方向:

Summary of EXIF Orientations

样本图像可在 4 获得.

问题是如何在客户端旋转/镜像图像以使其正确显示并在必要时进行进一步处理?

有JS库可用于解析EXIF数据,包括orientation属性2 . Flickr 指出在解析大图像时可能存在性能问题,需要使用网络 worker 3 .

控制台工具可以正确地重新定位图像 5 .解决该问题的 PHP 脚本位于 6

最佳答案

github 项目 JavaScript-Load-Image为 EXIF 方向问题提供完整的解决方案,为所有 8 个 EXIF 方向正确旋转/镜像图像。查看javascript exif orientation的在线演示

图像被绘制到 HTML5 Canvas 上。其正确呈现在 js/load-image-orientation.js 中实现通过 Canvas 操作。

希望这能为其他人节省一些时间,并让搜索引擎了解这个开源 gem :)

关于javascript - JS 客户端 Exif 方向 : Rotate and Mirror JPEG Images,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20600800/

相关文章:

facebook-graph-api - 通过网站上的按钮将图像上传到多个社交网络的服务

javascript - 使用 jQuery 创建表单输入计算器

jQuery Rotate 在几次使用后滞后

jquery - 如何使用 html5 Canvas 和 JQuery 工具制作滚动条?

SVG:在 animateTransform 中使用 "rotate"

c++ - 如何在 DirectX11 中围绕其局部轴之一旋转对象

javascript - Canvas 中的事件

javascript - Safari 引用错误 : Can't find variable: Set

javascript - AngularJS - ngModel 无法分配给函数

javascript - jQuery 与 AngularJS 与 Node.js 之间的区别