zoukankan      html  css  js  c++  java
  • 本地与在线图片转Base64及图片预览

    查看效果:http://sandbox.runjs.cn/show/tgvbo9nq

    本地图片转Base64(从而可以预览图片):

    function localImgLoad() {
        var src = this.files[0];
        var self = $(this);
        var read = new FileReader();
        read.onload = function(e) {
            var html = "<img src=" + e.target.result + " alt='' />";
            self.parent().append(html);
            document.getElementById('localBase64StrContainer').value = e.target.result;
        }
        read.readAsDataURL(src)
    };
            <div>
                本地图片预览(本地图片转Base64):
                <input type="file" onchange="localImgLoad.call(this)"/>
                <br/>
                <textarea id="localBase64StrContainer" cols=50 rows=6>
                </textarea>
                <br/>
            </div>
            <br/>

    在线图片转Base64

    function convertImgToBase64(url, callback, outputFormat) {
        var canvas = document.createElement('CANVAS'),
        ctx = canvas.getContext('2d'),
        img = new Image;
        img.crossOrigin = 'Anonymous';
        img.onload = function() {
            canvas.height = img.height;
            canvas.width = img.width;
            ctx.drawImage(img, 0, 0);
            var dataURL = canvas.toDataURL(outputFormat || 'image/jpg');
            callback.call(this, dataURL);
            //alert(this);
            canvas = null;
        };
        img.src = url;
    }
    
    function onlineButtonGetImg(imgUrl) {
        convertImgToBase64(imgUrl,
        function(base64Img) {
            document.getElementById('onlineBase64StrContainer').value = base64Img;
            $('#onlineBase64StrContainer').parent().append("<img src=" + base64Img + " />");
        },'image/png')
    }
            <div>
                在线图片转base64:
                <br/>
                <br/>
                <input type="text" id="onlineUrl" size=30 value="http://sandbox.runjs.cn/uploads/rs/61/0dvnfbe3/081408127534068.png"/>
                <button onclick="onlineButtonGetImg(document.getElementById('onlineUrl').value)">
                    转换
                </button>
                <br/>
                <br/>
                <textarea id="onlineBase64StrContainer"  cols=50 rows=6>
                </textarea>
                <br/>
            </div>
  • 相关阅读:
    glog入门demo
    gflag的简单入门demo
    caffe库源码剖析——net层
    排序算法的c++实现——计数排序
    docker的/var/lib/docker目录迁移
    SpringCloud Ribbon 负载均衡 通过服务器名无法连接的神坑一个
    Spring Boot Cache使用与整合
    Navicat Keygen
    Windows / Office
    docker swarm 搭建与服务更新
  • 原文地址:https://www.cnblogs.com/z-sm/p/4802009.html
Copyright © 2011-2022 走看看