2012-09-15 12 views
6

Le linee tracciate su Tkinter.Canvas non sono uniformi. Come possono essere resi agevoli?Perché le linee di tela Tkinter sono frastagliate?

Ecco cosa ho provato:

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() 

Ecco come si presenta:

tkinter output from sample code

risposta

6

grafica Tkinter non sono anti-alias, che è il motivo per cui la linea diagonale è irregolare. Potrebbe esserci un work-around specifico della piattaforma come questo che ho trovato intitolato Drawing Anti-Aliased Graphics Under Tkinter/Windows per fornire la funzionalità desiderata.

Problemi correlati