TrueType Hinting – Big Screens for Small Details

Here at IDRSolutions, we like our screens BIG.

Part of the reason for that is that the sort of work we do tends to need you to see many different pieces of information at once. A prime example of this is working on our TrueType Hinting engine, which we previously discussed on this blog.

TrueType hinting takes the points stored in a glyph’s outline and moves them around by running a program stored along with the points. Originally this was used for Grid Fitting – making text readable at small sizes – but it found a secondary use in that some fonts store a set of brushstrokes, then combine them to form a glyph. The hinting program is then used to change the brushstrokes to be the right shape and size.

All of this happens within a complex TrueType Virtual Machine, which has to know how to execute all 122 instructions and their many variations. Some of the documentation is a little vague, so often things don’t work quite right first time, and the only way to fix it is to jump right into the code and see what’s going on! That’s why we built a fully featured debugger – we can step through the glyph’s program seeing the whole state of the TrueType VM on our big shiny screens.

Obviously when rendering our text normally the hinting for every character happens faster than you can blink, but we’ve recorded a video of our Debugger going through a single glyph and added some comments so you can see what goes on.

If you have a big screen too, make sure to watch in HD!

This post is part of our “Understanding the PDF File Format” series. In each article, we discuss a PDF feature, bug, gotcha or tip. If you wish to learn more about PDF, we have 13 years worth of PDF knowledge and tips, so click here to visit our series index!

This post is part of our “Fonts Articles Index” in these articles we explore Fonts.

Related Posts:

The following two tabs change content below.
Sam is a developer at IDRsolutions who mostly specialises in font support and conversion. He's also enjoyed working with Java 3D, Java FX and Swing. His other interests include music and game design.
SamH

About Sam Howard

Sam is a developer at IDRsolutions who mostly specialises in font support and conversion. He’s also enjoyed working with Java 3D, Java FX and Swing. His other interests include music and game design.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>