Skip to main content

C-backed PDF to structured JSON extractor.

Project description

PyMuPDF4LLM-C

fast PDF extractor in C using MuPDF. Outputs structured JSON with layout metadata. ~300 pages/second.

primarily intended for use with python bindings.


what this is

a PDF extractor in C using MuPDF, inspired by pymupdf4llm. i took many of its heuristics and approach but rewrote it in C for speed, then bound it to Python so it's easy to use.

outputs JSON for every block: text, type, bounding box, font metrics, tables. you get the raw data to process however you need.

speed: ~300 pages/second on CPU. 1 million pages in ~55 minutes.


the problem

most extractors give you raw text (fast but useless) or over-engineered solutions (slow, opinionated, not built for what you need). you want structured data. you want to know where things are, what they are, whether they're headers or body text. and you want this fast if you're processing large volumes.


what you get

JSON with geometry, typography, and structure. use bounding boxes to find natural document boundaries. detect headers and footers by coordinates. reconstruct tables properly. you decide what to do with it.

heading with accurate coordinates and styling
{
  "type": "heading",
  "bbox": [111.80, 187.53, 509.10, 217.56],
  "font_size": 32.0,
  "length": 25,
  "level": 1,
  "spans": [
    {
      "text": "Introduction",
      "font_size": 32.0,
      "bold": false,
      "italic": false,
      "monospace": false,
      "strikeout": false,
      "superscript": false,
      "subscript": false,
      "link": false,
      "uri": false
    }
  ]
}
paragraph with mixed styling (bold, italic, links)
{
  "type": "text",
  "bbox": [72.03, 140.5, 542.7, 200.2],
  "font_size": 12.0,
  "length": 189,
  "lines": 4,
  "spans": [
    {
      "text": "Cloud technology enables ",
      "font_size": 12.0,
      "bold": false,
      "italic": false,
      "monospace": false,
      "strikeout": false,
      "superscript": false,
      "subscript": false,
      "link": false,
      "uri": false
    },
    {
      "text": "multi-tenant",
      "font_size": 12.0,
      "bold": true,
      "italic": true,
      "monospace": false,
      "strikeout": false,
      "superscript": false,
      "subscript": false,
      "link": true,
      "uri": "https://aws.amazon.com/multi-tenant"
    },
    {
      "text": " services that scale efficiently across infrastructure.",
      "font_size": 12.0,
      "bold": false,
      "italic": false,
      "monospace": false,
      "strikeout": false,
      "superscript": false,
      "subscript": false,
      "link": false,
      "uri": false
    }
  ]
}
bulleted and nested list with indentation
{
  "type": "list",
  "bbox": [40.44, 199.44, 240.01, 345.78],
  "font_size": 11.04,
  "length": 89,
  "spans": [],
  "items": [
    {
      "spans": [{"text": "Logical isolation boundaries", "font_size": 11.04, "bold": false, "italic": false, "monospace": false, "strikeout": false, "superscript": false, "subscript": false, "link": false, "uri": false}],
      "list_type": "bulleted",
      "indent": 0,
      "prefix": false
    },
    {
      "spans": [{"text": "Data center architecture", "font_size": 11.04, "bold": false, "italic": false, "monospace": false, "strikeout": false, "superscript": false, "subscript": false, "link": false, "uri": false}],
      "list_type": "bulleted",
      "indent": 1,
      "prefix": false
    },
    {
      "spans": [{"text": "Nested list item", "font_size": 11.04, "bold": false, "italic": false, "monospace": false, "strikeout": false, "superscript": false, "subscript": false, "link": false, "uri": false}],
      "list_type": "bulleted",
      "indent": 2,
      "prefix": false
    }
  ]
}
table with detected structure
{
  "type": "table",
  "bbox": [72.0, 220.0, 523.5, 400.0],
  "font_size": 12.0,
  "length": 256,
  "row_count": 3,
  "col_count": 2,
  "cell_count": 2,
  "spans": [],
  "rows": [
    {
      "bbox": [72.0, 220.0, 523.5, 250.0],
      "cells": [
        {
          "bbox": [72.0, 220.0, 297.75, 250.0],
          "spans": [{"text": "Feature", "font_size": 12.0, "bold": true, "italic": false, "monospace": false, "strikeout": false, "superscript": false, "subscript": false, "link": false, "uri": false}]
        },
        {
          "bbox": [297.75, 220.0, 523.5, 250.0],
          "spans": [{"text": "Speed (pages/sec)", "font_size": 12.0, "bold": true, "italic": false, "monospace": false, "strikeout": false, "superscript": false, "subscript": false, "link": false, "uri": false}]
        }
      ]
    },
    {
      "bbox": [72.0, 250.0, 523.5, 280.0],
      "cells": [
        {
          "bbox": [72.0, 250.0, 297.75, 280.0],
          "spans": [{"text": "pymupdf4llm-C", "font_size": 12.0, "bold": false, "italic": false, "monospace": false, "strikeout": false, "superscript": false, "subscript": false, "link": false, "uri": false}]
        },
        {
          "bbox": [297.75, 250.0, 523.5, 280.0],
          "spans": [{"text": "~300", "font_size": 12.0, "bold": false, "italic": false, "monospace": false, "strikeout": false, "superscript": false, "subscript": false, "link": false, "uri": false}]
        }
      ]
    }
  ]
}

instead of splitting on word count and getting mid-sentence breaks, you use layout to chunk semantically.

note that a span represents a logical group of styling. in most blocks, it is likely that there is only one span. some information in the top level JSON may be inaccurate and/or redundant.


comparison

Tool Speed (pps) Quality Tables JSON Use Case
pymupdf4llm-C ~300 Good Yes Structured High volume, full control
pymupdf4llm ~10 Good Yes Markdown General
pymupdf ~250 Subpar No Text only Basic extraction
marker ~0.5-1 Excellent Yes Markdown Maximum accuracy
docling ~2-5 Excellent Yes JSON Document intelligence
PaddleOCR ~20-50 Good (OCR) Yes Text Scanned documents

tradeoff: speed and control vs automatic extraction. marker and docling give higher fidelity if you have time.


what it handles well

  • millions of pages, fast
  • custom parsing logic; you own the rules
  • document archives, chunking strategies, any structured extraction
  • CPU only; no expensive inference
  • iterating on parsing logic without waiting hours

what it doesn't handle

  • scanned or image-heavy PDFs (no OCR)
  • 99%+ accuracy on edge cases; trades precision for speed
  • figures or image extraction

installation

pip install pymupdf4llm-c

i use uv, you can prefix with uv or whatever you want.

wheels for Python 3.10–3.13 on macOS (ARM/x64) and Linux (glibc > 2.11). no Windows; see BUILD.md to compile.


usage

Python

basic

from pymupdf4llm_c import to_json

output_file = to_json("example.pdf")
print(f"Extracted to: {output_file}")

collect in memory

pages = to_json("report.pdf", collect=True)

for page_obj in pages:
    blocks = page_obj.get("data", [])
    for block in blocks:
        print(f"{block.get('type')}: {block.get('text', '')}")

large files (streaming)

from pymupdf4llm_c import iterate_json_pages

for page_blocks in iterate_json_pages("large.pdf"):
    for block in page_blocks:
        print(f"Block type: {block['type']}")

per-page files

json_files = to_json(pdf_path, output_dir="output_json")

command-line

python -m pymupdf4llm_c.main input.pdf [output_dir]

output structure

each page is a JSON array of blocks. every block has:

  • type: block type (text, heading, paragraph, list, table, code)
  • bbox: [x0, y0, x1, y1] bounding box coordinates
  • font_size: font size in points (average for multi-span blocks)
  • length: character count
  • spans: array of styled text spans with style flags (bold, italic, monospace, etc.)

block types

text/paragraph/code blocks:

{
  "type": "text",
  "bbox": [72.03, 132.66, 542.7, 352.22],
  "font_size": 12.0,
  "length": 1145,
  "lines": 14,
  "spans": [
    {
      "text": "Block content here...",
      "font_size": 12.0,
      "bold": false,
      "italic": false,
      "monospace": false,
      "strikeout": false,
      "superscript": false,
      "subscript": false,
      "link": false,
      "uri": false
    }
  ]
}

headings:

{
  "type": "heading",
  "bbox": [111.80, 187.53, 509.10, 217.56],
  "font_size": 32.0,
  "length": 25,
  "level": 1,
  "spans": [
    {
      "text": "Heading Text",
      "font_size": 32.0,
      "bold": false,
      "italic": false,
      "monospace": false,
      "strikeout": false,
      "superscript": false,
      "subscript": false,
      "link": false,
      "uri": false
    }
  ]
}

lists:

{
  "type": "list",
  "bbox": [40.44, 199.44, 107.01, 345.78],
  "font_size": 11.04,
  "length": 89,
  "spans": [],
  "items": [
    {
      "spans": [
        {
          "text": "First item",
          "font_size": 11.04,
          "bold": false,
          "italic": false,
          "monospace": false,
          "strikeout": false,
          "superscript": false,
          "subscript": false,
          "link": false,
          "uri": false
        }
      ],
      "list_type": "bulleted",
      "indent": 0,
      "prefix": false
    },
    {
      "spans": [
        {
          "text": "Second item",
          "font_size": 11.04,
          "bold": false,
          "italic": false,
          "monospace": false,
          "strikeout": false,
          "superscript": false,
          "subscript": false,
          "link": false,
          "uri": false
        }
      ],
      "list_type": "numbered",
      "indent": 0,
      "prefix": "1."
    }
  ]
}

tables:

{
  "type": "table",
  "bbox": [72.0, 220.0, 523.5, 400.0],
  "font_size": 12.0,
  "length": 256,
  "row_count": 3,
  "col_count": 2,
  "cell_count": 2,
  "spans": [],
  "rows": [
    {
      "bbox": [72.0, 220.0, 523.5, 250.0],
      "cells": [
        {
          "bbox": [72.0, 220.0, 297.75, 250.0],
          "spans": [
            {
              "text": "Header A",
              "font_size": 12.0,
              "bold": false,
              "italic": false,
              "monospace": false,
              "strikeout": false,
              "superscript": false,
              "subscript": false,
              "link": false,
              "uri": false
            }
          ]
        },
        {
          "bbox": [297.75, 220.0, 523.5, 250.0],
          "spans": [
            {
              "text": "Header B",
              "font_size": 12.0,
              "bold": false,
              "italic": false,
              "monospace": false,
              "strikeout": false,
              "superscript": false,
              "subscript": false,
              "link": false,
              "uri": false
            }
          ]
        }
      ]
    }
  ]
}

span fields

all text spans contain:

  • text: span content
  • font_size: size in points
  • bold, italic, monospace, strikeout, superscript, subscript: boolean style flags
  • link: boolean indicating if span contains a hyperlink
  • uri: URI string if linked, otherwise false

faq

why not marker/docling?
if you have time and need maximum accuracy, use those. this is for when you're processing millions of pages or iterating on extraction logic quickly.

how do i use bounding boxes for semantic chunking?
large y-gaps indicate topic breaks. font size changes show sections. indentation shows hierarchy. you write the logic using the metadata.

will this handle my complex PDF?
optimized for well-formed digital PDFs. scanned documents, complex table structures, and image-heavy layouts won't extract as well as ML tools.

commercial use?
only under AGPL v3 or with a license from Artifex (MuPDF's creators). see LICENSE


building from source

see BUILD.md.


license

  • derived work of mupdf.
  • inspired by pymupdf4llm; i have used it as a reference

AGPL v3. commercial use requires license from Artifex.

modifications and enhancements specific to this library are 2026 Adit Bajaj.

see LICENSE for the legal stuff.


links

feedback welcome.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

pymupdf4llm_c-1.4.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (77.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

pymupdf4llm_c-1.4.0-cp314-cp314-macosx_15_0_arm64.whl (40.9 MB view details)

Uploaded CPython 3.14macOS 15.0+ ARM64

pymupdf4llm_c-1.4.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (77.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

pymupdf4llm_c-1.4.0-cp313-cp313-macosx_15_0_arm64.whl (40.9 MB view details)

Uploaded CPython 3.13macOS 15.0+ ARM64

pymupdf4llm_c-1.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (77.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pymupdf4llm_c-1.4.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (77.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

pymupdf4llm_c-1.4.0-cp312-cp312-macosx_15_0_arm64.whl (40.9 MB view details)

Uploaded CPython 3.12macOS 15.0+ ARM64

pymupdf4llm_c-1.4.0-cp312-cp312-macosx_11_0_arm64.whl (40.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pymupdf4llm_c-1.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (77.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pymupdf4llm_c-1.4.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (77.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

pymupdf4llm_c-1.4.0-cp311-cp311-macosx_15_0_arm64.whl (40.9 MB view details)

Uploaded CPython 3.11macOS 15.0+ ARM64

pymupdf4llm_c-1.4.0-cp311-cp311-macosx_11_0_arm64.whl (40.9 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pymupdf4llm_c-1.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (77.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pymupdf4llm_c-1.4.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (77.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

pymupdf4llm_c-1.4.0-cp310-cp310-macosx_15_0_arm64.whl (40.9 MB view details)

Uploaded CPython 3.10macOS 15.0+ ARM64

pymupdf4llm_c-1.4.0-cp310-cp310-macosx_11_0_arm64.whl (40.9 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pymupdf4llm_c-1.4.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (77.2 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

pymupdf4llm_c-1.4.0-cp39-cp39-macosx_15_0_arm64.whl (40.9 MB view details)

Uploaded CPython 3.9macOS 15.0+ ARM64

pymupdf4llm_c-1.4.0-cp39-cp39-macosx_11_0_arm64.whl (40.9 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

Details for the file pymupdf4llm_c-1.4.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0d235b8fe872f7098bb8921f5505a5680e63e3b4106da3c5af5713f5af0a2b29
MD5 305955d7e0917d58dbcfb427ae8ce701
BLAKE2b-256 c56842275544a5fefcfa1315cd5fc9a4b126e348503eaa2c4cc86fae0610251f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp314-cp314-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp314-cp314-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 45b247dcb294979017ab7609e9fa5caf686abfe74ef460f74703e1811c7fa59b
MD5 a7b62dbcd401bb60ab69951388412c8f
BLAKE2b-256 0e5c024d2889343f721260d41dc2127547520c654b73f1fa6c62b859a825fe16

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp314-cp314-macosx_15_0_arm64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 52c9cdcda836b16d3b8eecfdf614bb4780b51a60ce5c819db344a8dc90b8acba
MD5 3aa724e6cf2aa7815534da55df49a921
BLAKE2b-256 e9685fc117da982a676afa37f7147545886f6db63be73ae1bb37936dc609e100

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp313-cp313-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp313-cp313-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 bec3d90303b201812134ec7b5f79873c7ade90025a872679ed8db12a2c0f514e
MD5 718aaae252467213659933b1d64ff250
BLAKE2b-256 baad0d3faf4ed55e373484bc93a5b4a687fdb310f2616734cc19be72370cb5e1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp313-cp313-macosx_15_0_arm64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 06fb63f562f66b7da6ed7db46f3663b41833556d3fc15dd40f1a08a1db325f22
MD5 0b67f10ad3b9cda0faf54f82f3fed04d
BLAKE2b-256 8e76f2e2b32e0aef50d615bc96b62889a746bda874e0b805c279abd5c3c02571

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f0460f4d036188dedc673bd5fad5595a67b94cafa53ec2a0d8677e515a5ce18a
MD5 c85485a89e4f8eb255fdf58550ccf2d1
BLAKE2b-256 ec44009e78acc6622c8464696c24a17866a154c9bcfb7dd075c26c377aae00cc

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp312-cp312-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp312-cp312-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 3d4f17c555cd50aa215cc72fa224218209f2e2fa110479483c31c136d65f3a23
MD5 54c8f07ac524580c2e358c8d2d908c0a
BLAKE2b-256 6d9f3b0c84309a175e9786f13da5342d127025bcbe166ee6d50a54526d42b244

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp312-cp312-macosx_15_0_arm64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e8986c92b0131148919c44e78b14e6b13b78e97f9bf3a1f655c5deebcfb14a5d
MD5 8fa66b62295cf5f063b29d225a17db72
BLAKE2b-256 405919d2db92eb551336689a36fd6c560169148427c36206441355145d72bf12

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4d821f56024d6d2453ca2e4e182b6499ac5657aac8df0a0a3fbd22f4df04e429
MD5 c85a2982860a13b59ab24d5433084bb1
BLAKE2b-256 d5f1bb919f7c9115af724d92687192d1223e6f62044cec90ab7e04e7ae070062

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b879a578fd694d6650921b19c1be4911349d70c6013903c98ff61b83411aedde
MD5 38ddda67ad73d01f9c89b698fc03d57c
BLAKE2b-256 939f0af17dd5b3a9fba09588c052d5cdf3a788f24012f80bd6fb81ca323ed223

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp311-cp311-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp311-cp311-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 24e1acfa6caee17937581b091dad59ac02b6fc286c1f91d7396809ab1f83e7a8
MD5 fd6767f95ab64a0f0b0f65c266487de7
BLAKE2b-256 56dca27f6671d923c46fc7e9d089c124dc9229ef98144afc24681ecc372f97dc

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp311-cp311-macosx_15_0_arm64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 790e17c6ac84d5b54f723f705d43e66224ada565ddfa0906ef14fb50885e32b2
MD5 54c327b95e8ce1649eb8163f2cdf80f7
BLAKE2b-256 a2a5d1049342ee00b2bd0573abd083634a53d01474985fb2053048443eebd95f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 023ceea5721694e85d59fc56daa16f395ad5e4892a26a981aec19c5078c38235
MD5 8fde9bb34047f380a06ec59c65205a42
BLAKE2b-256 141b58519b691890347e4f6b36503f0e00cdfba8b4032e503c092806c9a15501

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 673f1eaa4610a4778f8c1fe26f9459d30c9a76dcccd34633d70c1bc420f6b494
MD5 88498fc14a999e540ed7499d2f4bd826
BLAKE2b-256 92dda38275c8c4e1b8adc3671a5c7f162e3f27978cedf67b0eaf5255dc964da6

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp310-cp310-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp310-cp310-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 147eedeefe04ae78b95179c2cd344a12ac72a396231f664498dd144618152f05
MD5 f1a227bed3961df09ea34a28d945f10d
BLAKE2b-256 e25a3160487fbe60083d8949d9797f6c969d97e212d1666bf2d97d1daaefe380

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp310-cp310-macosx_15_0_arm64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e0876c9578a15c59a6adc1dfcb25f8611fab7edd525d71d468df56544176f564
MD5 0dd166cc76dc3f02de1bdb934966dfef
BLAKE2b-256 9117d711d4f4cc5d029c10466132d52b0058dbfbb82d2cf56b6c8f463c743d2f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 56905b5df28ac0fed6a370395d00de4b19f72e766bc66bb62972708505498cd0
MD5 08d96d83b2b4a4bc9292faca20ee9353
BLAKE2b-256 b8178a063649a3a207d76b6046f059a536e08332990abb3f2d564cbb85118995

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp39-cp39-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp39-cp39-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 ce5a68bc054dad51ddd83e8a5033ea983dec5825ce3311ec7df6ad165745d3d8
MD5 5da6055c5f41da302a0fbafcb0b2cc6f
BLAKE2b-256 78c2b1fe1d75f9f53c60fac5992493d8e14e84cf454076833136c204eba2b05e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp39-cp39-macosx_15_0_arm64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymupdf4llm_c-1.4.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pymupdf4llm_c-1.4.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 05910355338c51a4edd97354eb30c787f3b85cbfa68b133b36e0c5d4db1c897b
MD5 5c29c586cd13e13d303560fff634a6e8
BLAKE2b-256 9442746932914ffdb7df8508bf57606f5eb99a4f97d04ce4c4aa1b436504890f

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymupdf4llm_c-1.4.0-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: publish.yml on intercepted16/pymupdf4llm-C

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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