class PHPExcel_Writer_Excel5_Font in Loft Data Grids 6.2
Same name and namespace in other branches
- 7.2 vendor/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel5/Font.php \PHPExcel_Writer_Excel5_Font
PHPExcel_Writer_Excel5_Font
@category PHPExcel @package PHPExcel_Writer_Excel5 @copyright Copyright (c) 2006 - 2014 PHPExcel (http://www.codeplex.com/PHPExcel)
Hierarchy
- class \PHPExcel_Writer_Excel5_Font
Expanded class hierarchy of PHPExcel_Writer_Excel5_Font
File
- vendor/
phpoffice/ phpexcel/ Classes/ PHPExcel/ Writer/ Excel5/ Font.php, line 36
View source
class PHPExcel_Writer_Excel5_Font {
/**
* Color index
*
* @var int
*/
private $_colorIndex;
/**
* Font
*
* @var PHPExcel_Style_Font
*/
private $_font;
/**
* Constructor
*
* @param PHPExcel_Style_Font $font
*/
public function __construct(PHPExcel_Style_Font $font = null) {
$this->_colorIndex = 0x7fff;
$this->_font = $font;
}
/**
* Set the color index
*
* @param int $colorIndex
*/
public function setColorIndex($colorIndex) {
$this->_colorIndex = $colorIndex;
}
/**
* Get font record data
*
* @return string
*/
public function writeFont() {
$font_outline = 0;
$font_shadow = 0;
$icv = $this->_colorIndex;
// Index to color palette
if ($this->_font
->getSuperScript()) {
$sss = 1;
}
else {
if ($this->_font
->getSubScript()) {
$sss = 2;
}
else {
$sss = 0;
}
}
$bFamily = 0;
// Font family
$bCharSet = PHPExcel_Shared_Font::getCharsetFromFontName($this->_font
->getName());
// Character set
$record = 0x31;
// Record identifier
$reserved = 0x0;
// Reserved
$grbit = 0x0;
// Font attributes
if ($this->_font
->getItalic()) {
$grbit |= 0x2;
}
if ($this->_font
->getStrikethrough()) {
$grbit |= 0x8;
}
if ($font_outline) {
$grbit |= 0x10;
}
if ($font_shadow) {
$grbit |= 0x20;
}
$data = pack("vvvvvCCCC", $this->_font
->getSize() * 20, $grbit, $icv, self::_mapBold($this->_font
->getBold()), $sss, self::_mapUnderline($this->_font
->getUnderline()), $bFamily, $bCharSet, $reserved);
$data .= PHPExcel_Shared_String::UTF8toBIFF8UnicodeShort($this->_font
->getName());
$length = strlen($data);
$header = pack("vv", $record, $length);
return $header . $data;
}
/**
* Map to BIFF5-BIFF8 codes for bold
*
* @param boolean $bold
* @return int
*/
private static function _mapBold($bold) {
if ($bold) {
return 0x2bc;
// 700 = Bold font weight
}
return 0x190;
// 400 = Normal font weight
}
/**
* Map of BIFF2-BIFF8 codes for underline styles
* @static array of int
*
*/
private static $_mapUnderline = array(
PHPExcel_Style_Font::UNDERLINE_NONE => 0x0,
PHPExcel_Style_Font::UNDERLINE_SINGLE => 0x1,
PHPExcel_Style_Font::UNDERLINE_DOUBLE => 0x2,
PHPExcel_Style_Font::UNDERLINE_SINGLEACCOUNTING => 0x21,
PHPExcel_Style_Font::UNDERLINE_DOUBLEACCOUNTING => 0x22,
);
/**
* Map underline
*
* @param string
* @return int
*/
private static function _mapUnderline($underline) {
if (isset(self::$_mapUnderline[$underline])) {
return self::$_mapUnderline[$underline];
}
return 0x0;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
PHPExcel_Writer_Excel5_Font:: |
private | property | * Color index * * | |
PHPExcel_Writer_Excel5_Font:: |
private | property | * Font * * | |
PHPExcel_Writer_Excel5_Font:: |
private static | property | * Map of BIFF2-BIFF8 codes for underline styles * @static array of int * | |
PHPExcel_Writer_Excel5_Font:: |
public | function | * Set the color index * * | |
PHPExcel_Writer_Excel5_Font:: |
public | function | * Get font record data * * | |
PHPExcel_Writer_Excel5_Font:: |
private static | function | * Map to BIFF5-BIFF8 codes for bold * * | |
PHPExcel_Writer_Excel5_Font:: |
private static | function | * Map underline * * | |
PHPExcel_Writer_Excel5_Font:: |
public | function | * Constructor * * |