Windows snipping tool highlight straight

Windows snipping tool doesn't have any way to let us draw straight lines by pressing Shift. Windows Ink Workspace is another tool that supports snipping and drawing the snipped portion. It has a virtual ruler that helps us to draw straight lines.


To enable Windows Ink Workspace

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.

To launch the workspace, click or tap the pen-shaped Windows Ink Workspace icon that appears in your notification area.

Icon in the notification area


Tap the "Screen sketch" block. It will be the third block in the list. It will automatically take a screenshot of your display and load it for your sketching.

Screen Sketch in Windows Ink Workspace


Navigate to the pen bar at the top right of the screen.


Select the ruler icon. This looks like a diagonal ruler.


Place the mouse on top of the ruler and use mouse scroll wheel to rotate and position the ruler.


Use the pen to draw a highlighted line above the ruler, this line will automatically be aligned to the direction and position of the ruler.

Image showing how to position the ruler


Sample Sketch A sample sketch


Hope this helps.

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


User 3DWizard has a nice AutoHotKey script which I slightly modified to helped me solve this problem. Hold Shift inside the Snipping Tool window to restrict the mouse to horizontal movement.

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

I found a Windows tool called Snip & Sketch. This tool provides a Highlighter: enter image description here