wxPython:从文件加载字体
我正在制作一个 wxPython 应用程序,并且我想使用我存档的一些非标准字体。我该怎么做?
I'm making a wxPython app, and I want to use some non-standard font that I have on file. How do I do this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要的 Win32 API 称为 AddFontResource (当您使用完字体后,您还需要使用RemoveFontResource)。我无法找到此函数的 python 包装器,因此您需要使用 ctypes 或等同于直接访问 API。添加字体后,应该可以以通常的方式访问它(请注意,所有应用程序都可以访问它)。
有一个 SO 线程 建议使用FreeType 库包装器 (ft2) 但这似乎有点矫枉过正(除非您有其他需要)并且包装器被标记为 beta。
The Win32 API you need is called AddFontResource (you'll also want to use RemoveFontResource when you're done with a font). I haven't been able to find a python wrapper for this function, so you'll need to use ctypes or equivalent to access the API directly. Once the font has been added, it should be accessible in the usual way (note that it will be accessible to all applications).
There's an SO thread that suggests using a FreeType library wrapper (ft2) but this seems like overkill (unless you have some other need for it) and the wrapper is marked as beta.