最近,我开始与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秒。
答案 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()在没有所有格式的情况下创建了要比较的图像。