Poppler (software)
Encyclopedia
In computing
, Poppler (or libpoppler) is a free software
library used to render PDF
documents. It is used by the PDF viewers of the open source
GNOME
and KDE
desktop environment
s, and its development is supported by freedesktop.org
.
The project was started by Kristian Høgsberg with two goals in mind:
As of the version 0.18 release in Fall 2011, the poppler library represents a complete implementation of ISO 32000-1, the PDF format standard.
Poppler itself is a fork
of the Xpdf
-3.0 PDF viewer developed by Derek Noonburg of Glyph and Cog, LLC.
The name "Poppler" comes from the animated series Futurama
episode The Problem with Popplers
.
|-
! Application
! External Links
! Graphical Toolkit
|-
! Evince
| homepage
| GTK+
|-
! Okular
| homepage
| Qt
|-
! kde pdf kfile plugin
| homepage
| Qt
|-
! PopplerKit
| homepage
| GNUstep
/Cocoa
|-
! Vindaloo
| homepage
| PopplerKit
|-
! ePDFView
| homepage
| GTK+
|-
! TeXworks
| homepage
| Qt
|-
! LocoPDF
| homepage
| none
|-
! pdftotext
| poppler utils
| none
|-
! DiffPDF
| homepage
| Qt
|-
! Zathura (software)
| homepage
| GTK+
|-
! Xournal
| homepage
| GTK+
|}>
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. Bindings exist for Glib
, Qt3, and Qt4, that provide interfaces to the Poppler backends, although the Qt3 and Qt4 bindings support only the Splash backend. There is a patchset available to add support for the Cairo backend to the Qt4 bindings, but the Poppler project does not currently wish to integrate the feature into the library proper.
Some characteristics of the backends are as follows
Poppler comes with a text rendering backend as well, which can be invoked from the command line utility
s in PDFs from the command line, using the utility
Example:
Poppler supports interactive documents using Javascript
., annotations, and forms.
Computing
Computing is usually defined as the activity of using and improving computer hardware and software. It is the computer-specific part of information technology...
, Poppler (or libpoppler) is a free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...
library used to render PDF
Portable Document Format
Portable Document Format is an open standard for document exchange. This file format, created by Adobe Systems in 1993, is used for representing documents in a manner independent of application software, hardware, and operating systems....
documents. It is used by the PDF viewers of the open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...
GNOME
GNOME
GNOME is a desktop environment and graphical user interface that runs on top of a computer operating system. It is composed entirely of free and open source software...
and KDE
KDE
KDE is an international free software community producing an integrated set of cross-platform applications designed to run on Linux, FreeBSD, Microsoft Windows, Solaris and Mac OS X systems...
desktop environment
Desktop environment
In graphical computing, a desktop environment commonly refers to a style of graphical user interface derived from the desktop metaphor that is seen on most modern personal computers. These GUIs help the user in easily accessing, configuring, and modifying many important and frequently accessed...
s, and its development is supported by freedesktop.org
Freedesktop.org
freedesktop.org is a project to work on interoperability and shared base technology for free software desktop environments for the X Window System on Linux and other Unix-like operating systems. It was founded by Havoc Pennington from Red Hat in March 2000.The organisation focuses on the user....
.
The project was started by Kristian Høgsberg with two goals in mind:
- To provide PDF rendering functionality as a shared library, in order to centralize maintenance effort
- To go beyond the goals of XpdfXpdfXpdf is an open-source PDF viewer for the X Window System and Motif.Xpdf runs on practically any Unix-like operating system. Xpdf can decode LZW and read encrypted PDFs. The official version obeys the DRM restrictions of PDF files, which may prevent copying, printing, or converting some PDF files...
, and integrate with functionality provided by modern operating systemOperating systemAn operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...
s
As of the version 0.18 release in Fall 2011, the poppler library represents a complete implementation of ISO 32000-1, the PDF format standard.
Poppler itself is a fork
Fork (software development)
In software engineering, a project fork happens when developers take a legal copy of source code from one software package and start independent development on it, creating a distinct piece of software...
of the Xpdf
Xpdf
Xpdf is an open-source PDF viewer for the X Window System and Motif.Xpdf runs on practically any Unix-like operating system. Xpdf can decode LZW and read encrypted PDFs. The official version obeys the DRM restrictions of PDF files, which may prevent copying, printing, or converting some PDF files...
-3.0 PDF viewer developed by Derek Noonburg of Glyph and Cog, LLC.
The name "Poppler" comes from the animated series Futurama
Futurama
Futurama is an American animated science fiction sitcom created by Matt Groening and developed by Groening and David X. Cohen for the Fox Broadcasting Company. The series follows the adventures of a late 20th-century New York City pizza delivery boy, Philip J...
episode The Problem with Popplers
The Problem with Popplers
"The Problem with Popplers" is the 15th episode in the second production season of Futurama. It originally aired in North America on May 7, 2000.The title is a reference to the Star Trek: The Original Series Episode "Trouble with Tribbles", in which "tribbles" infest the USS Enterprise.-Plot:When...
.
PDF readers using Poppler
A number of free software applications use Poppler to render PDF documents! Application
! External Links
! Graphical Toolkit
|-
! Evince
Evince
Evince is a document viewer for PDF, PostScript, DjVu, TIFF and DVI designed for the GNOME desktop environment.The developers of Evince intended to replace the multiple GNOME document viewers with a single and simple application. The Evince motto sums up the project aim: "Simply a Document...
| homepage
| GTK+
GTK+
GTK+ is a cross-platform widget toolkit for creating graphical user interfaces. It is licensed under the terms of the GNU LGPL, allowing both free and proprietary software to use it. It is one of the most popular toolkits for the X Window System, along with Qt.The name GTK+ originates from GTK;...
|-
! Okular
Okular
Okular is the document viewer for KDE SC 4 . It is based on KPDF and it replaced KPDF, KGhostView, KFax, KFaxview and KDVI in KDE 4.Its functionality can be easily embedded in other applications....
| homepage
| Qt
Qt (toolkit)
Qt is a cross-platform application framework that is widely used for developing application software with a graphical user interface , and also used for developing non-GUI programs such as command-line tools and consoles for servers...
|-
! kde pdf kfile plugin
| homepage
| Qt
Qt (toolkit)
Qt is a cross-platform application framework that is widely used for developing application software with a graphical user interface , and also used for developing non-GUI programs such as command-line tools and consoles for servers...
|-
! PopplerKit
| homepage
| GNUstep
GNUstep
GNUstep is a free software implementation of Cocoa Objective-C libraries , widget toolkit, and application development tools not only for Unix-like operating systems, but also for Microsoft Windows. It is part of the GNU Project.GNUstep features a cross-platform, object-oriented development...
/Cocoa
Cocoa (API)
Cocoa is Apple's native object-oriented application programming interface for the Mac OS X operating system and—along with the Cocoa Touch extension for gesture recognition and animation—for applications for the iOS operating system, used on Apple devices such as the iPhone, the iPod Touch, and...
|-
! Vindaloo
| homepage
| PopplerKit
|-
! ePDFView
| homepage
| GTK+
GTK+
GTK+ is a cross-platform widget toolkit for creating graphical user interfaces. It is licensed under the terms of the GNU LGPL, allowing both free and proprietary software to use it. It is one of the most popular toolkits for the X Window System, along with Qt.The name GTK+ originates from GTK;...
|-
! TeXworks
TeXworks
TeXworks is an open source application software, available for Windows, GNU/Linux and Mac OS X. It is a graphical user interface to the typesetting system TeX and its extensions LaTeX, ConTeXt, and XeTeX....
| homepage
| Qt
Qt (toolkit)
Qt is a cross-platform application framework that is widely used for developing application software with a graphical user interface , and also used for developing non-GUI programs such as command-line tools and consoles for servers...
|-
! LocoPDF
| homepage
| none
|-
! pdftotext
Pdftotext
pdftotext is an open source command-line utility for converting PDF files to plain text files —i.e. extracting text data from PDF-encapsulated files. It is freely available and included by default with many Linux distributions, as well as being available on Windows...
| poppler utils
| none
|-
! DiffPDF
| homepage
| Qt
Qt (toolkit)
Qt is a cross-platform application framework that is widely used for developing application software with a graphical user interface , and also used for developing non-GUI programs such as command-line tools and consoles for servers...
|-
! Zathura (software)
| homepage
| GTK+
GTK+
GTK+ is a cross-platform widget toolkit for creating graphical user interfaces. It is licensed under the terms of the GNU LGPL, allowing both free and proprietary software to use it. It is one of the most popular toolkits for the X Window System, along with Qt.The name GTK+ originates from GTK;...
|-
! Xournal
| homepage
| GTK+
GTK+
GTK+ is a cross-platform widget toolkit for creating graphical user interfaces. It is licensed under the terms of the GNU LGPL, allowing both free and proprietary software to use it. It is one of the most popular toolkits for the X Window System, along with Qt.The name GTK+ originates from GTK;...
|}>
Features
Poppler can use two back-ends for drawing PDF documents, CairoCairo (graphics)
cairo is a software library used to provide a vector graphics-based, device-independent API for software developers. It is designed to provide primitives for 2-dimensional drawing across a number of different backends...
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. Bindings exist for Glib
GLib
GLib is a cross-platform software utility library that began as part of the GTK+ project. However, before releasing version 2 of GTK+, the project's developers decided to separate non-GUI-specific code from the GTK+ platform, thus creating GLib as a separate product...
, Qt3, and Qt4, that provide interfaces to the Poppler backends, although the Qt3 and Qt4 bindings support only the Splash backend. There is a patchset available to add support for the Cairo backend to the Qt4 bindings, but the Poppler project does not currently wish to integrate the feature into the library proper.
Some characteristics of the backends are as follows
- Cairo. Anti-aliasingAnti-aliasingIn digital signal processing, spatial anti-aliasing is the technique of minimizing the distortion artifacts known as aliasing when representing a high-resolution image at a lower resolution...
of vector graphicsVector graphicsVector graphics is the use of geometrical primitives such as points, lines, curves, and shapes or polygon, which are all based on mathematical expressions, to represent images in computer graphics...
, and transparentTransparency (graphic)Transparency is possible in a number of graphics file formats. The term transparency is used in various ways by different people, but at its simplest there is "full transparency" i.e. something that is completely invisible. Of course, only part of a graphic should be fully transparent, or there...
objects. Cairo does not smooth bitmapBitmapIn computer graphics, a bitmap or pixmap is a type of memory organization or image file format used to store digital images. The term bitmap comes from the computer programming terminology, meaning just a map of bits, a spatially mapped array of bits. Now, along with pixmap, it commonly refers to...
images such as scannedImage scannerIn computing, an image scanner—often abbreviated to just scanner—is a device that optically scans images, printed text, handwriting, or an object, and converts it to a digital image. Common examples found in offices are variations of the desktop scanner where the document is placed on a glass...
documents. Cairo does not depend on the X Window SystemX Window SystemThe X window system is a computer software system and network protocol that provides a basis for graphical user interfaces and rich input device capability for networked computers...
, so Poppler can run on platformsPlatform (computing)A computing platform includes some sort of hardware architecture and a software framework , where the combination allows software, particularly application software, to run...
which do not use an X server, such as WindowsMicrosoft WindowsMicrosoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...
or Mac OSMac OSMac OS is a series of graphical user interface-based operating systems developed by Apple Inc. for their Macintosh line of computer systems. The Macintosh user experience is credited with popularizing the graphical user interface...
. - Splash. Supports minification filtering of bitmapBitmapIn computer graphics, a bitmap or pixmap is a type of memory organization or image file format used to store digital images. The term bitmap comes from the computer programming terminology, meaning just a map of bits, a spatially mapped array of bits. Now, along with pixmap, it commonly refers to...
s.
Poppler comes with a text rendering backend as well, which can be invoked from the command line utility
pdftotext
. It is useful for searching for stringString (computer science)
In formal languages, which are used in mathematical logic and theoretical computer science, a string is a finite sequence of symbols that are chosen from a set or alphabet....
s in PDFs from the command line, using the utility
grepGrepgrep is a command-line text-search utility originally written for Unix. The name comes from the ed command g/re/p...
, for instance.Example:
Poppler supports interactive documents using Javascript
JavaScript
JavaScript is a prototype-based scripting language that is dynamic, weakly typed and has first-class functions. It is a multi-paradigm language, supporting object-oriented, imperative, and functional programming styles....
., annotations, and forms.
See also
- List of PDF software
- GNU PDFGNU PDFGNUpdf is a GNU project that aims to completely implement the Portable Document Format standards in free software. While many projects, such as Poppler already freely provide support of PDF adequate for most, none provide a complete implementation...
and iTextITextiText is a free and open source library for creating and manipulating PDF files in Java. It was written by Bruno Lowagie, Paulo Soares, and others. As of version 5.0.0 it is distributed under the Affero General Public License version 3. Previous versions of iText were distributed under the...
, two other open source PDF libraries