我想创建一个 NSBezierPath 对象,它对应于任意位图图像的轮廓。
我所有的图像都是具有透明背景的 png 纯单色形状。这是一个例子:
我想要形状轮廓的贝塞尔路径。实现这一目标的最糟糕的方法是什么?
我想创建一个 NSBezierPath 对象,它对应于任意位图图像的轮廓。
我所有的图像都是具有透明背景的 png 纯单色形状。这是一个例子:
我想要形状轮廓的贝塞尔路径。实现这一目标的最糟糕的方法是什么?
您正在寻找的是跟踪/矢量化算法。
DrawKit似乎支持位图到矢量跟踪:
其他一些(非 ObjC)开源项目实现了跟踪(供代码参考):
不过,任何曾经使用过 Illustrator(或其任何竞争对手的)描摹工具的人都可以向您保证,描摹并非易事。但是对于您的简单黑白图像(技术上是灰度,由于抗锯齿,但在这里可以忽略不计),几乎任何算法都可以解决问题。正如您所指出的,特别是如果您甚至不需要完美的曲线拟合。