Skip to main content

Adobe Font Development Kit for OpenType

Project description

AFDKO Test Suite

Coverage

PyPI

Join the chat at https://gitter.im/adobe-type-tools/afdko

Adobe Font Development Kit for OpenType (AFDKO)

The AFDKO is a set of tools for building OpenType font files from PostScript and TrueType font data.

Note: This version of the toolkit has been restructured and what was C code has been partially ported to C++. For now these changes are considered experimental and there may be significant bugs. However, the new code can do more or less what the older code did and passes our test suite.

This repository contains the data files, Python scripts, and sources for the command line programs that comprise the AFDKO. The project uses the Apache 2.0 Open Source license. Please note that the AFDKO makes use of several dependencies, listed in the requirements.txt file, which will automatically be installed if you install AFDKO with pip. Most of these dependencies are BSD or MIT license, with the exception of tqdm, which is MPL 2.0.

Please refer to the AFDKO Overview for a more detailed description of what is included in the package.

Please see the wiki for additional information, such as links to reference materials and related projects.

📣 Recent News

The Python port of psautohint was (re)integrated into the AFDKO repository as "otfautohint"

More information can be found in docs/otfautohint_Notes.md

Installation

The AFDKO requires Python 3.9 or later. It should work with any Python > 3.9, but occasionally tool-chain components and dependencies don't keep pace with major Python releases, so there might be some lag time while they catch up.

Releases are available on the Python Package Index (PyPI) and can be installed with pip.

Note for macOS users: we recommend that you do not use the system Python. Among other reasons, some versions of macOS ship with Python 2 and the latest version of the AFDKO is only available for Python 3. You can find instructions for using Brew to install Python 3 on macOS here: Installing Python 3 on Mac OS X. Also: pyenv is a great tool for installing and managing multiple Python versions on macOS.

Note for all users: we STRONGLY recommend the use of a Python virtual environment (venv) and the use of python -m pip install <package> to install all packages (not just AFDKO). Calling pip install directly can result in the wrong pip being called, and the package landing in the wrong location. The combination of using a venv + python -m pip install helps to ensure that pip-managed packages land in the right place.

Note for Linux users (and users of other platforms that are not macOS or Windows): When there is not a pre-built "wheel" for your platform pip will attempt to build the C and C++ portions of the package from source. This process will only succeed if both the C and C++ development tools and libuuid are installed. See build from source below.

Installing

Option 1 (Recommended)

  • Create a virtual environment:

    python -m venv afdko_env
    
  • Activate the virtual environment:

    • macOS & Linux

      source afdko_env/bin/activate
      
    • Windows

      afdko_env\Scripts\activate.bat
      
  • Install afdko:

    python -m pip install afdko
    

Installing the afdko inside a virtual environment prevents conflicts between its dependencies and other modules installed globally.

Option 2 (not recommended unless there is a global conflict)

Local user installation afdko (info):

python -m pip install --user afdko

Updating

Use the -U (or --upgrade) option to update the afdko (and its dependencies) to the newest stable release:

python -m pip install -U afdko

To get pre-release and in-development versions, use the --pre flag:

python -m pip install -U afdko --pre

Uninstalling

To remove the afdko package use the command:

python -m pip uninstall afdko

Build from source

First you must have installed the development tools for your platform.

On macOS, install these with:

xcode-select --install

On Linux (Ubuntu 17.10 LTS or later), install these with:

apt-get -y install python3.9
apt-get -y install python-pip
apt-get -y install python-dev
apt-get -y install uuid-dev

On other POSIX-like operating systems, libuuid and its header files may be in a package named libuuid-devel, util-linux-libs or uuid-dev. The source code for libuuid is maintained in the util-linux repository.

On Windows, you need Visual Studio 2017 or later.

To build the afdko from source, clone the afdko GitHub repository, ensure the wheel module is installed (python -m pip install wheel), then cd to the top-level directory of the afdko, and run:

python -m pip install .

Developing

If you'd like to develop & debug AFDKO using Xcode, run:

CMake -G Xcode .

For further information on building from source see docs/FDK_Build_Notes.md.

Project details


Download files

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

Source Distribution

afdko-5.0.0b15.tar.gz (17.1 MB view details)

Uploaded Source

Built Distributions

afdko-5.0.0b15-pp310-pypy310_pp73-win_amd64.whl (2.7 MB view details)

Uploaded PyPy Windows x86-64

afdko-5.0.0b15-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl (3.4 MB view details)

Uploaded PyPy manylinux: glibc 2.28+ x86-64

afdko-5.0.0b15-pp310-pypy310_pp73-macosx_10_15_x86_64.whl (2.4 MB view details)

Uploaded PyPy macOS 10.15+ x86-64

afdko-5.0.0b15-pp39-pypy39_pp73-win_amd64.whl (2.7 MB view details)

Uploaded PyPy Windows x86-64

afdko-5.0.0b15-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl (3.4 MB view details)

Uploaded PyPy manylinux: glibc 2.28+ x86-64

afdko-5.0.0b15-pp39-pypy39_pp73-macosx_10_15_x86_64.whl (2.4 MB view details)

Uploaded PyPy macOS 10.15+ x86-64

afdko-5.0.0b15-cp312-cp312-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.12 Windows x86-64

afdko-5.0.0b15-cp312-cp312-manylinux_2_28_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.28+ x86-64

afdko-5.0.0b15-cp312-cp312-macosx_10_15_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.12 macOS 10.15+ x86-64

afdko-5.0.0b15-cp312-cp312-macosx_10_15_universal2.whl (3.8 MB view details)

Uploaded CPython 3.12 macOS 10.15+ universal2 (ARM64, x86-64)

afdko-5.0.0b15-cp311-cp311-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.11 Windows x86-64

afdko-5.0.0b15-cp311-cp311-manylinux_2_28_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.28+ x86-64

afdko-5.0.0b15-cp311-cp311-macosx_10_15_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.11 macOS 10.15+ x86-64

afdko-5.0.0b15-cp311-cp311-macosx_10_15_universal2.whl (3.8 MB view details)

Uploaded CPython 3.11 macOS 10.15+ universal2 (ARM64, x86-64)

afdko-5.0.0b15-cp310-cp310-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.10 Windows x86-64

afdko-5.0.0b15-cp310-cp310-manylinux_2_28_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.28+ x86-64

afdko-5.0.0b15-cp310-cp310-macosx_10_15_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.10 macOS 10.15+ x86-64

afdko-5.0.0b15-cp310-cp310-macosx_10_15_universal2.whl (3.8 MB view details)

Uploaded CPython 3.10 macOS 10.15+ universal2 (ARM64, x86-64)

afdko-5.0.0b15-cp39-cp39-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.9 Windows x86-64

afdko-5.0.0b15-cp39-cp39-manylinux_2_28_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.28+ x86-64

afdko-5.0.0b15-cp39-cp39-macosx_10_15_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.9 macOS 10.15+ x86-64

afdko-5.0.0b15-cp39-cp39-macosx_10_15_universal2.whl (3.8 MB view details)

Uploaded CPython 3.9 macOS 10.15+ universal2 (ARM64, x86-64)

File details

Details for the file afdko-5.0.0b15.tar.gz.

File metadata

  • Download URL: afdko-5.0.0b15.tar.gz
  • Upload date:
  • Size: 17.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for afdko-5.0.0b15.tar.gz
Algorithm Hash digest
SHA256 89110350c65d938cfdeb45cc5fe6ddfdddbb052b1da0b2daa1e6766a14402bd0
MD5 091df6be495cfab16cb5d934f4a44245
BLAKE2b-256 e117d69b75650aa24cc729c1f9572715d5d5e5f2977ce5a298cfd5ccd7e2be3a

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-pp310-pypy310_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-pp310-pypy310_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 ca145e514108edc5629b529a2a5ecc7e9cb2cd2322a6d91b8c5717ea8acb1295
MD5 a24ebfdca7527747561f60f3c022d7e2
BLAKE2b-256 c72afb85c7be4af8164ad96d67990e1f557fdcefc8e64fa88edd5c3fa81f5f41

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8b642bb92f431aea880cedf8576ca52108b0401f31f153101fddbe791ca6f501
MD5 17fdc2739fd43a81866a1773a643d7e8
BLAKE2b-256 4aefa714669908a056d2079850c4f07d079d2c4003d03ff10bf63de150790920

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-pp310-pypy310_pp73-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-pp310-pypy310_pp73-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 66d8130f4c0236e5a2fae354cafe541cbc10a96f3807e1ae5bc9079b8a4d3ecc
MD5 3471cad5f112d7f946524ad195c1290e
BLAKE2b-256 1f37d675da379f668b40b426b799ccfb19814e1a32a3c5aa340bc4cff907c9fb

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-pp39-pypy39_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-pp39-pypy39_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 cc40d931a16d2a0f67f6c0bb4d7d180f1666f551de4c52369179e2b65c12d233
MD5 03f3201517425298fc0c43d383b47056
BLAKE2b-256 b319c72f35260e627ce3f7b20c8431013a3f986ea6519f15d6782a7e31ffbf8f

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f1daa96cf012295fc0239b240264172aeaf03dfe7e1090a37146f7f52b9f5e8d
MD5 70548df268a5cdaf9bd1dac46966a676
BLAKE2b-256 06967895fe1e5efa11d9c17fbf194c6f06d1d6e02e68ad5852e0d749bbd272a7

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-pp39-pypy39_pp73-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-pp39-pypy39_pp73-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 0518878912ebbae20cecf246b36754be1e45f9226bbce7f779712bffd0ff795c
MD5 d005939e1060231d70b8d1d3c3cabb97
BLAKE2b-256 7ec3bc6fa04019bbd9b2dbc19a3a2c2ed8b9c099adbf0ccd21610d0087137eb3

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 1f9c81509c9e0df8022af805b18c8a370cce58422edd187a35678dc276e1043b
MD5 16f788e461372db62c3667476e9ca6ed
BLAKE2b-256 37c1740e954b0002a448ef75f60704c67f5de1d9f790ebe0414b4266b02e1355

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 42b80f21c049bb7ac8a56922a2a563e6903e036e7d36c70e34b1fe836fb78ace
MD5 bf6d5d4717cfa8b937ef713cbff43895
BLAKE2b-256 3435c90d573599b6bbc88dbb8b79653965ff83d70785cf65ccabb04f7b61a4b4

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-cp312-cp312-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-cp312-cp312-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 736372a1159532e3a93dbf41e84d3ec263ddfcd0f598839bb48d3892ce79fd13
MD5 10b56cea3a0c306cbed2906be389ea88
BLAKE2b-256 6212b9b414aa394f69701018bb218c3407a6b48cb7b8042821119fa8479e43eb

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-cp312-cp312-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-cp312-cp312-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 5caca36bc412152120f75b5e6239506cb22bb2c0dd3e38457944c235596421ea
MD5 601676bde2fa0515c7dfa6ca35ea75e9
BLAKE2b-256 1938664bf5d684bcc01746510fae2fc6708269388e435be18d63b170b098afe0

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 5482b8b0764fe68ba9c0102df0bd258497167799c18feb5c6afddb2627d36945
MD5 86c8739523e14e8a0dc348d704a643a1
BLAKE2b-256 59cdd5ab82a03175ec5bd8e25fbc9aa6b75a86ebcfceff6952a62076956bd41c

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 873843d727d4e2ffb75731d02dc15848b0d72409783951c360c636c775f53171
MD5 28788e3984d7e12b221f75836280aafd
BLAKE2b-256 7a6dc947c85af0c62c188cdee90d48e33ceb274bc6c42e687575d2f65529242f

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-cp311-cp311-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-cp311-cp311-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 b5552cc611311443ed5e603a982af462138d8fa4b5e4c84871ab00fbe2bb6b35
MD5 1b843b83157bf8c5b7f1545707fa3d53
BLAKE2b-256 8de21c4866455e5ddf700389093f0e0e5b8203d42808fc9f812776fc4ddfcc1d

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-cp311-cp311-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-cp311-cp311-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 96220471e3b59e6ac47bbe1b49702e8ae3b30468dec239c059dcf1119ed2e6ec
MD5 b8a7e1ece05647ec7aada16908074452
BLAKE2b-256 03c5d79992ea108d52ba32f7df3a990b1e787a9fde2a6f28d20f592816321040

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 256fa9dc209b8204cbb04836c753f5d4b585e283b695f88f7fae3d9b091fadaa
MD5 551dd5c5303069f80f4a526913c1fec7
BLAKE2b-256 052a1365029c64e86f7017175d15f64925ae07d1fd582a8b928f3b4bc3ae762d

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2b44016648dfd8a7725ce44ac0f8a4bf52454a425f1b3e38f06832b979647a3b
MD5 7bb704a6efdcd88d4a1c2536f5028bc7
BLAKE2b-256 d8cd38d07a9ab6d02e0760dd92db9c019f0d7ae5c8222ec14aababf3414431eb

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-cp310-cp310-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 3021d0e14ac3470530b6fa50ca7ca05c1f25c441689ee04554a1f7445ffec2ed
MD5 bc802806c76a163c8236f2fb1072bc94
BLAKE2b-256 4f2bb3784c00300a40ac36a1fae6bf2f3e88d41976cbb14ac9f45daf27287cda

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-cp310-cp310-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-cp310-cp310-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 ce0a4fa9ce76830c99f87d037f154b9bc615412d4f02707fc526c5bf0428cf0e
MD5 005be02cad24df7a768a3a411ce2ac4f
BLAKE2b-256 81497141508e2644607a2630ee68022bed5f08e995e8ed657ac47d5040c997c7

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: afdko-5.0.0b15-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for afdko-5.0.0b15-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 55900a8097600329bfe3bbea3db714c3ccec8cb5572f38e80e12529fd7a6d2dc
MD5 9a83b8f6fcb3a4072844f9dd9502d59a
BLAKE2b-256 27c6089f976a35ae2a926e6c0cb9f5018251d2807c05c2156f486bc87d84f492

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a31b50e1a37ae10f4e2619044a19f5f7807cc88e006d4b4ecf06b71103f6639d
MD5 3b52b3b47c0ed242b8471a1f856ed87e
BLAKE2b-256 4b5bcaff880dd925db630a3d249e56a721eb05e808f6daa7b4ac750848fe83cd

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-cp39-cp39-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 2137691ebed5e3cd679cf4aa88c652d05cc356d10ab4a967794260cd2c39e241
MD5 a2ec4de111aea3921fd596cde80d3fc6
BLAKE2b-256 f8814bf5a9a7e13737535b1804cb87efd3ca2c9985593bcd7893f3d4272da8c2

See more details on using hashes here.

File details

Details for the file afdko-5.0.0b15-cp39-cp39-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for afdko-5.0.0b15-cp39-cp39-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 b540e285b244e904980a708037bc97e453fbc1690ac48e0adffcf82021dea8de
MD5 e0a94c02adf23d140f35a49fcb154da1
BLAKE2b-256 e6295be4c45962696b16349d2bae26d6814f49061152b657bf557aa7a2770b8d

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