135

Often I need to annotate (draw some arrows, lines, basic shapes like squares, ellipses etc and enter some text) on top of pictures (JPG, PNG images) and screenshots (again png images). I would also need to be able to crop, resize etc.

I tried the Gimp but I could only enter text and perform all image transformations but couldn't find a way to draw boxes etc.

I finally settled to Openoffice.org draw, but I know that isn't what I want, because in oodraw I need to insert my pic into a drawing and resize it (or the drawing) to fit and then go about making changes and finally export to png...

Is there any image editor that allows adding shapes and text to jpg & png files and save the modified file in its place? If the tool can also have template collections (like dia does) for shapes that is an added bonus.

Braiam
  • 69,112
koushik
  • 5,132

15 Answers15

119

Warning: Shutter is severely broken in Ubuntu 18.04 and was briefly dropped from Ubuntu for some releases, but it is now available again in 22.04 and newer.

Shutter (which you can install from the Ubuntu Software Centre or sudo apt-get install shutter) is a tool which has a variety of options for taking and annotating screenshots. (Note: You can annotate any images of your choice, not just screenshots.)

Shutter example screenshot

muru
  • 207,228
8128
  • 28,868
72

Flameshot

It comes with some cool annotation features like Freehand drawing, Lines, Arrows, Boxes, Circles, Highlighting, Blur, etc. It also comes with many on-screen buttons as well lots of customization options.

enter image description here

Its written with QT/C++ and it's very easy to install in Ubuntu(18.04+).

apt install flameshot

You can also try to compile for older versions.

0xC0000022L
  • 5,870
25

Ksnip

Because I run KDE using GTK themed apps like Shutter is not ideal. After doing some research I settled on ksnip as a screenshot tool. It has pretty much everything you asked for (if you need to crop, just do it by taking another screenshot).

ksnip screen shot of a ksnip screen shot

Install

You can install ksnip buy downloading the .deb packages here https://github.com/DamirPorobic/ksnip/releases

or check if it's already in your version of Ubuntu's repository vi apt:

$ sudo apt install ksnip

Or via snap:

$ sudo snap install ksnip

Build and install from source

$ sudo apt install g++ build-essential \
libqt5core5a libqt5dbus5 libqt5gui5 \
libqt5network5 libqt5svg5-dev libqt5widgets5 \
libqt5x11extras5-dev qt5-default qt5-qmake \
qttools5-dev qttools5-dev-tools \
cmake cmake-extras extra-cmake-modules

$ git clone https://github.com/ksnip/kColorPicker $ cd kColorPicker/ $ mkdir build && cd build $ cmake .. && make $ sudo make install

$ git clone https://github.com/ksnip/kImageAnnotator $ cd kImageAnnotator/ $ mkdir build && cd build $ cmake .. && make $ sudo make install

$ git clone https://github.com/ksnip/ksnip $ mkdir build && cd build $ cmake .. && make $ sudo make install

virtualxtc
  • 3,324
13

I would use Inkscape

(that can be installed from the Ubuntu Software Centre or sudo apt install inkscape).

Install via the software center

enter image description here You will need to right click the image, select Open WithOther Application… and chose Inkscape from the list. After you have done this the first time, you can just Right Mouse ClickOpen WithInkscape.

This will import the image into Inkscape and the page will be sized to fit the image. You can then make your annotations.

To save it, you need to use FileExport Bitmap, click Browse… and chose your original image.

Glorfindel
  • 975
  • 3
  • 15
  • 21
dv3500ea
  • 37,734
9

You also might want to try GnuPaint or Krita. Not sure if it's exactly what you're looking for, but they might work for you. Both are in the Software Center.

GnuPaint

enter image description here

Krita

enter image description here

Suhaib
  • 4,171
gamerchick02
  • 1,702
8

On Ubuntu (or Linux Mint), try Kolourpaint. It's easy to use and has the features you describe.

enter image description here

Install via the software center

kupitt
  • 89
5

I use LibreOffice impress https://www.libreoffice.org/discover/impress/ for annotations.

Just copy paste the image into the slide and add all the shapes and text which will serve as annotations. Then export to any of many available formats, like JPEG, PDF, etc.

Annotating with Impress keeps "annotations" as a separate layer allowing you to edit them at any time. On the other hand, if you annotate with, say, Shutter editing tool, once you saved the image with the annotations, you cannot undo the changes (you'll need to re-annotate the entire image from the initial state or use eraser tool to make corrections to existing annotations).

rlib
  • 159
  • 1
  • 3
4

If you want to stay in gimp, you can add boxes and circles/ellipses. Use the rectangle or ellipse selection tool, and when you have the marching ants, on the main menu click Edit/Stroke Selection, then make your line style choice.

There are gimp plug ins to do arrows (that I have not tried), however it took only a few minutes to find a clip art site, copy an arrow image, convert it to a transparent-background gif using these directions, and add it as a new layer to the image. The arrow layer can be moved, rotated, scaled, colored, etc.

Glorfindel
  • 975
  • 3
  • 15
  • 21
W_Whalley
  • 197
3

Xournal++ is the tool for freehand note taking or annotating pdf files, or anything you cut and paste in your document(text, graphics). I use Xournal++ in combination with a stylus for true free hand input as my goto tool when giving lectures online. This allows me to use any reference material as a background such as pdf documents or images and add annotations in real time while explaining the subject at hand.

Install using snap, more installation options here.

sudo snap install xournalpp

Here is an example screenshot from Xournal++ website

Xournalpp demo

elomage
  • 1,400
2

You can use firefox or Chrome web browser to do this. On firefox you have to install fireshot addon and on chrome "screen capture"

https://​addons.mozilla.org/en-US/firefox/​addon/​fireshot

Unfortunately fireshot works on Windows only. Here's a list of such addons. Please test them on your own. https://addons.mozilla.org/en-US/firefox/search/?q=screen+grab&appver=11.0&platform=linux

Screen Capture will do on Chrome

https://chrome.google.com/webstore/detail/cpngackimfmofbokmjmljamhdncknpmg
2

Annotator lets you add shapes (circles, arrows, etc), counters, highlight specific areas with a magnification tool, etc. It also supports exporting in a variety of formats (BMP, JPEG, SVG, TIFF, PDF and PNG).

You can install it from its PPA:

sudo add-apt-repository ppa:ubuntuhandbook1/annotator
sudo apt update
sudo apt install com.github.phase1geo.annotator
mivk
  • 5,811
1

No one is talking about Image Magick. It is the simplest and the fastest app with one of the goals of is to make annotations.

It can be installed by sudo apt install imagemagick and launch the GUI from the search activity (dash). Here is the screenshot.

Example of annotation with ImageMagick

sugab
  • 4,417
1

You can use Pixtick. Web tool, no installation required and free. http://www.pixtick.com

D Bri
  • 19
  • 1
0

You can take a look here, u'll find a lot of funny chrome extensions:

https://chrome.google.com/webstore/search-extensions/screenshot?hl=en-US

And this articile talks about some others:

http://www.hongkiat.com/blog/top-web-annotation-and-markup-tools/

hadibou
  • 101