This PR adds three new Python scripts that takes the layered source UFOs from sources/1-drawing as inputs, and exports assembled UFOs ready to make the various binary fonts, including the COLRv0 font and the new-ish "Spice" COLRv1 font.
It also adds a shell script that runs the above scripts and then builds the final fonts using fontmake.
The main idea is to deprecate all UFOs in sources/2-build, as they are largely derived from the UFOs in sources/1-drawing.
Our aim is to stay compatible with the currently released fonts as much as possible, but there are still some open issues that I think we should address separately.
One issue is with Bungee Basic Shade, which has some manual changes in the sources/2-build files compared to the sources/1-drawing sources. I'm looking into a way to integrate those into the sources cleanly.
The number of commits in this PR is quite high, and there was one mistake commit with a lot of files, so I think I will squash all changes into one clean commit when merging.
This PR adds three new Python scripts that takes the layered source UFOs from
sources/1-drawing
as inputs, and exports assembled UFOs ready to make the various binary fonts, including the COLRv0 font and the new-ish "Spice" COLRv1 font.It also adds a shell script that runs the above scripts and then builds the final fonts using fontmake.
The main idea is to deprecate all UFOs in
sources/2-build
, as they are largely derived from the UFOs insources/1-drawing
.Our aim is to stay compatible with the currently released fonts as much as possible, but there are still some open issues that I think we should address separately.
One issue is with Bungee Basic Shade, which has some manual changes in the
sources/2-build
files compared to thesources/1-drawing
sources. I'm looking into a way to integrate those into the sources cleanly.The number of commits in this PR is quite high, and there was one mistake commit with a lot of files, so I think I will squash all changes into one clean commit when merging.
A lot of this work was done by @martelahaie.
This implements #76.
This fixes #87 and fixes #90.