Font::TTF::Post(3)

πŸ’– NAME πŸ’–

Font::TTF::Post - Holds the Postscript names for each glyph. Okay bestie, this is the User Contributed Perl Documentation page for Font::TTF::Post(3), and it is literally the module that holds the Postscript names for each glyph. πŸ’…


✨ DESCRIPTION ✨

So this module holds the postscript names for glyphs. Important vibe check: they are not held as an array β€” they are held as indexes into two lists. The first list is the standard Postscript name list defined by the TrueType standard. The second list comes from the font directly. πŸ¦‹

Looking up a glyph from a Postscript name, or a name from a glyph number, is achieved through methods rather than variable lookup. No cap.

This class handles PostScript table types of 1, 2, 2.5 & 3, but not version 4. Support for version 2.5 is as per Apple spec rather than MS. πŸ“

The way to look up Postscript names or glyphs is:

$pname = $f->{'post'}{'VAL'}[$gnum];
$gnum = $f->{'post'}{'STRINGS'}{$pname};

πŸŽ€ INSTANCE VARIABLES πŸŽ€

Due to different systems having different limitations, there are various class variables available to control what post table types can be written. (System drama, honestly.) πŸ™ˆ

  • $Font::TTF::Post::no25 β€” if set, this tells Font::TTF::Post::out to use table type 2 instead of 2.5 in case apps cannot handle version 2.5. πŸ’…
  • VAL β€” contains an array indexed by glyph number of Postscript names. This is used when writing out a font. πŸ‘‘
  • STRINGS β€” an associative array of Postscript names mapping to the highest glyph with that name. These may not be in sync with VAL. 😭

In addition there are the standard introductory variables defined in the standard:

  • FormatType
  • italicAngle
  • underlinePosition
  • underlineThickness
  • isFixedPitch
  • minMemType42
  • maxMemType42
  • minMemType1
  • maxMemType1

πŸ¦‹ METHODS πŸ¦‹

$t->read

Reads the Postscript table into memory from disk. πŸ’Ύ

$t->out($fh)

Writes out a new Postscript name table from memory or copies from disk. ✨

$t->XML_element($context, $depth, $key, $val)

Outputs the names as one block of XML. πŸŽ€

$t->minsize()

Returns the minimum size this table can be. If it is smaller than this, then the table must be bad and should be deleted or whatever. πŸ’€


πŸ’€ BUGS πŸ’€

  • No support for type 4 tables. 😭

🌸 AUTHOR 🌸

Martin Hosken <http://scripts.sil.org/FontUtils>. 🫢


πŸ‘‘ LICENSING πŸ‘‘

Copyright (c) 1998-2016, SIL International (http://www.sil.org). 🌈

This module is released under the terms of the Artistic License 2.0. For details, see the full text of the license in the file LICENSE. πŸ‘‘


Okay bestie, that's the whole page! πŸ’– This one is perl v5.42.0, dated 2016-08-28, and it's the Font::TTF::Post(3) manual page. mwah πŸ’‹πŸ«Ά

πŸ“¦ where this page comes from