Skip to main content

Python wrapper for Adobe's PostScript autohinter

Project description

Test and Build Codecov PyPI Language grade: C/C++ Language grade: Python Total alerts

PSAutoHint

A standalone version of AFDKO’s autohinter.

NOTE: as of August 2019, only Python 3.6 or later is supported.

Building and running

This repository currently consists of a core autohinter written in C, a Python C extension providing an interface to it, and helper Python code.

To build the C extension:

python setup.py build

To install the C extension and the helper scripts globally:

pip install -r requirements.txt .

Alternatively to install them for the current user:

pip install -r requirements.txt --user .

The autohinter can be used by running:

psautohint

To build just the autohintexe binary:

python setup.py build_exe

Testing

We have a test suite that can be run with:

tox

Debugging

For standard debugging, build with:

python setup.py build --debug

It is also possible to build a debug version with AddressSanitizer ("ASan") support (currently for Mac OS X only) with:

python setup.py build --asan
pip install .

Once it is installed, you can use the util/launch-asan.sh shell script to launch a Python process that invokes the ASan libraries needed for debugging. Attach Xcode the launched process, then execute code in the process that triggers memory usage problems and wait for ASan to do its magic.

NOTE: be sure to build and install psautohint as described above; using other techniques such as python setup.py install will cause a re-build without ASan and debug support, which won't work.

Project details


Download files

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

Files for psautohint, version 2.3.1
Filename, size File type Python version Upload date Hashes
Filename, size psautohint-2.3.1-cp36-cp36m-macosx_10_9_x86_64.whl (132.4 kB) File type Wheel Python version cp36 Upload date Hashes View
Filename, size psautohint-2.3.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl (144.3 kB) File type Wheel Python version cp36 Upload date Hashes View
Filename, size psautohint-2.3.1-cp36-cp36m-win_amd64.whl (160.7 kB) File type Wheel Python version cp36 Upload date Hashes View
Filename, size psautohint-2.3.1-cp37-cp37m-macosx_10_9_x86_64.whl (132.4 kB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size psautohint-2.3.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl (144.3 kB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size psautohint-2.3.1-cp37-cp37m-win_amd64.whl (160.7 kB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size psautohint-2.3.1-cp38-cp38-macosx_10_9_x86_64.whl (132.4 kB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size psautohint-2.3.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl (144.3 kB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size psautohint-2.3.1-cp38-cp38-win_amd64.whl (160.7 kB) File type Wheel Python version cp38 Upload date Hashes View
Filename, size psautohint-2.3.1-cp39-cp39-macosx_10_9_x86_64.whl (132.4 kB) File type Wheel Python version cp39 Upload date Hashes View
Filename, size psautohint-2.3.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl (144.3 kB) File type Wheel Python version cp39 Upload date Hashes View
Filename, size psautohint-2.3.1-cp39-cp39-win_amd64.whl (160.7 kB) File type Wheel Python version cp39 Upload date Hashes View
Filename, size psautohint-2.3.1.zip (233.4 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page