Xlib: пиксели вне видимости
Я использую XGetImage
а также XGetPixel
чтобы получить пиксели от моих мониторов. Все работает нормально, но пиксели, которые не видны ни на одном мониторе, устанавливаются случайными значениями. Картинка объяснит лучше:
Монитор 1 имеет разрешение 1280х1024, а монитор 2 имеет разрешение 1080х1920. Как видите, слева внизу находится квадрат, заполненный старыми / случайными значениями. XGetPixel
настолько медленный, что я имею в виду установить эти пиксели на черный.
Итак, мой вопрос: есть ли способ сказать Xlib, что я не хочу значения из этих пикселей? Или я хочу, чтобы он возвращался к черному или другому значению? Я думал о плохом управлении со стороны WM или графической карты, но я понятия не имею, как с этим бороться, и если это возможно.
Я использую Python 2 и 3 с ctypes, но код C делает то же самое.
Этот код используется в модуле моего Python с именем MSS, файл mss / linux.py. Примеры понятны на странице презентации.
1 ответ
Вам нужно использовать расширение Composite, чтобы иметь возможность извлекать неотображенную / скрытую область окон - см. "Когда содержимое окон становится доступным", часть учебника Composite.