无法将Windows字体与PIL一起使用

5ktev3wc  于 2023-03-13  发布在  Windows
关注(0)|答案(1)|浏览(134)

我的问题与Python有关,特别是Python PIL库。我知道有几个问题与我的问题相似,但遗憾的是,由于我的声誉不够高,我无法对这些问题进行回复/评论。我的问题具体到为PIL选择windows字体:
下面是我的代码什么字体我想选择:
在阅读其他堆栈溢出的解决方案来获得Arial粗体字体的基础上,我找到了一个解决方案,声明添加以下代码来获得Arial粗体工作:

font = ImageFont.truetype("C:\Windows\Fonts\\ariblk.ttf", font_size)

这是可行的(奇怪的是,我甚至没有看到ariblk.tff作为C:\Windows\Fonts目录路径中的选项,但这是可行的。)然而,我不知道为什么,下面的路径存在,当我运行它时显示以下错误:
x一个一个一个一个x一个一个二个x
虽然我已经得到了上面的Arial粗体字体的解决方案,我问这个问题,因为有几种字体在windows中,如果我想在未来使用,我永远不可能,因为我不断得到这个错误。我正在指定确切的目录路径到font.tff Windows文件,如在我上面的第二个例子给我的错误。
目前,我觉得我面临这些错误,因为这个字体文件的名称有空格,但我不是100%肯定。如果有人能解释或告诉我为什么我不能得到任何Windows font.tff文件的工作,我会非常感谢。
基本上在windows字体目录路径(C:\Windows\Fonts)中,我注意到,一些字体可以进一步打开以查看其他字体,就像我在上面的第二个示例中显示的那样,它不起作用:
请注意:我使用PIL库的全部代码可以正常工作,并将字体输出到图像,我主要希望获得支持,了解如何使PIL库与我想要的任何font.tff文件一起工作。

ufj5ltwl

ufj5ltwl1#

我也遇到了同样的问题,只是发现了如何解决它,因为它困扰着我。
我过去可以只安装一个字体,然后在Python中使用以下路径:
"C:/Windows/Fonts/ARCHRISTY.ttf"
但我猜Windows实际上不再安装ttf了。我进入"C:/Windows/Fonts/"文件夹,右键单击"AR CHRISTY Medium"字体并检查其属性。
其真实的位置现在是:
".../AppData/Local/Microsoft/Windows/Fonts/ARCHRISTY.ttf"
在Python中,可以这样创建路径:
os.path.expandvars("%LocalAppData%/Microsoft/Windows/Fonts/ARCHRISTY.ttf")

相关问题