首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

实践 | 移动图片上传旋转、压缩的解决方案

想要获取 Orientation 参数,可以通过 exif.js 库来操作。exif.js 功能很多,体积也很大,未压缩之前足足有 30k,这对手机页面加载来说是非常大影响的。...而我只需要获取 Orientation 信息而已,所以我这里删减了 exif.js 库的一些代码,将代码缩小到几KB。...exif.js 获取 Orientation : file 则是 input 文件表单上传的文件。...旋转的原理如下图: 旋转之后,如果从 ( 0, 0 ) 点进行 drawImage(),那么画出来的位置就是在左图中的旋转 90 度后的位置,不在可视区域呢。...总结 综合以上,例子的代码包括精简的exif.js库地址:file-demo(https://github.com/lin-xin/blog/tree/master/file-demo) 主要的核心代码如下

2.1K20

JS案例 - 基于vue的移动长按手势

9159381.html  所以,下边的代码经过不断的轮回,最终是写在mounted里边的 let oDiv = document.getElementById('canvas'); // 因为长按事件要加在div...监听手指按下去后是否有移动,就该touches上场了,监听他的clientX,clientY只要没变就是没移动。 并且在这个过程中,还会不时地有地方的英雄冒出来干扰我们补兵。...那就是一个手机自带的效果了:   长按时,在移动触摸文字,(至少ios里)会出现选择文字等干扰我们的真正功能,用了preventDefault()这个属性后就没有了。...export default { mounted(){ let oDiv = document.getElementById('canvas'); // 因为长按事件要加在div...所以每次获取数组里边的第一个对象对应的clientX和clientY,就是实时的移动点的位置 //找这个点的作用,就是为了监听用户,是否按住还移动了。

9K30
领券