Ferramenta de recorte do Windows realce em linha reta

10

Na Ferramenta de Captura do Windows , gostaria de saber como posso usar a ferramenta do marcador para desenhar linhas retas?

    
por zatenzu 29.03.2017 / 09:14

3 respostas

8

A ferramenta de recorte do Windows não tem como nos deixar desenhar linhas retas pressionando Shift . Windows Ink Workspace é outra ferramenta que suporta cortar e desenhar a parte cortada. Tem uma régua virtual que nos ajuda a desenhar linhas retas.

Para ativar a área de trabalho do Windows Ink

Right-click anywhere on the taskbar and from the context menu select Show Windows Ink Workspace button. An icon of a pen writing in an “S” shape will appear in the notifications area to the far right.

Para iniciar o espaço de trabalho, clique ou toque no ícone do Windows Ink Workspace em forma de caneta que aparece na sua área de notificação.

Toquenobloco"Esboço da tela". Será o terceiro bloco da lista. Ele tirará automaticamente uma captura de tela da sua exibição e a carregará para o seu esboço.

Navegueatéabarradepenanocantosuperiordireitodatela.

Selecioneoíconedarégua.Issopareceumaréguadiagonal.

Coloqueomousesobrearéguaeusearodaderolagemdomouseparagirareposicionararégua.

Exemplodeesboço

Espero que isso ajude.

Note: Screen Sketch is a new feature available in the Windows 10 Anniversary Update

    
por 29.03.2017 / 09:55
5

User 3DWizard tem um bom script AutoHotKey que Eu modifiquei um pouco para me ajudar a resolver esse problema. Segure Shift dentro da janela Snipping Tool para restringir o mouse ao movimento horizontal.

SendMode Input ; Recommended for new scripts due to its superior speed and reliability
SetTitleMatchMode 2 ; Allows for partial matches in window titles

; Commands specific to when Snipping Tool is open
#IfWinActive, Snipping Tool
  $*Shift::
    Send {Shift Down}
    CoordMode, Mouse, Screen
    MouseGetPos, SetX, SetY
    ; clip the cursor to a rectangle that consists just of a line in x-direction
    ClipCursor(true, -1000000, SetY, 1000000, SetY+1)
    KeyWait Shift
  return

  $*Shift Up::
    Send {Shift Up}
    ClipCursor(false, 0, 0, 0, 0) ; unclip the cursor
  return

  ClipCursor(Confine=True, x1=0 , y1=0, x2=1, y2=1)
  {
    VarSetCapacity(R, 16, 0), NumPut(x1, &R+0), NumPut(y1, &R+4), NumPut(x2, &R+8), NumPut(y2, &R+12)
    Return Confine ? DllCall("ClipCursor", UInt, &R) : DllCall("ClipCursor")
  }
#IfWinActive
    
por 10.08.2017 / 18:23
0

A resposta da @HaveSpacesuit não funcionou para mim no Windows 10.

Liberar o Shift não liberou o cursor.

Para corrigir, altere a terceira linha de trás para:

Return Confine ? DllCall( "ClipCursor", UInt,&R ) : DllCall( "ClipCursor", UInt, 0 )

Código inteiro de trabalho:

SendMode Input ; Recommended for new scripts due to its superior speed and reliability
SetTitleMatchMode 2 ; Allows for partial matches in window titles
CoordMode, Mouse, Screen  

; Commands specific to when Snipping Tool is open
#IfWinActive, Snipping Tool
  $*Shift::
    Send {Shift Down}
    MouseGetPos, SetX, SetY
    ClipCursor( true, -10000, SetY, 10000, SetY+1 ) ;clip the cursor to a rectangle that consists just of a line in x-direction
    KeyWait Shift
  return

  $*Shift Up::
    Send {Shift Up}
    ClipCursor( false, 0, 0, 0, 0 ) ; unclip the cursor
  return

  ClipCursor( Confine=True, x1=0 , y1=0, x2=1, y2=1 ) {
    VarSetCapacity(R,16,0),  NumPut(x1,&R+0),NumPut(y1,&R+4),NumPut(x2,&R+8),NumPut(y2,&R+12)
    Return Confine ? DllCall( "ClipCursor", UInt,&R ) : DllCall( "ClipCursor", UInt, 0 )
  }
#IfWinActive
    
por 20.07.2018 / 11:12