Die performanteste Art, Text auf einer Kurve zu zeichnen und zu animieren?

Ich vermute, es ist, eine Zeichenfolge aus einzelnen CATextLayers zu erstellen und sie dann wie erforderlich entlang der Kurve zu positionieren und dann zu animieren. Weil das ist, woran ich gerade arbeite, aber es verliert Kerning. Hier ist wie:

Warum zentriert sich mein gebogener Text nicht selbst?

Aber ist Core Text performanter und in der Lage, den ganzen Unsinn des "Zeichnens in einen Kontext" zu vermeiden, der alles verlangsamt, verglichen mit der schlanken, mittleren Core Animation-Art, Dinge zu tun und Kerning zu respektieren? Vermeiden von drawRect: und allen anderen Aspekten, die das Zeichnen auf dem Bildschirm erheblich verlangsamen:

https://github.com/darcyliu/CocoaSampleCode/tree/master/CoreTextArcCocoa

Stellen Sie sich eine Zeichenfolge mit 200 Zeichen vor, die um einen Kreis gebogen ist und in der Lage ist, den Abstand zwischen den Zeichen zu animieren, hoffentlich mit stabilen 60 fps. Dies ist mit Core Animation möglich, aber dies geschieht, indem die Zeichenfolge in einzelne Zeichen aufgeteilt und mit gleichem Abstand um den Kreis gelegt wird, wodurch Kerning-Informationen vollständig verloren gehen.

Ich hoffe auf eine Möglichkeit, dies zu tun, ohne die Kerning-Informationen zu verlieren und trotzdem den Abstand bei 60 fps dynamisch anpassen zu können.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage