If you have ever downloaded free ebooks, product manuals, consumer guides, etc from the web you are aware of PDF files. These files owe much of their popularity to the fact that they can be read on any computer with the free Adobe reader. Also, most word processing programs have the capability of converting a document to PDF format with a mouse click. PDF is the acronym for Portable Document Format, a format created by Adobe Systems for document exchange. I was a passive use until I picked up a copy of “PDF Hacks” by Sid Steward. This book really opened by eyes to the many features of this tool.
The first to interest me was PDFtk, or PDF Tool Kit. This is a set of command line tools available for both windows and linux. With PDFtk the user can select specific pages of a document, rearrange them, combine with other books, and essentially create customized reference documents. As an example, I have the usual collection of ebooks on article writing. By combining my favorite pages from each, I had one handy reference source. I even added my own notes to various sections to tie the material together and document the tips and procedures I had discovered.
For some time I have been using the free open source program Inkscape to create vector graphics. Inkscape has many of the same features as Adobe Illustrator. Sid shows how to use pstoedit to create vector files and embed them in a document.
There is a section on adding web style navigation to your PDF document. Buttons can be used to link to online material. It is easy to style these buttons to get away from the usual gray institutional looking buttons.
Hack #66 shows how to copy protect the PDF document you have created. This is very important because of the ease with which documents are passed around on the web. It is very frustrating to spend a lot of time and research developing a commercial product that has real value for the reader only to find that is being distributed by others as a free document.
I knew that Visual basic could be used to access and manipulate PDFs. What I didn’t know but learned in Hack #95 was that I could do the same thing with perl. Perl is free, well documented, and has an extensive support community. There are many available perl modules to simplify the code for any project.