Skip to main content

A ZipFile like API for PyMuPDF

Project description

PDFFile

A ZipFile like API for PDFs using PyMuPDF as a backend.

📜 News

PDFFile has a NEWS file to summarize changes that affect users.

🕸️ HTML Docs

HTML formatted docs are available here

📦 Dependencies

The pymupdf dependency usually has wheels that install a local version of libmupdf. But for some platforms (e.g. Windows) it may require libstdc++ and c/c++ build tools installed to compile a libmupdf. More detail on this is available in the pymupdf docs.

🧶 Data Types

MuPDF reads and writes all data types as strings. PDFFile automatically converts pdf date strings to python datetimes and pdf/xml boolean strings to python bools and back.

The helper functions to_datetime, to_pdf_date, to_bool, and to_xml_bool are available on the PDFFile class.

Installing on Linux on ARM (AARCH64) with Python 3.13

Pymupdf has no pre-built wheels for AARCH64 so pip must build it and the build fails on Python 3.13 without this environment variable set:

PYMUPDF_SETUP_PY_LIMITED_API=0 pip install comicbox-pdffile

You will also have to have the build-essential and python3-dev or equivalent packages installed on on your Linux.

🛠️ API

Attached to these docs in the navigation header there are some auto generated API docs that might be better than nothing. But the code is really small and shouldn't be difficult to interpret.

🛠 Development

PDFfile code is hosted at Github

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

comicbox_pdffile-0.4.0.tar.gz (200.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

comicbox_pdffile-0.4.0-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file comicbox_pdffile-0.4.0.tar.gz.

File metadata

  • Download URL: comicbox_pdffile-0.4.0.tar.gz
  • Upload date:
  • Size: 200.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for comicbox_pdffile-0.4.0.tar.gz
Algorithm Hash digest
SHA256 efc3440bce726e76a6e37268c2ef928224670d5c3ff36c1be9538425a4d4142b
MD5 50530452113398e788fe2df651368ea6
BLAKE2b-256 f28e1e1c37518f3be771374fa31519b497c44e3a5bd63af263447741bfc6fc30

See more details on using hashes here.

File details

Details for the file comicbox_pdffile-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: comicbox_pdffile-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 6.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for comicbox_pdffile-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ca5a2b0426c77def6e10387fdffd85113838f73fe0fd9ddf0b20b32b57959dc9
MD5 0d62096d05b5365b335bdef2242a3fdd
BLAKE2b-256 c21f0908e2e8b47b34094832773c29b46a606c9ea046bf1fafe8b1c11ba5509c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page