public static function PHPExcel_Shared_Font::getTrueTypeFontFileFromFont in Loft Data Grids 7.2
Same name and namespace in other branches
- 6.2 vendor/phpoffice/phpexcel/Classes/PHPExcel/Shared/Font.php \PHPExcel_Shared_Font::getTrueTypeFontFileFromFont()
* Returns the font path given the font * *
Parameters
PHPExcel_Style_Font: * @return string Path to TrueType font file
1 call to PHPExcel_Shared_Font::getTrueTypeFontFileFromFont()
- PHPExcel_Shared_Font::getTextWidthPixelsExact in vendor/
phpoffice/ phpexcel/ Classes/ PHPExcel/ Shared/ Font.php - * Get GD text width in pixels for a string of text in a certain font at a certain rotation angle * *
File
- vendor/
phpoffice/ phpexcel/ Classes/ PHPExcel/ Shared/ Font.php, line 424
Class
- PHPExcel_Shared_Font
- PHPExcel_Shared_Font
Code
public static function getTrueTypeFontFileFromFont($font) {
if (!file_exists(self::$trueTypeFontPath) || !is_dir(self::$trueTypeFontPath)) {
throw new PHPExcel_Exception('Valid directory to TrueType Font files not specified');
}
$name = $font
->getName();
$bold = $font
->getBold();
$italic = $font
->getItalic();
// Check if we can map font to true type font file
switch ($name) {
case 'Arial':
$fontFile = $bold ? $italic ? self::ARIAL_BOLD_ITALIC : self::ARIAL_BOLD : ($italic ? self::ARIAL_ITALIC : self::ARIAL);
break;
case 'Calibri':
$fontFile = $bold ? $italic ? self::CALIBRI_BOLD_ITALIC : self::CALIBRI_BOLD : ($italic ? self::CALIBRI_ITALIC : self::CALIBRI);
break;
case 'Courier New':
$fontFile = $bold ? $italic ? self::COURIER_NEW_BOLD_ITALIC : self::COURIER_NEW_BOLD : ($italic ? self::COURIER_NEW_ITALIC : self::COURIER_NEW);
break;
case 'Comic Sans MS':
$fontFile = $bold ? self::COMIC_SANS_MS_BOLD : self::COMIC_SANS_MS;
break;
case 'Georgia':
$fontFile = $bold ? $italic ? self::GEORGIA_BOLD_ITALIC : self::GEORGIA_BOLD : ($italic ? self::GEORGIA_ITALIC : self::GEORGIA);
break;
case 'Impact':
$fontFile = self::IMPACT;
break;
case 'Liberation Sans':
$fontFile = $bold ? $italic ? self::LIBERATION_SANS_BOLD_ITALIC : self::LIBERATION_SANS_BOLD : ($italic ? self::LIBERATION_SANS_ITALIC : self::LIBERATION_SANS);
break;
case 'Lucida Console':
$fontFile = self::LUCIDA_CONSOLE;
break;
case 'Lucida Sans Unicode':
$fontFile = self::LUCIDA_SANS_UNICODE;
break;
case 'Microsoft Sans Serif':
$fontFile = self::MICROSOFT_SANS_SERIF;
break;
case 'Palatino Linotype':
$fontFile = $bold ? $italic ? self::PALATINO_LINOTYPE_BOLD_ITALIC : self::PALATINO_LINOTYPE_BOLD : ($italic ? self::PALATINO_LINOTYPE_ITALIC : self::PALATINO_LINOTYPE);
break;
case 'Symbol':
$fontFile = self::SYMBOL;
break;
case 'Tahoma':
$fontFile = $bold ? self::TAHOMA_BOLD : self::TAHOMA;
break;
case 'Times New Roman':
$fontFile = $bold ? $italic ? self::TIMES_NEW_ROMAN_BOLD_ITALIC : self::TIMES_NEW_ROMAN_BOLD : ($italic ? self::TIMES_NEW_ROMAN_ITALIC : self::TIMES_NEW_ROMAN);
break;
case 'Trebuchet MS':
$fontFile = $bold ? $italic ? self::TREBUCHET_MS_BOLD_ITALIC : self::TREBUCHET_MS_BOLD : ($italic ? self::TREBUCHET_MS_ITALIC : self::TREBUCHET_MS);
break;
case 'Verdana':
$fontFile = $bold ? $italic ? self::VERDANA_BOLD_ITALIC : self::VERDANA_BOLD : ($italic ? self::VERDANA_ITALIC : self::VERDANA);
break;
default:
throw new PHPExcel_Exception('Unknown font name "' . $name . '". Cannot map to TrueType font file');
break;
}
$fontFile = self::$trueTypeFontPath . $fontFile;
// Check if file actually exists
if (!file_exists($fontFile)) {
throw new PHPExcel_Exception('TrueType Font file not found');
}
return $fontFile;
}