js獲取圖片的base64編碼并壓縮
更新時間:2020年12月05日 09:07:06 作者:君子笑而不語
這篇文章主要介紹了js獲取圖片的base64編碼并壓縮,幫助大家更好的理解和使用js,感興趣的朋友可以了解下
獲取圖片的base64編碼
<!DOCTYPE html> <html> <head> <meta charset="gbk"> <title></title> </head> <body> <input accept="image/*" name="upimage" id="upload_file" type="file" onchange="gen_base64()"> <br/> <textarea id="base64_output" name="Word" style=" width:820px"></textarea> <br/> <img src="" id="myImg" /> <script type="text/javascript"> function $_(id) { return document.getElementById(id); } function gen_base64() { var file = $_('upload_file').files[0]; r = new FileReader(); //本地預(yù)覽 r.onload = function(){ $_('base64_output').value = r.result; $_('myImg').src= r.result; } r.readAsDataURL(file); //Base64 } </script> </body> </html>
案例2:js壓縮圖片
<html> <body> <script> function getUrl(fil) { var Cnv = document.getElementById('myCanvas'); var Cntx = Cnv.getContext('2d');//獲取2d編輯容器 var imgss = new Image();//創(chuàng)建一個圖片 var agoimg=document.getElementById("ago"); for (var intI = 0; intI < fil.length; intI++) {//圖片回顯 var tmpFile = fil[intI]; var reader = new FileReader(); reader.readAsDataURL(tmpFile); reader.onload = function (e) { url = e.target.result; imgss.src = url; agoimg.src=url; agoimg.onload = function () { //等比縮放 var m = imgss.height / imgss.width; Cnv.width = 300 ;//該值影響縮放后圖片的大小 Cnv.height =300*m; //img放入畫布中 Cntx.drawImage(agoimg, 0, 0,300,300*m); //把畫布中的數(shù)據(jù),寫出到某img的src里 var Pic = document.getElementById("myCanvas").toDataURL("image/png"); var imgs =document.getElementById("press"); imgs.src =Pic ; } } } } </script> <input type="file" id="fileId" name="fileId" value="上傳圖片" hidefocus="true" onchange="getUrl(this.files);"/> <br/> <canvas id="myCanvas" style="display: block" ></canvas> old img::<img src="" alt="" id="ago" style="width: 500px;"/> new img::<img src="" alt="" id="press"/> </body> </html>
效果圖
以上就是js獲取圖片的base64編碼并壓縮的詳細內(nèi)容,更多關(guān)于js 圖片base64編碼的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
echarts報錯Cannot?read?properties?of?null?(reading?‘getA
最近在開發(fā)Echarts忽然遇到了個問題,這篇文章主要給大家介紹了關(guān)于echarts報錯Cannot?read?properties?of?null?(reading?‘getAttribute‘)的解決方法,需要的朋友可以參考下2023-01-01knockoutjs動態(tài)加載外部的file作為component中的template數(shù)據(jù)源的實現(xiàn)方法
Knockoutjs 的Components 是一種自定義的組件,它以一種強大、簡介的方式將你自己的ui代碼組織成一種單獨的、可重用的模塊。接下來通過本文給大家介紹knockoutjs動態(tài)加載外部的file作為component中的template數(shù)據(jù)源的實現(xiàn)方法,一起看看吧2016-09-09數(shù)據(jù)結(jié)構(gòu)中的各種排序方法小結(jié)(JS實現(xiàn))
下面小編就為大家?guī)硪黄獢?shù)據(jù)結(jié)構(gòu)中的各種排序方法小結(jié)(JS實現(xiàn))。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-07-07