Tkinter - 如何在画布文本上标注轮廓
Tkinter 中 Canvas 窗口部件的**create_text** 方法没有诸如**"outline"** 或 **"border"** 的属性,无法在文本对象周设置一个轮廓。因此,要在画布文本上放置一个轮廓,可以按照以下步骤操作:-
步骤 -
导入所需的库并创建一个 Tkinter 框架实例。
使用 **root.geometry** 方法设置框架的大小。
创建一个 Canvas 窗口部件并设置它的高度和宽度。此外,用 **background="white"** 设置它的背景颜色。
接下来,使用 **create_text()** 方法在 Canvas 中创建一个**文本**对象。按示例中所示设置**文本**的字体和颜色。
获取文本项的边框框(**bbox**)。
使用 **bbox** 数据创建一个带有轮廓的矩形。
最后,运行应用程序窗口的**主循环**。
示例
# Import tkinter library
from tkinter import *
# Create an instance of tkinter frame or window
root = Tk()
# Set the geometry of tkinter frame
root.geometry("700x350")
# Create a Canvas
canvas = Canvas(root, background="white")
canvas.pack(expand=True)
# Create text inside the Canvas
text = canvas.create_text(175, 50, text="Text inside the Canvas", font="Calibri, 20", fill="green")
# Get the bounding box of text
bbox = canvas.bbox(text)
# Outline the canvas text
canvas.create_rectangle(bbox, outline="blue")
root.mainloop()输出
执行后,它将产生以下输出 -
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP