libHaru
{{Infobox software
| name = libHaru
| logo = Haru small.png
| latest release version = 2.4.4
| latest release date = 2023-09-18
| latest preview version = 2.4.2
| latest preview date = 2022-11-09
| programming language = ANSI C
| operating system = Cross-platform
| genre = Software Library
| license = ZLIB/LIBPNG Licence
| website = {{URL|libharu.org}}
}}
libHaru is a free, open-source, cross platform library for generating PDF files for applications written in C or C++.[http://libharu.org/ libHaru][http://libharu.sourceforge.net/ libHaru on SourceForge.net]{{cite web |url=https://stackoverflow.com/questions/58730/open-source-pdf-library-for-c-c-application |title=Open source PDF library for C/C++ application? |accessdate=2010-01-20}}
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++[http://pocoproject.org/blog/?p=117 PocoPDF]
- C#
- Delphi
- FreeBASIC
- Free Pascal
- Python
- Ruby
- Visual Basic
- PHP[http://pecl.php.net/haru Binding for PHP]
- Perl[http://search.cpan.org/~butilw/PDF-Haru-1.00/lib/PDF/Haru.pm Binding for PERL]
- Lua[http://luahpdf.colloquiki.com/ LuaHPDF - binding for Lua]
- JavaScript[https://github.com/manuels/hpdf.js hpdf.js]