LibHaru

libHaru is a free, open-source, cross platform library for generating PDF files for applications written in C or C++. It is not intended for reading and editing existing PDF files.

It supports the following features:
 * Generating PDF files with lines, text, images.
 * Outline, text annotation, link annotation.
 * Compressing document with deflate-decode.
 * Embedding PNG, Jpeg images.
 * Embedding Type1 font and TrueType font.
 * Creating encrypted PDF files.
 * Using various character sets (ISO8859-1~16, MS CP1250~8, KOI8-R).
 * Supporting CJK fonts and encodings.

Supporting compilers and programming languages
libHaru is written in ANSI C and should compile easily with any compliant C compiler.

It tested in the following environment:
 * Cygwin + GCC (Microsoft Windows).
 * Cygwin + MinGW (Microsoft Windows).
 * Microsoft VC++ (Microsoft Windows).
 * Borland C++ (Microsoft Windows).
 * GCC (Linux, FreeBSD, NetBSD, Solaris, MorphOS...).

libHaru can be used as a static library or as a dynamic library.

When you use it as static-library, it can be used by C and a C++. But when you use it as shared-library, it can be used by many development languages which support shared library.

libharu provides bindings for programming languages:
 * C++
 * C#
 * Delphi
 * FreeBASIC
 * Free Pascal
 * Python
 * Ruby
 * Visual Basic
 * PHP
 * Perl
 * Lua
 * JavaScript