PyMuPDF is a high performance Python library for data extraction, analysis, conversion & manipulation of PDF (and other) documents.
PyMuPDF-1.24.2 has been released.
Wheels for Windows, Linux and MacOS, and the sdist, are available on pypi.org and can be installed in the usual way, for example:
python -m pip install --upgrade pymupdf
[Linux-aarch64 wheels will be built and uploaded later.]
Changes in version 1.24.2 (2024-04-17)
Removed obsolete classic implementation from releases
(previously available as module fitz_old
).
Fixed issues:
Other:
New/modified methods:
Document.bake()
: new, make annotations / fields permanent content.Page.cluster_drawings()
: new, identifies drawing items
(i.e. vector graphics or line-art)
that belong together based on their geometrical vicinity.Page.apply_redactions()
: added new parameter text
.Document.subset_fonts()
: use MuPDF's pdf_subset_fonts()
instead of PyMuPDF code.The Document
class now supports page numbers specified as slices.
Avoid causing MuPDF warnings.
PyMuPDF-1.24.1 has been released.
Wheels for Windows, Linux and MacOS, and the sdist, are available on pypi.org and can be installed in the usual way, for example:
python -m pip install --upgrade pymupdf
[Linux-aarch64 wheels will be built and uploaded later.]
Changes in version 1.24.1 (2024-04-02)
Fixed issues:
Other:
Document.save()
, Document.ez_save()
and Document.write()
now support new parameters use_objstm
, compression_effortand
preserve_metadata`.PyMuPDF-1.24.0 has been released.
Wheels for Windows, Linux and MacOS, and the sdist, are available on pypi.org and can be installed in the usual way, for example:
python -m pip install --upgrade pymupdf
[Linux-aarch64 wheels will be built and uploaded later.]
Changes in version 1.24.0 (2024-03-21)
Fixed issues:
Other:
Use MuPDF-1.24.0.
Add support for redacting vector graphics.
Several fixes for table module
Add new method for outputting the table as a markdown string.
Address errors in computing the table header object:
We now allow None as the cell value, because this will be resolved where needed (e.g. in the pandas DataFrame).
We previously tried to enforce rect-like tuples in all header cell bboxes, however this fails for tables with all-None columns. This fix enables this and constructs an empty string in the corresponding cell string.
We now correctly include start / stop points of lines in the bbox of the clustered graphic. We previously joined the line's rectangle - which had no effect because this is always empty.
Improved exception text if we fail to open document.
Fixed build with new libclang 18.
PyMuPDF-1.23.26 has been released.
Wheels for Windows, Linux and MacOS, and the sdist, are available on pypi.org and can be installed in the usual way, for example:
python -m pip install --upgrade pymupdf
[Linux-aarch64 wheels will be built and uploaded later.]
Changes in version 1.23.26 (2024-02-29)
Fixed issues:
Other:
Improvements to table detection:
Install command-line 'pymupdf' command that runs fitz/main.py.
Don't overwrite MuPDF's config.h when building on non-Windows.
Fix Story
constructor's archive
arg to match docs - now accepts a single Archive
constructor arg.
Do not include MuPDF source in sdist; will be downloaded automatically when building.
PyMuPDF-1.23.25 has been released.
Wheels for Windows, Linux and MacOS, and the sdist, are available on pypi.org and can be installed in the usual way, for example:
python -m pip install --upgrade pymupdf
[Linux-aarch64 wheels will be built and uploaded later.]
Changes in version 1.23.25 (2024-02-20)
Fixed issues:
Other:
PIPCL_PYTHON_CONFIG
.PyMuPDF-1.23.24 has been released.
Wheels for Windows, Linux and MacOS, and the sdist, are available on pypi.org and can be installed in the usual way, for example:
python -m pip install --upgrade pymupdf
[Linux-aarch64 wheels will be built and uploaded later.]
Changes in version 1.23.24 (2024-02-19)
Fixed issues:
Other:
sudo pip install
instead of a venv.PyMuPDF-1.23.23 has been released.
Wheels for Windows, Linux and MacOS, and the sdist, are available on pypi.org and can be installed in the usual way, for example:
python -m pip install --upgrade pymupdf
[Linux-aarch64 wheels will be built and uploaded later.]
Changes in version 1.23.23 (2024-02-18)
Fixed issues:
Other:
Document.select() by using new MuPDF function
pdf_rearrange_pages()`. This is a more complete (and faster)
implementation of what needs to be done here in that not only pages will
be rearranged, but also consequential changes will be made to the table
of contents, links to removed pages and affected entries in the Optional
Content definitions.TextWriter.appendv()
: added small_caps
arg.Document.insert_image()
when build with MuPDF master.PyMuPDF-1.23.22 has been released.
Wheels for Windows, Linux and MacOS, and the sdist, are available on pypi.org and can be installed in the usual way, for example:
python -m pip install --upgrade pymupdf
[Linux-aarch64 wheels will be built and uploaded later.]
Changes in version 1.23.22 (2024-02-12)
Fixed issues:
Fixed #3143
Fixed #3139
Other:
fz_image_size()
from PyMuPDF.PyMuPDF-1.23.21 has been released.
Wheels for Windows, Linux and MacOS, and the sdist, are available on pypi.org and can be installed in the usual way, for example:
python -m pip install --upgrade pymupdf
[Linux-aarch64 wheels will be built and uploaded later.]
Changes in version 1.23.21 (2024-02-01)
Fixed issues:
Other:
.parent
member in TextPage
from Annot.get_textpage()
.Page.add_widget()
.PyMuPDF-1.23.20 has been released.
Wheels for Windows, Linux and MacOS, and the sdist, are available on pypi.org and can be installed in the usual way, for example:
python -m pip install --upgrade pymupdf
[Linux-aarch64 wheels will be built and uploaded later.]
Changes in version 1.23.20 (2024-01-29)
Bug fixes:
Other:
Document.get_toc()
.