Ограничить Zbar до QR-кода только в Python

Я использую Zbar с его опцией Processor в Python. Я пытался выяснить, как ограничить символы только QR-кодом, но нашел только ответы для C следующим образом:

scanner = new ImageScanner();
scanner.setConfig(Symbol.QRCODE, Config.ENABLE, 1);

Я понимаю, что оригинальный код написан для C, но есть ли способ сделать это на Python? Python не является моим основным языком, и мне немного сложно понять, каковы аргументы в этом случае для processor.parse_config() (который я сейчас установил для "включения"):

С https://github.com/npinchot/zbar/blob/master/processor.c

static PyObject*
processor_parse_config (zbarProcessor *self,
                    PyObject *args,
                    PyObject *kwds)
{
    const char *cfg = NULL;
    static char *kwlist[] = { "config", NULL };
    if(!PyArg_ParseTupleAndKeywords(args, kwds, "s", kwlist, &cfg))
        return(NULL);

    if(zbar_processor_parse_config(self->zproc, cfg)) {
        PyErr_Format(PyExc_ValueError, "invalid configuration setting: %s",
                 cfg);
        return(NULL);
    }
    Py_RETURN_NONE;
}

Я даже не понимаю, почему "включить" является действительным аргументом.

0 ответов

Мне потребовалось некоторое время, чтобы понять это, поскольку нет документации, а формат конфигурации нелогичен, IMO, но здесь вы идете:

proc.parse_config('disable')
proc.parse_config('qrcode.enable')

Первая строка, disable, отключает все сканеры. Вторая строка включает сканер qrcode.

Другие вопросы по тегам