Fonts PySimpleGUI:字体呈现问题
我在我的开发机器上使用了一种字体,但是,当我将应用程序捆绑为exe并将其部署到另一台没有安装该字体的机器上时,字体呈现将转换为默认。是否有一种方法可以将字体与exe绑定,并让PySimpleGUI使用它,而不是尝试在系统中定位字体(意味着需要先安装)?有解决办法吗Fonts PySimpleGUI:字体呈现问题,fonts,pysimplegui,Fonts,Pysimplegui,我在我的开发机器上使用了一种字体,但是,当我将应用程序捆绑为exe并将其部署到另一台没有安装该字体的机器上时,字体呈现将转换为默认。是否有一种方法可以将字体与exe绑定,并让PySimpleGUI使用它,而不是尝试在系统中定位字体(意味着需要先安装)?有解决办法吗 import PySimpleGUI as sg sg.set_options(font=['Inder',10]) 您可以使用库pyglet添加字体文件,并使用PyInstaller的选项--add data捆绑字体文件
import PySimpleGUI as sg
sg.set_options(font=['Inder',10])
您可以使用库
pyglet
添加字体文件,并使用PyInstaller
的选项--add data
捆绑字体文件
要添加到可执行文件的其他非二进制文件或文件夹。路径分隔符是特定于平台的,使用的是os.pathsep
(在Windows上是;
,在大多数unix系统上是:
)。此选项可多次使用
演示代码
导入pyglet
将PySimpleGUI导入为sg
#pyglet.font.add_文件(r.“\MerryChristmasFlake.ttf”)
#pyglet.font.add_文件(r“\merrychristmastar.ttf”)
sg.主题(“暗蓝色3”)
font1=(“圣诞快乐雪花”,40)
font2=(“圣诞快乐之星”,40)
布局=[
[sg.Text(“圣诞快乐雪花”,font=font1)],
[sg.Text(“圣诞快乐之星”,font=font2)],
]
window=sg.window('Title',layout,finalize=True)
尽管如此:
事件,值=window.read()
如果事件==sg.WINDOW\u关闭:
打破
打印(事件、值)
window.close()
在两行未标记的备注之后
注意:从下载的字体文件,并将这两个字体文件放在与主脚本相同的路径中