17 Mar 2009

My PDF Toolbox (Updated)

Posted by khk

What tools am I using to create/process/debug PDF documents? Here is list of my top tools and why I like them.

Adobe Acrobat Pro


This of course is the mother ship, the ultimate tool for creating, processing, editing PDF documents. It’s the solution to problems you did not even know you had… Most people only use a small fraction of the features that Acrobat provides. It’s not cheap, but if you require any of the features that no other tool provides, it’s worth it.

Here are a few tasks that I use Acrobat for:


  • Create

  • If you want the best quality PDF document, how can you go wrong with the Distiller from the people who invented PDF? There are many ways to create PDF files, but for high quality press work, I would not trust any other application.
  • Edit and Process

  • Optimize, preflight, manage colors, insert pages, extract pages, remove pages, change page boxes, create interactive forms… Do I need to say more? Pretty much anything that’s possible with a PDF document can be done with Acrobat. Sure, there are other tools that can do some of these tasks as well, but there is no other tool that covers the broad range of features available in Acrobat.
  • Debug

  • The preflight tool allows to check for syntax errors in PDF files, traverse the internal structure of PDF documents, look at fonts, …
  • Programming

  • I also write software for Acrobat. That’s either done as a plug-in or as JavaScript, for demo purposes I occasionally also write sample VB programs that utilize Acrobat’s Inter-application Communication API.

Adobe Reader


This one is pretty straight forward: I use it to make sure that PDFs created in Adobe Acrobat work correctly when opened in a web browser or directly in Reader. Especially when dealing with forms submission or electronic comments, it is necessary to make sure that Reader behaves correctly.

Ghostscript


Oftentimes it is beneficial to have a non-Adobe PDF renderer. When a PDF file is not behaving correctly, I run the file through Ghostscript to see if it fails in the same way, or if I can get more detailed error messages out of that application. The error messages Acrobat provides are not very verbose, Ghostscript can give me a stack dump, and if necessary I can even run it in the debugger to figure out exactly what’s going on.

XPDF


The same reasons I gave for Ghostscript also apply to XPDF. In addition to that, XPDF also comes with a bunch of tools to extract text or images from a PDF file. Sometimes that functionality comes in handy.

iText


This is a very powerful PDF library for Java. In addition to being very powerful, it’s also relatively easy to use. I have not done anything serious in Java in years (a decade?), but it does not take me long to take iText and whip something up that can almost perform miracles with PDF files. There is also a .NET port available as iTextSharp.

pdftk


pdftk is an application that’s based on iText. Sid Steward took the iText Java source code and run it through a compiler to create a native binary for Windows, Mac OS and Linux. Because of that, pdftk does not require Java anymore. All that’s needed is a supported operating system.

It is a tool to do a number of things with PDF files (concatenate files, break a multi-page file into individual page documents, flatten forms, …). Take a look at the page that lits pdftk sample command lines to learn more about what is supported.

There is a small problem with pdftk: It’s no longer supported, and it cannot handle PDF files that use some of the newer PDF features. Also, there are (at least) two versions that are currently getting distributed: Get the newest one from http://www.pdfhacks.com/pdftk and not the one from AccessPDF. (Update: Both links now have the same version).

Mac OS X


Yes, the Mac operating system does provide some PDF related tools. There is the Preview.app application to display and manipulate PDF files, and there is the “Save as PDF” feature built into the print dialog. Not only can you save “normal” PDF files with just one mouse click, you can create press standards conform PDF/X files.

Enfocus Browser


The Enfocus Browser is two things:

  • An Acrobat plug-in

  • A standalone application


And, it’s these two things for two operating systems: Windows and Mac OS. This tool is indispensable when you are working with the structure of a PDF file. Enfocus released version three of this tool a while ago. I mentioned this tool a couple of times already on my blog:

My Favorite Acrobat 8 Feature

The Enfocus Browser is Back

One of the best features of the Browser is that it allows you to actually modify the PDF structure, however, you better hold back on that until you’ve read the PDF spec a couple of times. It’s very easy to break a PDF file by making just a few changes.

One of the biggest advantages of the standalone version is that I can look at a PDF file that may not open in Acrobat and find out why.

There are a number of other applications that I don’t user personally, but that I do recommend to others because I know how good these apps are. More about that in a future post.

Leave a Reply

Message: