The default screenshot tool in Ubuntu is alright for basic snips but if you want a really good one you need to install a third-party screenshot app.
Shutter is probably my favorite, but I decided to give Flameshot a try. Packages are available for various distributions including Ubuntu, Arch, openSuse and Debian. You find installation instructions on the official project website.
The app sits in the system tray and can be accessed with a double-click. You can use it to capture the on-screen content drawing a rectanglular area and letting go of the mouse just like you do in most screenshot apps.
Global keyboard shortcuts are not set up by default but you find a configuration file to enable them on KDE Plasma desktop. Once set up, you may use the Print key to take a full screenshot or Shift-Print to take fullscreen captures of all monitors.
Once you have captured part or all of the screen you will see the built-in editor of Flameshot which displays the screenshot’s content. There is a toolbar at the bottom of the screen, which has the following tools: Pencil, Line, Arrow, Selection, Rectangle, Circle, Marker, Blur, Move, Undo, Copy, Save, Leave, Upload to imgur and Open the capture in another app.
The blur tool is priceless when you have to redact information from a screenshot. The arrow/marker and rectangle tools are also useful for creating tutorial images.
You can view the dimensions of the selection right on the Flameshot toolbar. The copy option saves the screenshot to the clipboard which you can paste in another app to edit, or share.
The upload to imgur option saves the screenshot anonymously and displays three options: Copy url, open url and image to clipboard.
The color of the paint tool can be changed while editing a screenshot by holding the right mouse button. Doing sot displays a color wheel to pick another color; this can be useful if you want a different color for each element that you add to a screenshot. For e.g. you can use 1 color for arrows, another one for the marker and yet another for the rectangle. You can use the mouse-wheel to change the paint brush’s thickness as well.
Depending on the selection size (screenshot area), the toolbar arranges the icons partially at the sides (for smaller snips) or at the bottom (for larger snips). Flameshot saves the screenshots in the PNG format, but you can manually save them in JPG, BMP, etc.
Right-click on the taskbar icon to access the app’s configuration menu. You can use it to manage any of the buttons that are available in the editor’s interface. It also has options to change the color of the buttons and to set the opacity of the area outside the screenshot.
The only other options that I found useful were in the filename editor. Flameshot saves snips using the name “screenshot” by default but you can set a custom name from the filename editor. It also has many time-stamp options that can be added to the filename.
Flameshot is impressive at what it does, and is very user-friendly. It kind of reminds me of ScreenPresso in many ways. Though the editing options in Flameshot are amazing, you can’t edit existing images using the application.
There are only 2 areas where Flameshot lacks behind: it cannot capture screenshots by selecting a window and there is no option for delayed screenshots other than using the global shortcuts configuration file as it unlocks an option to capture a screenshot with a 3-second delay.
But I think you can workaround these by using the built-in screenshot tool in Ubuntu. The program is also available for Windows but it is still in early beta.