之前使用Python构建了一个图片转文字小工具,但是使用的是使用系统自带的截图工具然后监听目录变化来实现的。接下来我想直接使用Python来构建一个截图工具,这样就可以结合转换工具使用。
构建图形界面
本文使用Python自带的GUI库Tkinter来构建图形界面。Tkinter使用手册:http://c.biancheng.net/python/tkinter/。
- 安装python-tk:sudo apt-get install python-tk。
- 画一个简单的图形界面,只带一个截图按钮并给该按钮绑定监听。代码如下:
import tkinter
root = tkinter.Tk()
root.title('')
#指定窗口的大小
root.geometry('100x50+400+300')
#不允许改变窗口大小
root.resizable(False,False)
#开始截图
def buttonCaptureClick():
print("test")
root.state('normal')
buttonCapture = tkinter.Button(root, text='截图', command=buttonCaptureClick)
buttonCapture.place(x=10, y=10, width=80, height=30)
#启动消息主循环
try:
root.mainloop()
except:
root.destroy()
截取整个屏幕
- 安装python3-pil.imagetk:sudo apt-get python3-pil.imagetk。
- 安装Python库:pip3 install pyscreenshot。
- 使用pyscreenshot库截取整个屏幕并生成名为temp.gif的图片。代码如下:
import pyscreenshot as ImageGrab
filename ='temp.gif'
im = ImageGrab.grab()
im.save(filename)
im.close()
- 结合图形界面和截取整个屏幕代码生成截图的底图。代码见[码云]https://gitee.com/fb4213/c-linux/blob/master/python/test/button-screen.py)。
监听鼠标
canvas.bind('<Button-1>', onLeftButtonDown)
canvas.bind('<ButtonRelease-1>', onLeftButtonUp)
结合截取屏幕的代码见码云。
参考:https://blog.csdn.net/qq_35508118/article/details/81902178
网友评论