gpt4 book ai didi

python - 如何获取(网络)字体中单个字符的大小?

转载 作者:太空宇宙 更新时间:2023-11-04 06:28:13 25 4
gpt4 key购买 nike

我写了一个 python 脚本来生成一个 SVG 文件。这个 SVG 文件使用网络字体(通过 CSS 从 google webfonts 导入)来很好地呈现我的文本。一切都很好,除了在将句子放入我的 SVG 文件之前我需要知道它的大小(以像素为单位)。

前几天刚开始学python,不知道这种东东可不可以。 Google 帮助我找到了 ImageFont python 模块(来自 Python 图像库),但似乎 ImageFont 需要从本地路径加载字体文件才能计算字符大小。

是否存在计算网络字体字符大小的方法?

感谢您的帮助。

最佳答案

您可以在客户端使用 javascript 和 SVG DOM 实现它。

第一步:创建一个文本元素并使用 getComputedTextLength() 方法计算其长度 (http://www.w3.org/TR/SVG11/text.html#InterfaceSVGTextContentElement)

<text id="foo" xml:space="preserve">foo </text>

然后使用 getTotalLength() 方法计算路径长度 ( http://www.w3.org/TR/SVG11/paths.html#InterfaceSVGPathElement )

并且您可以计算在文本被截断之前可以放置多少次。

关于python - 如何获取(网络)字体中单个字符的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6138267/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com