6

有没有办法在开罗通过布尔运算(例如 Union、Difference 和 Intersection)将两条路径组合在一起来构建路径?我正在开发一个矢量图形应用程序,该应用程序使用 Cairo 进行渲染,并希望让我的用户能够以这种方式将路径组合在一起,但我在 Cairo 找不到方法。

4

2 回答 2

2

我还没有找到一种方法来使用 cairo 库来做到这一点。但这也是我一直在寻找的功能。当(例如)抚摸两条路径的组合时肯定会有所帮助 - ntd 提到的合成运算符似乎无法做到这一点。

与此同时,我正在尝试为inkscape 编写脚本,并让inkscape 进行联合/差异化。我正在处理的问题可以接受,但绝对不适合你的问题。你有没有运气,无论是开罗还是任何其他 svg 库?经过几天的谷歌搜索,这似乎并不简单:/

于 2012-03-11T22:31:56.553 回答
0

将路径与运算符结合起来对我来说没有任何意义。你从“线与曲线或弧”中得到什么?

相反,您可以使用: 来应用合成运算符cairo_set_operator(),它将设置当前绘图操作(无论是它cairo_fill()cairo_stroke()还是其他)应如何与表面的旧内容混合。

于 2009-10-08T22:12:38.173 回答