canvas paint:只在左侧和右侧绘制阴影

wljmcqd8  于 2021-06-30  发布在  Java
关注(0)|答案(1)|浏览(277)

我在画布上画了一个矩形,我想在左边和右边添加一个阴影/辉光,但不是在顶部和底部。这个 BlurMaskFilter 可能是另一种选择,但它也会影响两个轴。

Paint paint = new Paint();
paint.setShadowLayer(10, 0, 0, Color.BLACK);
//paint.setMaskFilter(new BlurMaskFilter(10, BlurMaskFilter.Blur.NORMAL));

Rect rect = new Rect(0, 0, 10, 10);
canvas.drawRect(rect, paint);
np8igboo

np8igboo1#

最后我画了一个新的 RectPorterDuff.Mode.CLEAR 在阴影之上。

Paint paint = new Paint();
paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.CLEAR));
Rect rect = new Rect(left, top, right, bottom);
canvas.drawRect(rect, paint);

相关问题