字体错误python tkinter lab

2024-10-03 23:23:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用anurati(如果你不知道它是什么,谷歌它)字体在win10我试着从tkinter调用它来接收错误

我的代码是:

from tkinter import *

root = Tk()
root.title("P.E.T.A.R")
txt = Label(root, text = "welcome to project petar")
txt.grid(column = 0, row = 0, font=("Anurati Regular"))

错误是

^{pr2}$

为什么会这样


Tags: 代码textfromimporttxttitletkinter错误
1条回答
网友
1楼 · 发布于 2024-10-03 23:23:57

你必须先呈现字体,而且你也不正确地使用它。在

在开始时使用以下代码:

from tkinter import *
import tkinter.font
my_font = tkinter.font.Font(root,family="Anurati Regular")

然后你可以像这样使用它:

^{pr2}$

因此,您的总体代码如下:

from tkinter import *
import tkinter.font
root = Tk()
root.title("P.E.T.A.R")
my_font = tkinter.font.Font(root,family="Anurati Regular")
txt = Label(root, text = "welcome to project petar",font=my_font)
txt.grid(column = 0, row = 0)

编辑:

正如您在评论中所说的this method does not create the font just a different version of the default,您调用的字体名称不正确,或者该字体没有安装,当这种情况发生时,tkinter会创建一个基本字体。为了证明这种方法有效,我制作了另一个使用Windows内置字体的代码:

from tkinter import *
import tkinter.font
root = Tk()
root.title("P.E.T.A.R")
my_font = tkinter.font.Font(root,family="Comic Sans MS")
my_font2 = tkinter.font.Font(root,family="Copperplate Gothic Bold")
txt = Label(root, text = "welcome to project petar",font=my_font)
txt.grid(column = 0, row = 0)
txt2 = Label(root, text = "welcome to project petar",font=my_font2)
txt2.grid(column = 0, row = 1)

执行此代码时:

Workig

编辑2:

我做了进一步的调查,下载了Anurati字体,最后意识到我是正确的。它有两个问题:

  • 你叫的名字不正确。名称是Anurati,但您使用的是Anurati Regular。您应该使用my_font = tkinter.font.Font(root,family="Anurati")
  • 这种字体的小写字母很简单,而大写字母则不简单。而且写的文字都是小写字母。你的文本应该是txt = Label(root, text = "WELCOME TO PROJECT PETAR",font=my_font)

之后,您的最终代码变成:

from tkinter import *
import tkinter.font
root = Tk()
root.title("P.E.T.A.R")
my_font = tkinter.font.Font(root,family="Anurati")
txt = Label(root, text = "WELCOME TO PROJECT PETAR",font=my_font)
txt.grid(row=0,column=0)

因此,运行上述代码后,您将获得预期的输出: Anurati

相关问题 更多 >