Skip to main content

Python wrapper for Adobe's PostScript autohinter

Project description

Travis AppVeyor 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


Release history Release notifications | RSS feed

Download files

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

Source Distribution

psautohint-2.1.1.zip (233.9 kB view details)

Uploaded Source

Built Distributions

psautohint-2.1.1-cp38-cp38-win_amd64.whl (236.4 kB view details)

Uploaded CPython 3.8 Windows x86-64

psautohint-2.1.1-cp38-cp38-manylinux1_x86_64.whl (211.4 kB view details)

Uploaded CPython 3.8

psautohint-2.1.1-cp38-cp38-macosx_10_9_x86_64.whl (223.6 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

psautohint-2.1.1-cp37-cp37m-win_amd64.whl (236.3 kB view details)

Uploaded CPython 3.7m Windows x86-64

psautohint-2.1.1-cp37-cp37m-manylinux1_x86_64.whl (211.4 kB view details)

Uploaded CPython 3.7m

psautohint-2.1.1-cp37-cp37m-macosx_10_9_x86_64.whl (223.5 kB view details)

Uploaded CPython 3.7m macOS 10.9+ x86-64

psautohint-2.1.1-cp36-cp36m-win_amd64.whl (236.3 kB view details)

Uploaded CPython 3.6m Windows x86-64

psautohint-2.1.1-cp36-cp36m-manylinux1_x86_64.whl (211.4 kB view details)

Uploaded CPython 3.6m

psautohint-2.1.1-cp36-cp36m-macosx_10_9_x86_64.whl (223.4 kB view details)

Uploaded CPython 3.6m macOS 10.9+ x86-64

File details

Details for the file psautohint-2.1.1.zip.

File metadata

  • Download URL: psautohint-2.1.1.zip
  • Upload date:
  • Size: 233.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.6.3

File hashes

Hashes for psautohint-2.1.1.zip
Algorithm Hash digest
SHA256 c41253b7a5566d052e92c90ecce86b719342fef4697498b8e64d2b90e1feb89c
MD5 955e657cae6411ade44ff4324b248718
BLAKE2b-256 a1658041d280a1c41c9eed7c11ea187ed9d3e7b6068e83d5296dcd4f4adf1323

See more details on using hashes here.

File details

Details for the file psautohint-2.1.1-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: psautohint-2.1.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 236.4 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.0

File hashes

Hashes for psautohint-2.1.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 c3a039c718d41539359ff9aecf26a4f3d4d3b99079124dad32d34a9df9758ee5
MD5 f2bf5cc67494e345a85b03288d65584d
BLAKE2b-256 079171b580f86a405305eb71257a6dee6ae362409c18c006db80684f629ef58b

See more details on using hashes here.

File details

Details for the file psautohint-2.1.1-cp38-cp38-manylinux1_x86_64.whl.

File metadata

  • Download URL: psautohint-2.1.1-cp38-cp38-manylinux1_x86_64.whl
  • Upload date:
  • Size: 211.4 kB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.6.3

File hashes

Hashes for psautohint-2.1.1-cp38-cp38-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 9148559da881baf366a050a129a16a2a4c1ee55e7b3894a915cc1857e1a095f0
MD5 915c075c74b62ce9bfba4891d51710a9
BLAKE2b-256 b66df55187ffeda50d4e3556201c89376d0f9eec51c90734736e0047dc501174

See more details on using hashes here.

File details

Details for the file psautohint-2.1.1-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: psautohint-2.1.1-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 223.6 kB
  • Tags: CPython 3.8, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.8.1

File hashes

Hashes for psautohint-2.1.1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 33fe79d89fd367fd53114d3c4dc5cc8f3ec0df29b6f7946c8bb75d42eefaf132
MD5 dce9e6f16379c4bb1bebcbce235c3028
BLAKE2b-256 f31ee6d488ecf97b53832b564c9ce3686d2aff9f73506463e789811879a85313

See more details on using hashes here.

File details

Details for the file psautohint-2.1.1-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: psautohint-2.1.1-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 236.3 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.7.5

File hashes

Hashes for psautohint-2.1.1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 5c8edf94be4b6ec867627b6535d9cd89bfcc7abfdd4e1110ae0ffb0022676096
MD5 f378cd72f519bf8a7c685fad79083910
BLAKE2b-256 9a518f6d106a4225e1477d1687348211d13f01790625a27986440b33860fe2a2

See more details on using hashes here.

File details

Details for the file psautohint-2.1.1-cp37-cp37m-manylinux1_x86_64.whl.

File metadata

  • Download URL: psautohint-2.1.1-cp37-cp37m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 211.4 kB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.6.3

File hashes

Hashes for psautohint-2.1.1-cp37-cp37m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 da96c8f06c8093d174c0f79e944ff9748c228dd59acfa9164f1b22d1021eebc9
MD5 204f9f14b443d5bbc04cfc2d140c604f
BLAKE2b-256 bb2f3bf74a0f41fa46858564cbe4984575e62e8ff8f6a23528ae7b62658ac6bb

See more details on using hashes here.

File details

Details for the file psautohint-2.1.1-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: psautohint-2.1.1-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 223.5 kB
  • Tags: CPython 3.7m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.7.6

File hashes

Hashes for psautohint-2.1.1-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b0f12f41f5e0710390f943b9e3fe51d8ea28ad4ec9443acd2242d1da0c5f0898
MD5 6ac56a8bd4e8c8f1fe13d8aff35951e3
BLAKE2b-256 21abe5064845fd10d278673e578aa09d91065660005c8711a58aafaa03f93283

See more details on using hashes here.

File details

Details for the file psautohint-2.1.1-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: psautohint-2.1.1-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 236.3 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.6.8

File hashes

Hashes for psautohint-2.1.1-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 1351be721f9865c00db3649a0bcbfde510427568ae0f17431ec41d5da02ee496
MD5 559aa619739d583a4d11f5cbe9db6797
BLAKE2b-256 e4437e8af4ad3e19fd1ede0d8a362f9bd796f9af9715edfdb8f4154bec0c5ed3

See more details on using hashes here.

File details

Details for the file psautohint-2.1.1-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

  • Download URL: psautohint-2.1.1-cp36-cp36m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 211.4 kB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.6.3

File hashes

Hashes for psautohint-2.1.1-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 929f0d31d6e9e41a9406809987786b3b78b72f14af32ff78f8469fd422f561c0
MD5 c8f984f9c28624b207b4da7807d33a53
BLAKE2b-256 aebc50749db73cdb80564c57fccc55538162f318613446a4a74bc83cef2aeb9f

See more details on using hashes here.

File details

Details for the file psautohint-2.1.1-cp36-cp36m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: psautohint-2.1.1-cp36-cp36m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 223.4 kB
  • Tags: CPython 3.6m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.6.8

File hashes

Hashes for psautohint-2.1.1-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 29cb39fb374b56964437827086f1e4d78d15dcbfdf286aba74a3178eb0c9a2ab
MD5 b7eb93e768c48900c941fb973a9818b2
BLAKE2b-256 e20586aac15197537935b6dd050f463ba7ec2bcdf34f885260aed7326e500586

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page