如何从徽标生成 CGPath 值

How to generate CGPath values from logo

this 页面的底部有一个有趣的动画。它基本上是用 UIPanGestureRecognizer.

动画 CAShapeLayer


(来源:ronnqvi.st

我想看看这是如何完成的,所以我去了 github page and found this。下面是一小段代码。

- (CGPathRef)loadPath
{
    CGMutablePathRef path = CGPathCreateMutable();
    // load
    CGPathMoveToPoint(path,     NULL, 7.50878897, 25.2871097);
    CGPathAddCurveToPoint(path, NULL, 7.50878897, 25.2871097,  21.7333976, 26.7812495, 29.6894527, 20.225586);
    CGPathAddCurveToPoint(path, NULL, 37.6455074, 13.6699219,  39.367189,  3.85742195, 31.9697262, 1.25976564);
    CGPathAddCurveToPoint(path, NULL, 24.5722639, -1.33789083, 21.99707,   10.9072268, 21.99707,   22.2255862);
    CGPathAddCurveToPoint(path, NULL, 21.9970685, 33.5439456,  15.9355469, 45.8212894, 8.99707031, 47.7294922);
    ...

如何生成这些 CGPath 值?任何类型的示例都会有所帮助。

您可以构建一个简单的 SVG 并使用 https://github.com/arielelkin/PocketSVG

我确实买了这个:http://www.beziercode.com/它工作得很好。