Contents
Py跨平台截屏
{{{xjfseasky <[email protected]> reply-to [email protected], to "python-cn @ googlegroups. com" <[email protected]>, date Tue, Apr 29, 2008 at 6:22 PM subject [CPyUG:49429] Re: python有在屏幕上截图的lib么?就像QQ那样能够随便取一段屏幕
}}}
不知道这个是不是你想要的:
1 #filename : Tite.py
2
3 import time
4 from PIL import Image,ImageDraw
5 import os, win32gui, win32ui, win32con, win32api
6 #-----------------------------------
7 # Function
8 #--------------------------------------
9 def window_capture():
10 hwnd = 0
11 hwndDC = win32gui.GetWindowDC(hwnd)
12 mfcDC=win32ui.CreateDCFromHandle(hwndDC)
13 saveDC=mfcDC.CreateCompatibleDC()
14 saveBitMap = win32ui.CreateBitmap()
15
16 MoniterDev=win32api.EnumDisplayMonitors(None,None)
17 w = MoniterDev[0][2][2]
18 h = MoniterDev[0][2][3]
19 saveBitMap.CreateCompatibleBitmap(mfcDC, w, h)
20 saveDC.SelectObject(saveBitMap)
21 saveDC.BitBlt((0,0),(w, h) , mfcDC, (0,0), win32con.SRCCOPY)
22 # bmpname=win32api.GetTempFileName(".","")[0]+'.jpg'
23 bmpname=win32api.GetTempFileName(".","")[0]+'.jpg'
24 saveBitMap.SaveBitmapFile(saveDC, bmpname)
25 return bmpname
26
27 #-----------------------------------
28 # test
29 #--------------------------------------
30
31 if __name__ =="__main__":
32 im = Image.open(window_capture())
33 im.show
反馈
创建 by -- ZoomQuiet [2008-04-29 11:08:15]