Small always-on-top screen ruler for measuring on-screen distances.
Current version: v1.1.0
- Frameless ruler window that stays on top.
- Resize from edges and corners.
- Drag to move the ruler (LMB in the center area, or MMB from anywhere).
- Hold Ctrl to snap when moving or resizing.
- Snap to screen edges by default when moving or resizing (hold Shift to disable).
- Right-click measure mode shows crosshair lines and live X/Y distance from the window origin.
- Set exact position/size.
- Light/dark color inversion and transparency toggle.
- Aspect ratio lock.
- Unit toggle for measurements (px, cm, inches).
- Copy current ruler dimensions to clipboard.
- Screenshot capture of the screen area behind the ruler.
- Clickthrough mode to interact with apps behind the ruler.
Right Click: Measuring modeQorCtrl+Q: QuitCtrl(hold): Snap move/resize to medium tick spacing (10px, 0.5cm, 0.25in)Ctrl+C: Copy current dimensions to clipboardShift(hold): Disable screen-edge snapS: Set exact position and sizeT: Toggle transparencyI: Toggle light/dark colorsF: Flip axes (swap width/height)R: Reset to defaultsL: Toggle aspect ratio lockU: Toggle measurement units (px, cm, in)G: Toggle full-window grid from tick marksC: Toggle clickthrough modeCtrl+S: Save screenshot of area behind rulerF1orH: Open help
- Python 3.11+
- PyQt6
- Nuitka (for building release executable)
Install dependencies:
pip install -r requirements.txtpy -3.11 screen_ruler.pyOr use:
launch_screen_ruler.bat
make.bat-
This builds a standalone Windows executable with Nuitka and creates a zip you can upload directly to GitHub Releases:
-
build/release/Compact-Screen-Ruler-v1.0.0-win64.zip