亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Canvas自定義圖片大小及蒙版與生成gif圖

標簽:
動效動畫

Html的Canvas主要通过js脚本做一些图形化操作。Canvas是一个矩形区域,您可以控制其每一像素。canvas 拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。

如果有个需求,我们只想要用户相册图片中某个区域的内容,其余区域设为透明?

实现

  1. 先改变图片的大小
    使用一个开源的canvas库pica

// Resize from Canvas/Image to another Canvaspica.resize(from, to, { 
 unsharpAmount: 80,  unsharpRadius: 0.6,  unsharpThreshold: 2})
.then(result => console.log('resize done!'));

1000

测试效果

  1. 实现图片的蒙版
    图片蒙版主要是图片的叠加模式进行处理,参考以下链接
    图片组合类型

ctx.save();
ctx.drawImage(mask_img, 0, 0);
ctx.globalCompositeOperation = "source-in";
ctx.drawImage(our_img, 0, 0);
ctx.restore();

328

mask.png


1000

our_img


640

蒙版效果图

  1. 关于如何生成gif图,使用gif.js库。

                var gif = new GIF({                 
                   workers: 2,                    
                   quality: 10,                    
                   background: "#ffffff00",                    
                   transparent:"ff0000"
                });

                
                gif.addFrame(img1);
                gif.addFrame(img2);
                gif.on('finished', function(blob) {                
                    // window.open(URL.createObjectURL(blob));
                    var url = URL.createObjectURL(blob);                    
                    document.getElementById("gif").setAttribute("src",url)

                });

                gif.render();

最后

这里主要介绍了一些前端对图片处理的操作。

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
JAVA開發工程師
手記
粉絲
1.1萬
獲贊與收藏
1545

關注作者,訂閱最新文章

閱讀免費教程

  • 推薦
  • 1
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消