Xpdf | |
Developer: | Glyph & Cog |
Operating System: | Linux, Windows, macOS, FreeBSD, OpenVMS |
Genre: | PDF viewer |
License: | GPL-2.0-only[1] or GPL-3.0-only[2] or proprietary[3] [4] |
Xpdf is a free and open-source PDF viewer and toolkit based on the Qt framework.[3] Versions prior to 4.00 were written for the X Window System and Motif.[5]
Xpdf runs on nearly any Unix-like operating system. Binaries are also available for Windows. Xpdf can decode LZW and read encrypted PDFs. The official version obeys the DRM restrictions of PDF files,[6] which can prevent copying, printing, or converting some PDF files.[3] There are patches that make Xpdf ignore these DRM restrictions,[7] ; the Debian distribution for example has these patches in place by default.[8]
Xpdf includes several programs that don't need an X Window System, including some that extract images from PDF files or convert PDF to PostScript or text. These programs run on DOS, Windows, Linux and Unix.[3]
Xpdf is also used as a back-end for other PDF readers frontends such as KPDF and GPDF,[5] and its engine, without the X11 display components, is used for PDF viewers including BePDF on BeOS, '!PDF' on RISC OS, on PalmPDF[9] on Palm OS[3] and on Windows Mobile.[10]
Two versions exist for AmigaOS. Xpdf needs a limited version of an X11 engine called Cygnix on the host system. AmigaOS 4 included AmiPDF, a PDF viewer based on 3.01 version of the Xpdf. However both Apdf and AmiPDF are native and need no X11.
The associated package "xpdf-utils" or "poppler-utils" contains tools such as pdftotext and pdfimages.
A vulnerability in the Xpdf implementation of the JBIG2 file format, re-used in Apple's iOS phone operating software, was used by the Pegasus spyware to implement a zero-click attack on iPhones by constructing an emulated computer architecture inside a JBIG2 stream. Apple fixed this "FORCEDENTRY" vulnerability in iOS 14.8 in September 2021.[11]