25 #require_once 'Zend/Pdf/Resource/Font.php'; 67 $this->_objectFactory = $fontDictionary->getFactory();
68 $this->_resource = $fontDictionary;
70 if ($fontDictionary->Encoding !==
null) {
71 $this->_encoding = $fontDictionary->Encoding->value;
74 switch ($fontDictionary->Subtype->value) {
77 if (count($fontDictionary->DescendantFonts->items) != 1) {
79 #require_once 'Zend/Pdf/Exception.php'; 83 $fontDictionaryIterator = $fontDictionary->DescendantFonts->items->getIterator();
84 $fontDictionaryIterator->rewind();
85 $descendantFont = $fontDictionaryIterator->current();
86 $fontDescriptor = $descendantFont->FontDescriptor;
90 if ($fontDictionary->FontDescriptor ===
null) {
94 $this->_fontNames = $standardFont->getFontNames();
95 $this->_isBold = $standardFont->isBold();
96 $this->_isItalic = $standardFont->isItalic();
97 $this->_isMonospace = $standardFont->isMonospace();
98 $this->_underlinePosition = $standardFont->getUnderlinePosition();
99 $this->_underlineThickness = $standardFont->getUnderlineThickness();
100 $this->_strikePosition = $standardFont->getStrikePosition();
101 $this->_strikeThickness = $standardFont->getStrikeThickness();
102 $this->_unitsPerEm = $standardFont->getUnitsPerEm();
103 $this->_ascent = $standardFont->getAscent();
104 $this->_descent = $standardFont->getDescent();
105 $this->_lineGap = $standardFont->getLineGap();
110 $fontDescriptor = $fontDictionary->FontDescriptor;
114 $fontDescriptor = $fontDictionary->FontDescriptor;
118 #require_once 'Zend/Pdf/Exception.php'; 124 $this->_isBold =
false;
125 $this->_isItalic = ( ($fontDescriptor->Flags->value & (1 << 6)) != 0 );
126 $this->_isMonospace = ( ($fontDescriptor->Flags->value & (1 << 0)) != 0 );
127 $this->_underlinePosition =
null;
128 $this->_underlineThickness =
null;
129 $this->_strikePosition =
null;
130 $this->_strikeThickness =
null;
131 $this->_unitsPerEm =
null;
132 $this->_ascent = $fontDescriptor->Ascent->value;
133 $this->_descent = $fontDescriptor->Descent->value;
134 $this->_lineGap =
null;
150 #require_once 'Zend/Pdf/Exception.php'; 168 #require_once 'Zend/Pdf/Exception.php'; 192 #require_once 'Zend/Pdf/Exception.php'; 210 #require_once 'Zend/Pdf/Exception.php'; 225 #require_once 'Zend/Pdf/Exception.php'; 240 if ($this->_encoding ==
'Identity-H') {
241 return iconv($charEncoding,
'UTF-16BE', $string);
244 if ($this->_encoding ==
'WinAnsiEncoding') {
245 return iconv($charEncoding,
'CP1252//IGNORE', $string);
248 #require_once 'Zend/Pdf/Exception.php'; 263 if ($this->_encoding ==
'Identity-H') {
264 return iconv(
'UTF-16BE', $charEncoding, $string);
267 if ($this->_encoding ==
'WinAnsiEncoding') {
268 return iconv(
'CP1252', $charEncoding, $string);
271 #require_once 'Zend/Pdf/Exception.php';
static fontWithName($name, $embeddingOptions=0)