Chcę zrobić zrzut ekranu całego pulpitu z wyborem menu aplikacji. Jak to zrobić?
źródło
Chcę zrobić zrzut ekranu całego pulpitu z wyborem menu aplikacji. Jak to zrobić?
Właściwie, to jest możliwe, aby to zrobić bez zwłoki, ale z pewnymi hacki zamiast. Napisałem mały skrypt, który pozwoli ci to zrobić bez opóźnień. To duży hack, ale działa i na pewno (dla mnie) jest lepszy niż używanie opóźnienia.
#!/bin/bash
######################################################################################
# Simple script to enable users to make screenshots of tooltips/menus/etc... #
# without timers #
######################################################################################
######################################################################################
# Configuration Section (defaults) #
######################################################################################
SCREENSHOT_COMMAND="shutter -s"
# The keys can be found out using xinput test "keyboard name"
MODIFIER_KEY=133 #The <Super> Key (aka. Meta or Windows Key)f
CANCEL_KEY=54 # C
CAPTURE_KEY=27 # R
DAEMON_MODE="false" # change to true if you want to keep the script running after the screenshot was taken
VERBOSE="true" #Change this to any value if you dont want to have notifications
######################################################################################
######################################################################################
# Command parsing #
######################################################################################
function usage {
echo "$0 [-hemrcdn]"
echo "-h prints this message"
echo "-e <command> - execute that command instead of shutter"
echo "-m <int> - The modifier key to use. Use xinput test <keyboar> to find out what is what"
echo "-r <int> - The key to use for capture."
echo "-c <int> - The key used for cancelling (only valid in non daemon mode)"
echo "-d - daemon mode. Will keep on running after a screenshot was taken. to kill the daemon, use \"killall xinput\""
echo "-n - disables notifications"
exit;
}
while getopts "he:m:r:c:dn" flag
do
if [ "$flag" == "h" ]; then
usage
fi
if [ "$flag" == "e" ]; then
SCREENSHOT_COMMAND=$OPTARG
fi
if [ "$flag" == "m" ]; then
CAPTURE_KEY=$OPTARG
fi
if [ "$flag" == "r" ]; then
SCREENSHOT_COMMAND=$OPTARG
fi
if [ "$flag" == "c" ]; then
CANCEL_KEY=$OPTARG
fi
if [ "$flag" == "d" ]; then
DAEMON_MODE="true"
fi
if [ "$flag" == "n" ]; then
VERBOSE="false"
fi
done
######################################################################################
KEYBOARDS=`xinput list | grep "slave" | grep "keyboard" | sed "s/[^a-zA-Z]*\(.*\)id=.*/\1/" | sed "s/[\t ]*$//"`
function run {
MODIFIER_PRESSED="false"
while read line;
do
COMMAND=`echo $line | awk '{print $2;}'`
KEY=`echo $line | awk '{print $3;}'`
if [ "$KEY" == "$MODIFIER_KEY" ]; then
if [ "$COMMAND" == "press" ]; then
MODIFIER_PRESSED="true"
else
MODIFIER_PRESSED="false"
fi
fi
if [ "$KEY" == "$CAPTURE_KEY" -a "$MODIFIER_PRESSED" == "true" -a "$COMMAND" == "press" ]; then
bash -c $SCREENSHOT_COMMAND
if [ "$VERBOSE" == "true" ]; then
notify-send "Taking Screenshot"
fi
if [ "$DAEMON_MODE" == "false" ]; then
quit
fi
fi
if [ "$KEY" == "$CANCEL_KEY" -a "$MODIFIER_PRESSED" == "true" -a "$COMMAND" == "press" -a "$DAEMON_MODE" == "false" ]; then
if [ "$VERBOSE" == "true" ]; then
notify-send "Canceling Screenshot"
fi
quit
fi
done;
}
function quit {
killall -9 xinput
exit
}
if [ "$VERBOSE" == "true" ]; then
notify-send "Screenshot script waiting. Press Meta + R to capture the screenshot"
fi
IFS=$'\n'
for i in $KEYBOARDS
do
unbuffer xinput test "$i" | run &
done
Przed rzeczywiście można użyć skryptu (na Ubuntu), należy upewnić się, że XInput i unbuffer . Aby to zrobić, po prostu wykonaj:
sudo apt-get install xinput expect-dev
Następnie możesz uruchomić skrypt. Uruchom go najpierw z opcją -h, aby zobaczyć możliwe opcje konfiguracji. Domyślnie skrypt będzie działał tylko raz i po każdym zrzucie ekranu musisz ponownie uruchomić skrypt (np. Za pomocą skrótu klawiaturowego). Wynika to z faktu, że skrypt może mieć brak wydajności. Jeśli chcesz uruchomić go jako „demon”, uruchom go z -d
opcją.
Domyślnie użyje również migawki. Jeśli chcesz użyć czegoś innego, skorzystaj z -e
opcji, npscript.sh -c "ksnapshot"
Domyślnie przycisk przechwytywania to Meta+ R. możesz to zmienić za pomocą opcji konfiguracji.
Ponieważ zastanawiałeś się, czy to możliwe także dzięki Shutter ...
Aby to zrobić w Shutter , otwórz go i wybierz Pełny ekran z paska narzędzi lub z menu Plik > Nowy > Pełny ekran .
Upewnij się, że masz ustawione opóźnienie czasowe, aby mieć wystarczająco dużo czasu, aby otworzyć menu Aplikacje ( Edycja > Preferencje > Karta główna ; u dołu znajduje się pole wyboru: Przechwyć po opóźnieniu __ sekund ).
Tak. Otwórz zrzut ekranu i ustaw opóźnienie w czasie, który Twoim zdaniem jest konieczny, aby wrócić i otworzyć menu. Pozostaw ją otwartą do momentu wykonania zdjęcia.
( dla średnich i zaawansowanych użytkowników ubuntu )
gnome-screenshot --delay=numIntValueInSecs
gnome-screenshot --delay=3
Dodaj kolejny, aby zrobić zrzuty ekranu aktywnego okna:
gnome-screenshot -w --delay=3
To wszystko , ale zalecam także ustawienie 2 innych, które dałyby więcej czasu na głębsze poruszanie się po menu.
gnome-screenshot --delay=10
gnome-screenshot -w --delay=10
( nowicjusz do hakera )
Ilekroć naciśniesz PrntScr, wszystko, co robi Ubuntu, to dzwonienie, gnome-screenshot
które zwykle znajduje się na /usr/bin/
ścieżce i jest dostępne z „terminala” (typ telettyki, tty, cli, wiersza poleceń / monitu), dzięki czemu możesz używać go na różne sposoby, aby dopasować się do Twojego funky cele.
gnome-screenshot
Mały program akceptuje opcjonalne parametry, można zobaczyć wszystkie opcje, przekazując standardowy parametr, aby prosić o pomoc, wiesz, że jeden ( -h
)
Jeśli nadal nie wiesz, jak tego użyć, zawsze możesz przeczytać bardziej szczegółową pomoc, po prostu poproś o ręczne wpisywanie man gnome-screenshot
Im więcej czytasz pełne podręczniki, hakowanie ubuntu do twoich potrzeb stanie się intuicyjne i nie będziesz potrzebował innych ludzi, którzy udzielą ci instrukcji krok po kroku. Być może do tego momentu wiesz nawet, jak samemu to obejść, jeśli nadal jesteś zagubiony (mam nadzieję, że nie), po prostu czytaj dalej ...
Teraz
Shortcuts
zakładki.Custom Shortcuts
+
przycisk, aby dodać nowy niestandardowy skrót.*presto!
Właśnie zrobiłeś kolejny krok, aby zostać mistrzem ubuntu, mam nadzieję, że ta odpowiedź była pomocna *
Użyj zrzutu ekranu (w akcesoriach) i ustaw „Chwyć po opóźnieniu xx sekund”.
Pracował dla mnie
źródło
Znalazłem obejście tego, a nie rzeczywiste rozwiązanie.
Otwórz
Screenshot
aplikację, w otwartym oknie ustaw czas jako Grab po opóźnieniu x sekund .Uwaga: Nie można tego użyć do uchwycenia określonej części okna.
Uwaga: Przepraszamy, nie jest możliwe zrobienie zrzutu ekranu samej aplikacji Screenshot jako okna lub pobranie określonej części.
źródło
Nie powiedziałbym, że to błąd. Można użyć narzędzia „Screenshot” i ustawić „Grab po opóźnieniu x sekund” na czas potrzebny do ponownego otwarcia menu.
źródło