{"categories":[{"label":"Linguistic","url":"https://skillfed.io/packages/category/text-processing-linguistic"}],"enrichment":{"capability":"Cython bindings for HarfBuzz that shape text using font files, converting character strings into positioned glyphs with kerning and ligature support.","skillfed_tags":["text-shaping","typography","font-rendering"],"use_cases":["Render text to screen or image with proper kerning and ligatures in graphics or game engines.","Build font inspection tools that need to map characters to glyphs and measure their positions.","Implement complex script support (Arabic, Devanagari, etc.) where character-to-glyph mapping is non-trivial.","Generate PDF or vector output with correct text layout and glyph positioning.","Validate font behavior by programmatically shaping test strings and inspecting glyph metrics."],"what_it_does":"uharfbuzz is a Python wrapper around the HarfBuzz text shaping engine, a C library that converts Unicode text and font files into positioned glyphs. It handles complex typography tasks like kerning (adjusting spacing between letter pairs), ligature substitution (combining characters like 'fi' into a single glyph), and script-specific shaping rules. The package bundles minimal HarfBuzz sources by default, so installation requires no separate system dependency\u2014though you can opt into using a system-provided HarfBuzz build if needed.\n\nYou load a font file, create a buffer with text, apply shaping with optional features, then iterate over the resulting glyph infos and positions to extract advance widths, offsets, and glyph IDs. It's a thin, direct binding to HarfBuzz's core API, exposing the shaping pipeline without abstraction layers. The package is actively maintained, supports current Python versions (3.10+), and offers prebuilt wheels for major platforms.","worth_installing":"Yes. The package is actively maintained, has no known vulnerabilities, offers permissive licensing, and provides prebuilt wheels for common platforms. Install friction is moderate but manageable. Choose it if you need direct, low-level control over text shaping and glyph positioning; it's the standard Python binding for HarfBuzz."},"id":"uharfbuzz","links":{"html":"https://skillfed.io/packages/uharfbuzz","md":"https://skillfed.io/packages/uharfbuzz.md","pypi":"https://pypi.org/project/uharfbuzz/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-07-31","license_spdx":null,"license_treatment":"permissive","name":"uharfbuzz","python_support":"supports_current","summary":"Streamlined Cython bindings for the harfbuzz shaping engine"},"popularity":{"monthly_downloads":960306,"position":4636,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"0.56.0"}
