Chapter 1. About this Documentation

Who Should Read it

This documentation is written for members of the quality assurance staff who have to test PDF documents but who are not Java programmers.

We assume that you have some knowledge of and experience with XML. And having a basic understanding of test automation is helpful, but not required.

Code Examples

A demo project containing many examples is available here:


An XML Schema exists to validate PDFUnit. It's documentation is available online:

Other Programming Languages

PDFUnit is available not only for XML, but also for Java and Perl. An implementation in CSharp is still in progress. Separate documentation exists for each language.

If there are Problems

If you have problems to test a PDF, please search for a similar problem in the internet. Maybe, you find a solution. Finally, you are invited to write to problem[at] and describe the problem. We'll try to help you.

New Features Wanted?

Do you need other test functions? Please feel free to send your requirements to You are invited to influence the further development of PDFUnit.


Some examples in this book use PDF documents from the web. For legal reasons I make clear that I dissociate myself from their content, for instance I can not read Chinese. These documents support tests, for which I could not create my own test documents, e.g. the Chinese PDF documents.


Axel Miesen developed the Perl-API of PDFUnit and during that time he asked a lot of questions about the Java API. PDFUnit Java has profitted greatly from his input. Thank you, Axel.

Unfortunately, my English is not as good as I would like. But my colleague John Boyd-Rainey read the first version of this English documentation and corrected a huge number of misplaced commas and other typical errors. Thank you, John, for your perseverance and thoroughness. However, all remaining errors are my fault. He also asked critical questions which helped me to sharpen some descriptions.

Bruno Lowagie, the founder of iText, read this documentation and sent me critical remarks about some chapters. His deep knowledge of PDF was a great help for me. Thank you, Bruno.

Production of this Documentation

This documentation was created with DocBook-XML and both PDF and HTML are generated from one text source. It is well known that the layout can be improved in both formats, e.g. the pagebreaks in PDF format. And improving the layout is already on my to-do list, but there are other tasks with higher priority.


Any kind of feedback is welcomed. Please write to feedback[at]