Class: I2CE FontMetricMultiDirection: Difference between revisions

From IHRIS Wiki
No edit summary
 
(17 intermediate revisions by one other user not shown)
Line 1: Line 1:
This article describes the class ''I2CE_FontMetricMultiDirection''.
#REDIRECT [[Class: I2CE_FontMetricMultiDirection (4.1.12)]]
*Extends the class: [[Class: I2CE_FontMetric | I2CE_FontMetric]].
*Parent Classses:  [[Class: I2CE_FontMetric | I2CE_FontMetric]]
*Child Classes:
** [[Class: I2CE_FontMetricAFM | I2CE_FontMetricAFM]]
** [[Class: I2CE_FontMetricTTF | I2CE_FontMetricTTF]]
*Location: Part of the module [[iHRIS 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_FontMetricMultiDirection.php lib/I2CE_FontMetricMultiDirection.php]
*Author: Carl Leitner <litlfred@ibiblio.org>
Class to contain information about  font metrics. Setup to handle multiple directions.
==Variables==
===$font_metrics===
protecteed @var array of I2CE_FontMetric $font_metrics contains the fonr metrics that are global or for  user defined directions
*Type: protected $font_metrics
 
===$direction===
*Type: protected $direction
 
===$directions===
*Type: protected $directions
 
==Methods==
===__construct()===
The constructor @params array $directions of mixed the directions. the value -1 is reserved for global information array has a default value of  0 (horizontal) and 1 (vertical). Sets the direction to be $directions[0]
*Signature: public function __construct($directions,$encoding)
*Parameters:
**$directions
** [[Class: I2CE_Encoding | I2CE_Encoding]] $encoding <br/>the encoding used for the internal storage of strings/characters needs to be one that is a valid encoding for PHP multibyte strings.
===getAllFontCharacteristics()===
Get all the font information
*Signature: public function getAllFontCharacteristics()
===getAscender()===
get the asceneder value
*Signature: public function getAscender()
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php numeric ]<br/>$ascender *
===getBoundingBox()===
Get the bounding box $returns array $bbox of numeric. The bounding box in llx lly urx ury order
*Signature: public function getBoundingBox()
===getCharacterHeight()===
Gets the character height of a character
*Signature: public function getCharacterHeight($ch,$use_font_size)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $ch <br/>a character @param bool use_font_size default false --
**$use_font_size
***Default Value: false
*Returns: [http://www.php.net/manual/en/language.types.float.php float ]<br/>the width
===getCharacterHeights()===
Get the character heights
*Signature: public function getCharacterHeights()
*Returns: [http://www.php.net/manual/en/language.types.array.php array ]<br/>of number, the values of which are the heights and the keys of which are some combination of glpyh names, character codes, and unicodes codepoints, or characters
===getCharacterInfo()===
Get information associated to  a character
*Signature: public function getCharacterInfo($ch,$key)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $ch <br/>a character (or glyphname)
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $key
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php mixed ]<br/>$value
===getCharacterWidth()===
Gets the character width of a character
*Signature: public function getCharacterWidth($ch,$use_font_size)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $ch <br/>a character @param bool use_font_size default false --
**$use_font_size
***Default Value: false
*Returns: [http://www.php.net/manual/en/language.types.float.php float ]<br/>the width
===getCharacterWidths()===
Get the character widths
*Signature: public function getCharacterWidths()
*Returns: [http://www.php.net/manual/en/language.types.array.php array ]<br/>of number, the values of which are the widths and the keys of which are some combination of glpyh names, character codes, and unicodes codepoints, or characters
===getDescender()===
get the desceneder value
*Signature: public function getDescender()
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php numeric ]<br/>$descender *
===getDirection()===
Function to get the font direction
*Signature: public function getDirection()
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php mixed ]
===getDirections()===
Function to get the possible directions
*Signature: public function getDirections($add_global)
*Parameters:
** boolena $add_global <br/>(defaults to false) whether or not to include the global direction, -1
***Default Value: false
*Returns: [http://www.php.net/manual/en/language.types.array.php array ]<br/>of mixed -- the directions
===getEncoding()===
Get the encoding information for the font. This is global info
*Signature: public function getEncoding()
*Returns: [[Class: I2CE_Encoding | I2CE_Encoding]]
===getFixedStringWidth()===
Function caluclulate the length of a fixed width string
*Signature: protected function getFixedStringWidth($string,$use_font_size)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $string <br/>the string we wish to calculate the length of @param bool use_font_size default false --
**$use_font_size
***Default Value: false
*Returns: [http://www.php.net/manual/en/language.types.float.php float ]<br/>the length of the string
===getFixedWidth()===
Get the width of a character in a fixed width font (for the current direction)
*Signature: public function getFixedWidth()
*Returns: number<br/>Returns null if called when the current font is not fixed width
===getFontCharacteristic()===
Get a global font characteristic @param $key
*Signature: public function getFontCharacteristic($key)
*Parameters:
**$key
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php mixed ]<br/>the value associated to the $key
===getFontSize()===
Get the font size.  This is global info.
*Signature: public function getFontSize()
*Returns: [http://www.php.net/manual/en/language.types.integer.php int ]
===getKerningByGroup()===
get the kerning values associated to a pair of groups
*Signature: public function getKerningByGroup($g1,$g2,$use_font_size)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $g1 <br/>the preceeding group
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $g2 <br/>the following group @param bool use_font_size default false --
**$use_font_size
***Default Value: false
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php numeric ]<br/>$kern  the kerning value or null if none found
===getKerningByPair()===
get the kerning values associated to a pair of character
*Signature: public function getKerningByPair($ch1,$ch2,$use_font_size)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $ch1 <br/>the preceeding character
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $ch2 <br/>the following character @param bool use_font_size default false --
**$use_font_size
***Default Value: false
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php numeric ]<br/>the kerning value or null if there is none found
===getKerningGroup()===
Get the kerning groups associated to a character
*Signature: public function getKerningGroup($ch)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $ch <br/>the character
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php mixed ]<br/>the group
===getKerningValue()===
Return the (horizontal) kerning values for a pair of characters @params string $ch1 the left characcter @params string $ch2 the right character @param bool use_font_size default false --
*Signature: public function getKerningValue($ch1,$ch2,$use_font_size)
*Parameters:
**$ch1
**$ch2
**$use_font_size
***Default Value: false
*Returns: [http://www.php.net/manual/en/language.types.float.php float ]<br/>the kerning value or null if none is found
===getLinegap()===
get the line gap value
*Signature: public function getLinegap()
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php numeric ]<br/>$linegap *
===getStringWidth()===
Caluclulate the length of a string
*Signature: public function getStringWidth($string,$use_font_size)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $string <br/>the string we wish to calculate the length of @param bool use_font_size default false --
**$use_font_size
***Default Value: false
*Returns: float/int<br/>the length of the string
===getTrackingValues()===
Get the tracking values for the current font size
*Signature: public function getTrackingValues()
*Returns: [http://www.php.net/manual/en/language.types.array.php array ]<br/>$values of floats.  $values[0] is the minimum, $values[1] is the maximum or null if if there is no tracking values
===getVariableStringWidth()===
Function caluclulate the length of a variable width string
*Signature: protected function getVariableStringWidth($string,$use_font_size)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $string <br/>the string we wish to calculate the length of @param bool use_font_size default false --
**$use_font_size
***Default Value: false
*Returns: [http://www.php.net/manual/en/language.types.float.php float ]<br/>the length of the string
===isFixedWidth()===
Check to see if the current font is fixed width
*Signature: public function isFixedWidth()
*Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean ]<br/>true if it is fixed width
===setAscender()===
set the asceneder value
*Signature: public function setAscender($ascender)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php numeric ] $ascender *
===setBoundingBox()===
Set the bounding box $param array $bbox of numeric. The bounding box in llx lly urx ury order
*Signature: public function setBoundingBox($bbox)
*Parameters:
**$bbox
===setCharacterHeight()===
Sets the character height of a character
*Signature: public function setCharacterHeight($ch,$h)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $ch <br/>a character
** [http://www.php.net/manual/en/language.types.float.php float ] $h <br/>height
===setCharacterInfo()===
Sets information associated to  a character
*Signature: public function setCharacterInfo($ch,$key,$value)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $ch <br/>a character (or glyphname)
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $key
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $value
===setCharacterWidth()===
Sets the character width of a character
*Signature: public function setCharacterWidth($ch,$w)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $ch <br/>a character
** [http://www.php.net/manual/en/language.types.float.php float ] $w <br/>the width
===setDescender()===
set the desceneder value
*Signature: public function setDescender($descender)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php numeric ] $descender *
===setDirection()===
Function to set the font direction @params mixed $direction. -1 is global information, all other values are user defined directions.
*Signature: public function setDirection($direction)
*Parameters:
**$direction
===setFixedHeightSize()===
set the fixed height character size
*Signature: public function setFixedHeightSize($height)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php numeric ] $height <br/>the height
===setFixedWidth()===
Set whether or not this is a fixed width font @parma boolean $is_fixed_width
*Signature: public function setFixedWidth($is_fixed_width)
*Parameters:
**$is_fixed_width
===setFixedWidthSize()===
set the fixed width character size
*Signature: public function setFixedWidthSize($width)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php numeric ] $width <br/>the width
===setFontCharacteristic()===
Set a  font characteristic
*Signature: public function setFontCharacteristic($key,$value)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $key
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $value
===setFontSize()===
Set the font size.  This is global info. @params int $size
*Signature: public function setFontSize($size)
*Parameters:
**$size
===setGlobal()===
Specify that we are working with global font metric information, e.g. glpyhnames, font size, etc.
*Signature: public function setGlobal()
===setKerningByGroup()===
set the kerning values associated to a pair of groups
*Signature: public function setKerningByGroup($g1,$g2,$kern)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $g1 <br/>the preceeding group
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $g2 <br/>the following group @params numeric $kern  the kerning value
**$kern
===setKerningByPair()===
set the kerning values associated to a pair of character
*Signature: public function setKerningByPair($ch1,$ch2,$kern)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $ch1 <br/>the preceeding character
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $ch2 <br/>the following character @params numeric $kern  the kerning value
**$kern
===setKerningGroup()===
Set the kerning groups associated to a character
*Signature: public function setKerningGroup($ch,$group)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $ch <br/>the character
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $group <br/>the group
===setLinegap()===
set the line gap value
*Signature: public function setLinegap($linegap)
*Parameters:
** [http://www.php.net/manual/en/language.pseudo-types.php numeric ] $linegap *
==Inherited Variables==
===$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]]

Latest revision as of 09:43, 18 August 2015