Skip to main content

Compile fonts from sources (UFO, Glyphs) to binary (OpenType, TrueType).

Project description

Travis Build Status Python Versions PyPI Version

fontmake

This library provides a wrapper for several other Python libraries which together compile fonts from various sources (.glyphs, .ufo) into binaries (.otf, .ttf).

Installation

Fontmake requires Python 2.7, 3.5 or later.

Releases are available on PyPI and can be installed with pip.

pip install fontmake

Use the -U, --upgrade option to update fontmake and its dependencies to the newest available release:

pip install -U fontmake

Alternatively, you can download the git repository and install from source:

git clone https://github.com/googlei18n/fontmake
cd fontmake
pip install .

Developers who want to quickly test changes to the source code without re-installing, can use the “–editable” option when installing from a local source checkout:

pip install -e .

However, even with an editable installation, it is recommended to always reinstall fontmake after pulling the latest changes from the upstream repo:

git pull
pip install -e .

This makes sure that the requirements are still met, i.e. updating old ones to new minimum required versions, or installing new ones as needed.

It also ensures that the package metadata is updated, e.g. when displaying the installed version with pip list or pip show fontmake.

Virtual environments

It is recommended to install fontmake inside a “virtual environment” to prevent conflicts between its dependencies and other modules installed globally.

You can either install virtualenv (pip install --user virtualenv), or use the Python 3 venv module.

  • To create a new virtual environment, e.g. inside the ‘env’ directory:

    python -m virtualenv env

    Similarly, if you are using the venv module:

    python3 -m venv env
  • To “activate” a virtual environment, i.e. temporarily place the folder containing the executable scripts on the shell’s $PATH so they can be run from anywhere, run this from the Bash shell (e.g., Linux, Mac):

    source env/bin/activate

    If you are using the Windows Command Prompt:

    env/bin/activate.bat
  • To deactivate the virtual environment and restore the original environment, just do:

    deactivate

Dependencies and requirements files

Fontmake is mostly the front-end interface for a number of Python libraries.

These are automatically installed or updated to the minimum required version whenever you install a given fontmake version.

Pip also allows to specify a set of packages that work together in text files. These can be used with the -r option to recreate a particular environment.

There are two such requirements files in fontmake repository:

  • dev_requirements.txt: contains the URLs of the git repositories for all fontmake’s dependencies.

  • requirements.txt: contains the current released versions of the direct dependencies which fontmake is tested against.

To install from the latest development versions, or upgrade an existing environment to the current HEAD commit of the respective master branches, you can do:

pip install -r dev_requirements.txt

For more information on requirements files, see pip documentation.

Usage

After installation, you can use the fontmake console script. For example:

fontmake -g MyFont.glyphs  # outputs binary font files for masters only

Use fontmake -h to see options for specifying different types of input and output.

You can also use fontmake as a module to run intermediate steps in the build process, via methods of the fontmake.font_project.FontProject class.

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

fontmake-1.6.0.zip (34.7 kB view details)

Uploaded Source

Built Distribution

fontmake-1.6.0-py2.py3-none-any.whl (22.7 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file fontmake-1.6.0.zip.

File metadata

  • Download URL: fontmake-1.6.0.zip
  • Upload date:
  • Size: 34.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for fontmake-1.6.0.zip
Algorithm Hash digest
SHA256 1c484e4a82473db4a2f4e21b28119b9ad1ff5e72a76650c9d9d6db782b3ea2bb
MD5 a6ab2324d6536cf56273390804a50f6e
BLAKE2b-256 8cc91079d27a10ee393ec2c48c6f0d4f5930faa9684f0b323ae6eafc241480d6

See more details on using hashes here.

Provenance

File details

Details for the file fontmake-1.6.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for fontmake-1.6.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 5ca960bd803adcefd537c4d5e336aab8a36093d443fef3d48fbc75a087451a92
MD5 2eeb1ad09c4e38c55c792c3c5871df8c
BLAKE2b-256 1791040621e820d59bbabc484ae76895e1252f15c2ed96dba3537093285056b6

See more details on using hashes here.

Provenance

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