Skip to content

Releases: pymupdf/PyMuPDF

PyMuPDF-1.23.5 released

13 Oct 09:26
Compare
Choose a tag to compare

PyMuPDF-1.23.5 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

Changes in version 1.23.5 (2023-10-11)

  • Bug fixes:

  • Other:

    • Use MuPDF-1.23.4.
    • Fix optimisation flags with system installs.
    • Fixed the problem that the clip parameter does not take effect during table recognition
    • Support Pillow mode "RGBa"
    • Support extra word delimiters
    • Support checking valid PDF name objects

PyMuPDF-1.23.4 released

27 Sep 08:24
Compare
Choose a tag to compare

PyMuPDF-1.23.4 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

Changes in version 1.23.4 (2023-09-26)

  • Improved build instructions.

  • Fixed Tesseract in rebased implementation.

  • Improvements to build/install with system MuPDF.

  • Fixed Pyodide builds.

  • Fixed rebased bug in _insert_image().

  • Bug fixes:

PyMuPDF-1.23.3 released

01 Sep 14:55
Compare
Choose a tag to compare

PyMuPDF-1.23.3 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

Changes in version 1.23.3 (2023-08-31)

  • Fixed use of Tesseract for OCR.

PyMuPDF-1.23.2 released

28 Aug 15:31
Compare
Choose a tag to compare

PyMuPDF-1.23.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

Changes in version 1.23.2 (2023-08-28)

PyMuPDF-1.23.1 released

24 Aug 16:29
Compare
Choose a tag to compare

PyMuPDF-1.23.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

Changes in version 1.23.1 (2023-08-24)

  • Updated README and package summary description.

  • Fixed a problem on some Linux installations with Python-3.10
    (and possibly earlier versions) where import fitz failed with
    ImportError: libcrypt.so.2: cannot open shared object file: No such file or directory.

  • Fixed incompatible architecture error on MacOS arm64.

  • Fixed installation warning from Poetry about missing entry in wheels'
    RECORD files.

PyMuPDF-1.23.0 released

23 Aug 15:29
Compare
Choose a tag to compare

PyMuPDF-1.23.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

Changes in version 1.23.0 (2023-08-22)

  • Add method find_tables() to the Page object.

    This allows locating tables on any supported document page, and
    extracting table content by cell.

  • New "rebased" implementation of PyMuPDF.

    The rebased implementation is available as Python module
    fitz_new. It can be used as a drop-in replacement with import fitz_new as fitz.

  • Python-independent MuPDF libraries are now in a second wheel called
    PyMuPDFb that will be automatically installed by pip.

    This is to save space on pypi.org - a full release only needs one
    PyMuPDFb wheel for each OS.

  • Bug fixes:

  • Other changes:

    • Dropped support for Python-3.7.

    • Fix for wrong page / annot /Contents cleaning.

      We need to set pdf_filter_options::no_update to zero.

    • Added new function get_tessdata().

    • Cope with problem /Annot arrays.

      When copying page annotations in method Document.insert_pdf we
      previously did not check the validity of members of the /Annots
      array. For faulty members (like null or non-dictionary items) this
      could cause unnecessary exceptions. This fix implements more checks
      and skips such array items.

    • Additional annotation type checks.

      We did not previously check for annotation type when getting /
      setting annotation border properties. This is now checked in
      accordance with MuPDF.

    • Increase fault tolerance.

      Avoid exceptions in method insert_pdf() when source pages contains
      invalid items in the /Annots array.

    • Return empty border dict for applicable annots.

      We previously were returning a non-empty border dictionary even for
      non-applicable annotation types. We now return the empty dictionary
      {} in these cases. This requires some corresponding changes in the
      annotation .update() method, namely for dashes and border width.

    • Restrict set_rect to applicable annot types.

      We were insufficiently excluding non-applicable annotation types
      from set_rect() method. We now let MuPDF catch unsupported
      annotations and return False in these cases.

    • Wrong fontsize computation in page.get_texttrace().

      When computing the font size we were using the final text
      transformation matrix, where we should have taken span->trm
      instead. This is corrected here.

    • Updates to cope with changes to latest MuPDF.

      pdf_lookup_anchor() has been removed.

    • Update fill_textbox to better respect rect.width

      The function norm_words in fill_textbox had a bug in its last
      loop, appending n+1 characters when actually measuring width of n
      characters. It led to a bug in fill_texbox when you tried to write
      a single word mostly composed of "wide" letters (M,m, W, w...),
      causing the written text to exceed the given rect.

      The fix was just to replace n+1 by n.

    • Add script_focus and script_blur options to widget.

PyMuPDF-1.22.5 released

21 Jun 22:03
Compare
Choose a tag to compare

PyMuPDF-1.22.5 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

Changes in version 1.22.5 (2023-06-21)

  • This release uses MuPDF-1.22.2.

  • Bug fixes:

  • New features:

    • Changed Annotations now support "cloudy" borders.
      The :attr:Annot.border property has the new item clouds,
      and method :meth:Annot.set_border supports the corresponding clouds argument.

    • Changed Radio button widgets in the same RB group
      are now consistently updated if the group is defined in the standard way.

    • Added Support for the /Locked key in PDF Optional Content.
      This array inside the catalog entry /OCProperties can now be extracted and set.

    • Added Support for new parameter tessdata in OCR functions.
      New function :meth:get_tessdata locates the language support folder if Tesseract is installed.

PyMuPDF-1.22.3 released

11 May 06:26
Compare
Choose a tag to compare

PyMuPDF-1.22.3 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

Changes in version 1.22.3 (2023-05-10)

  • Bug fixes:

    • Fixed #2333: Unable to set any of button radio group in form

PyMuPDF-1.22.2 released

26 Apr 11:54
Compare
Choose a tag to compare

PyMuPDF-1.22.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

Changes in version 1.22.2 (2023-04-26)

  • This release uses MuPDF-1.22.0.

  • Bug fixes:

    • Fixed #2369: Image extraction bugs with newer versions

PyMuPDF-1.22.1 released

18 Apr 16:49
Compare
Choose a tag to compare

PyMuPDF-1.22.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

Changes in version 1.22.1 (2023-04-18)

  • This release uses MuPDF-1.22.0.

  • Bug fixes:

    • Fixed #2345: Turn off print statements in utils.py
    • Fixed #2348: extract_image returns an extension "flate" instead of "png"
    • Fixed #2350: Can not make widget (checkbox) to read-only by adding flags PDF_FIELD_IS_READ_ONLY
    • Fixed #2355: 1.22.0 error when using get_toc (AttributeError: 'SwigPyObject' object has no attribute)