![]() |
![]()
| ![]() |
![]()
NAMEFont::TTF::Cmap - Character map tableDESCRIPTIONLooks after the character map. For ease of use, the actual cmap is held in a hash against codepoint. Thus for a given table:$gid = $font->{'cmap'}{'Tables'}[0]{'val'}{$code}; Note that $code should be a true value (0x1234) rather than a string representation. INSTANCE VARIABLESThe instance variables listed here are not preceded by a space due to their emulating structural information in the font.
The following cmap options are controlled by instance variables that start with a space:
METHODS$t->readReads the cmap into memory. Format 4 subtables read the whole subtable and fill in the segmented array accordingly.$t->ms_lookup($uni)Finds a Unicode table, giving preference to the MS one, and looks up the given Unicode codepoint in it to find the glyph id.$t->find_msFinds the a Unicode table, giving preference to the Microsoft one, and sets the "mstable" instance variable to it if found. Returns the table it finds.$t->ms_encReturns the encoding of the microsoft table (0 => symbol, etc.). Returns undef if there is no Microsoft cmap.$t->out($fh)Writes out a cmap table to a filehandle. If it has not been read, then just copies from input file to output$t->XML_element($context, $depth, $name, $val)Outputs the elements of the cmap in XML. We only need to process val here$t->minsize()Returns the minimum size this table can be in bytes. If it is smaller than this, then the table must be bad and should be deleted or whatever.$t->updateTidies the cmap table.Removes MS Fmt12 cmap if it is no longer needed. Removes from all cmaps any codepoint that map to GID=0. Note that such entries will be re-introduced as necessary depending on the cmap format. @map = $t->reverse(%opt)Returns a reverse map of the Unicode cmap. I.e. given a glyph gives the Unicode value for it. Options are:
is_unicode($index)Returns whether the table of a given index is known to be a unicode table (as specified in the specifications)BUGS
AUTHORMartin Hosken <http://scripts.sil.org/FontUtils>.LICENSINGCopyright (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.
|