clippath与光滑的边缘android

时间:2013-10-08 07:13:58

标签: android android-canvas android-custom-view

大家好我有一个自定义视图,其中我使用clippath剪辑一个圆圈这是我的代码

Bitmap bitmap=Bitmap.createBitmap(min,min,Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(bitmap);
Paint paint = new Paint();
paint.setStrokeWidth(2);
paint.setAntiAlias(true);
paint.setStyle(Paint.Style.FILL);
Path path2=new Path();
path2.addCircle(x0, y0,r2,Path.Direction.CCW);
c.clipPath(path2,Region.Op.DIFFERENCE);
paint.setColor(0xFF09103e);
c.drawCircle(x0,y0,r1,paint);

我的问题是,当我绘制圆圈时,它的内侧边缘不会被其他圆圈所包围。

1 个答案:

答案 0 :(得分:3)

我找到了答案。我无法通过setFlags(Paint.ANTI_ALIAS_FLAG)paint.setAntiAlias(true);克隆路径,但我可以尝试将位图顶部的路径绘制为paint.setXfermode(new PorterDuffXfermode(Mode.DST_IN));的模糊透明(或是DST_OUT吗?)