Возможно, 'меньше-F file_to_read' является опцией: это выходит меньше, если окно достаточно отобразить весь файл и ожидать на пейджере, если это не имеет место
for i in `xprop -root|grep "_NET_CLIENT_LIST_STACKING(WINDOW): window id" |tr '#' ','|tr ',' '\n'| grep 0x`;do xwininfo -id $i|grep "Window id" ;done
Используя вышеупомянутое я смог получить идентификатор окон. и использование
xwininfoспособный найти маркировку или имя или заголовок окна.
Под чем Вы подразумеваете "не активный"? "Не имея фокус" или "скрытый некоторым другим окном"? В первом случае калека сделает это без любых проблем (Файл-> Создают-> Снимок экрана). Во втором случае это более трудно (если это возможно вообще).
import
(от комплекта ImageMagick), имеет a -window id
опция. Если Вы знаете идентификатор окна, который должен работать, даже на командной строке. Можно получить использование идентификатора окна xwininfo
, но для этого необходимо будет использовать мышь, по крайней мере, однажды.
– Uwe
21.05.2013, 19:24
Для разработки немного предыдущие ответы и комментарии способность получить снимок экрана не активного окна (как в полностью или частично скрытый), кажется, зависит от менеджера окон.
Используя следующее (уже данный) команда :
import -window <windowid> image.png
или
xwd -id <windowid> | convert xwd:- image.png
( -
из convert
для использования стандартного входа от канала, xwd:
говорит формату входа), что каждый, кажется, может под Просвещением (e17, протестирован с Fedora 19) для получения снимка экрана :
Я согласовал с Openbox (та же конфигурация) и KDE (со старым Научным Linux 4.8 и последней версией ImageMagick
(да, невероятно это скомпилировало …)), и в обоих случаях снимки экрана показывают только, что сверх слоев дисплея — то есть, только что уже видимо на экране.
Дело в том, что import
управляйте проверками на map_state
поле, возвращенное XGetWindowAttributes
быть IsViewable
, и если не это возвращает ошибку. Можно проверить map_state
например, использование :
xwininfo -id <windowid> | grep 'Map State'
Это, кажется, всегда IsViewable
под e17, в то время как это IsUnMapped
под openbox и KDE, как только окно минимизировано или что бы то ни было.
Не уверенный, хотя, почему снимок экрана является всегда чистым с e17, в то время как он смешан с другими окнами, когда окно частично восстанавливается с другим WMs, но очевидно это также имеет отношение к способу, которым WM обрабатывает дисплей.
Так или иначе ясно это - вопрос WM. Было бы хорошо иметь список WMs, который в состоянии по сравнению с неспособным сделать снимки экрана скрытых окон — я не делаю его.
xwininfo | grep -i 'window id'
и нажмите на рассматриваемое окно.
– erik
03.06.2016, 21:01
Хотя этот ответ может быть нежелательным в некоторых ситуациях, этот скрипт будет поднимать каждое окно на текущем рабочем столе по одному, чтобы их можно было сделать скриншотами с помощью вашего инструмента скриншотов в ближайшее время.
#!/bin/bash
# raiseAll - Mark Belanger - raise all windows
# get the ID of the current desktop
thisDT=`wmctrl -d |grep ' \* ' | awk '{print $1}'`
echo Raising windows for desktop $thisDT
for window in `wmctrl -l |grep " $thisDT " | awk '{print $1}'`
do
echo Raising $window - put your screenshot command here
wmctrl -i -a $window
sleep 1
done
Решение для kde
Системные настройки ->Дисплей и мониторы ->Compositor ->Всегда сохранять эскизы окон
import -window <window_ID> screenshot.png
– spendyala 22.05.2013, 19:36