[Image-SIG] Problem in storing tkinter canvas as PNG file using
ImageGrab.grab
Suresh Kumar
suresh_vsamy at rediffmail.com
Wed Jun 25 08:07:27 EDT 2003
Hi,
Iam using python2.2/tkinter/windows. I have drawn some
rectangles in my canvas. Now I want to store my canvas as a PNG
file. Iam using "ImageGrab" to grab the canvas. Iam getting the
result as i expected when the canvas size is less than
"canvas.winfo_width" and "canvas.winfo_height". But when the
size
larger than that, iam not getting the entire canvas image.
My coding is given below.
import sys
from Tkinter import *
import Tkinter
import ImageGrab
canvas = Tkinter.Canvas(width=1600, height=1400)
canvas.create_line(0, 0, 1600, 1400, fill="red", width=10)
canvas.pack()
canvas.update()
if sys.platform == "win32":
# get window location
x0 = canvas.winfo_rootx()
y0 = canvas.winfo_rooty()
x1 = x0 + canvas.winfo_reqwidth()
y1 = y0 + canvas.winfo_reqheight()
im = ImageGrab.grab((20,20, x1,y1))
print "X1 : ",x1," Y1: ",y1
else:
raise NotYetImplemented("oops!")
im.show()
im.save("c:\\outfile.png", "PNG")
root = Tk()
root.mainloop()
How can i make the entire canvas as PNG file irrespective
of its size?
With Regards,
V.Suresh Kumar
___________________________________________________
Get www. mycompany .com and 5 matching email ids.
Just Rs. 1499/ year.
Click here http://www.rediffmailpro.com
More information about the Image-SIG
mailing list