将PIL图像转换为自动位图?(并返回)

时间:2016-12-05 19:53:30

标签: python python-imaging-library autopy

最近,我开始与PIL一起使用AutoPy来自动执行某些任务。 AutoPy需要的核心功能之一就是令人惊讶的快速(虽然有问题,但有fixes - 来源的构建和安装可能很烦人,如果你得到错误Unable to find vcvarsall.bat,只是谷歌吧。)

但刚才我遇到了一个我无法找到修复的问题。 PIL和AutoPy为截图使用基本不同的格式。对于AutoPy,我无法使用多个屏幕,但对于PIL我很容易。现在我需要将这些图像转换为AutoPy接受的格式 - 并且在合理的时间内。

理想的解决方案:

def test(): Img = Image.open("example.png") Img.save("test.png") Img2.open("test.png")

通过我的测试,这大约需要0.5秒才能完成。远远超过我需要的0.1秒。

1 个答案:

答案 0 :(得分:0)

我在文档中挖掘了一个位图图像转换工具。

pil_im = Image.open("test.png")
pil_im = pil_im.convert(mode ="1") 
#this is to prevent a value error in the tobitmap function

pil_im = pil_im.tobitmap(im)

我之前遇到类似的问题,pyautogui屏幕截图与最近打开的png不同。 pil_im.copy()在没有所有格式的情况下创建了要比较的图像。