有没有一种方法在Tkinter库中绘制垂直文本?(推荐使用Python)
textID = w1.create_text(5, 5, anchor="nw")
w1.itemconfig(textID, text = "This is some text")
鉴于有人在访问这个答案,我会添加一些更新信息。
在tcl 8.6中,create_text方法增加了一个angle
选项。您可以使用Tkinter.TclVersion
来检查您的tcl版本。如果您的版本是8.6或更高版本,则可以使用以下代码:
textID = w1.create_text(5, 5, anchor="nw", angle=90)
tkinter.Canvas.create_text
是否有类似的功能:textID = w1.create_text(5, 5, anchor="nw", orient=tkinter.VERTICAL)
create_text
方法只能创建水平文本。
str.join
来创建垂直文本:from tkinter import Tk, Canvas
root = Tk()
canvas = Canvas()
canvas.grid()
canvas.create_text((10, 5), text="\n".join("This is some text"), anchor="nw")
root.mainloop()
示例:
虽然这可能不像在 create_text
方法上设置选项那样优雅,但它确实有效。
vertical_text = PhotoImage(file = "<your file name>.gif")
canvas.create_image(x, y, image = vertical_text)
tkinter.TclVersion
确实是 8.6(请注意所有小写字母tkinter
)。 - martineau