Screenshot tools: a quick comparison – by Chris Ward
Chris Ward | January 14, 2021
Tools to help generate screenshots for your documentation
I won’t repeat any famous phrases about how pictures equalling a quantity of words, I think we all understand the potential power of a good visual. Well considered images in documentation can help illustrate a concept, clarify a complex idea, or show a reader what they can expect from undertaking certain steps.
Images help break up page structure and draw a readers eyes to text as they scroll through a page and the images draw their attention.
The challenges with screenshots
The biggest challenge with screenshots is keeping them up to date and thus relevant to readers. This is time consuming, hard to manage and to remember.
Another challenge is capturing a helpful and useful image. It’s relatively easy to take a screenshot, but taking a screenshot that actually supports and supplements text is an art in itself. The same applies for taking clear screenshots. Many people now use high resolution or large screens, and small low resolution images generally appear pixelated and unclear if you capture them on a small or lower resolution screen.
One other aspect to consider is accessibility and automated services. Not all readers of documentation see images, and it’s essential to provide alternative text to describe them, which is another task to remember to undertake and keep up to date and relevant.
Tools to help
Thankfully there are a multitude of tools and approaches to help you overcome these challenges and in this post I summarise some (there are lots of quite similar tools) of the options available to you, and how they help you with the following:
Maintain a library of images
Maintain a style library for images
Any other useful features for documentarians
For each example, I include a small summary, costs, operating system (OS) support, and any standout features.
These are the types of tools you are likely most familiar with and use a graphical interface to help you take and manage images.
macOS/Windows/Linux desktops default
Traditionally macOS had the best option here, with the in-built screenshot shortcuts, settings, QuickTime, and Preview application providing a fairly solid suite of tools for free. This includes the ability to take screenshots (and recordings) of areas, or individual windows. You can then add text, shapes, callouts, magnified sections, crop, and rotate. File organization comes down to using the default Finder functionality such as folders, batch renaming, and tags.
The Windows Snipping / Snip & Sketch tool is catching up, also offering a time delay on capture and a freeform region capture, but no text annotation options, or ability to create a video capture of a screen. Again, file organization is down to in-built Windows explorer features.
Linux depends somewhat on your distribution, but the most popular are Gnome screenshot which allows you to capture a window or region, delay capture, and a handful of other effect options. Annotating the image up to other applications of your choice. Shutter is another popular choice, with a lot more options for file name generation, selection tools, annotation options, a plugin ecosystem, and a wide selection of remote import and export options. For KDE desktop users, the inbuilt option is Spectacle, which is similar to the Gnome screenshot tool.
Automatic Screenshotter ($ Donation)
Windows only, but Automatic Screenshotter is an interesting and different option that takes regular screenshots of your screen, or certain applications in the background. This can make it potentially useful for support purposes when trying to debug what causes a user problems, or if you’re experimenting with an application, and aren’t sure what screenshots are needed yet.
Another Linux-only option that provides a screen overlay for capturing an area of the screen, and provides a standard suite of annotation tools. You can also use flameshot via the command line, but it still opens the graphical user interface.
A different sort of screenshooting tool, but as many of you may deal with code examples, and it’s a popular choice right now, it seemed worthwhile including it.
Carbon has one purpose, to generate attractive and shareable images from code snippets. This might seem an odd use case to many of you, but it has become popular on blogs like Medium or dev.to, or on Twitter where it’s easier to include than rely on the platform’s editor, and it offers a variety of ways to share the code snippet that degrade gracefully from embeddable to a plain image and link if it doesn’t support Carbon.
Snagit ($ varies)
Technical writers looking for a “next level” option for screenshots often turn to Snagit. In addition to the features the operating system default tools offer, it includes features that let you create animated gifs, combine images into steps, create styles, add audio tracks to videos created by images, simplify images down to abstracted elements, and much more. You can also organise images and recordings in Snagit with folders, tags, and by application. It works on Windows and macOS (with slightly different features for each platform), and pricing is within reach of any professional tech writer, or their employer.
If you use a Mac, and want to make animated gifs, then Gifox is a beautifully designed menu bar application that offers a quick way to generate animated gifs of your screen, or an area of it. It has configuration for quality, and a variety of sharing options. Before I started using Snagit, I used to use it all the time.
Curiously only available for Windows and Linux (macOS coming “soon”), ScreenRec is aimed mostly at internal communication, and creating a library of resources to answer common questions people asked. It has a simple interface, and allows you to take a screenshot or a recording (plus a webcam overlay and sound) and then share a link to it. It’s not clear how ScreenRec makes any money (the application is free), and the website seems keen to emphasis repeatedly that it’s not malware, so make of that what you will.
Available for macOS and Windows, the developer hasn’t updated Lightshot in about a year, and is broken on some platforms. If it works for you, it offers mostly the same features as the operating system default tools, with the intriguing extra ability to annotate the screen before you take the screenshot.
Screenspresso ($ Varies)
Only available for Windows, Screenspresso is another tool that positions itself in the support department. It integrates with the time honoured “print screen” button and allows you to capture scrolling screenshots, toggle the mouse cursor, record video, add text and annotations, share images, generate documents, and also capture screenshots from connected Android devices.
PicPick ($ Varies)
Another Windows-only option, PicPick is similar in feature set to Screenspresso, lacking the Android screen capture and document export, but adding rulers and protractors for measuring, and a virtual whiteboard feature for presentations.
Your note taking application ($ Varies)
Tools like Evernote, OneNote, and Apple notes all have respectable screenshot taking, organization, and annotation tools that may suit your needs if they are already part of your regular workflow. They also bring the added advantage of optical character recognition, so you can search images for text if that’s a useful feature for you.
Another Windows-only option, but open source, ShareX supports image, scrolling image, gif and video capture as well as optical character recognition. It supports a wide array of annotation tools, and a wide array of sharing destinations Where ShareX adds unique functionality is its highly customizable after capture tasks that you can use to edit and share images in a particular way to suit your own workflows.
For the more adventurous who want to avoid constantly updating screenshots every time an interface or output changes, there are options for fully automating screenshot generation. They generally require programming or scripting knowledge, and collaboration with a testing or QA team, but can be worth the long term time saving.
Similar to other options in this section, Robots framework is designed for test and process automation, and with the right combination of dependencies and configuration, it can generate screenshots from web applications. This does require some scripting and continuous integration (a process development teams use to test and build software) to get it working to your full advantage. This process could be complex depending on your setup, and involve a lot of initial setup for time saving return over time. Here’s a getting started guide to get you started.
ImageMagick is a classic open source tool that lets you create, edit, and convert images, chances are you have used it as part of other applications without even realising. Much like Robots framework, with some setup and coding, you can use it to generate and manipulate screenshots in a wide variety of ways. The instructions for doing this vary wildly depending on your operating system, but some focussed searching, or a friendly Linux guru might be able to help you.
Linux and command line only, maim can generate screenshots of your whole screen, or portions of the screen. With some rethinking, if you are building cross-platform software that includes Linux versions, you could use maim to automatically generate screenshots for the Linux versions of documentation.
If you have basic needs, then your operating system default tool might be enough. Snagit is a good all-rounder for mixed Windows and macOS businesses, and if you're Windows or Linux only, then the choice becomes a little harder. For those wanting to automate screenshot generation, I highly recommend investing time in learning Robots framework.
What about you? What tools do you use and recommend for creating and managing screenshots.