-
Notifications
You must be signed in to change notification settings - Fork 173
How to use OpenBakery
OpenBakery is a command-line tool for checking the technical quality of font files.
Adobe Fonts font-processing pipeline uses OpenBakery to validate all the fonts submitted by foundry partners.
OpenBakery includes a profile named check-adobefonts which will execute only the checks that are deemed important to the Adobe Fonts team.
-
Python version 3.8 (or greater)
To determine if your system has Python installed and which version, run this command:python --version
Please refer to the instructions provided at python.org for downloading and installing Python on your platform. -
pipversion 22.0 (or greater)
To determine if your Python environment haspipinstalled and which version, run this command:python -m pip --version
Please refer to the instructions provided at pip.pypa.io for downloading and installingpipon your Python environment.
python3 (instead of python) in the commands below.
Command to install a stable version of OpenBakery:
python -m pip install --upgrade openbakery
Command to install a beta version of OpenBakery:
python -m pip install --upgrade --pre openbakery
OpenBakery's functionality is organized into profiles. Each profile invokes specific font checks. To get a list of all the profiles run this command:
openbakery --list-subcommands
adobefonts
fontbureau
fontwerk
googlefonts
iso15008
notofonts
opentype
ufo-sources
universal
proposals
check-profile
The installation commands above enable you to run the universal or the opentype profiles on a font, like so:
openbakery universal MyFont-Regular.ttf
To test your fonts with other profiles, you need to install openbakery with a corresponding extra. The command below installs openbakery with all the necessary dependencies for running the checks in the googlefonts profile:
python -m pip install --upgrade 'openbakery[googlefonts]'
Running OpenBakery requires specifying a profile. Adobe Fonts profile is named check-adobefonts.
-
on one font:
openbakery check-adobefonts MyFont-Regular.ttf -
on one font in verbose mode:
openbakery check-adobefonts --verbose MyFont-Regular.ttf -
on one font and generate a report in HTML format:
openbakery check-adobefonts --html report.html MyFont-Regular.ttf -
on one font, but only show the checks that FAIL:
openbakery check-adobefonts --loglevel FAIL MyFont-Regular.ttf -
on multiple fonts:
openbakery check-adobefonts MyFont-Regular.ttf MyFont-Bold.ttf MyFont-Italic.ttf MyFont-BoldItalic.ttf -
on multiple fonts, using a wildcard:
openbakery check-adobefonts MyFont-*.ttf
openbakery check-adobefonts --list-checks MyFont-Regular.ttf
openbakery check-adobefonts -x com.google.fonts/check/font_version -x com.adobe.fonts/check/sfnt_version MyFont-Regular.otf
-
or simply,
openbakery check-adobefonts -x font_version -x sfnt_version MyFont-Regular.otf
openbakery check-adobefonts -c com.google.fonts/check/font_version -c com.adobe.fonts/check/sfnt_version MyFont-Regular.otf
-
or simply,
openbakery check-adobefonts -c font_version -c sfnt_version MyFont-Regular.otf
openbakery check-adobefonts --help
-
INFO
The check's output is merely informational.
-
PASS
The check succeeded. Congratulations! If your font gets enough of these, you might even get a treat. (Seriously! 😀)
-
SKIP
The check was skipped because it is not relevant for the font being checked. For example, variable font checks are skipped when the font is static.
-
WARN
A font issue that you may consider addressing. For more details, read the check's output.
-
FAIL
A font issue that must be fixed. Adobe Fonts font-processing pipeline will reject the font.
-
ERROR
The check failed because of a bug in OpenBakery's own code.
Please report it at https://github.com/googlefonts/openbakery/issues