使用 PaperJS 在圆圈内书写弯曲的文本

Write curved text within a circle with PaperJS

标题基本上概括了我的问题的所有细节。我正在尝试在与圆圈轮廓弯曲的圆圈内书写文本。与下图非常相似的东西。

您实际上可以通过一些技巧来做到这一点。

以下是如何进行:

  1. 获取文本中每个字形的 x 中心偏移量。这可以通过对子字符串使用 PointText 直到字形来完成。
  2. 在您希望文本对齐的路径上找到偏移点。
  3. 将单个居中字形放在刚刚找到的点上。按路径的切角旋转字形。

这是纸草图:Align Text to Path Sketch

这是简单测试的结果:

您可以将代码用于任意路径,而不仅仅是圆圈。