Click Here to Install Silverlight*
United StatesChange|All Microsoft Sites

Typography Home   Typography Home

Developing fonts > Tools & SDKs > VTT resources

Visual TrueType sample fonts

Microsoft Typography
February 1999

The sample fonts 'Myfont42.source.ttf' and 'MyFont.source.ttf' include outlines taken from Trebuchet MS as a help to novice or non-TrueType hinters.

About these sample source files

  • Only A-Z, a-z, and composites 'Adieresis' (#98) and 'abolle' (#110) are used as examples. (the original Trebuchet was hinted in lower level language. These outlines were hinted in VTT.)
  • The hint data in MyFont.source.ttf should be considered the first stage of the hinting process, not final hinting data. I have used very few deltas hints and have not tuned every ppem size.
  • I have used different methods of hinting similar glyphs or features to show there are different methods of approaching a glyph. It should be stressed that in actual production, you should find a strategy that works best for the current font and then be consistent. Examples of differences are to the UC V, W, X and Y, lowercase v, w, and x.
  • Other examples are the 'Adieresis' and the 'abolle'. 'Adieresis' shows how to make a composite and how to use the functions that help in controlling the diacritic position at low sizes. The dieresis was chosen since it is made of two outlines, the bolle was chosen because, like the dieresis, it is made of two outlines but can be and needs to be handled differently than the dieresis.
  • In the 'abolle', I use the CALL[] 79 function to test the Y distance and shift the outer contour. Then only shift (SHC[2], #) the middle contour. In the A dieresis I actually test each dots distance separately and shift them separately (calling the function twice). I could (and probably should) test one dot and then shift it in the CALL[] function, then use SHC[2], # to move the other outline. You can try this yourself. Go to glyph #98, the "Adieresis". You'll notice the last two instructions in the 'glyph program' window are two function calls to function 79. If you remove and compile (cntl-R or cmd-R) the last function call and look at 15ppem you will notice the right dot has dropped. If you replace that last CALL[] with a "SHC[2], 3" the dot will be shifted back just as it was when we where using the CALL[] function and testing this dot separately. This is how the instructions are for the 'abolle' glyph #110.

Myfont42 specific information

With Microsoft Visual TrueType 4.2, the font 'myfont42_source.ttf' is included. This file was originally created as an example for VTT 4.0. It has been updated for VTT 4.2.

What was updated:

  • A Euro was added in Glyph position 187. The currency symbol was moved to position 210. The Mac 'cmap' platform (1) encoding (0) entry for the currency symbol has been removed. The Euro was mapped in the 'cmap' as x20AC in the Microsoft platform (3) encoding (1) 'cmap' and xDB in the Macintosh platform (1) encoding (0).
  • A bitmap was embedded at 13ppem for the Euro from Comic Sans MS with Microsoft SBIT32.EXE. The .bdf file used to embed the bitmap was created with Fontographer 4.1 for Windows.

A note about embedding bitmaps via Unicode indices.

It is possible to include a bitmap for any glyph with a Unicode value. The syntax used in the .bdf should be as follows:

STARTCHAR PostScript_name.Unicode_index.glyph_index

The glyph index is 189, an entry in the MS 'cmap' (3) platform (1) for Unicode x20AC and an entry in the 'post' table 189 = Euro. The following entries in the .bdf all embedded the bitmap with sbit32.exe correctly.


These did NOT work :


  • A VTT 4.2 Control Program was created.
    Default values from the Control Program template (CVTtmpl.txt) were kept for the following settings:
    • InstructionsOn @8..2047
    • DropOutCtrlOff @144
    • CvtCutIn = 4, 2.5@29, 0@128
  • Glyph height overshoots using relative inheritance set free at 51ppem.
  • Global main X (66) and main Y (67) CVTs break free from main font CVT (65) at 17ppem (stems increase to two pixels).
  • Uppercase, lowercase and figure X and Y straight strokes (68 and 72) break free from main X CVT (66) at 41 or 46ppem.
  • Uppercase and lowercase X and Y round strokes (70 and 74) break free from Uppercase X and Y CVTs (68 and 72) at 100ppem.
  • A new group 'Diacritics', was introduced in the Control Program and added to my version of the character group data file (CharGrp.txt). This version of the character group data file is not the same as the one you received with VTT4.2. In normal hinting you will have to add the new Groups to the CharGrp.txt file for VTT to automatically select CVTs. See the VTT 4.2 release notes on how to add new character groups to the Control Program and character group data file.
  • All CVT entries from the original sample MyFont were added to the Control Program template.

Top of page

© 2017 Microsoft Corporation. All rights reserved. Contact Us |Terms of Use |Trademarks |Privacy & Cookies