[英]Compress Image size JavaScript
我正在做一個項目,我們可以從視頻中拍攝快照。 您可以在下面查看我的代碼段。
function snapshot(){
context.drawImage(video, 0, 0, w, h);
img = document.createElement("img");
img.src = canvas.toDataURL();
}
w,h只是視頻的寬度和高度。 這些計算如下。
video.addEventListener('loadedmetadata', function() {
var ratio = video.videoWidth / video.videoHeight;
w = video.videoWidth - 100;
h = parseInt(w / ratio, 10);
w= w-100; h= h-100;
canvas.width = w;
canvas.height = h;
}, false);
我在這里獲得的base64映像大約為260kb。 我想將此圖像減小到80kb以下。
我嘗試使用canvas.toDataURL('image/png', 0.2)
但沒有用。
僅當圖像類型為jpeg
或webp
時,質量設置才有效。 嘗試使用以下內容:
canvas.toDataURL("image/jpeg", 0.1);
例如,從Docs中 :
0到1之間的數字表示所請求的類型是
image/jpeg
或image/webp
圖像質量。
如果此參數為其他任何參數,則使用圖像質量的默認值。 其他參數將被忽略。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.