ignatov / Haack

Hæck
145 stars 7 forks source link

Upstream Build and Hinting Process in Hack #4

Open chrissimpkins opened 7 years ago

chrissimpkins commented 7 years ago

Copied from the thread: https://github.com/chrissimpkins/Hack/issues/35#issuecomment-305985407

For ttf files (recommended for use across all platforms), I built with FontLab V as “pre-hinted” ttf build files, then used our ttfautohint based scripted hinting approach that is contained in the following script file:

https://github.com/chrissimpkins/Hack/blob/master/postbuild_processing/tt-hinting/autohint.sh

This uses hinting settings that are defined in the -TA- files in this directory:

https://github.com/chrissimpkins/Hack/tree/master/postbuild_processing/tt-hinting

These files apply optimized hinting to the main character set files that are used in code. We never ran through optimizations for extended character sets that were not commonly used in code because this was not our goal. If you replicate this approach, you will get hinting in your new ligature characters (ttfautohint hints all characters in the set) but you may need to tweak these if you find that they do not look as intended at certain glyph sizes.

For otf files, the build files are hinted with the built in otf hinting used in FontLab V. You will get good automated hinting of otf files in Glyphs as well (probably better c/w FontLab).

On OS X, the hinting is automated by the operating system and hints are ignored. TTF and OTF files should both look similar and good.

For Windows and Linux, the hints really, really matter (see a large number of the closed issue reports) and I suggest that you investigate how your new glyphs appear at a range of sizes commonly used in code editors if you are targeting these platforms.

Anyone can repeat this process on Haack ttf build files. Feel free to grab all hinting files and implement in a Haack specific manner in this fork.

Information about ttfautohint: https://www.freetype.org/ttfautohint/

Information about Control Instructions Files to optimize the automated hinting with ttfautohint in all new glyphs that you add and other glyphs that were not further optimized upstream: https://www.freetype.org/ttfautohint/doc/ttfautohint.html#control-instructions

Best of luck guys! Look forward to seeing what you create. And if you put ttfautohint to good use, pitch some beer money in @lemzwerg 's jar to keep the lights on. He provided us with a tremendous amount of help with the ttf hinting in Hack and we are big fans of ttfautohint.