【问题标题】:clippath with smooth edges android具有平滑边缘的剪辑路径android
【发布时间】:2013-10-08 07:13:58
【问题描述】:

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

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);

我的问题是,当我画我的圆圈时,它的内部边缘不平滑,被其他圆圈夹住。

【问题讨论】:

  • 使用Paint.setFlags(Paint.ANTI_ALIAS_FLAG);画出平滑的边缘看看这是否能解决问题......
  • 它不起作用。我设置了 setFlags(Paint.ANTI_ALIAS_FLAG) 和 paint.setAntiAlias(true);但它仍然不起作用@BBdev

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


【解决方案1】:

我找到了答案。我无法平滑被setFlags(Paint.ANTI_ALIAS_FLAG)paint.setAntiAlias(true); 剪裁的路径,但我可以尝试使用paint.setXfermode(new PorterDuffXfermode(Mode.DST_IN)); 将位图顶部的路径绘制为模糊透明(或者是DST_OUT?)

【讨论】:

猜你喜欢
  • 2018-03-07
  • 2020-04-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-16
  • 2020-03-11
  • 2019-06-24
  • 1970-01-01
相关资源
最近更新 更多