最近,我开始与PIL和AutoPy一起工作,以自动执行一些任务。AutoPy需要的核心功能之一是它惊人的速度(尽管有but,但有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秒。
发布于 2017-02-17 10:58:09
我在文档中翻找位图图像转换工具。
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()创建了一个不带所有格式的要比较的图像。
https://stackoverflow.com/questions/40982254
复制相似问题