python vtt_updater.py source/VTT/font.ttf source/VTT/exported.ttf --save_as source/VTT/updated.ttf
VTT is a tool for creating complex and powerful TrueType hinting in the best possible way. TrueType hinting is becoming least relevant every year, the community is becoming smaller and smaller and xxxx. There has been a discussion whether it should be open sourced and it looks that it might get one day! VTT has runs on Windows recently we got commandline interface for it and some voices on typedrawers.
VTT saves its files in TTF. From outside you can't tell them apart, except VTT files tend to be much larger. Inside they contain additional tables TSI0, TSI1, TSI2, TSI3, TSI4 & TSI5. TSI3 f.e. holds probably the most important data of your VTT workflow – instructions for each individual glyph.
- It compares VTT file with TTF file in which you want import the instructions.
- It warns you that there are incompatible glyphs and it won't import these.
- If glyph names differ, f.e. one font uses production names and the others doesnt, then it remaps glyphs based on their unicodes. Glyphs without unicode won't be remapped.
- It copies values from maxp and head table.
VTT-updater has lived for some years, I learnt how to code a bit better and how to deliver better solution for this problem. The older solution took advange of the possibility of exporting a XML file with all the data. This extra step made things much complicated to inconporate into one's workflow.
- Having Python installed is the first step, make sure you have it. There are plenty of tutorials already out there. This tool won't run without it. Make sure it works on your machine, you can test it by opening your terminal, typing
python
orpython 3
and hittingenter
. - You need to have
fontTools
installed. If you don't have it yet, run command[python/python3] -m pip install fonttools
- Run
vtt_updater
by navigating to where you copied this repository and run[python/python3] vtt_updater.py where/my/folder/vtt.ttf where/my/folder/exported.ttf
there are two positional arguments
- Path to a font containing VTT instructions
- Path to a font in which you want to import the instructions there are few optional arguments
-s, --save_to
path where to save the updated file.--log
prints out warnings about incompatible contours--legacy
uses legacy code that has been available until January 2021. Legacy version requires additionalXML
file which you can obtain in VTT underFile > Export > All code to XML
.
###########################
### |####/ __ _____ __/##
### |##/ /##/ /####/ /#####
### / /###/ /####/ /######
###__/####/_/####/_/#######
###########################