HTML5 JS 压缩图片,并取得图片的BASE64编码上传
2016-11-05 15:20
615 查看
基本过程
1) 调用 FileReader 的 reader.readAsDataURL(img); 方法, 在其onload事件中, 将用户选择的图片读入 Image对象.
2) 在image对象的 onload 事件中, 通过 canvas 的 canvas.getContext('2d') 的 drawImage 方法, 将Image 改变大小绘制到canvas上.
3) 通过 canvas.toDataURL("image/jpeg", 0.1); 方法, 将图片变成base64字符串, 传入服务端.
原文地址: http://www.cnblogs.com/ybst/p/6033199.html
1) 调用 FileReader 的 reader.readAsDataURL(img); 方法, 在其onload事件中, 将用户选择的图片读入 Image对象.
2) 在image对象的 onload 事件中, 通过 canvas 的 canvas.getContext('2d') 的 drawImage 方法, 将Image 改变大小绘制到canvas上.
3) 通过 canvas.toDataURL("image/jpeg", 0.1); 方法, 将图片变成base64字符串, 传入服务端.
var vueImg = new Vue({ el: "#divCarImages", data: { model: { carId: '@carId', imageTitle:'',img64:'' }, images: [] }, methods: { imageHandle: function () { var fup = $("#fileImg")[0]; var img = fup.files[0]; var image = new Image(); var canvas = $("#canvas")[0];//document.createElement("canvas"); var ctx = canvas.getContext('2d'); image.onload = function () { var w = image.naturalWidth, h = image.naturalHeight; var toSize = 400; canvas.width = toSize; canvas.height = toSize; var w2 = toSize, h2 = toSize; if (w > h) { h2 = h / w * toSize; } else { w2 = w / h * toSize; } ctx.drawImage(image, 0, 0, w, h, 0, 0, w2, h2); } // 判断是否图片 if (!img) { return; } // 判断图片格式 if (!(img.type.indexOf('image') == 0 && img.type && /\.(?:jpg|png|gif)$/.test(img.name))) { alert('图片只能是jpg,gif,png'); return; } var reader = new FileReader(); reader.onload = function (e) { // reader onload start var url = reader.result; image.src = url; } // reader onload end reader.readAsDataURL(img); } } });
function uploadImg() { var canvas = $("#canvas")[0]; vueImg.model.img64 = canvas.toDataURL("image/jpeg", 0.1); //$("#testMsg").html(imgData.length); // ajax 上传图片 $.post("@Url.Content("~/AliOss/SaveCarImage")", vueImg.model , function (ret) { parseAjaxData(data, function (model) { console.log(model.Path); alert(model.Path); $('#showimg').html('<img src="' + model.Path + '">'); }) }, 'json'); }
原文地址: http://www.cnblogs.com/ybst/p/6033199.html
相关文章推荐
- HTML5 JS压缩图片并获取图片BASE64编码上传
- js图片转base64编码压缩上传
- js上传照片,预览,压缩后base64编码发送后台,及将后台返回的base64图片显示到HTML
- 手机网页中通过js+html5压缩上传图片
- HTML5 --- 上传图片base64编码显示缩略图
- JS前端上传图片、压缩、并且处理旋转问题,生成base64数据
- HTML5上传图片base64编码显示缩略图
- js本地压缩图片,上传base64给后台,再给七牛
- JS前端上传图片、压缩、并且处理旋转问题,生成base64数据
- js压缩上传图片base64长度
- js压缩上传的图片,并转化为base64字符串传输
- 图片压缩,Base64编码后上传服务器
- 用html5 canvas js 实现图片大小的压缩显示,图片上传后可在线预览。
- 基于html5、JS实现的拍照上传图片
- 如何使用c#上传图片,图片是base64编码的字符串
- js 显示base64编码的二进制流网页图片
- 原生js 对图片的压缩上传
- 使用HTML5新API制作图片转Base64编码工具
- 使用图片的base64编码字符串压缩图片代码
- js对图片base64编码字符串进行解码并输出图像示例