[Linux programming] А вот кто в gtk2 силен?

diam
Уже с Приветом
Posts: 107
Joined: 25 Jun 1999 09:01
Location: Russia

[Linux programming] А вот кто в gtk2 силен?

Post by diam »

Hello.

Сабж. Требуется сделать скриншот окна в своем же процессе.
Процесс, соответственно, это GUI приложение, использующее gtk2 widgets.
Я умею делать скриншот окна, когда оно целиком на экране. Но стоит ему (окну)
выйти за пределы экрана, так на скриншоте получаем обрезок, состоящий из мусора
и видимой части окна. Я знаю, что GdkDrawable использует double buffering для рисования
(т.е., оно отрисовывает на GdkPixmap-е) и к буферу можно получить доступ. Но,
скопировав его ф-ей gdk_draw_drawable(), получаем только окно, без children-ов,
что не устраивает. Кроме того, если окно находится целиком за
пределами экрана, то получаем пустой pixmap.
Вопрос: как скопировать окно with children, находящееся за пределами экрана?

p.s. про backing storage у X-server-а знаю, не поможет оно тут, т.к. пробовал: то ли
X-сервер забивал на мои указания, то ли еще что.
p.p.s. помогите pls, уже почти месяц маюсь... :(

Return to “Вопросы и новости IT”