javascript canvas 清除图片空白多余的方法详解编程语言
2023-06-13 09:11:50 时间
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); //绘制
console.log(x.toDataURL()); //得到最终裁剪出来的base64
}
javascript canvas 清除图片空白多余的方法
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/18754.html
cjava相关文章
- 【javascript】hasOwnProperty()方法检查对象是否有该属性
- 【说站】JavaScript如何减少重绘和回流
- 3种JavaScript 对象转数组的方法
- ES6 javascript 实用开发技巧详解编程语言
- JavaScript学习总结(二十)——Javascript非构造函数的继承详解编程语言
- JavaScript学习总结(十七)——Javascript原型链的原理详解编程语言
- JavaScript学习总结(五)——Javascript中==和===的区别详解编程语言
- javascript tweenmax做倒计时的方法详解编程语言
- javascript判断NaN的方法详解编程语言
- javascript 签名验证的方法 (包括服务端)详解编程语言
- javascript删除数组中某个元素的方法详解编程语言
- 微信pc打开链接不运行javascript的解决方法详解编程语言
- javascript获取时间戳的方法详解编程语言
- 谷歌浏览器调试javascript方法详解编程语言
- javascript采用Broadway实现安卓视频自动播放的方法(这种坑比较多 不建议使用)详解编程语言
- javascript微信ios自动播放音效方法详解编程语言
- JavaScript实现禁止后退的方法
- JavaScript中的replace方法说明
- 几个常用的JavaScript字符串处理函数-split()、join()、substring()和indexOf()
- JavaScript字符串操作的几种常见方法
- Javascript中的&&和||使用小结
- 让浏览器非阻塞加载javascript的几种方法小结
- 不使用浏览器运行javascript代码的方法
- 借助JavaScript脚本判断浏览器FlashPlayer信息的方法
- 在JavaScript中重写jQuery对象的方法实例教程