Annotate PDFs on Linux

This post is about a GUI tool called pdfrankenstein that fills a gap on mostly Linux machines where a powerful and easy to use PDF annotator does not exist.

Adobe Acrobat® on Windows and Mac allow you to add text, drawings and signatures to PDF documents. This is useful when filling forms or marking notes to send back to someone. Such a tool with similar capabilities and easy of use does not exist on Linux. The reason that’s often cited is that PDF is a complex format and creating a general purpose PDF editing tool requires far too much effort than can be expected from an open source project.

Anyone who has looked at PDF standard must agree with the above assessment. However, it is true that tools exist to read and create PDFs on Linux, just not edit them. Inkscape can convert single pages of PDF to SVG documents. qpdf allows you to overlay PDF pages on top of one another. Why not just glue these together unix style and solve this shortcoming?

That is exactly what I did. Not hard to do, just needed to put the puzzle pieces together.

Screenshot of PDFrankenstein tool

The name PDFrankenstein came about when I initially had the idea to run the GUI in the browser, use Ghostscript to get the thumbnails and the background, in addition to Inkscape and qpdf to further process the files. This looked like a horrific patchwork of tools and hence I called it frankenstein. I guess by that logic, any shell script qualifies as well!