Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PythonMSS-使屏幕截图文件变小还是用jpg?_Python_Screenshot_Python Mss - Fatal编程技术网

PythonMSS-使屏幕截图文件变小还是用jpg?

PythonMSS-使屏幕截图文件变小还是用jpg?,python,screenshot,python-mss,Python,Screenshot,Python Mss,根据显示器上显示的内容,Python MSS的屏幕截图可能会高达2MB,即使我将压缩设置为最大值9。有没有其他方法可以减小文件大小,或者将其保存为jpg,这样会更压缩?质量没什么大不了的,我宁愿不用PIL from mss import mss with mss() as sct: sct.compression_level = 9 sct.shot(mon=-1, output="C:\test\test.png") 到目前为止,MSS只包括一个基本的。即使我们在PNG格式

根据显示器上显示的内容,Python MSS的屏幕截图可能会高达2MB,即使我将压缩设置为最大值9。有没有其他方法可以减小文件大小,或者将其保存为jpg,这样会更压缩?质量没什么大不了的,我宁愿不用PIL

from mss import mss

with mss() as sct:
    sct.compression_level = 9
    sct.shot(mon=-1, output="C:\test\test.png")

到目前为止,MSS只包括一个基本的。即使我们在PNG格式中实现了更复杂的过滤器,它可能仍然很繁重

屏幕截图的大小很大程度上取决于屏幕大小

一个想法是在纯Python中包含一个JPG压缩器,但我没有时间这样做,所以pull请求总是受欢迎的。
你可以使用什么模块?因为您可以播放像素并将其传递给另一个模块,也许?

谢谢您提供的信息。我们在1920x1080或2560x1080屏幕上获得180-200KB,这非常好,但在RDP会话中获得1.8MB到2.0MB,我想知道为什么会有如此巨大的差异。我使用尽可能少的模块,最终使软件尽可能小。我正在使用pyinstaller创建一个可执行文件,并将PIL添加到文件大小和数量的两倍。我不知道我们还可以使用其他模块。如何通过RDP使用MSS?你能发布一个屏幕截图来了解结果吗?我用MSS和pyinstaller编译python代码。通过RDP复制可执行文件,然后打开该文件。您可能只需要运行MSS代码就可以通过RDP获得一个屏幕截图来测试它,但您需要RDP计算机才能使用python。好的,我会尝试一下,让您知道:)我无法复制。无论是否使用via RDP,屏幕截图的大小约为1.20Mo(因为我有高质量的全屏2560*1335和详细的背景图像)。所以我看不到我这边有什么奇怪的东西。