小编D A*_*D A的帖子

iOS - 使用UIBezierPath appendPath剪切两个路径的并集

我正在尝试以加号的形式创建剪切路径,以便我在相同上下文中绘制的后续路径删除了此部分.我使用两个相互重叠的矩形路径创建剪切路径.

这是我在随后绘制圆圈时最终绘制的图形:

      XXX | | XXx
   XXXX | | XXXX
 XXXXX | | XXXXX
 --- ---
 --- ---
 XXXXX | | XXXXX
   XXXX | | XXXX
      xXX | | XXX

但是,它实际上看起来像这样:

      XXX | | XXx
   XXXX | | XXXX
 XXXXX | | XXXXX
 --- XX ---
 --- XX ---
 XXXXX | | XXXXX
   XXXX | | XXXX
      xXX | | XXX

如果我正确读取此行为,两个矩形路径的交集不会形成剪切蒙版的一部分.

似乎(毫不奇怪)appendPath在这种情况下不会从我的两个矩形路径创建一个统一的路径 - 我假设我无能为力.此外,Core Graphics似乎没有任何与路径联盟等相关的功能.

有谁知道我能做什么?我已经包含了相关的代码段.

使用一条路径绘制加号不是解决方案,因为我想在剪贴蒙版中添加其他重叠路径.

        CGContextSaveGState(context);

        // create clipping path
        UIBezierPath *clippingPath = [UIBezierPath bezierPath];
        clippingPath = …
Run Code Online (Sandbox Code Playgroud)

iphone graphics core-graphics ios uibezierpath

6
推荐指数
1
解决办法
4475
查看次数

标签 统计

core-graphics ×1

graphics ×1

ios ×1

iphone ×1

uibezierpath ×1