It’s quite an eye opener to see how much code there is to deal with fonts…
Can we start by agreeing some terminology?
If a font is made up of filled area(s) in empty space then a boundary path between fill and emptiness is a contour. A contour has direction and that direction dictates which side is fill. The standards for Truetype, Postscript etc fonts require that contours are closed - i.e. fill is always contained. However it is possible to install a font with unclosed contours in Windows.
In the code there are references to Single Stroke fonts, Double Stroke fonts and Perimeter Stroke fonts. Could you explain what each of these are? My uneducated assumption would be that:
- Single Stroke fonts might be those with unclosed contours or those with contours closed with an automatic closure line from end point to start point,
- Double Stroke fonts would have closed contours where closure is obtained by reversing the path back over itself to the start so there is no room for fill, and
- Perimeter Stroke fonts are normal Truetype, Postscript etc fonts with closed contours always allowing space for fill.