Tkinter为文本添加笔划

时间:2014-05-14 12:39:15

标签: python tkinter stroke

我无法弄清楚如何使用create_text方法为文字添加笔划。

方法本身没有定义outline选项,有人知道方法吗?

谢谢!

1 个答案:

答案 0 :(得分:3)

AFAIK,没有内置的方法来为文本添加笔划,但您可以配置自己的笔划。这种方法只需制作粗体加权文本并在其上叠加常规文本即可:

def stroke_text(x, y, text, textcolor, strokecolor):
    # make stroke text
    canvas.create_text(x, y, text=text, font=('courier', 16, 'bold'), fill=strokecolor)
    # make regular text
    canvas.create_text(x, y, text=text, font=('courier', 16), fill=textcolor)

root = Tk()

canvas = Canvas(root, bg='black')
canvas.pack()
stroke_text(100, 50, 'hello', 'white', 'red')

mainloop()

虽然这看起来更像是一个阴影而不是中风;可能有办法改善这一点。