python-poppler-qt5
A Python binding for libpoppler-qt5 that aims for completeness and for being actively maintained.
Created and maintained by Wilbert Berendsen <wbsoft@xs4all.nl>, with help of other contributors, especially where it concerns supporting many platforms and build systems. Thanks for everyone’s help!
Homepage: https://pypi.python.org/pypi/python-poppler-qt5/
Usage:
import popplerqt5
d = popplerqt5.Poppler.Document.load('file.pdf')
Documentation
The Python API closely follows the Poppler Qt5 C++ interface library API, documented at https://poppler.freedesktop.org/api/qt5/ .
Note: Releases of PyQt5 < 5.4 currently do not support the QtXml module, all methods that use the QDomDocument, QDomElement and QDomNode types are disabled. This concerns the Document::toc() method and some constructors and the store() methods in the Annotation subclasses. So, using PyQt5 >= 5.4 is recommended.
Wherever the C++ API requires QList, QSet or QLinkedList, any Python sequence can be used. API calls that return QList, QSet or QLinkedList all return Python lists.
There are a few other differences:
Poppler::Document::getPdfVersion(int *major, int *minor) can simply be called as d.getPdfVersion(), (where d is a Poppler::Document instance); it will return a tuple of two integers (major, minor).
Poppler::Document has __len__ and __getitem__ methods, corresponding to numPages() and page(int num).
Poppler::FontIterator (returned by Poppler::Document::newFontIterator) is also a Python iterable (e.g. has __iter__() and __next__() methods). So although you can use:
it = document.newFontIterator()
while it.hasNext():
fonts = it.next() # list of FontInfo objects
...
you can also use the more Pythonic:
for fonts in document.newFontIterator():
...
In addition to the Poppler namespace, there are two toplevel module functions:
- popplerqt5.version()
returns the version of the python-poppler-qt5 package as a tuple of ints, e.g. (0, 18, 2).
- popplerqt5.poppler_version()
returns the version of the linked Poppler-Qt5 library as a tuple of ints, e.g. (0, 24, 5).
This is determined at build time. If at build time the Poppler-Qt5 version could not be determined and was not specified, an empty tuple might be returned.
Metadata
Release files for python-poppler-qt5 21.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| python-poppler-qt5-21.3.0.tar.gz | 28.6 kB | Without provenance | Details for python-poppler-qt5-21.3.0.tar.gz |
Release files / python-poppler-qt5-21.3.0.tar.gz
| Download URL | python-poppler-qt5-21.3.0.tar.gz |
|---|---|
| Size | 28.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b477e8841f0ea0e09fdab6f2f305cf38df977d9e142e5693a374605d75dd6fe0
|
|
BLAKE2b-256 checksum How to use checksums |
2935cf515357cd968a99e404da6dddc2c292b5ced40b808b6ec3c86623b612e9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.25.1 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.4
|
Security for python-poppler-qt5 21.3.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.