canvas 转换加压缩base64编码图片
2018-03-10 14:20
429 查看
<!DOCTYPE html><html lang="en">
<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title></head>
<input index="0" name="ss" onchange="fileUpload(this.files[0],this)" type="file"><input index="1" onchange="fileUpload(this.files[0],this)" type="file"><img class="upFileImg" alt="" style="width:400px;height:400px;border:1px solid red;">
<body> <script>
function fileUpload(file, elem) { var maxLen = 300; var img = new Image(); var indexS = elem.getAttribute("index");//获取索引 var upFileImg = document.querySelectorAll(".upFileImg"); var reader = new FileReader();//读取客户端上的文件 reader.onload = function () { var url = reader.result;//读取到的文件内容.这个属性只在读取操作完成之后才有效,并且数据的格式取决于读取操作是由哪个方法发起的.所以必须使用reader.onload, img.src = url;//reader读取的文件内容是base64,利用这个url就能实现上传前预览图片 }; img.onloa
4000
d = function () { //生成比例 var width = img.width, height = img.height; //计算缩放比例 var rate = 1; if (width >= height) { if (width > maxLen) { rate = maxLen / width; } } else { if (height > maxLen) { rate = maxLen / height; } }; img.width = width * rate; img.height = height * rate; //生成canvas var canvas = document.createElement("canvas"); var ctx = canvas.getContext("2d"); canvas.width = img.width; canvas.height = img.height; ctx.drawImage(img, 0, 0, img.width, img.height); var base64 = canvas.toDataURL('image/jpeg', 0.9); upFileImg[indexS].src = base64; console.log(base64) }; reader.readAsDataURL(file); }
</script></body>
</html>
<head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title></head>
<input index="0" name="ss" onchange="fileUpload(this.files[0],this)" type="file"><input index="1" onchange="fileUpload(this.files[0],this)" type="file"><img class="upFileImg" alt="" style="width:400px;height:400px;border:1px solid red;">
<body> <script>
function fileUpload(file, elem) { var maxLen = 300; var img = new Image(); var indexS = elem.getAttribute("index");//获取索引 var upFileImg = document.querySelectorAll(".upFileImg"); var reader = new FileReader();//读取客户端上的文件 reader.onload = function () { var url = reader.result;//读取到的文件内容.这个属性只在读取操作完成之后才有效,并且数据的格式取决于读取操作是由哪个方法发起的.所以必须使用reader.onload, img.src = url;//reader读取的文件内容是base64,利用这个url就能实现上传前预览图片 }; img.onloa
4000
d = function () { //生成比例 var width = img.width, height = img.height; //计算缩放比例 var rate = 1; if (width >= height) { if (width > maxLen) { rate = maxLen / width; } } else { if (height > maxLen) { rate = maxLen / height; } }; img.width = width * rate; img.height = height * rate; //生成canvas var canvas = document.createElement("canvas"); var ctx = canvas.getContext("2d"); canvas.width = img.width; canvas.height = img.height; ctx.drawImage(img, 0, 0, img.width, img.height); var base64 = canvas.toDataURL('image/jpeg', 0.9); upFileImg[indexS].src = base64; console.log(base64) }; reader.readAsDataURL(file); }
</script></body>
</html>
相关文章推荐
- canvas压缩图片转换成base64格式输出文件流
- canvas实现图片尺寸等比压缩并转换为base64字符串
- android 压缩图片、生成缩略图 和转换Base64格式的字符串
- 图片Image转换为base64编码的方法
- js图片转base64编码压缩上传
- java处理图片base64编码的相互转换
- canvas图片base64编码后,ajax提交到后台
- 利用PHP将图片转换成base64编码的实现方法
- Java实现base64图片编码数据转换为本地图片的方法
- js上传照片,预览,压缩后base64编码发送后台,及将后台返回的base64图片显示到HTML
- 安卓中图片和Base64编码字符集的相互转换
- PHP将图片转base64编码以及base64图片转换为图片并保存代码
- (转载)javascript将base64编码的图片数据转换为file并提交
- 利用PHP将图片转换成base64编码的实现方法
- C#返回base64编码给前台js时直接转换为图片
- 图片和base64编码字符串 互相转换,图片和byte数组互相转换
- Base64图片编码原理,base64图片工具介绍,图片在线转换Base64
- javascript将base64编码的图片数据转换为file并提交