- Of course there's the well-known Adobe product Acrobat Reader, but I found a couple of other free readers for Windows (TM) that each have some useful features.
- Foxit Reader. None of the bloat, so much faster it's a joy to use.
- PDF XChange Viewer. Not as sprightly as Foxit, but superb options for adding annotations, highlights, notes, balloons, etc., etc.
I wanted to automate some things and found pdftk. FLOSS for Windows & Linux. A fabulous little command line tool with features such as splitting out pages. Recommended.
For Developers (PC)
iText is a mature Java library for manipulating .pdf's that I've found very useful and is the basis of pdftk. There's also a port to C# called iTextSharp.
For Developers (AS/400 or whatever it's called this week)
A series of articles by Giuseppe Costagliola (a.k.a. Beppe Costa) came in incredibly useful. These were in bite sized chunks, so I was able to try out & understand a technique before developing it further. His series of articles start with straight RPG, move through some C, and on to Java techniques.
Also useful was Jean-Paul Lamontre's Toolbox.
If you want to know how to write out .pdf files in your own programs you'll need the Adobe .pdf Reference - but it's very hard going. Find some examples out there on t'internet, or use something like iText. Trust me, it's a lot easier.