android 歌曲剪辑 原理,在Android上,我该如何制作怪异的剪辑区域?
Path path = new Path();
path.addCircle(200,200,100,Direction.CW);
c.clipPath(path); // c is a Canvas
現(xiàn)在有上防止繪制圓的邊界之外的任何畫布剪切區(qū)域。但是,如果我想讓裁剪區(qū)域的形狀像甜甜圈(或其他)呢?
我試著玩弄?jiǎng)?chuàng)建第二個(gè)路徑并在其上使用toggleInverseFillType,然后將其添加到原始路徑,但似乎沒有工作。
另外,不是使用路徑,而是可以創(chuàng)建一個(gè)位圖用作掩碼并以某種方式將其設(shè)置為Canvas上的剪貼蒙版?
編輯:答案正是我需要一個(gè)小的補(bǔ)充。在畫布上進(jìn)行多個(gè)操作時(shí),請(qǐng)始終在第一個(gè)clipPath調(diào)用中使用Op.REPLACE。這將替換該Canvas上任何現(xiàn)有的clipPath。
作為參考,這里是我發(fā)現(xiàn)了6個(gè)不同的Region.Op值的含義。想象一下帶有2個(gè)圓圈的維恩圖。 “B”是2個(gè)圓圈重疊的部分。 “A”是不重疊的左圓。 “C”是不重疊的右圓。
c.clipPath(a,Region.Op.REPLACE);
c.clipPath(b,???);
Region.Op.DIFFERENCE -> A..
Region.Op.INTERSECT -> .B.
Region.Op.REPLACE -> .BC
Region.Op.REVERSE_DIFFERENCE -> ..C
Region.Op.UNION -> ABC
Region.Op.XOR -> A.C
“。”表示未畫出的部分。對(duì)不起,如果這不是特別清楚。沒有圖形很難描述。
總結(jié)
以上是生活随笔為你收集整理的android 歌曲剪辑 原理,在Android上,我该如何制作怪异的剪辑区域?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 人才管理是什么意思_上海托管仓库外包仓库
- 下一篇: Android APP 设计说明书模板