exif.js 旋转图片

还是那个问题:网上的大胸弟们BB一大堆,没几个给的代码能用的,话不多说,直接上demo:

链接:https://pan.baidu.com/s/1jJ6vnt8 密码:swwm

不要忽视demo中的setTimeout,每个人的机子和浏览器的反应速度不同,而exif.js貌似又是异步型的,如果不用setTimeout,会导致在某些浏览器(PC或手机)不能旋转。我在demo设置的时间为1毫秒,这时间是最短的了,不设置的话,本屌的谷歌浏览器有50%的几率不旋转图片。我试过同事的iphone6S,要设置到500毫秒才能保证百分百旋转。(如果各位觉得这样用户体验不好,可先设置图片透明度为0,旋转完成后再变成1,即可解决转图片的坑爹视觉效果)。

 

下面介绍何为exif,

  EXIF(Exchangeable Image File)是“可交换图像文件”的缩写,当中包含了专门为数码相机的照片而定制的元数据,可以记录数码照片的拍摄参数、缩略图及其他属性信息,简单来说,Exif信息是镶嵌在 JPEG/TIFF 图像文件格式内的一组拍摄参数,需要注意的是EXIF信息是不支持png,webp等图片格式的。 
对于七牛,可以在图片后面加?exif参数来获取图片的exif信息。

  对于Orientation参数,简单的说是记录图片拍摄的相机的旋转信息,浏览器(需要浏览器支持)可以根据这个参数中的val信息自动旋转图片到正确的方向。

  简单来说:iphone和数码相机拍出来的照片带exif,用照片查看器,或在iphone上看图片是正的,在浏览器中用img标签加载的时候却是旋转过的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值