Nyctergatis PDF Writer (NPW) - C library to write simple PDF files.
The main goal of NPW is simplicity, to the cost of completeness. PDF files are more difficult to write than Postscript files, because they require cross-reference tables and the computation of file offsets.
NPW is made of a base set of functions and data structures, NPWBase, which can be used as a wrapper around the graphics and text commands which define page contents. NPWGraphics provides support for most of the graphical and textual PDF commands. NPWText adds support for text layout based on font metrics, including wordwrap and text flow across multiple rectangles and pages, with optional support for markup to have multiple character styles and paragraph formats; NPWTextMarkup implements such a markup. NPWInfo adds support for information metadata such as author and creation date.