0

我正在使用 autopy 模块来抓取屏幕并将其保存到文件中。

autopy.bitmap.capture_screen()效果很好但是我怎样才能抓住屏幕的特定部分 x=0, y=10, width=200px, height=100px?

在 autopy 源中是这样的,但我不知道如何在 autopy.bitmap.capture_screen() 中传递 rect 变量? 我试过 autopy.bitmap.capture_screen([0,10,200,100]) 但它不起作用 - TypeError: Argument is not a rect

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;
        }
4

1 回答 1

0

我发现了如何定义矩形。

rect = ((10, 10), (1, 1))
autopy.bitmap.capture_screen( rect )
于 2016-02-12T09:03:49.567 回答