canvas.create_text()有自带边框么?
时间: 2023-06-20 15:05:51 浏览: 111
excanvas_canvas.js_
`canvas.create_text()`方法并没有自带的边框,它只会在画布上绘制文本。如果你需要在文本周围绘制边框,可以通过以下步骤实现:
1. 使用`canvas.create_text()`方法绘制文本。
2. 使用`canvas.bbox()`方法获取文本的边界框(bounding box)。
3. 使用`canvas.create_rectangle()`方法绘制一个与边界框相同大小的矩形,作为边框。
以下是一个示例代码,它在画布上绘制了一个带有边框的文本:
```python
from tkinter import *
root = Tk()
canvas = Canvas(root, width=200, height=200)
canvas.pack()
text = canvas.create_text(100, 100, text="Hello, world!")
bbox = canvas.bbox(text)
x1, y1, x2, y2 = bbox
canvas.create_rectangle(x1, y1, x2, y2, outline="red", width=2)
root.mainloop()
```
这将在画布上绘制一个带有红色边框的文本。你可以根据需要调整矩形的颜色、线宽和其他属性。
阅读全文