Class: I2CE FontMetric: Difference between revisions

From IHRIS Wiki
No edit summary
(Redirected page to Class: I2CE FontMetric (4.1.12))
 
(26 intermediate revisions by one other user not shown)
Line 1: Line 1:
This article desrcibes the class '''I2CE_FontMetric'''
#REDIRECT [[Class: I2CE_FontMetric (4.1.12)]]
It is contained in the module [[iHRIS Module List#textlayout|textlayout]] in the package [https://launchpad.net/textlayout TextLayout Tools]
 
The class is defined in the file: [http://bazaar.launchpad.net/~intrahealth+informatics/textlayout/4.0.0-release/annotate/head:/lib/I2CE_FontMetric.php lib/I2CE_FontMetric.php]
 
Class to contain information about  font metrics.
 
 
 
@package I2CE
 
@subpackage TextLayout
 
@author Carl Leitner <litlfred@ibiblio.org>
 
 
 
@version 0.1
 
@access public
==Variables==
===$bbox===
protected @var $bbox of numeric. the bounding box with values in order llx lly urx ury
*Type: protected $bbox
 
===$ascender===
protected @var numeric $ascender
*Type: protected $ascender
 
===$descender===
protected @var numeric $ascender
*Type: protected $descender
 
===$linegap===
protected @var numeric $linegap
*Type: protected $linegap
 
===$is_fixed_width===
protected @var array of boolean $is_fixed_width whether or not this font is fixed width
*Type: protected $is_fixed_width
 
===$fixed_character_width===
protected @var  int  the size of a fixed width character
*Type: protected $fixed_character_width
 
===$fixed_character_height===
protected @var  int  the size of a fixed width character
*Type: protected $fixed_character_height
 
===$size===
protected @var int $size  the font size in points
*Type: protected $size
 
===$encoding===
proteted @var I2CE_Encoding encoding  data  for the character set
*Type: protected $encoding
 
===$kerning_table_pairs===
protected @var array of array of numbers $kerning_table_pairs  the kerning table for pairs.
the first index is the preceeding character the second index is the following character
*Type: protected $kerning_table_pairs
 
===$kerning_table_groups===
protected @var array of array of numbers $kerning_table_groups  the kerning table for groups.
the first index is the group for the preceeding character the second index is the group for the following character
*Type: protected $kerning_table_groups
 
===$kerning_groups===
protected $var array with keys character and values the kerning groups
*Type: protected $kerning_groups
 
===$character_widths===
of floats containing $character_widths the character widths for the current font
to be super  redundant the keys will be either the character code
or the glyph name
*Type: public y $character_widths
 
===$character_heights===
of array of floats  $character_heights containing the character heights for the current font
to be super  redundant the keys will be either the character code
or the glyph name
*Type: public y $character_heights
 
===$character_info===
of array of mixed $character_info containing character information (besides the width)
*Type: public y $character_info
 
===$font_info===
protected @var array of mixed global font information
*Type: protected $font_info
 
==Methods==
===__construct()===
needs to be one that is a valid encoding for PHP multibyte strings.
*Signature: public function __construct($encoding)
Parameters:
* [[Class: I2CE_Encoding | I2CE_Encoding]] $encoding<br/>the encoding used for the internal storage of strings/characters
===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] $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
@param bool use_font_size default false --
*Signature: public function getCharacterHeight($ch,$use_font_size)
*Returns: [http://www.php.net/manual/en/language.types.float.php float] the width
Parameters:
* [http://www.php.net/manual/en/language.pseudo-types.php mixed] $ch<br/>a character
*$use_font_size
**Default Value: false
===getCharacterHeights()===
Get the character heights
*Signature: public function getCharacterHeights()
*Returns: [http://www.php.net/manual/en/language.types.array.php array] 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)
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php mixed] $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
===getCharacterWidth()===
Gets the character width of a character
@param bool use_font_size default false --
*Signature: public function getCharacterWidth($ch,$use_font_size)
*Returns: [http://www.php.net/manual/en/language.types.float.php float] the width
Parameters:
* [http://www.php.net/manual/en/language.pseudo-types.php mixed] $ch<br/>a character (or glyphname)
*$use_font_size
**Default Value: false
===getCharacterWidths()===
Get the character widths
*Signature: public function getCharacterWidths()
*Returns: [http://www.php.net/manual/en/language.types.array.php array] 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] $descender
*
===getEncoding()===
Get the encoding used for the internal storage of strings/characters
*Signature: public function getEncoding()
*Returns: [http://www.php.net/manual/en/language.types.string.php string]
===getFixedStringWidth()===
Caluclulate the length of a fixed width string
*Signature: protected function getFixedStringWidth($string)
*Returns: float/int the length of the string
Parameters:
* [http://www.php.net/manual/en/language.types.string.php string] $string<br/>the string we wish to calculate the length of
===getFixedWidth()===
Get the width of a character in a fixed width font
*Signature: public function getFixedWidth()
*Returns: number 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)
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php mixed]  the value associated to the $key
Parameters:
*$key
===getFontSize()===
Get the font size
*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
@param bool use_font_size default false --
*Signature: public function getKerningByGroup($g1,$g2,$use_font_size)
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php numeric] $kern  the kerning value or null if none found
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
*$use_font_size
**Default Value: false
===getKerningByPair()===
get the kerning values associated to a pair of character
@param bool use_font_size default false --
*Signature: public function getKerningByPair($ch1,$ch2,$use_font_size)
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php numeric] the kerning value or null if there is none found
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
*$use_font_size
**Default Value: false
===getKerningGroup()===
Get the kerning groups associated to a character
*Signature: public function getKerningGroup($ch)
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php mixed] the group
Parameters:
* [http://www.php.net/manual/en/language.pseudo-types.php mixed] $ch<br/>the character
===getKerningValue()===
Return the (horizontal) kerning values for a pair of characters
If there is kerning info for both groups and pairs,
the pairs takes prescedence
@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)
*Returns: number the kerning value or null  if none is found
Parameters:
*$ch1
*$ch2
*$use_font_size
===getLinegap()===
get the line gap value
*Signature: public function getLinegap()
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php numeric] $linegap
*
===getStringWidth()===
Caluclulate the length of a string
*Signature: public function getStringWidth($string,$use_font_size)
*Returns: float/int the length of the string
note: if it is a fixed width font, we assume that all characters are printable.  in particular
a line break is considered a printable character. If you have line breaks to deal with
@param bool use_font_size default false --
you should see TextColumn
Parameters:
* [http://www.php.net/manual/en/language.types.string.php string] $string<br/>the string we wish to calculate the length of
*$use_font_size
**Default Value: false
===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] $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
@param bool use_font_size default false --
*Signature: protected function getVariableStringWidth($string)
*Returns: [http://www.php.net/manual/en/language.types.float.php float] the length of the string
Parameters:
* [http://www.php.net/manual/en/language.types.string.php string] $string<br/>the string we wish to calculate the length of
===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] 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 width 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 (or glyphname)
* [http://www.php.net/manual/en/language.pseudo-types.php numeric] $h<br/>the $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 (or glyphname)
* numeriv $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
===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 width
===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 global 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
@params int $size
*Signature: public function setFontSize($size)
Parameters:
*$size
===setKerningByGroup()===
get the kerning values associated to a pair of groups
@params numeric $kern  the kerning value
*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 grou
*$kern
===setKerningByPair()===
set the kerning values associated to a pair of character
@params numeric $kern  the kerning value
*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
*$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
 
 
[[Category:Class Documentation]]

Latest revision as of 10:43, 18 August 2015