Python 使用pyinstaller将pygame应用程序转换为可执行文件时出现字体错误

Python 使用pyinstaller将pygame应用程序转换为可执行文件时出现字体错误,python,debugging,pygame,pyinstaller,executable,Python,Debugging,Pygame,Pyinstaller,Executable,我创建了一个pygame应用程序,它有一个主python文件和一个资产文件夹。我曾使用pyinstaller将应用程序转换为可执行文件,但每次我收到错误——当我解决它们时,就会出现不同的错误。我怀疑我最近遇到的错误与pygame文件中的文本有关 这是我使用的pygame字体行: font = pygame.font.SysFont("Arial", 32) 我曾尝试使用.ttf文件并将它们复制到与main.py文件相同的文件夹中,但也没有成功。我还确保将我的资产文件夹复制到

我创建了一个pygame应用程序,它有一个主python文件和一个资产文件夹。我曾使用pyinstaller将应用程序转换为可执行文件,但每次我收到错误——当我解决它们时,就会出现不同的错误。我怀疑我最近遇到的错误与pygame文件中的文本有关

这是我使用的pygame字体行:

font = pygame.font.SysFont("Arial", 32)
我曾尝试使用.ttf文件并将它们复制到与main.py文件相同的文件夹中,但也没有成功。我还确保将我的资产文件夹复制到与main.app文件相同的文件夹中,但这也没有帮助

我不确定这个错误消息告诉了我什么,而且似乎没有关于这个消息的其他问题(我的代码中没有一行在这个错误消息中被引用供我检查)


任何帮助都将是惊人的,谢谢

如果使用ttf文件,则需要直接导入它们,而不是使用
SysFont
。例如:

size = 12
myfont = pygame.font.Font("Arial.ttf",size)
Arial.ttf还需要放在可执行文件所在的同一文件夹中,或者如果您有更深入的文件夹结构,请使用相对路径(并且文件夹也需要位于可执行文件旁边):

出于测试目的,使用以下命令查看您从哪个文件夹启动、设置相对路径以及知道您在哪里查找ttf文件也可能会有所帮助:

import os    
os.getcwd() 

如果使用ttf文件,则需要直接导入它们,而不是使用
SysFont
。例如:

size = 12
myfont = pygame.font.Font("Arial.ttf",size)
Arial.ttf还需要放在可执行文件所在的同一文件夹中,或者如果您有更深入的文件夹结构,请使用相对路径(并且文件夹也需要位于可执行文件旁边):

出于测试目的,使用以下命令查看您从哪个文件夹启动、设置相对路径以及知道您在哪里查找ttf文件也可能会有所帮助:

import os    
os.getcwd() 

由于版权限制,您不应将
Arial.ttf
与您的应用程序一起分发。你最好换一种可以自由复制的字体。像“免费SAN”这样的东西也可以,但对这个bug没有帮助。也许你可以继续注释代码部分,直到它工作为止。这将允许您精确地缩小哪段代码有问题。由于版权限制,您不应将
Arial.ttf
与您的应用程序一起分发。你最好换一种可以自由复制的字体。像“免费SAN”这样的东西也可以,但对这个bug没有帮助。也许你可以继续注释代码部分,直到它工作为止。这将允许您精确地缩小哪段代码有问题。