• base64图片裁剪空白区域


    /**
         * 裁剪空白区域
         * @param base64
         * @param callback
         */
        function tailor(base64,callback=null) {
            var img = new Image();//创建图片对象
            img.src = base64;
            img.onload = function () {
                var c = document.createElement('canvas');//创建处理画布对象
                var ctx = c.getContext('2d');
                c.width = img.width;
                c.height = img.height;
                ctx.drawImage(img, 0, 0);//绘制
                var imgData = ctx.getImageData(0, 0, c.width, c.height).data;//读取图片数据
                var lOffset = c.width, rOffset = 0, tOffset = c.height, bOffset = 0;
                for (var i = 0; i < c.width; i++) {
                    for (var j = 0; j < c.height; j++) {
                        var pos = (i + c.width * j) * 4
                        if (imgData[pos] == 255 || imgData[pos + 1] == 255 || imgData[pos + 2] == 255 || imgData[pos + 3] == 255) {
                            bOffset = Math.max(j, bOffset); // 找到有色彩的最下端
                            rOffset = Math.max(i, rOffset); // 找到有色彩的最右端
                            tOffset = Math.min(j, tOffset); // 找到有色彩的最上端
                            lOffset = Math.min(i, lOffset); // 找到有色彩的最左端
                        }
                    }
                }
                lOffset++;
                rOffset++;
                tOffset++;
                bOffset++;
                var x = document.createElement("canvas");//创建处理后画布对象
                x.width = rOffset - lOffset;
                x.height = bOffset - tOffset;
                var xx = x.getContext("2d");
                xx.drawImage(img, lOffset, tOffset, x.width, x.height, 0, 0, x.width, x.height);//绘制
                if (callback){
                    callback(x.toDataURL());
                }
    
            }
        }
  • 相关阅读:
    java正则表达式校验密码必须是包含大小写字母、数字、特殊符号的8位以上组合
    ActiveMQ入门
    枚举的使用
    SSM整合
    springmvc 狂神说的详细笔记
    狂神说Java Mybatis笔记
    Spring5入门基础知识
    Ajax的使用详解
    Filter 过滤器的使用详解
    mysql备份与恢复命令
  • 原文地址:https://www.cnblogs.com/Im-Victor/p/13941747.html
Copyright © 2020-2023  润新知