Poppler (software) explained

Poppler
Developer:freedesktop.org
Genre:Library
License:GPLv2 or GPLv3[1]
Latest Release Version:
Operating System:Linux, Unix, BSD, Windows
Programming Language:C++

Poppler is a free and open-source software library for rendering Portable Document Format (PDF) documents. Its development is supported by freedesktop.org. Commonly used on Linux systems, it powers the PDF viewers of the GNOME and KDE desktop environments.

History

The project was started by Kristian Høgsberg with two goals:[2] to provide PDF rendering functionality as a shared library, to centralize maintenance effort and to go beyond the goals of Xpdf, and to integrate with functionality provided by modern operating systems.

By the version 0.18 release in 2011, the poppler library represented a complete implementation of ISO 32000-1,[3] the PDF format standard, and was the first major free PDF library to support its forms (only Acroforms but not full XFA forms) and annotations features.[3]

Poppler is a fork of Xpdf-3.0, a PDF file viewer developed by Derek Noonburg of Glyph and Cog, LLC.[2] [4]

The name Poppler comes from the animated series Futurama episode "The Problem with Popplers."[4]

Applications

Notable free software applications using Poppler to render PDF documents include:[5]

ApplicationGUI widgets
EvinceGTK
InkscapeGTK
LibreOffice 4.xGTK[6]
OkularQt
pdftotext, pdftohtml, etc.none
TeXstudioQt
TeXworksQt
xpoppleMotif
ZathuraGTK

Features

Poppler can use two back-ends for drawing PDF documents, Cairo and Splash. Its features may depend on which back-end it employs. A third back-end based on Qt4's painting framework "Arthur", is available, but is incomplete and no longer under active development.[7] Bindings exist for Glib and Qt5, that provide interfaces to the Poppler backends, although the Qt5 bindings support only the Splash and Arthur backends. There is a patchset available to add support for the Cairo backend to the Qt5 bindings,[8] but the Poppler project does not currently wish to integrate the feature into the library proper.[9]

Some characteristics of the back-ends include:

Poppler comes with a text-rendering back-end as well, which can be invoked from the command line utility pdftotext. It is useful for searching for strings in PDFs from the command line, using the utility [[grep]], for instance.[10]

Example:pdftotext file.pdf - | grep string

Poppler partially supports annotations and Acroforms. It does not support JavaScript[11] nor the rendering of full XFA forms.

poppler-utils

poppler-utils is a collection of command-line utilities built on Poppler's library API, to manage PDF and extract contents:

See also

References

External links

Notes and References

  1. Web site: Poppler README-XPDF . 2015-09-26.
  2. Web site: Poppler README file. 2010-01-21. https://archive.today/20120708175702/http://cgit.freedesktop.org/poppler/poppler/tree/README. 2012-07-08. dead.
  3. Web site: GNU PDF project leaves FSF High Priority Projects list; mission complete! . October 6, 2011. 2011-10-11 .
  4. Web site: Poppler Homepage . 2015-01-03.
  5. Web site: Poppler Wiki. Information about Poppler. 2010-01-21.
  6. Web site: LibreOffice 4.2 ReleaseNotes. documentfoundation.org.
  7. Web site: Re: [poppler] Qt4 Arthur]. Albert Astals Cid. 15 May 2009. mail-archive.com.
  8. Web site: giddie/poppler-cairo-backend. GitHub. 8 December 2021 .
  9. Web site: Bug 25240 – Cairo backend for Qt4 wrapper. freedesktop.org.
  10. Web site: Searching PDF Files With grep. 2010-01-21.
  11. Web site: Support JavaScript (#162) . Albert Astals Cid . Feb 8, 2008 . GitLab . October 3, 2018.