Portable Document Format (PDF) is a file format created by Adobe Systems in 1993 for document exchange. The format includes a subset of the PostScript page description programming language, a font-embedding system, and a structural storage system.
Over the years PDF has become an extremely important file format. If you want to create documents that can be viewed under all major operating systems, PDF is the ticket, as it maintains the overall look and feel of documents regardless of what platform they are viewed under.
There is a large range of PDF-related software available with many different applications available that can both output to and open files. Many open source software save documents to this format such as LibreOffice and GIMP.
The purpose of this article is to recommend free and open source PDF development libraries. We are not considering PDF editors, PDF viewers, tools that add an OCR layer to PDF files here. This is because these categories are covered by other articles in our Best Free and Open Source series.
Here’s our verdict on the finest PDF libraries captured in a legendary LinuxLinks-style ratings chart. Only free and open source software is eligible for inclusion here.
Click the links in the table below to learn about each library.
PDF Development Libraries | |
---|---|
TCPDF | PHP class for generating PDF documents |
PDFBox | Create, render, print, split, merge, alter, verify and extract text and metadata |
Poppler | Library for rendering PDF files, and examining or modifying their structure |
Apache FOP | Print formatter driven by XSL formatting objects |
PDFKit | PDF document generation library for Node and the browser |
QPDF | Library and programs that inspect and manipulate the structure of PDF files |
PoDoFo | Parse PDF files and modify their contents into memory |
xhtml2pdf | HTML to PDF converter using Python |
OpenPDF | Library for creating and editing PDF files; fork of iText |
libHaru | Library for generating PDFs |
pdf-lib | Create and modify PDF documents in a JavaScript environment |
JasperReports | Reporting engine written in Java |
CapyPDF | Fully color managed PDF generation library |
PDFio | PDF read/write library |
PDFsharp | .NET library for processing PDF files |
CamlPDF | OCaml library for reading, writing and modifying PDF files |
This article has been revamped in line with our recent announcement.
Read our complete collection of recommended free and open source software. Our curated compilation covers all categories of software. The software collection forms part of our series of informative articles for Linux enthusiasts. There are hundreds of in-depth reviews, open source alternatives to proprietary software from large corporations like Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. There are also fun things to try, hardware, free programming books and tutorials, and much more. |
Hey there You have done a fantastic job I will certainly digg it and personally recommend to my friends Im confident theyll be benefited from this site
You included Apache FOP and JasperReports. Only thing related to PDF in these libs are these can generate output as PDF, like most other modern libs that can export file.
Instead, you can include many other great PDF libs like following:
– QPDF
– PDFsharp
– CapyPDF
– OCRmyPDF
This comment was received as an email. We prefer comments of this nature to be posted direct to the site.
Thanks for posting the email.
You should add PDFjet, PDFsharp and PDFKit to the list.
Thanks Tarek, we’ll take a look at them.
I’m not exactly sure how I got here, but I thought this post was fantastic. I don’t know who you are, but if you’re not already, you’re going to be a well-known blogger. Cheers.