为什么 Tkinter 画布线条是锯齿状的? [英] Why are the Tkinter canvas lines jagged?
本文介绍了为什么 Tkinter 画布线条是锯齿状的?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在 Tkinter.Canvas
上绘制的线条不平滑.如何使它们变得平滑?
The lines drawn on a Tkinter.Canvas
are not smooth. How can they be made smooth?
这是我尝试过的:
from Tkinter import *
root = Tk()
cv = Canvas(root,bg = 'white')
rt1 = cv.create_rectangle(10,10,110,110,width = 8,tags = ('r1','r2','r3'))
def printRect(event):
print 'rectangle'
def printLine(event):
print 'line'
cv.tag_bind('r1','<Button-1>',printRect)
cv.tag_bind('r1','<Button-3>',printLine)
cv.create_line(10,20,200,200,width = 5,tags = 'r1')
cv.pack()
root.mainloop()
这是它的样子:
推荐答案
tkinter 图形没有消除锯齿,这就是对角线出现锯齿的原因.可能有一个特定于平台的解决方法,我发现标题为 Drawing Anti-Aliased Graphics Under Tkinter/Windows 提供您想要的功能.
tkinter graphics are not anti-aliased which is why the diagonal line appears jagged. There may be a platform specific work-around like this one I found titled Drawing Anti-Aliased Graphics Under Tkinter/Windows to provide the functionality you desire.
这篇关于为什么 Tkinter 画布线条是锯齿状的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文