码迷,mamicode.com
首页 > Web开发 > 详细

H5相机上传图片压缩

时间:2018-02-08 13:35:16      阅读:231      评论:0      收藏:0      [点我收藏+]

标签:color   演示   图片压缩   one   ntb   function   支持   pen   ima   

在html中添加

<canvas id="myCanvas" style="display: none">
你的浏览器不支持canvas画布元素,请更新浏览器获得演示效果。
</canvas>

 //1、设置压缩后的最大宽度 or 高度;
//2、设置压缩比例,根据图片的不同size大小,设置不同的压缩比。

function compress(res,fileSize) { //res代表上传的图片,fileSize大小图片的大小
var img = new Image(),
maxW = 640; //设置最大宽度
img.onload = function () {
var cvs = document.getElementById(‘myCanvas‘),
ctx = cvs.getContext( ‘2d‘);

if(img.width > maxW) {
img.height *= maxW / img.width;
img.width = maxW;
}

cvs.width = img.width;
cvs.height = img.height;

ctx.clearRect(0, 0, cvs.width, cvs.height);
ctx.drawImage(img, 0, 0, img.width, img.height);

var compressRate = getCompressRate(1,fileSize);

var dataUrl = cvs.toDataURL( ‘image/jpeg‘, compressRate);

document.body.appendChild(cvs);
console.log(dataUrl);
// ctx.clearRect(0,0,cvs.width,cvs.height); 清空画布
// ctx.beginPath();
}

img.src = res;

https://my.oschina.net/zyxchuxin/blog/700381
 

H5相机上传图片压缩

标签:color   演示   图片压缩   one   ntb   function   支持   pen   ima   

原文地址:https://www.cnblogs.com/wangyuyanhello/p/8430920.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!