앱 메뉴를 선택하여 전체 데스크톱의 스크린 샷을 만드는 방법은 무엇입니까?


13

Applications Menu (응용 프로그램 메뉴)를 선택하여 전체 데스크톱의 스크린 샷을 만들고 싶습니다.

답변:


20
  • 응용 프로그램> 액세서리> 스크린 샷 찍기> 전체 데스크탑 잡기> 5 초 후에 잡기 (예 : 5 초)

대체 텍스트

  • 응용 프로그램 메뉴 선택을 수행하십시오. 기다림.

5

사실, 이다 하지만 대신에 몇 가지 해킹과, 지연없이 그것을 할 수 있습니다. 나는 당신이 지체없이 그것을 할 수있는 작은 스크립트를 작성했습니다. 이것은 큰 해킹이지만 작동하고 지연을 사용하는 것보다 확실히 나에게 더 좋습니다.

#!/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

실제로 우분투에서 스크립트를 사용하기 전에 xinputunbuffer 가 있는지 확인해야합니다 . 그렇게하려면 다음을 수행하십시오.

sudo apt-get install xinput expect-dev

그런 다음 스크립트를 실행할 수 있습니다. 가능한 구성 옵션을 보려면 -h 옵션으로 먼저 실행하십시오. 기본적으로 스크립트는 한 번만 작동하며 모든 스크린 샷 (예 : 키보드 단축키) 후에 스크립트를 다시 시작해야합니다. 스크립트가 성능에 영향을 줄 수 있기 때문입니다. "데몬"으로 실행하려면 -d옵션을 사용하여 실행하십시오 .

기본적으로 셔터도 사용됩니다. 다른 것을 사용하려면 -e옵션을 사용하십시오 . 예 :script.sh -c "ksnapshot"

기본적으로 캡처 버튼은 Meta+ R입니다. 구성 옵션을 사용하여 변경할 수 있습니다.


4

셔터로도 가능했는지 궁금해했기 때문에 ...

셔터 아이콘 Shutter 에서 셔터 를 열려면 도구 모음 또는 File > New > Fullscreen 에서 Full Screen 을 선택하십시오 .

시간 지연이 설정되어 응용 프로그램 메뉴를 열 수있는 충분한 시간이 있는지 확인하십시오 ( 편집 > 기본 설정 > 기본 탭; 하단에는 선택 상자가 있습니다 : __ 초 지연 후 캡처 ).

대체 텍스트


2

예. 스크린 샷을 열고 돌아가서 메뉴를 여는 데 필요한 시간 지연을 설정하십시오. 촬영할 때까지 열어 두십시오.

여기에 이미지 설명을 입력하십시오


2

빠른 답변 / 해결 방법

( 중급에서 고급 우분투 사용자의 경우 )

  • 다음 명령에 사용자 정의 단축키를 추가하십시오.
    gnome-screenshot --delay=numIntValueInSecs
    예를 들어
    gnome-screenshot --delay=3
  • 다른 창을 추가하여 활성 창 스크린 샷을 만드십시오.
    gnome-screenshot -w --delay=3

    그게 다야 , 그러나 나는 또한 당신에게 메뉴에 깊은 탐색하는 데 더 많은 시간을 줄 것이다이 다른 사람을 설정하는 것이 좋습니다 것입니다.

    • gnome-screenshot --delay=10
    • gnome-screenshot -w --delay=10

    여기에 이미지 설명을 입력하십시오

정교한 답변

( 해커 초보자 )

소개 :

을 누를 때마다 경로에 있고 "터미널"(텔레 타입, tty, cli, 명령 행 / 프롬프트)에서 사용 가능한 PrntScr모든 우분투가 전화 gnome-screenshot를 걸기 /usr/bin/때문에 펑키에 맞게 모든 방법으로 사용할 수 있습니다 목적.

gnome-screenshot작은 프로그램이 선택적 매개 변수를 받아, 당신은 하나 (당신이 알고 도움을 요청하는 표준 매개 변수를 전달하여 모든 옵션을 볼 수 있습니다 -h)

여기에 이미지 설명을 입력하십시오

이 사용법을 여전히 잘 모를 경우 언제든지보다 자세한 도움말을 읽고 수동 입력을 요청하면됩니다. man gnome-screenshot

여기에 이미지 설명을 입력하십시오

전체 매뉴얼을 읽을수록 우분투를 해킹하여 필요에 맞게 직관적으로 만들 수 있으며 단계별 지침을 제공 할 다른 사람들이 필요하지 않습니다. 어쩌면이 시점까지 당신은이 해결 방법을 스스로 알아내는 방법조차 알 수 있습니다.

명령:

  • 0 단계 : Ubuntu의 시스템 설정을 열고 키보드 옵션으로 이동하십시오.

여기에 이미지 설명을 입력하십시오

지금

  1. Shortcuts탭으로 이동 하십시오.
  2. 고르다 Custom Shortcuts
  3. +새 사용자 정의 바로 가기를 추가 하려면 단추를 누르십시오 .
  4. 이름과 명령을주십시오.
    (위의 "빠른 답변" 에 설명 된 대로)
    4½. 원하는 키 조합을 지정하십시오.
  5. 이 창을 닫으면 작동하지 않습니다.

여기에 이미지 설명을 입력하십시오

*프레스토 악장!
우분투 마스터가되기 위해 한 걸음 더 나아갔습니다.이 답변이 도움이 되었기를 바랍니다. *


좋은! 키보드로 실행되는 스크린 샷의 기본 지연을 설정한다는 아이디어가 마음에 듭니다.
jgomo3

예, 결국 드롭 다운 메뉴의 스크린 샷을 찍는 것보다 몇 가지 사용 사례가 더 있습니다.
JorgeArtware

1

(액세서리에서) 스크린 샷을 사용하고 'xx 초 지연 후 그래 브'를 설정하십시오.

나를 위해 일했다


1

실제 해결책이 아니라이 문제를 해결했습니다.

Screenshot열린 창에서 애플리케이션을 열고 x 초 지연 후 시간을 잡기 로 설정하십시오 .

참고 : 창의 특정 부분을 잡는 데 사용할 수 없습니다.

참고 : 죄송합니다. 스크린 응용 프로그램 자체 의 스크린 샷을 창으로 만들거나 특정 부분 을 가져 오는 것도 불가능합니다 .


0

나는 그것이 버그라고 말하지 않을 것입니다. "스크린 샷"도구를 사용하여 "x 초 지연 후 캡처"를 메뉴를 다시 열어야하는 시간으로 설정할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.