<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script src="http://apps.bdimg.com/libs/jquery/1.11.3/jquery.min.js"></script>
</head>
<body>
<p>Upload File: <input id="fileId" type="file" name="file" /></p>
<canvas id="canvas">Your Broswer don't support html5 canvas</canvas>
<hr>
測試base64圖片:<br>
<img alt="" id="img_test" src="">
<script>
$(document).ready(function(){
$("#fileId").change(function(){
var file = this.files[0];
var url = webkitURL.createObjectURL(file);//獲取文件的url
var $img = new Image();
$img.onload = function() {
//生成比例
var width = $img.width,
height = $img.height,
scale = width / height;
// width = parseInt(800);
// width = parseInt(width);
height = parseInt(width / scale);
//生成canvas
var $canvas = $('#canvas');
// alert($canvas[0]);
var ctx = $canvas[0].getContext('2d');
$canvas.attr({width : width, height : height});
ctx.drawImage($img, 0, 0, width, height);
var base64 = $canvas[0].toDataURL('image/jpeg',0.3);//壓縮過的base64編碼形式圖片
// png 會放大圖片體積,jpeg 會縮小體積
// alert(base64);
// alert(base64.length);//獲取字符串比FileReader的短
var img_test = $("#img_test");
img_test.attr("src",base64);
}
$img.src = url;//指定Image的路徑($img.src="common/imgs/add-97617_640.png")
});
});
</script>
</body>
</html>
canvas圖片體積壓縮
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.