Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Githun CI Status Appveyor Build status PyPI

uharfbuzz

Streamlined Cython bindings for the HarfBuzz shaping engine.

Example

import sys

import uharfbuzz as hb


with open(sys.argv[1], 'rb') as fontfile:
    fontdata = fontfile.read()

text = sys.argv[2]

face = hb.Face(fontdata)
font = hb.Font(face)

buf = hb.Buffer()
buf.add_str(text)
buf.guess_segment_properties()

features = {"kern": True, "liga": True}
hb.shape(font, buf, features)

infos = buf.glyph_infos
positions = buf.glyph_positions

for info, pos in zip(infos, positions):
    gid = info.codepoint
    cluster = info.cluster
    x_advance = pos.x_advance
    x_offset = pos.x_offset
    y_offset = pos.y_offset
    print(f"gid{gid}={cluster}@{x_advance},{x_offset}+{y_offset}")

How to make a release

Use git tag -a to make a new annotated tag, or git tag -s for a GPG-signed annotated tag, if you prefer.

Name the new tag with with a leading ‘v’ followed by three MAJOR.MINOR.PATCH digits, like in semantic versioning. Look at the existing tags for examples.

In the tag message write some short release notes describing the changes since the previous tag.

Finally, push the tag to the remote repository (e.g. assuming upstream is called origin):

$ git push origin v0.4.3

This will trigger the CI to build the distribution packages and upload them to the Python Package Index automatically, if all the tests pass successfully. The CI will also automatically create a new Github Release and use the content of the annotated git tag for the release notes.

Release files for uharfbuzz 0.14.1a2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for uharfbuzz 0.14.1a2
File Size Uploaded
uharfbuzz-0.14.1a2.zip 1.1 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for uharfbuzz 0.14.1a2
File
uharfbuzz-0.14.1a2-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
uharfbuzz-0.14.1a2-cp39-cp39-win32.whl CPython 3.9 CPython 3.9 Windows x86-32 Details
uharfbuzz-0.14.1a2-cp39-cp39-manylinux1_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.5+ x86-64 Details
uharfbuzz-0.14.1a2-cp39-cp39-macosx_10_9_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.9+ x86-64 Details
uharfbuzz-0.14.1a2-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
uharfbuzz-0.14.1a2-cp38-cp38-win32.whl CPython 3.8 CPython 3.8 Windows x86-32 Details
uharfbuzz-0.14.1a2-cp38-cp38-manylinux1_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.5+ x86-64 Details
uharfbuzz-0.14.1a2-cp38-cp38-macosx_10_9_x86_64.whl CPython 3.8 CPython 3.8 macOS 10.9+ x86-64 Details
uharfbuzz-0.14.1a2-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details
uharfbuzz-0.14.1a2-cp37-cp37m-win32.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-32 Details
uharfbuzz-0.14.1a2-cp37-cp37m-manylinux1_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.5+ x86-64 Details
uharfbuzz-0.14.1a2-cp37-cp37m-macosx_10_9_x86_64.whl CPython 3.7 CPython 3.7 pymalloc macOS 10.9+ x86-64 Details
uharfbuzz-0.14.1a2-cp36-cp36m-win_amd64.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-64 Details
uharfbuzz-0.14.1a2-cp36-cp36m-win32.whl CPython 3.6 CPython 3.6 pymalloc Windows x86-32 Details
uharfbuzz-0.14.1a2-cp36-cp36m-manylinux1_x86_64.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64 Details
uharfbuzz-0.14.1a2-cp36-cp36m-macosx_10_9_x86_64.whl CPython 3.6 CPython 3.6 pymalloc macOS 10.9+ x86-64 Details

Total release size: 20.8 MB

Release files / uharfbuzz-0.14.1a2.zip

Download URL uharfbuzz-0.14.1a2.zip
Size 1.1 MB
Tags Source
SHA-256 checksum
How to use checksums
aafaa0b914a2b203ae7f2f339f23d31a50f8a6275fc46af13beb985d6bce4a5b
BLAKE2b-256 checksum
How to use checksums
f13533c70b18b28981645f488e8b4b0e4a395995e0d3c33f94a94fd0213a6595
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.1

Release files / uharfbuzz-0.14.1a2-cp39-cp39-win_amd64.whl

Download URL uharfbuzz-0.14.1a2-cp39-cp39-win_amd64.whl
Size 398.9 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
01331b1fd06cde9dfd96ab5583894b1d953edabc4d2ceef1dc9297a61432159f
BLAKE2b-256 checksum
How to use checksums
d54eec3a21c56eb09466a3220ddc559473b9518d002f8c3757912fb74555e597
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.5

Release files / uharfbuzz-0.14.1a2-cp39-cp39-win32.whl

Download URL uharfbuzz-0.14.1a2-cp39-cp39-win32.whl
Size 343.5 kB
Tags CPython 3.9 Windows x86-32
SHA-256 checksum
How to use checksums
b179c690e192d320f638849b2947c86168fdc4a900333b1c7d4bf97ee8df46a3
BLAKE2b-256 checksum
How to use checksums
3f956c67d54da8924832b667f4fabd03f3a1d9d9d01aeceac8e7fd3bd2d99b53
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.5

Release files / uharfbuzz-0.14.1a2-cp39-cp39-manylinux1_x86_64.whl

Download URL uharfbuzz-0.14.1a2-cp39-cp39-manylinux1_x86_64.whl
Size 3.6 MB
Tags CPython 3.9 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
0b78f3dedd4933f1e8f02f23d198c5b95096f3974a3d75270b1f1d4c57a68d75
BLAKE2b-256 checksum
How to use checksums
7c41e01d135e864ec51f56712ede4c1fb2c1c88663d8376a137544da915c76ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.1

Release files / uharfbuzz-0.14.1a2-cp39-cp39-macosx_10_9_x86_64.whl

Download URL uharfbuzz-0.14.1a2-cp39-cp39-macosx_10_9_x86_64.whl
Size 557.1 kB
Tags CPython 3.9 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
f5a7401b0e80e2d99d46239188d1748e3f8eb9a8c379a4054a79da7919c10697
BLAKE2b-256 checksum
How to use checksums
421e7e527d5e3b8fe38711d743f1aaec202e892b7c8519f571cca15cbc5719b0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.1

Release files / uharfbuzz-0.14.1a2-cp38-cp38-win_amd64.whl

Download URL uharfbuzz-0.14.1a2-cp38-cp38-win_amd64.whl
Size 399.7 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
04667a09326e82279257f9c7f69f33418542df721bf56005293f50c07897f7d2
BLAKE2b-256 checksum
How to use checksums
a8920b27f50f07d98a02e1f082419230a8e408cdfd9e847dfbcd28bb847679ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.5

Release files / uharfbuzz-0.14.1a2-cp38-cp38-win32.whl

Download URL uharfbuzz-0.14.1a2-cp38-cp38-win32.whl
Size 344.2 kB
Tags CPython 3.8 Windows x86-32
SHA-256 checksum
How to use checksums
357ff574dff55787299c3f0529eeb7c2571a10938de6666993b881ab30bc1e89
BLAKE2b-256 checksum
How to use checksums
91be5784a2053435e067b3651fe2c74dc3452d53517514919e4bdbf37da5dd0c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.5

Release files / uharfbuzz-0.14.1a2-cp38-cp38-manylinux1_x86_64.whl

Download URL uharfbuzz-0.14.1a2-cp38-cp38-manylinux1_x86_64.whl
Size 3.6 MB
Tags CPython 3.8 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
70e07c2e2895403b8160895b18dc9a16cef9a1076c4eef0672fb2d30f96da10f
BLAKE2b-256 checksum
How to use checksums
593e671d9fd9368a3bc24f81ff0042671e56d6624feeca5ef842bf48de9360e5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.1

Release files / uharfbuzz-0.14.1a2-cp38-cp38-macosx_10_9_x86_64.whl

Download URL uharfbuzz-0.14.1a2-cp38-cp38-macosx_10_9_x86_64.whl
Size 550.9 kB
Tags CPython 3.8 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
20e9b4bc18fa08aaf10127058faeec657d77a48d00aa80420c1506cb15d68d5a
BLAKE2b-256 checksum
How to use checksums
7ef83dc8998af2d83e09385d4a00e5140b0b7e749737860657724eb781b7a59d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.1

Release files / uharfbuzz-0.14.1a2-cp37-cp37m-win_amd64.whl

Download URL uharfbuzz-0.14.1a2-cp37-cp37m-win_amd64.whl
Size 396.5 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
f1eb6286039f7fff3b06bcaa414fe1f0951bf54bc45261edef72868895cfa324
BLAKE2b-256 checksum
How to use checksums
922dd78604a18edc1d03e484832bf190f4eec889e40124be4d20e53af04c2516
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.5

Release files / uharfbuzz-0.14.1a2-cp37-cp37m-win32.whl

Download URL uharfbuzz-0.14.1a2-cp37-cp37m-win32.whl
Size 342.3 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
59668f4d774aa5e7db36421217c4855b00c09935482fc440449aa8c52fb69d95
BLAKE2b-256 checksum
How to use checksums
853d8831911b856f20b0618b158e0b1fc66b4333c8fc98de7d9f341e32736c1f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.5

Release files / uharfbuzz-0.14.1a2-cp37-cp37m-manylinux1_x86_64.whl

Download URL uharfbuzz-0.14.1a2-cp37-cp37m-manylinux1_x86_64.whl
Size 3.6 MB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
d17de21b62d750dcca779aaafa2ca1d0436697a1f1b132edc6e302a4b94e7a98
BLAKE2b-256 checksum
How to use checksums
71367c55f7cda039f93078daf761b4ac8a55306f77c920c4f30298b39e0823a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.1

Release files / uharfbuzz-0.14.1a2-cp37-cp37m-macosx_10_9_x86_64.whl

Download URL uharfbuzz-0.14.1a2-cp37-cp37m-macosx_10_9_x86_64.whl
Size 548.8 kB
Tags CPython 3.7 CPython 3.7 pymalloc macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
1909f7d3e6144fe0d093fc8d9af00c0ddf881aee62ff8d4337be9e46e1c23d68
BLAKE2b-256 checksum
How to use checksums
871a06d52b9411d60805e1f497cbd9a76fc7a420235303472d27ce8bef80dcad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.1

Release files / uharfbuzz-0.14.1a2-cp36-cp36m-win_amd64.whl

Download URL uharfbuzz-0.14.1a2-cp36-cp36m-win_amd64.whl
Size 396.5 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
76557df4597105f09a8e32d3caa091e84810e3a0ad836be74857402f163ef2b6
BLAKE2b-256 checksum
How to use checksums
115412aac1955e0b8479673e5f73997f9d476b540a4612c7b5c79813f8e41136
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.5

Release files / uharfbuzz-0.14.1a2-cp36-cp36m-win32.whl

Download URL uharfbuzz-0.14.1a2-cp36-cp36m-win32.whl
Size 342.5 kB
Tags CPython 3.6 CPython 3.6 pymalloc Windows x86-32
SHA-256 checksum
How to use checksums
051878c026fe15bdf85eef05d6a2a02856a2e3564cb543b0362d0f1cc27e9108
BLAKE2b-256 checksum
How to use checksums
99f2ce607e9b8b1af0dbfe609a2ead8de58f3c05791fc8277be1a426057fb6b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.5

Release files / uharfbuzz-0.14.1a2-cp36-cp36m-manylinux1_x86_64.whl

Download URL uharfbuzz-0.14.1a2-cp36-cp36m-manylinux1_x86_64.whl
Size 3.6 MB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
caeeada44ddcbdd7dc7b24e07cd6efe1596c26eff9dbbe705e639e8f6a3df633
BLAKE2b-256 checksum
How to use checksums
3cfb60b16df9c7d0a1dac4a5bd468066d453b3d8d38ef9023325310e8fba882a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.1

Release files / uharfbuzz-0.14.1a2-cp36-cp36m-macosx_10_9_x86_64.whl

Download URL uharfbuzz-0.14.1a2-cp36-cp36m-macosx_10_9_x86_64.whl
Size 551.5 kB
Tags CPython 3.6 CPython 3.6 pymalloc macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
a164e4dae1b47b72e33fa7df8bd9a8a0183793cd2dc5486d97c6e8118127eaf6
BLAKE2b-256 checksum
How to use checksums
643669fa3bac0fdde40040c37c55a83764578486c5051d16a439b59a1560c5f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.1

Release history Release notifications | RSS feed

This release

0.14.1a2 This release

17 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page