Xlib: пиксели вне видимости

Я использую XGetImage а также XGetPixel чтобы получить пиксели от моих мониторов. Все работает нормально, но пиксели, которые не видны ни на одном мониторе, устанавливаются случайными значениями. Картинка объяснит лучше:

Xlib: пиксели вне видимости

Монитор 1 имеет разрешение 1280х1024, а монитор 2 имеет разрешение 1080х1920. Как видите, слева внизу находится квадрат, заполненный старыми / случайными значениями. XGetPixel настолько медленный, что я имею в виду установить эти пиксели на черный.

Итак, мой вопрос: есть ли способ сказать Xlib, что я не хочу значения из этих пикселей? Или я хочу, чтобы он возвращался к черному или другому значению? Я думал о плохом управлении со стороны WM или графической карты, но я понятия не имею, как с этим бороться, и если это возможно.

Я использую Python 2 и 3 с ctypes, но код C делает то же самое.

Этот код используется в модуле моего Python с именем MSS, файл mss / linux.py. Примеры понятны на странице презентации.

1 ответ

Вам нужно использовать расширение Composite, чтобы иметь возможность извлекать неотображенную / скрытую область окон - см. "Когда содержимое окон становится доступным", часть учебника Composite.

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