我想创建一个 NSBezierPath 对象,它对应于任意位图图像的轮廓。
我所有的图像都是具有透明背景的 png 固体单色形状。这是一个例子:
我想要形状轮廓的贝塞尔曲线路径。实现这一目标的最佳方法是什么?
最佳答案
您正在寻找的是跟踪/矢量化算法。
DrawKit似乎支持位图到矢量跟踪:
其他一些(非ObjC)实现追踪的开源项目(代码引用):
- http://code.google.com/p/vectorizationpackage/ ( ActionScript )
- http://code.google.com/p/linetracer/ (C++)
- http://code.google.com/p/vector/ ( python )
任何曾经使用过 Illustrator(或其任何竞争对手)的描摹工具的人都可以向您保证描摹是一件非常重要的事情。但是对于简单的黑白图像(技术上 graysacle,由于抗锯齿,但在这里可以忽略不计)几乎任何算法都可以解决问题。特别是如果您甚至不需要完美的曲线拟合,正如您所指出的那样。
关于objective-c - 从位图轮廓创建 NSBezierPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5259268/