2

我正在开发一个wxPython具有文本编辑功能的项目。我想用这个项目打包一个字体,(a .ttf file)并将它作为文本编辑器的默认字体。这可以在 内完成wxPython吗? 2007 年的邮件列表中有一个类似的问题。wxPython-users在那个时候是不可能的。现在已经七年了,我希望有人想出一个解决方案。

我目前正在使用wx.richtextctrl 作为文本编辑框。wx.styledtextctrl如果它有助于解决我的问题,我可能会考虑使用它。

4

2 回答 2

1

不,wx 仍然只能使用系统中安装的字体。如果您使用安装程序分发您的项目,那么它可以安装字体并且您的应用程序可以通过其名称访问它。

于 2014-04-11T17:51:29.977 回答
1

wxpython 4.1 添加了方法

wx.Font.AddPrivateFont(path)

这允许程序使用字体,即使它们没有在系统上全局安装

文档添加了两个重要的免责声明

  • 在 OS X 下,这个方法实际上除了检查应用程序包“Resources”目录的“Fonts”子目录中的文件是否存在之外没有做任何事情。您负责实际使该目录中的字体文件可用,并将 ATSApplicationFontsPath 设置为 Info.plist 文件中的 Fonts 值。另请参见 wx.StandardPaths.GetResourcesDir
  • 在 MSW 下,必须在创建任何 wx.GraphicsContext 对象之前调用此方法,否则私有字体将无法从中使用。
于 2019-08-30T23:14:56.547 回答