[Image-SIG] Creating a Transparent Image and Placing it Over Another Image (txt)
Wayne Watson
sierra_mtnview at sbcglobal.net
Wed Apr 8 22:21:05 CEST 2009
Still a problem.
import PIL
import Image
from Tkinter import *
...
cnv.pack(expand=1,fill=BOTH)
data.cnv=cnv
img=Image.open('jupa9810.jpg') # some image you have.....
data.img=ImageTk.PhotoImage(img)
produces:
Traceback (most recent call last):
File
"C:\Sandia_Meteors\Sentinel_Development\Development_Sentuser-Utilities\Playground\fun-move_object.py",
line 44, in <module>
Demo(root)
File
"C:\Sandia_Meteors\Sentinel_Development\Development_Sentuser-Utilities\Playground\fun-move_object.py",
line 33, in Demo
img=Image.open('jupa9810.jpg') # some image you have.....
AttributeError: class Image has no attribute 'open'
Fredrik Lundh wrote:
> On Wed, Apr 8, 2009 at 5:55 PM, Edward Cannon <cannon.el at gmail.com> wrote:
>
>> Add the line
>> from Tkinter import
>>
>
> Lost an asterisk there, I think:
>
> from Tkinter import *
>
> </F>
>
>
>>
>> On Apr 7, 2009, at 10:21 PM, Wayne Watson <sierra_mtnview at sbcglobal.net>
>> wrote:
>>
>>
>>> This looks good, but there's a slight problem. It looks right, but I get
>>> this when I try to run it:
>>> Traceback (most recent call last):
>>> File
>>> "C:/Sandia_Meteors/Sentinel_Development/Development_Sentuser-Utilities/Playground/fun-move_object.py",
>>> line 42, in <module>
>>> root=Tk()
>>> NameError: name 'Tk' is not defined
>>>
>>> Howard Lightstone wrote:
>>>
>>>> Here is a *dumb* example of what I think you want. It can be elaborated
>>>> with crosshairs, ring sizing, etc.
>>>>
>>>> import PIL
>>>> import Image
>>>> import ImageTk
>>>>
>>>> class data:
>>>> startx=0
>>>> starty=0
>>>>
>>>> def startmotioncallback(event):
>>>> data.startx=event.x
>>>> data.starty=event.y
>>>>
>>>> def motioncallback(event):
>>>> deltax=event.x-data.startx
>>>> deltay=event.y-data.starty
>>>> data.startx=event.x
>>>> data.starty=event.y
>>>> # should put some limits on where the cirle is moved
>>>> # left as exercise.....
>>>> data.cnv.move(data.ring,deltax,deltay)
>>>> def Demo(root):
>>>> # resize window
>>>> root.geometry('400x400+0+0')
>>>> data.root=root
>>>> # make a canvas
>>>> cnv=Canvas(root)
>>>> cnv.pack(expand=1,fill=BOTH)
>>>> data.cnv=cnv
>>>> img=Image.open('white dragon.png') # some image you have.....
>>>> data.img=ImageTk.PhotoImage(img)
>>>> data.photo=cnv.create_image(0,0,image=data.img,anchor='nw')
>>>> data.ring=cnv.create_oval((100,100,300,300))
>>>> cnv.bind("<B1-Motion>",motioncallback)
>>>> cnv.bind("<Button-1>",startmotioncallback)
>>>> root.mainloop()
>>>>
>>>> if __name__ == '__main__':
>>>>
>>>> root=Tk()
>>>> Demo(root)
>>>> _______________________________________________
>>>> Image-SIG maillist - Image-SIG at python.org
>>>> http://mail.python.org/mailman/listinfo/image-sig
>>>>
>>>>
>>>>
>>> --
>>>
>>> Wayne Watson (Watson Adventures, Prop., Nevada City, CA)
>>>
>>> (121.01 Deg. W, 39.26 Deg. N) GMT-8 hr std. time)****
>>>
>>> "Less than all cannot satisfy Man." -- William Blake
>>>
>>>
>>> _______________________________________________
>>> Image-SIG maillist - Image-SIG at python.org
>>> http://mail.python.org/mailman/listinfo/image-sig
>>>
>> _______________________________________________
>> Image-SIG maillist - Image-SIG at python.org
>> http://mail.python.org/mailman/listinfo/image-sig
>>
>>
>
>
--
Wayne Watson (Watson Adventures, Prop., Nevada City, CA)
(121.01 Deg. W, 39.26 Deg. N) GMT-8 hr std. time)****
"Less than all cannot satisfy Man." -- William Blake
More information about the Image-SIG
mailing list