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.6.2.tar.gz (205.0 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.6.2-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: comicbox_pdffile-0.6.2.tar.gz
  • Upload date:
  • Size: 205.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","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.6.2.tar.gz
Algorithm Hash digest
SHA256 06985d6f1261f88516479bed52088b02e2d3b48f889e91d09709e604954f712a
MD5 3b11c08362000cb2c3f1dc2918b7d747
BLAKE2b-256 cebe0c3f155c290c6b6c624a80048db0a5e49ac7506c43f9c79e2a5198d5f1e5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: comicbox_pdffile-0.6.2-py3-none-any.whl
  • Upload date:
  • Size: 13.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","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.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7cbca636d0f387d0a04e4d7ed17e969dba2cf54dfa6bdc890227cdda6888a872
MD5 e21c9a101a6531f98541bfd7cf7f1fb7
BLAKE2b-256 0955a81721d8544ffaa3917348ede7e86897ecef0d1792726562f11affbd3af5

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