Complexities of the PDF Format

Our team rewrote all our reports this past year. We used to use a heavy Oracle reports client. However we ended up converting that code to C++ and stored procedures. We briefly considered using the PDF format for output. However we ended up choosing Microsoft Word format instead. One reason for this decision was the difficulty in producing PDF documents.

PDF is an important format for businesses. It became an ISO standard in 2009. The PDF specification has changed significantly over the years. A few years back the changes broke backward compatibility. There are files out there using many different versions of the PDF specification. Most do not use functionality from the latest version of the PDF spec.

The PDF specification is complicated. PDF file generation is not an easy. It is very difficult to create a PDF in a single pass. There are tool kits that assist with PDF file creation. Some tool kits are free. Developers need to know pagination to do PDF file generation.

There are multiple new PDF standards coming up in the near future. PDF/E is a standard for storing complex engineering documents. PDF/A is a stripped down version used for archiving. PDF/E-2 builds upon PDF/A, adding support for 3D objects. And PDF/UA allows documents to be read by screen readers. This enables persons with disabilities to read PDF documents.

I wish our team would have had the chance to use PDF on our project. Maybe next time.