Font::TTF::OS_2.3pm

Langue: en

Version: 2008-06-11 (MeeGo - 06/11/10)

Section: 3 (Bibliothèques de fonctions)

NAME

Font::TTF::OS_2 - the OS/2 table in a TTF font

DESCRIPTION

The OS/2 table has two versions and forms, one an extension of the other. This module supports both forms and the switching between them.

INSTANCE VARIABLES

No other variables than those in table and those in the standard:
     Version
     xAvgCharWidth
     usWeightClass
     usWidthClass
     fsType
     ySubscriptXSize
     ySubScriptYSize
     ySubscriptXOffset
     ySubscriptYOffset
     ySuperscriptXSize
     ySuperscriptYSize
     ySuperscriptXOffset
     ySuperscriptYOffset
     yStrikeoutSize
     yStrikeoutPosition
     sFamilyClass
     bFamilyType
     bSerifStyle
     bWeight
     bProportion
     bContrast
     bStrokeVariation
     bArmStyle
     bLetterform
     bMidline
     bXheight
     ulUnicodeRange1
     ulUnicodeRange2
     ulUnicodeRange3
     ulUnicodeRange4
     achVendID
     fsSelection
     usFirstCharIndex
     usLastCharIndex
     sTypoAscender
     sTypoDescender
     sTypoLineGap
     usWinAscent
     usWinDescent
     ulCodePageRange1
     ulCodePageRange2
     xHeight
     CapHeight
     defaultChar
     breakChar
     maxLookups
 
 

Notice that versions 0, 1, 2 & 3 of the table are supported. Notice also that the Panose variable has been broken down into its elements.

METHODS

$t->read

Reads in the various values from disk (see details of OS/2 table)

$t->out($fh)

Writes the table to a file either from memory or by copying.

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

Tidies up the hex values to output them in hex

$t->XML_end($context, $tag, %attrs)

Now handle them on the way back in

$t->update

Updates the OS/2 table by getting information from other sources:

Updates the "firstChar" and "lastChar" values based on the MS table in the cmap.

Updates the sTypoAscender, sTypoDescender & sTypoLineGap to be the same values as Ascender, Descender and Linegap from the hhea table (assuming it is dirty) and also sets usWinAscent to be the sum of Ascender+Linegap and usWinDescent to be the negative of Descender.

BUGS

None known

AUTHOR

Martin Hosken Martin_Hosken@sil.org. See Font::TTF::Font for copyright and licensing.