js压缩图片
2016-02-04 17:55
573 查看
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> </head> <body> <!-- 压缩时要用到的canvas --> <canvas id="canvas" style="display:none;"></canvas> <!-- 原始图片 --> <img id="img" src="e.png" /> <!-- 压缩后的图片 --> <img id="new_image"/> <script> var maxWidth = 300; var maxHeight = 300; // 创建 canvas var c=document.getElementById("canvas"); var ctx=c.getContext("2d"); // 创建要绘制的Image对象 var img = new Image(); img.src = "e.png"; // 等待img加载完毕 img.onload = function(){ // 与backgournd-size:contain效果相同 if(img.width/img.height<maxWidth/maxHeight){ c.height = img.height; if(img.height>maxHeight){ c.height = maxHeight; } c.width = img.width/img.height*c.height; }else{ c.width = img.width; if(img.width>maxWidth){ c.width = maxWidth; } c.height = img.height/img.width*c.width; } ctx.drawImage(img,0,0,img.width,img.height,0,0,c.width,c.height); document.getElementById("new_image").src=c.toDataURL(); }; </script> </body> </html>
相关文章推荐
- Extjs4.0 最新最全视频教程
- Javascript中toFixed方法的改进
- 5个常见可用性错误和解决方案
- Linux打包压缩命令
- Canvas 在高清屏下绘制图片变模糊的解决方法
- js可突破windows弹退效果代码
- JSP脚本漏洞面面观
- 使用BAT一句话命令实现快速合并JS、CSS
- js显示当前星期的起止日期的脚本
- 爆炸式的JS圆形浮动菜单特效代码
- js select常用操作控制代码
- JS实现不使用图片仿Windows右键菜单效果代码
- 从jsp发送动态图像
- 原生js结合html5制作小飞龙的简易跳球
- js 页面模块自由拖动实例
- js实现小鱼吐泡泡在页面游动特效
- js 提交和设置表单的值
- PHP VBS JS 函数 对照表
- node.js抓取并分析网页内容有无特殊内容的js文件
- PHP+JS实现大规模数据提交的方法