The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

TITLE

ttfprintot - prints the Script/Language/Feat hierarchy of OpenType files

SYNOPSIS

  ttfprintot [-l] [-t volt.txt] [-v] [-x] infile.ttf ...
  ttfprintot -h

Prints to STDOUT information about the Script, Language, and Feature structure of one or more OpenType font files.

OPTIONS

  -l   enumerate Lookups as well as Scripts, Languages and Features
  -t   Volt source file to use instead of what is in the font
  -v   include debugging entries added by Microsoft VOLT
  -x   output xml formatted alias list suitable for TypeTuner feature file
  -h   print help message

DESCRIPTION

Here is an excerpt from the output of ttfprintot showing the GPOS table of DoulosSIL Regular:

        GPOS:
          Scripts:
            <latn> Latin
              <DEFAULT>
                <kern> Kerning
                <mark> Mark Positioning
                <mkmk> Mark to Mark Positioning
              <IPA >  -> 'DEFAULT'
          Features:
            <kern> Kerning -> 4
            <mark> Mark Positioning -> 0,1
            <mkmk> Mark to Mark Positioning -> 2,3

This shows that there is one script (with tag "latn") and that contains both the DEFAULT language and a language with tag "IPA ". The "->" beside the IPA language indicates that internally the DEFAULT and IPA languages use the same language table. The sequences of numbers beside the Features entries give the indicies of lookups that are assigned to the features. Thus the Mark Positioning feature uses lookups 0 and 1.

If -l is provided, the lookups are also enumerated, e.g:

  Lookups:
    0: Name = LamAlefConnection
        Type = 3 (Cursive) Flag = 9 (RightToLeft IgnoreMarks)
        Subtable 0: Format = 1 Number of rules = 38
    1: Name = MarksAbove
        Type = 4 (Mark to base) Flag = 1 (RightToLeft)
        Subtable 0: Format = 1 Number of rules = 828
    2: Name = DaggerOnLam
        Type = 6 (Mark to mark) Flag = 1 (RightToLeft)
        Subtable 0: Format = 1 Number of rules = 57

Note that lookup names will be output only if the VOLT source project is included in the font or supplied by -t parameter.

As a special aid to font developers programming for SIL TypeTuner, specifying -x alters the output to be an xml excerpt defining aliases for the font's lookups (requires VOLT project either inside the font or supplied with -t).

When a font has been compiled, but not shipped, by Microsoft VOLT, the OpenType tables contain additional languages and features used by VOLT's Proofing Tool. These are not included in the output from ttfprintot unless the -v option is provided.