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.5.1.tar.gz (176.4 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.5.1-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: comicbox_pdffile-0.5.1.tar.gz
  • Upload date:
  • Size: 176.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.12 {"installer":{"name":"uv","version":"0.11.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","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.5.1.tar.gz
Algorithm Hash digest
SHA256 6a14000dd2511da07426326425e843b12665a2414e965bf1f5671ca5c4449327
MD5 7923d7a2b2b08b8b129b5e209ea7a4c2
BLAKE2b-256 750e4593ecd880842c952a216134e37b2f6ada33473b6f7cd54caa4f3e701cd6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: comicbox_pdffile-0.5.1-py3-none-any.whl
  • Upload date:
  • Size: 7.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.12 {"installer":{"name":"uv","version":"0.11.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","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.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2f048d3172f22065b5c6e0c6c2a0d2a957b1b19977e919c8d7a36178d4a3eef8
MD5 8f3c70fbae5641c908ccf5366100903d
BLAKE2b-256 fa00da2794ce34757651c7df9033b77e1c1e83f92dbb5289e1f9d627e37a39b1

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