JS将图片转换成base64格式,之前有篇读取本地图片,使用html5也可以做到,这里用到了canvas来处理。
调用:
- imgToBase.init(‘li3.png’,function(data){
- //回调,data为base64代码
- });
源码:
- ;(function(d){
- var imgToBase = {
- init : function(url,fn){
- this.main(url,fn);
- },
- getBase64Image : function (img) {
- this.canvas = d.createElement(“canvas”);
- this.canvas.width = img.width;
- this.canvas.height = img.height;
- var ctx = this.canvas.getContext(“2d”);
- ctx.drawImage(img, 0, 0, img.width, img.height);
- var dataURL = this.canvas.toDataURL(“image/png”);
- return dataURL;
- },
- main : function (url,fn) {
- var t = this;
- var img = d.createElement(‘img’),data;
- img.src = url;
- img.onload =function() {
- delete t.canvas;
- data = t.getBase64Image(img) ;
- fn(data)
- };
- }
- };
- window.imgToBase = imgToBase;
- })(document);