Class: I2CE TextTable

From IHRIS Wiki
Revision as of 14:05, 17 October 2009 by Litlfred (talk | contribs)

This article desrcibes the class I2CE_TextTable.

A word-wrapping text tabke class. Uses the i2ce_hyphen class.

Variables

$font_metric

protected @var I2CE_FontMetric $font_metric

  • Type: protected $font_metric

$encoding

protected @var I2CE_Encoding $encoding

  • Type: protected $encoding

$widths

  • Type: protected $widths

$col_spacing

protected @var numeric $col_spacing -- the spacing between columns

  • Type: protected $col_spacing

$max_table_width

  • Type: protected $max_table_width

$min_cell_width

  • Type: protected $min_cell_width

$widthstyle

  • Type: protected $widthstyle

Methods

Visualize()

  • Signature: public function Visualize($table_data,$font_size)
  • Parameters:
    • $table_data
    • $font_size

__construct()

Construct a text table object @param numeric $max_width -- the maximum width of the table

  • Signature: public function __construct($max_table_width,$font_metric,$hyphen,$encoding,$col_spacing,$widthstyle,$algorithm)
  • Parameters:
    • $max_table_width
    • I2CE_FontMetric $font_metric
    • I2CE_Hyphen $hyphen
      default is null
      • Default Value: null
    • &$encoding
    • numeric $col_spacing
      the spacing used between the columns. Default to 0
      • Default Value: 0
    • string $widthstyle
      how we determine the width of the columns. Defaults to 'Header'
      • Default Value: 'Header'
    • int $algorithm
      the word wrapping algorithm: default = 'Greedy' @param I2CE_Encoding encoding -- the encoding we want to use
      • Default Value: 'Greedy'

adjustDesiredWidths()

helper function to adjust the desired width of a column to those allowable by the maxium size

  • Signature: protected function adjustDesiredWidths($desired_widths,$width)
  • Parameters:
    • $desired_widths
    • $width

getColSpacing()

  • Signature: public function getColSpacing()

getFontMetric()

  • Signature: public function getFontMetric()

getWidths()

Get the currently set width of the columns. If we are using one of the algorithms to determine the widths, it will be set to the widths used in the generation of the last text table

  • Signature: public function getWidths()
  • Returns: array
    of numeric

getWidthsFromAllCells()

  • Signature: protected function getWidthsFromAllCells($table_data,$font_sizes)
  • Parameters:
    • $table_data
    • $font_sizes

getWidthsFromHeader()

  • Signature: protected function getWidthsFromHeader($row_data,$font_sizes)
  • Parameters:
    • $row_data
    • $font_sizes

setColSpacing()

  • Signature: public function setColSpacing($col_spacing)
  • Parameters:
    • $col_spacing

setFontMetric()

  • Signature: public function setFontMetric($fm)
  • Parameters:
    • $fm

setMaxTableWidth()

  • Signature: public function setMaxTableWidth($table_width)
  • Parameters:
    • $table_width

setMinCellWidth()

  • Signature: public function setMinCellWidth($width)
  • Parameters:
    • $width
      • Default Value: 0

setWidthStyle()

Set the table's column widths @param sting $widthsstyle. Possible values are 'Explicit' the user sets the widths via setWidths(). 'Header' --n we try to guess good widths by looking at the first row of the table. 'All' then we try to guess good widths by examining all rows.

  • Signature: public function setWidthStyle($widthstyle)
  • Parameters:
    • $widthstyle

setWidths()

  • Signature: public function setWidths($widths)
  • Parameters:
    • $widths

wordWrapTable()

@param array of array of string $table_data a row/col array of the text we want in the table

  • Signature: public function wordWrapTable($table_data,$font_size,$pad_cell_height)
  • Parameters:
    • $table_data
    • array $font_size if $font_size[$i] describe the font_size to be used for row $i. if $font_size[$i] is numeric then the font size applies to the whole row $i. othwise, if it is an array of numeric, the font_size[$i][$j] is the font size of cell $i,$j.
    • boolean $pad_cell_height
      (Default true) whether or not we should ensure that for each table row, we have the same number of rows of text per cell
      • Default Value: true
  • Returns: a
    row/col indexed array of arrays. each text cell becomes an array of strings, each element of which is a row of text of that cell.

Inherited Methods

__construct()

This public method is inherited from I2CE_TextCell->__construct()

getEncoding()

This public method is inherited from I2CE_TextCell->getEncoding()

getFontMetric()

This public method is inherited from I2CE_TextCell->getFontMetric()

getHyphenDictionary()

This public method is inherited from I2CE_TextCell->getHyphenDictionary()

getLineBreaks()

This public method is inherited from I2CE_TextCell->getLineBreaks()

getParagraphs()

This public method is inherited from I2CE_TextCell->getParagraphs()

getWidth()

This public method is inherited from I2CE_TextCell->getWidth()

getWords()

This public method is inherited from I2CE_TextCell->getWords()

setEncoding()

This public method is inherited from I2CE_TextCell->setEncoding()

setFontMetric()

This public method is inherited from I2CE_TextCell->setFontMetric()

setHyphenationDictionary()

This public method is inherited from I2CE_TextCell->setHyphenationDictionary()

setWidth()

This public method is inherited from I2CE_TextCell->setWidth()

setWordWrapAlgorithm()

This public method is inherited from I2CE_TextCell->setWordWrapAlgorithm()

Greedy()

This protected method is inherited from I2CE_TextCell->Greedy()

Knuth()

This protected method is inherited from I2CE_TextCell->Knuth()

Truncate()

This protected method is inherited from I2CE_TextCell->Truncate()

Inherited Variables

$font_metric

Theis protected variable is inherited from I2CE_TextCell->$font_metric

$encoding

Theis protected variable is inherited from I2CE_TextCell->$encoding

$space_char

Theis protected variable is inherited from I2CE_TextCell->$space_char

$hyphen_char

Theis protected variable is inherited from I2CE_TextCell->$hyphen_char

$width

Theis protected variable is inherited from I2CE_TextCell->$width

$hyphen

Theis protected variable is inherited from I2CE_TextCell->$hyphen