首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android - Canvas Paint -仅在白色/透明上绘制

Android - Canvas Paint -仅在白色/透明上绘制
EN

Stack Overflow用户
提问于 2015-08-18 20:21:58
回答 1查看 482关注 0票数 0

我只需要在尚未绘制的区域上绘制一个矩形。

例如,当我调用drawText来写一些东西,然后在上面画矩形时,它应该在文本后面。

我不能简单地先画Rect,然后在这种情况下写文本。

我读过关于XFermode的文章,但我不知道如何使用它…

EN

回答 1

Stack Overflow用户

发布于 2015-08-18 20:40:49

可以将绘制对象设置为使用具有混合模式Mode.MULTIPLYPorterDuffXfermode

代码语言:javascript
复制
import android.graphics.PorterDuffXfermode;
import android.graphics.PorterDuff.Mode;

private void setupPaint(Paint paint) {
    paint.setXfermode(new PorterDuffXfermode(Mode.MULTIPLY));
}

private void clearXfermode(Paint paint) {
    paint.setXfermode(null);
}

在我看来,为了提高性能,最好先绘制矩形,然后再绘制文本,但如果不能这样做,则使用PorterDuffXfermode

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32072305

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档