Hello, looking for help with TrueType hinting

Options
Hello,

I am hoping to find help understanding how to hint a font that I started work on a long time ago. The design is very simple and minimal. It is monospace, sans-serif, and all of the stem widths are the same. Every line is straight and at an angle of 0 degrees, 45 degrees, or 90 degrees. It is intended for use without grayscale or color antialiasing.

I recently put the work that I have done to date in a public GitHub repository here: https://github.com/pthomas505/fonts and the current iteration of the design is here: https://github.com/pthomas505/fonts/tree/main/fonts/family_name/monospace/size1/design_2.

I am attempting to do the hinting with TrueType, preferably on Linux, but I am also open to using Windows. I have played around with xgridfit and Microsoft Visual TrueType, and a long time ago with FontLab. The biggest difficulty that I am having is figuring out how to get the diagonal stem widths to match the horizontal and vertical stem widths as closely as mathematically possible at every point size.

Is this an appropriate place to look for assistance with this kind of question, or if not, could someone maybe point me to one that is?

Thank you kindly for your time.
Tagged:

Comments

  • Mike Duggan
    Options
    you might find some answers at rastertragedy.com 
  • Mike Duggan
    Options
    there is this article also for hinting italics in VTT https://learn.microsoft.com/en-us/typography/truetype/italic-hinting-examples

  • Mike Duggan
    Options
    Jan Šindler did some great work on hinting for monochrome using VTT, for his bachelor work, I dont think it is published anywhere, but he may have some ideas. 
  • John Butler
    Options
  • pthomas505
    Options
    Thank you all for the suggestions. I tried the YGT tool recently, and have looked at those articles in the past, but I haven't read them closely through in their entirety.
  • Jens Kutilek
    Options
    Just to make sure, you started with the bitmap fonts and now want to have a TrueType (outline) font hinted to match the bitmap fonts as closely as possible?
  • Jens Kutilek
    Options
    I would probably try to draw the diagonals like this, so you have your diagonal width right there measured along the blue lines. Then, when you set the projection and freedom vectors to the 45° line, you can control the width of the diagonals directly, and independently of the vertical and horizontal elements.


  • pthomas505
    Options
    That is a clever approach! I will give it a try. Thank you!
  • pthomas505
    Options
    I found and modified some Xgridfit code from a while back (attached) that seems to work to make the diagonal stem change width at the same time that the horizontal and vertical stems do. I'm not sure if there is a way to maybe replicate this in something like VTT, because I think typing out the Xgridfit code by hand is going to be more time intensive than I would prefer.
  • Mike Duggan
    Options
    It has been a long time since I used VTT to control diagonals for Black and White rendering. There was some old code used Vacuformround I think it was called, but I am not even sure if it supported still. If you are looking for a technical discussion and possible answers, Greg Hitchcock at Microsoft might be able to help you, and Jan Sindler also did a project very similar to this, and may also have some ideas. 
  • pthomas505
    Options
    Thank you.
  • Thomas Phinney
    Options
    Wasn’t Vacuformround for creating regularized/symmetrical patterns at low ppem for round-“ish” (but not necessarily perfectly symmetrical left/right or top/bottom) input glyphs such as O, o and 0?

    I will admit it has been almost 30 years, so I might be remembering that incorrectly. I bet Greg knows!
  • Mike Duggan
    Options
    Wasn’t Vacuformround for creating regularized/symmetrical patterns at low ppem for round-“ish” (but not necessarily perfectly symmetrical left/right or top/bottom) input glyphs such as O, o and 0?

    I will admit it has been almost 30 years, so I might be remembering that incorrectly. I bet Greg knows!
    yes thats correct, but it reminded me of the request here, as the effect of vacuform made the screen font look like one that had been designed with 45 degree angles : ) 
  • Thomas Phinney
    Options
    Ah, I see. Yes, the curves would often come out as straight diagonal bits at low-middling ppem sizes, such as when an o or O was 8-12 pixels high.