使用python,如何预测SVG中文本的像素宽度?

使用python,如何预测SVG中文本的像素宽度?,python,svg,Python,Svg,我正在使用python生成一个SVG,其中包含可以变化的文本,我希望在它后面放置一个半透明的矩形,以保证稍后在另一个图形元素上叠加时的对比度 不幸的是,我不知道如何预测SVG中特定文本字符串的像素范围。我可以选择我使用的字体(但我不认为monospace是可以接受的)和我使用的字体大小 如何使用python来预测SVG文本的范围,以便生成大小合适的矩形?我认为如果使用python来预测,事情会变得一团糟。可能压力最小的方法是安装并使用它为您计算文本尺寸。但对于一个小坚果来说,这是一个非常大的锤子

我正在使用python生成一个SVG,其中包含可以变化的文本,我希望在它后面放置一个半透明的矩形,以保证稍后在另一个图形元素上叠加时的对比度

不幸的是,我不知道如何预测SVG中特定文本字符串的像素范围。我可以选择我使用的字体(但我不认为monospace是可以接受的)和我使用的字体大小


如何使用python来预测SVG文本的范围,以便生成大小合适的矩形?

我认为如果使用python来预测,事情会变得一团糟。可能压力最小的方法是安装并使用它为您计算文本尺寸。但对于一个小坚果来说,这是一个非常大的锤子

显示了一种更简单的方法-使用SVG过滤器将背景直接应用于文本,而无需调整任何大小

您也可以将此方法用于半透明背景:


编辑此文本并重新加载SVG

这是一项非常有用的技术。虽然它可能是我最终解决方案的基础,但我还没有弄清楚如何使方框在文本周围形成固定的(例如10px)边距。我会继续试验。我按照你的“大锤子”建议安装了freetype py。我可以在blender中运行它,写出PNG,用于VSE图像条。它没有回答这个特定的问题,但它符合创造这个问题的使命。