.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "Font::TTF::Post 3" .TH Font::TTF::Post 3 2023-07-25 "perl v5.38.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH NAME Font::TTF::Post \- Holds the Postscript names for each glyph .SH DESCRIPTION .IX Header "DESCRIPTION" Holds the postscript names for glyphs. Note that they are not held as an array, but as indexes into two lists. The first list is the standard Postscript name list defined by the TrueType standard. The second comes from the font directly. .PP Looking up a glyph from a Postscript name or a name from a glyph number is achieved through methods rather than variable lookup. .PP 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. .PP The way to look up Postscript names or glyphs is: .PP .Vb 2 \& $pname = $f\->{\*(Aqpost\*(Aq}{\*(AqVAL\*(Aq}[$gnum]; \& $gnum = $f\->{\*(Aqpost\*(Aq}{\*(AqSTRINGS\*(Aq}{$pname}; .Ve .SH "INSTANCE VARIABLES" .IX Header "INSTANCE VARIABLES" Due to different systems having different limitations, there are various class variables available to control what post table types can be written. .ie n .IP $Font::TTF::Post::no25 4 .el .IP \f(CW$Font::TTF::Post::no25\fR 4 .IX Item "$Font::TTF::Post::no25" If set tells Font::TTF::Post::out to use table type 2 instead of 2.5 in case apps cannot handle version 2.5. .IP VAL 4 .IX Item "VAL" Contains an array indexed by glyph number of Postscript names. This is used when writing out a font. .IP STRINGS 4 .IX Item "STRINGS" An associative array of Postscript names mapping to the highest glyph with that name. These may not be in sync with VAL. .PP In addition there are the standard introductory variables defined in the standard: .PP .Vb 9 \& FormatType \& italicAngle \& underlinePosition \& underlineThickness \& isFixedPitch \& minMemType42 \& maxMemType42 \& minMemType1 \& maxMemType1 .Ve .SH METHODS .IX Header "METHODS" .ie n .SS $t\->read .el .SS \f(CW$t\fP\->read .IX Subsection "$t->read" Reads the Postscript table into memory from disk .ie n .SS $t\->out($fh) .el .SS \f(CW$t\fP\->out($fh) .IX Subsection "$t->out($fh)" Writes out a new Postscript name table from memory or copies from disk .ie n .SS "$t\->XML_element($context, $depth, $key, $val)" .el .SS "\f(CW$t\fP\->XML_element($context, \f(CW$depth\fP, \f(CW$key\fP, \f(CW$val\fP)" .IX Subsection "$t->XML_element($context, $depth, $key, $val)" Outputs the names as one block of XML .ie n .SS $t\->\fBminsize()\fP .el .SS \f(CW$t\fP\->\fBminsize()\fP .IX Subsection "$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. .SH BUGS .IX Header "BUGS" .IP \(bu 4 No support for type 4 tables .SH AUTHOR .IX Header "AUTHOR" Martin Hosken . .SH LICENSING .IX Header "LICENSING" Copyright (c) 1998\-2016, SIL International (http://www.sil.org) .PP 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.