I sometimes would like to have my cursor appear as crosshair lines going across the full screen (one vertical line, one horizontal line). I need it because I often look at statistical plots and would like to be able to quickly read an approximate value for a given point.
Is there a simple way of achieving this?
My current system: Ubuntu 16.04 LTS, with Unity.
There was a similar question a couple years ago.
The accept answer has four recommendations:
Best Choice
All four should be investigated but the third suggestion leads to a promising app: Zoom Options Dialog (Universal Access):
Figure 2. Zoom Options Dialog showing the "Crosshairs" Tab.
Crosshairs Switch
The switch labelled Crosshairs toggles the display of crosshairs.
Overlaps mouse cursor
When the Overlaps mouse cursor checkbox is checked, the crosshairs intersect the mouse pointer. When unchecked, the crosshairs end before intersecting the mouse cursor.
Thickness
The Thickness slider determines the width of the crosshairs. The range is from 1 to 100 pixels.
Length
The Length slider determines the length of the crosshairs. The range is from very short, through fractions of the size of the screen, to a length that extends to the edges of the screen.
Color
The color button launches a color chooser dialog to set the color and transparency of the crosshairs.
Step by step instructions
Step by step instructions (using Gnome 2.2) were written by the BBC (British Broadcasting Corporation).
Here are a couple of screenshots accompanying the instructions from that site:
Ubuntu Wiki has instructions for installing Orca for Unity and Gnome desktop environments here. However Unity DOES NOT have the Assistive Technology features for Magnifier and Cross Hairs. You MUST use Gnome DE for these features. Source.
Zoom Options Dialog is part of the ÆGIS (Ontario) Project. It is funded and supported by the Ontario Ministry of Economic Development and Innovation and the ÆGIS (Europe) Project. You can also check these websites for more instructions.
This is not exactly what you asked but you can use
screenruler
.Which is a ruler that you can move on your screen to measure things in pixels. You can rotate it of 90°.
So this is a "manual" method, but you will have what you asked, being able to look for values on plot, but to get both x and y values, you will have to manually rotate the ruler.
Open it in your favourite image presentation app, or possiblyUsedisplay crosshair.png
(display is part of ImageMagick,sudo apt install imagemagick
to install it).qiv -p YourImage.png
to display the image above your other windows.display
worked but not as well.Now, bring the image to the foreground by clicking to maximise the window; hide by minimising. Move the image with Alt+mouse. If you get a checkerboard instead of transparency make sure you have compositing enabled in your WM, and that you used the -p flag when launching
qiv
.The image: my screen is 1650x1080 so I should use an image that is 3301x2161 this way I have a full screen in each quadrant separated by a 1px crosshair. (Probably you want to make it double that, and have a 3px crosshair to account for anti-aliasing; it can be greyscale and filesize should compress to virtually nothing?)
I made my image as a 96dpi (my screen resolution) PNG, in
inkscape
, with a 3px wide crosshair at 80% opacity.Works for me. You could make a shortcut to open the image (running
qiv -p /path/to/image
). You could also add a pixel scale for measuring.In use:
PNG file:
If you familiar to create themes and cursors you can try do that. For example, create transparent png file bigger than possible screen resolution x4 times. Then draw in on the middle vertical one-two pixel line and same width horizontal crossing line. Should get something like a huge and thin plus sign "+". Then need to "export" it like cursor file with target in center. If your current dist have no restriction on cursor resolution must work.