PIL的.crop返回图像0x0。 ImageGrab.grab与指定的bbox一样

时间:2014-12-05 06:02:43

标签: python python-2.7 python-imaging-library

所以我试图抓住我屏幕的一部分。但它返回我0x0图像。我目前的所有代码都是:

from PIL import ImageGrab
im = ImageGrab.grab(bbox=(466,789,116,439))
print im
>><PIL.Image._ImageCrop image mode=RGB size=0x0 at 0x1E64120>

虽然没有指定bbox

im = ImageGrab.grab()
print im
>><PIL.Image.Image image mode=RGB size=1280x1024 at 0x1F33198>

我还试图拍摄全屏图像,然后裁剪它:

bbox=(466,789,116,439)
im = ImageGrab.grab()
print im
im = im.crop((466,789,116,439))
print im
<PIL.Image.Image image mode=RGB size=1280x1024 at 0x1DA41C0>
<PIL.Image._ImageCrop image mode=RGB size=0x0 at 0x1DA4260>

我完全不知道它是如何起作用的。没有找到任何有同样问题的人,所以我在这里。 提前致谢

Python 2.7
PIL 1.1.7

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题并且意识到bbox是(start_x,start_y,end_x,end_y)而不是(x,y,width,height)所以假设这些参数是你的尺寸只是写

im = ImageGrab.grab(bbox=(466,789,582,1228))

你应该有一个正确大小的图像。