pymupdf-fonts
Collection of font binaries for use in PyMuPDF
What it is and what it does
pymupdf-fonts is a companion package to PyMuPDF that bundles a curated set of fonts encoded as base64-compressed Python variables. It exists to keep the PyMuPDF binary module lean while extending the available typefaces for PDF text rendering. The fonts include proportional sans-serif families (FiraGO, Noto Sans, Ubuntu), mono-spaced alternatives to Courier (FiraMono, Space Mono, Cascadia Mono, Ubuntu Mono), and specialized symbol fonts (Noto Sans Math, Noto Music, Noto Sans Symbols). Once installed, PyMuPDF automatically recognizes these fonts by their short codes and makes them available via standard APIs.
The package is pure Python with no compiled dependencies, making installation trivial across platforms. However, it is abandoned—no updates since 2021-12-27—so it will not receive maintenance or compatibility fixes if PyMuPDF's API or font handling changes. It is suitable for projects that need additional font choices in PDFs and can tolerate a static, unsupported dependency.
Use it for:
- Render PDFs with multilingual text using FiraGO's support for Latin, Cyrillic, Greek, Arabic, Hebrew, Thai, Georgian and Devanagari scripts.
- Add mathematical or musical symbols to PDFs using Noto Sans Math or Noto Music fonts.
- Replace Courier with a more modern mono-spaced font (Space Mono, Cascadia Mono, or Ubuntu Mono) in code samples or fixed-width text.
- Generate PDFs with a consistent Ubuntu-themed look across text and mono-spaced elements.
- Substitute standard Symbol font with Noto Sans Symbols for better glyph coverage in technical documents.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides a collection of optional fonts (FiraGO, FiraMono, Space Mono, Noto Sans, Ubuntu, Cascadia Mono, and symbol fonts) encoded as Python variables for use in PDF text rendering.
Yes, if you need additional fonts for PyMuPDF PDFs and can accept that the package is no longer maintained. The fonts are well-chosen and cover common use cases (multilingual text, symbols, modern mono-spaced alternatives). Installation is frictionless and there are no known vulnerabilities. The main risk is incompatibility with future PyMuPDF versions, but for stable projects this is unlikely to be an immediate concern.
Install
pymupdf-fonts on PyPI
pip
pip install pymupdf-fontsuv
uv add pymupdf-fontspoetry
poetry add pymupdf-fontsInstalling pymupdf-fonts
Before you install
Installation is straightforward—a pure Python wheel with no runtime dependencies and low install friction. However, the package is abandoned; the last commit was 2022-01-08 and no updates have been released since 2021-12-27, so it will not receive bug fixes or maintenance.
License in practice
Most fonts are licensed under SIL OFL V1.1; Ubuntu fonts use the Ubuntu Font License. Both are permissive open licenses that allow free use and modification. The license treatment is marked unclear in the metadata, so you may want to verify the specific terms apply to your use case.
Quickstart
pip install pymupdf-fonts
font = pymupdf_fonts.Font("notos")
page.insert_font(fontname="F0", fontbuffer=font.buffer)
page.insert_text(point, "Hello", fontname="F0")
Requires PyMuPDF to be installed separately; this package only provides the font data.
Verify before relying
- Whether the package works correctly with recent versions of PyMuPDF, given the last update was 2021-12-27.
- Whether the unclear license treatment in metadata reflects any actual licensing ambiguity or is simply a metadata artifact.
- How to access fonts from pymupdf-fonts programmatically after installation.
Package facts
| License | SIL OFL V1.1 (unclear) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | abandoned — 1,691 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 124,113/month — #11,886 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pymupdf_fonts-1.0.5-py3-none-any.whl
Tags
More Utilities packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
charset-normalizerDetects and normalizes text encoding from…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
PygmentsPygments is a syntax highlighter that colorizes…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
pymupdfPyMuPDF extracts, renders, converts, and…
agpl · top 1,000 on PyPI
mplhep-dataDistributes fonts and data files for the mplhep…
permissive · top 15,000 on PyPI
rendercv-fontsProvides a collection of fonts packaged for use…
permissive · top 15,000 on PyPI
mplfontsManages Matplotlib fonts and solves CJK…
permissive · top 15,000 on PyPI
cffsubrSubroutinizes CFF (Compact Font Format) font…
permissive · top 15,000 on PyPI
unPDFExtracts individual characters and metadata…
permissive · top 15,000 on PyPI
ufoLib2ufoLib2 provides a lightweight, programmatic…
permissive · top 15,000 on PyPI
uharfbuzzCython bindings for HarfBuzz that shape text…
permissive · top 5,000 on PyPI
matplotlib-fontjaEnables Japanese text rendering in matplotlib…
permissive · top 15,000 on PyPI
freetype-pyProvides Python bindings to the FreeType font…
permissive · top 5,000 on PyPI