准备材料:
图片img.png 大小:804×165
制作思路:
把图片拆分成12等分,每帧大小:67×165;连续读取和播放就会形成动态图像。
源代码:
import tkinter as tk from pil import image,ImageTk from time import sleep flag = False def pause(): global flag flag = not flag while flag: doing() def doing(): global flag while flag: for i in range(12): if not flag:break box = f_out.crop((i*67,0,i*67+67,164)) img = ImageTk.PhotoImage(image=box) gif = cv.create_image(180,135,image=img) cv.update() sleep(0.2) root = tk.Tk() root.geometry('400x320') cv = tk.Canvas(root, width=350, height=260, bg='lightgray') cv.pack() f_in = 'd:\\img.png' f_out = Image.open(f_in) box = f_out.crop((0,0,67,164)) img = ImageTk.PhotoImage(image=box) gif = cv.create_image(180,135,image=img) tk.Button(root,command=pause,text='动作/停止').place(x=170,y=275) root.mainloop()
运行效果:
到此这篇关于python 使用PIL.Image制作一个运动小人的动态图的文章就介绍到这了,更多相关Python PIL.Image动态图内容请搜索华域联盟以前的文章或继续浏览下面的相关文章希望大家以后多多支持华域联盟!
您可能感兴趣的文章:
- python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图
- Python 实现OpenCV格式和PIL.Image格式互转
- python3读取图片并灰度化图片的四种方法(OpenCV、PIL.Image、TensorFlow方法)总结
声明:本站(华域联盟www.cnhackhy.com)所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。



评论(0)