如何将true type front(ttf)直接从文件加载到wxPython中

如何将true type front(ttf)直接从文件加载到wxPython中,python,wxpython,truetype,wxstyledtextctrl,richtextctrl,Python,Wxpython,Truetype,Wxstyledtextctrl,Richtextctrl,我正在从事一个具有文本编辑功能的wxPython项目。我想用这个项目(a.ttf文件)打包一种字体,并将其作为文本编辑器的默认字体。这可以在wxPython中完成吗?2007年在wxPython用户邮件列表中。当时是不可能的。现在已经七年过去了,我希望有人能想出解决这个问题的办法 我目前正在使用wx.richtextctrl作为文本编辑框。我可以考虑使用 WX.Type TeXTCTrl ,如果它有助于解决我的问题。 否,wx仍然只能使用系统中安装的字体。如果您使用安装程序分发项目,则它可以安装

我正在从事一个具有文本编辑功能的
wxPython
项目。我想用这个项目
(a.ttf文件)
打包一种字体,并将其作为文本编辑器的默认字体。这可以在
wxPython
中完成吗?2007年在
wxPython用户
邮件列表中。当时是不可能的。现在已经七年过去了,我希望有人能想出解决这个问题的办法


我目前正在使用
wx.richtextctr
l作为文本编辑框。我可以考虑使用<代码> WX.Type TeXTCTrl ,如果它有助于解决我的问题。 否,wx仍然只能使用系统中安装的字体。如果您使用安装程序分发项目,则它可以安装字体,并且您的应用程序可以通过其facename访问该字体。

wxpython 4.1添加了该方法

wx.Font.AddPrivateFont(path)
这允许程序使用字体,即使字体未在系统上全局安装

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

  • 在OSX下,这个方法实际上除了检查文件在的“Fonts”子目录中是否存在之外,什么都不做 应用程序包“资源”目录。你有责任 用于实际使字体文件在此目录中可用,以及 将ATSApplicationFontsPath设置为Info.plist中的字体值 文件另请参见wx.standardpath.GetResourcesDir
  • 在MSW下,必须在创建任何wx.GraphicsContext对象之前调用此方法,否则专用字体将不可用 从他们那里

谢谢你的回复!我计划最终使用安装程序。我使用单空间字体,很多字体都很难看。我希望在这个项目中发布一个漂亮的单空间字体。