1

我在将 TextPath 元素与 svgwrite 库一起使用时遇到问题。我按照文档https://pythonhosted.org/svgwrite/classes/text.html#textpath

我有路径:

w = dwg.path(d="M150 150 L2000 2000 L150 2000 Z", stroke="green")

我用作文本路径的路径:

dwg.add(svgwrite.text.TextPath(path=w, text="blab blab bla bal", startOffset=None, method='align', spacing='exact'))

当我尝试时,我得到错误:

ValueError: Invalid children 'textPath' for svg-element <svg>

如果我只是创建 TextPath 元素而不将其添加到 dwg,它不会引发错误。

我错过了什么?感谢您的任何建议。

4

1 回答 1

3

textPath 元素的父元素必须是文本元素。在您的情况下,您将 textPath 添加为无效的根 svg 元素的子元素。

text = dwg.add(svgwrite.text.Text(""))
text.add(svgwrite.text.TextPath(path=w, text="blab blab bla bal", startOffset=None, method='align', spacing='exact'))
于 2017-02-02T14:45:23.213 回答