Python3用tkinter和PIL实现看图工具
2018-06-21 15:33
1026 查看
需求
想做看图工具的,必然要支持jpg、png等常见格式,但tkinter是个纯粹的GUI库,不像GTK、QT那样大而全,所以只支持gif和ppm两种格式,局限很大,必须搭配图像处理库,才能实现基本的看图功能
在python生态系统里,最常用的图像处理库是PIL
Python3下库的安装
这两个库在python3下跟python2有一定差异:
tkinter首字母变成小写
PIL官方还不支持Python3,但有个fork叫Pillow,可以替代官方并且接口保持不变,需要pip install Pillow安装
技术原理
那么怎么让PIL读取jpg文件生成的内存对象被tkinter处理呢?PIL的开发人员很贴心的提供了一个PhotoImage类,跟tkinter包里的同名类接口兼容,所以可以直接将PIL生成的PhotoImage对象赋给tkinter中能接收PhotoImage入参的所有控件(比如Label、Canvas等)
代码示例
#encoding=utf-8 import tkinter as tk from PIL import Image, ImageTk class App(tk.Frame): def __init__(self, master=None): super().__init__(master, width=400, height=300) self.pack() self.pilImage = Image.open("CSDN.png") self.tkImage = ImageTk.PhotoImage(image=self.pilImage) self.label = tk.Label(self, image=self.tkImage) self.label.pack() def processEvent(self, event): pass if __name__ == '__main__': root = tk.Tk() app = App(root) root.mainloop()
最终显示效果
您可能感兴趣的文章:
相关文章推荐
- Python3下用tkinter和PIL实现简单的看图工具
- Python基于tkinter模块实现的改名小工具示例
- Python3下用tkinter和PIL实现简单的显示图片
- 使用python实现测试工具(一)
- Python实现的百度站长自动URL提交小工具
- Windows文件检索、复制工具(Python Tkinter)
- python使用tkinter实现简单计算器
- Python+tkinter使用40行代码实现计算器功能
- Python使用Tkinter实现机器人走迷宫
- Python实现的正则表达式文本查找工具
- python实现与八爪鱼图片下载转换器等效的爬虫工具
- 一步步实现看图工具(四)
- selenium2 python自动化测试之利用AutoIt工具实现本地文件上传
- 发布一个用Python实现的“法语动词变位工具”
- GNU Binutils工具readelf之Python实现
- 用Python实现QQ游戏大家来找茬辅助工具
- Python Tkinter实现的简单计算器
- Python编程使用tkinter模块实现计算器软件完整代码示例
- 用Python的Tkinter实现时钟
- Python 使用PIL numpy 实现拼接图片