Tkinter – 如何在画布文本上添加轮廓
Tkinter 中 Canvas 小部件的 create_text 方法没有像 “outline” 或 “border” 这样的属性来设置文本对象周围的轮廓。因此,要在画布文本上加上轮廓,可以按照下面的步骤操作:
步骤 −
- 导入所需的库并创建 tkinter 框架实例。
-
使用 root.geometry 方法设置框架的大小。
-
创建一个 Canvas 小部件并设置其高度和宽度。还需使用 background=”white” 设置其背景颜色。
-
接下来,使用 create_text() 方法在 Canvas 中创建一个文本对象。根据示例设置文本的字体和颜色。
-
获取文本项目的边界框 (bbox)。
-
使用 bbox 数据创建一个带有轮廓的矩形。
-
最后运行应用程序窗口的主循环。
示例
# 导入 tkinter 库
from tkinter import *
# 创建 tkinter 框架实例或窗口
root = Tk()
# 设置 tkinter 框架的尺寸
root.geometry("700x350")
# 创建一个 Canvas
canvas = Canvas(root, background="white")
canvas.pack(expand=True)
# 在 Canvas 中创建文本
text = canvas.create_text(175, 50, text="在 Canvas 内部的文本", font="Calibri, 20", fill="green")
# 获取文本的边界框
bbox = canvas.bbox(text)
# 在画布文本上加轮廓
canvas.create_rectangle(bbox, outline="blue")
root.mainloop()
输出
在执行时,将会产生以下输出 –