Class: I2CE FontMetricAFM: Difference between revisions

From IHRIS Wiki
No edit summary
No edit summary
Line 2: Line 2:
*Extends the class: [[Class: I2CE_FontMetricMultiDirection | I2CE_FontMetricMultiDirection]].
*Extends the class: [[Class: I2CE_FontMetricMultiDirection | I2CE_FontMetricMultiDirection]].
*Parent Classses:  [[Class: I2CE_FontMetricMultiDirection | I2CE_FontMetricMultiDirection]] [[Class: I2CE_FontMetric | I2CE_FontMetric]]
*Parent Classses:  [[Class: I2CE_FontMetricMultiDirection | I2CE_FontMetricMultiDirection]] [[Class: I2CE_FontMetric | I2CE_FontMetric]]
*Location: Part of the module [[iHRIS Module List#textlayout|textlayout]] in the package [https://launchpad.net/textlayout TextLayout Tools]
*Location: Part of the module [[TextLayout Tools Module List#textlayout|textlayout]] in the package [https://launchpad.net/textlayout TextLayout Tools]
*Source: Defined in the file [http://bazaar.launchpad.net/~intrahealth+informatics/textlayout/4.0.0-release/annotate/head:/lib/I2CE_FontMetricAFM.php lib/I2CE_FontMetricAFM.php]
*Source: Defined in the file [http://bazaar.launchpad.net/~intrahealth+informatics/textlayout/4.0.0-release/annotate/head:/lib/I2CE_FontMetricAFM.php lib/I2CE_FontMetricAFM.php]
*Author: Carl Leitner <litlfred@ibiblio.org>
*Author: Carl Leitner <litlfred@ibiblio.org>
Line 25: Line 25:
** [[Class: I2CE_Encoding | I2CE_Encoding]] $encoding <br/>the character encoding  used in the file
** [[Class: I2CE_Encoding | I2CE_Encoding]] $encoding <br/>the character encoding  used in the file
** [http://www.php.net/manual/en/language.types.string.php string ] $afmfile Caution:  Units for these files are 1/1000 of a point where a point is 1/72 of an inch
** [http://www.php.net/manual/en/language.types.string.php string ] $afmfile Caution:  Units for these files are 1/1000 of a point where a point is 1/72 of an inch
==Inherited Methods==
===getAllFontCharacteristics()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getAllFontCharacteristics() | I2CE_FontMetricMultiDirection->getAllFontCharacteristics()]]
===getAscender()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getAscender() | I2CE_FontMetricMultiDirection->getAscender()]]
===getBoundingBox()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getBoundingBox() | I2CE_FontMetricMultiDirection->getBoundingBox()]]
===getCharacterHeight()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getCharacterHeight() | I2CE_FontMetricMultiDirection->getCharacterHeight()]]
===getCharacterHeights()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getCharacterHeights() | I2CE_FontMetricMultiDirection->getCharacterHeights()]]
===getCharacterInfo()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getCharacterInfo() | I2CE_FontMetricMultiDirection->getCharacterInfo()]]
===getCharacterWidth()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getCharacterWidth() | I2CE_FontMetricMultiDirection->getCharacterWidth()]]
===getCharacterWidths()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getCharacterWidths() | I2CE_FontMetricMultiDirection->getCharacterWidths()]]
===getDescender()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getDescender() | I2CE_FontMetricMultiDirection->getDescender()]]
===getDirection()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getDirection() | I2CE_FontMetricMultiDirection->getDirection()]]
===getDirections()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getDirections() | I2CE_FontMetricMultiDirection->getDirections()]]
===getEncoding()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getEncoding() | I2CE_FontMetricMultiDirection->getEncoding()]]
===getFixedWidth()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getFixedWidth() | I2CE_FontMetricMultiDirection->getFixedWidth()]]
===getFontCharacteristic()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getFontCharacteristic() | I2CE_FontMetricMultiDirection->getFontCharacteristic()]]
===getFontSize()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getFontSize() | I2CE_FontMetricMultiDirection->getFontSize()]]
===getKerningByGroup()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getKerningByGroup() | I2CE_FontMetricMultiDirection->getKerningByGroup()]]
===getKerningByPair()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getKerningByPair() | I2CE_FontMetricMultiDirection->getKerningByPair()]]
===getKerningGroup()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getKerningGroup() | I2CE_FontMetricMultiDirection->getKerningGroup()]]
===getKerningValue()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getKerningValue() | I2CE_FontMetricMultiDirection->getKerningValue()]]
===getLinegap()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getLinegap() | I2CE_FontMetricMultiDirection->getLinegap()]]
===getStringWidth()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getStringWidth() | I2CE_FontMetricMultiDirection->getStringWidth()]]
===getTrackingValues()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#getTrackingValues() | I2CE_FontMetricMultiDirection->getTrackingValues()]]
===isFixedWidth()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#isFixedWidth() | I2CE_FontMetricMultiDirection->isFixedWidth()]]
===setAscender()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setAscender() | I2CE_FontMetricMultiDirection->setAscender()]]
===setBoundingBox()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setBoundingBox() | I2CE_FontMetricMultiDirection->setBoundingBox()]]
===setCharacterHeight()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setCharacterHeight() | I2CE_FontMetricMultiDirection->setCharacterHeight()]]
===setCharacterInfo()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setCharacterInfo() | I2CE_FontMetricMultiDirection->setCharacterInfo()]]
===setCharacterWidth()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setCharacterWidth() | I2CE_FontMetricMultiDirection->setCharacterWidth()]]
===setDescender()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setDescender() | I2CE_FontMetricMultiDirection->setDescender()]]
===setDirection()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setDirection() | I2CE_FontMetricMultiDirection->setDirection()]]
===setFixedHeightSize()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setFixedHeightSize() | I2CE_FontMetricMultiDirection->setFixedHeightSize()]]
===setFixedWidth()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setFixedWidth() | I2CE_FontMetricMultiDirection->setFixedWidth()]]
===setFixedWidthSize()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setFixedWidthSize() | I2CE_FontMetricMultiDirection->setFixedWidthSize()]]
===setFontCharacteristic()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setFontCharacteristic() | I2CE_FontMetricMultiDirection->setFontCharacteristic()]]
===setFontSize()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setFontSize() | I2CE_FontMetricMultiDirection->setFontSize()]]
===setGlobal()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setGlobal() | I2CE_FontMetricMultiDirection->setGlobal()]]
===setKerningByGroup()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setKerningByGroup() | I2CE_FontMetricMultiDirection->setKerningByGroup()]]
===setKerningByPair()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setKerningByPair() | I2CE_FontMetricMultiDirection->setKerningByPair()]]
===setKerningGroup()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setKerningGroup() | I2CE_FontMetricMultiDirection->setKerningGroup()]]
===setLinegap()===
This public method is inherited from [[Class: I2CE_FontMetricMultiDirection#setLinegap() | I2CE_FontMetricMultiDirection->setLinegap()]]
===getFixedStringWidth()===
This protected method is inherited from [[Class: I2CE_FontMetricMultiDirection#getFixedStringWidth() | I2CE_FontMetricMultiDirection->getFixedStringWidth()]]
===getVariableStringWidth()===
This protected method is inherited from [[Class: I2CE_FontMetricMultiDirection#getVariableStringWidth() | I2CE_FontMetricMultiDirection->getVariableStringWidth()]]
==Inherited Variables==
===$font_metrics===
Theis protected variable is inherited from [[Class: I2CE_FontMetricMultiDirection#$font_metrics | I2CE_FontMetricMultiDirection->$font_metrics]]
===$direction===
Theis protected variable is inherited from [[Class: I2CE_FontMetricMultiDirection#$direction | I2CE_FontMetricMultiDirection->$direction]]
===$directions===
Theis protected variable is inherited from [[Class: I2CE_FontMetricMultiDirection#$directions | I2CE_FontMetricMultiDirection->$directions]]
===$character_widths===
Theis public variable is inherited from [[Class: I2CE_FontMetric#$character_widths | I2CE_FontMetric->$character_widths]]
===$character_heights===
Theis public variable is inherited from [[Class: I2CE_FontMetric#$character_heights | I2CE_FontMetric->$character_heights]]
===$character_info===
Theis public variable is inherited from [[Class: I2CE_FontMetric#$character_info | I2CE_FontMetric->$character_info]]
===$bbox===
Theis protected variable is inherited from [[Class: I2CE_FontMetric#$bbox | I2CE_FontMetric->$bbox]]
===$ascender===
Theis protected variable is inherited from [[Class: I2CE_FontMetric#$ascender | I2CE_FontMetric->$ascender]]
===$descender===
Theis protected variable is inherited from [[Class: I2CE_FontMetric#$descender | I2CE_FontMetric->$descender]]
===$linegap===
Theis protected variable is inherited from [[Class: I2CE_FontMetric#$linegap | I2CE_FontMetric->$linegap]]
===$is_fixed_width===
Theis protected variable is inherited from [[Class: I2CE_FontMetric#$is_fixed_width | I2CE_FontMetric->$is_fixed_width]]
===$fixed_character_width===
Theis protected variable is inherited from [[Class: I2CE_FontMetric#$fixed_character_width | I2CE_FontMetric->$fixed_character_width]]
===$fixed_character_height===
Theis protected variable is inherited from [[Class: I2CE_FontMetric#$fixed_character_height | I2CE_FontMetric->$fixed_character_height]]
===$size===
Theis protected variable is inherited from [[Class: I2CE_FontMetric#$size | I2CE_FontMetric->$size]]
===$encoding===
Theis protected variable is inherited from [[Class: I2CE_FontMetric#$encoding | I2CE_FontMetric->$encoding]]
===$kerning_table_pairs===
Theis protected variable is inherited from [[Class: I2CE_FontMetric#$kerning_table_pairs | I2CE_FontMetric->$kerning_table_pairs]]
===$kerning_table_groups===
Theis protected variable is inherited from [[Class: I2CE_FontMetric#$kerning_table_groups | I2CE_FontMetric->$kerning_table_groups]]
===$kerning_groups===
Theis protected variable is inherited from [[Class: I2CE_FontMetric#$kerning_groups | I2CE_FontMetric->$kerning_groups]]
===$font_info===
Theis protected variable is inherited from [[Class: I2CE_FontMetric#$font_info | I2CE_FontMetric->$font_info]]




[[Category:Class Documentation]]
[[Category:Class Documentation]]

Revision as of 12:08, 19 October 2009

This article describes the class I2CE_FontMetricAFM.

Class to contain information about font metrics. Modeled after the data contained in the Adobe Font Metrics File Format Specification http://www.adobe.com/devnet/font/pdfs/5004.AFM_Spec.pdf
Note 1 the function getCharacterInfo @returns mixed @param key are the character information (besides the width) in section 8 of Adobe Font Metrics File Format Specification
Note 2 the function getFontCharacteristic @returns mixed @param string $key are the keys in section 4.2 of Adobe Font Metrics File Format Specification values and keys are FontName string FullName string FamilyName string Weight string FontBBox number number number number Version string Notice string EncodingScheme string MappingScheme integer EscChar integer CharacterSet string Characters integer IsBaseFont boolean VVector number number IsFixedV boolean CapHeight number XHeight number Ascender number Descender number We also include section 4,3 of Adobe Font Metrics File Format Specification for the following possible keys which are direction dependent StartDirection integer EndDirection UnderlinePosition number UnderlineThickness number ItalicAngle number CharWidth number number IsFixedPitch boolean

Variables

$gn2cc

. Array are glpyh names values are character codes.

Methods

__construct()

@param I2CE_Encoding $encoding -- the encoding used for the internal storage of strings/characters needs to be one that is a valid encoding for PHP multibyte strings.

  • Signature: public function __construct($internal_encoding,$file_encoding,$afmfile)
  • Parameters:
    • &$internal_encoding
    • I2CE_Encoding $file_encoding
      the character encoding used in the file afm file
    • string $afmfile
      the afm file to load.

loadFontMetricFromAFM()

Load the font metrics from an afm file (Some of this code was stolen from makefont.php)

  • Signature: protected function loadFontMetricFromAFM($encoding,$afmfile)
  • Parameters:
    • I2CE_Encoding $encoding
      the character encoding used in the file
    • string $afmfile Caution: Units for these files are 1/1000 of a point where a point is 1/72 of an inch