Автопиги Python захватить экран прямоугольник

Я использую модуль autopy, чтобы захватить экран и сохранить его в файл.

autopy.bitmap.capture_screen() прекрасно работает, но как я могу получить определенную часть экрана x=0, y=10, ширина =200px, высота =100px?

В источнике autopy это что-то вроде этого, но я понятия не имею, как передать переменную прямоугольника в autopy.bitmap.capture_screen()? Я попытался autopy.bitmap.capture_screen([0,10,200,100]), но он не работает - TypeError: Аргумент не является прямоугольным

static PyObject *bitmap_capture_screen(PyObject *self, PyObject *arg)
{
    MMRect rect;
    MMBitmapRef bitmap = NULL;
    MMSize displaySize = getMainDisplaySize();

    if (arg == NULL || arg == Py_None) {
        rect = MMRectMake(0, 0, displaySize.width, displaySize.height);
    } else {
        if (!PyArg_ParseTuple(arg, "(kk)(kk)", &rect.origin.x,
                                               &rect.origin.y,
                                               &rect.size.width,
                                               &rect.size.height)) {
            PyErr_SetString(PyExc_TypeError, "Argument is not a rect");
            return NULL;
        }

1 ответ

Я узнал, как определить прямоугольник.

rect = ((10, 10), (1, 1))
autopy.bitmap.capture_screen( rect )
Другие вопросы по тегам