| @@ 137-186 (lines=50) @@ | ||
| 134 | return $fm; |
|
| 135 | } |
|
| 136 | ||
| 137 | function MakeFontDescriptor($fm, $symbolic) |
|
| 138 | {
|
|
| 139 | //Ascent |
|
| 140 | $asc=(isset($fm['Ascender']) ? $fm['Ascender'] : 1000); |
|
| 141 | $fd="array('Ascent'=>".$asc;
|
|
| 142 | //Descent |
|
| 143 | $desc=(isset($fm['Descender']) ? $fm['Descender'] : -200); |
|
| 144 | $fd.=",'Descent'=>".$desc; |
|
| 145 | //CapHeight |
|
| 146 | if(isset($fm['CapHeight'])) |
|
| 147 | $ch=$fm['CapHeight']; |
|
| 148 | elseif(isset($fm['CapXHeight'])) |
|
| 149 | $ch=$fm['CapXHeight']; |
|
| 150 | else |
|
| 151 | $ch=$asc; |
|
| 152 | $fd.=",'CapHeight'=>".$ch; |
|
| 153 | //Flags |
|
| 154 | $flags=0; |
|
| 155 | if(isset($fm['IsFixedPitch']) && $fm['IsFixedPitch']) |
|
| 156 | $flags+=1<<0; |
|
| 157 | if($symbolic) |
|
| 158 | $flags+=1<<2; |
|
| 159 | if(!$symbolic) |
|
| 160 | $flags+=1<<5; |
|
| 161 | if(isset($fm['ItalicAngle']) && $fm['ItalicAngle']!=0) |
|
| 162 | $flags+=1<<6; |
|
| 163 | $fd.=",'Flags'=>".$flags; |
|
| 164 | //FontBBox |
|
| 165 | if(isset($fm['FontBBox'])) |
|
| 166 | $fbb=$fm['FontBBox']; |
|
| 167 | else |
|
| 168 | $fbb=array(0,$desc-100,1000,$asc+100); |
|
| 169 | $fd.=",'FontBBox'=>'[".$fbb[0].' '.$fbb[1].' '.$fbb[2].' '.$fbb[3]."]'"; |
|
| 170 | //ItalicAngle |
|
| 171 | $ia=(isset($fm['ItalicAngle']) ? $fm['ItalicAngle'] : 0); |
|
| 172 | $fd.=",'ItalicAngle'=>".$ia; |
|
| 173 | //StemV |
|
| 174 | if(isset($fm['StdVW'])) |
|
| 175 | $stemv=$fm['StdVW']; |
|
| 176 | elseif(isset($fm['Weight']) && preg_match('/bold|black/i',$fm['Weight']))
|
|
| 177 | $stemv=120; |
|
| 178 | else |
|
| 179 | $stemv=70; |
|
| 180 | $fd.=",'StemV'=>".$stemv; |
|
| 181 | //MissingWidth |
|
| 182 | if(isset($fm['MissingWidth'])) |
|
| 183 | $fd.=",'MissingWidth'=>".$fm['MissingWidth']; |
|
| 184 | $fd.=')'; |
|
| 185 | return $fd; |
|
| 186 | } |
|
| 187 | ||
| 188 | function MakeWidthArray($fm) |
|
| 189 | {
|
|
| @@ 137-186 (lines=50) @@ | ||
| 134 | return $fm; |
|
| 135 | } |
|
| 136 | ||
| 137 | function MakeFontDescriptor($fm, $symbolic) |
|
| 138 | {
|
|
| 139 | //Ascent |
|
| 140 | $asc=(isset($fm['Ascender']) ? $fm['Ascender'] : 1000); |
|
| 141 | $fd="array('Ascent'=>".$asc;
|
|
| 142 | //Descent |
|
| 143 | $desc=(isset($fm['Descender']) ? $fm['Descender'] : -200); |
|
| 144 | $fd.=",'Descent'=>".$desc; |
|
| 145 | //CapHeight |
|
| 146 | if(isset($fm['CapHeight'])) |
|
| 147 | $ch=$fm['CapHeight']; |
|
| 148 | elseif(isset($fm['CapXHeight'])) |
|
| 149 | $ch=$fm['CapXHeight']; |
|
| 150 | else |
|
| 151 | $ch=$asc; |
|
| 152 | $fd.=",'CapHeight'=>".$ch; |
|
| 153 | //Flags |
|
| 154 | $flags=0; |
|
| 155 | if(isset($fm['IsFixedPitch']) && $fm['IsFixedPitch']) |
|
| 156 | $flags+=1<<0; |
|
| 157 | if($symbolic) |
|
| 158 | $flags+=1<<2; |
|
| 159 | if(!$symbolic) |
|
| 160 | $flags+=1<<5; |
|
| 161 | if(isset($fm['ItalicAngle']) && $fm['ItalicAngle']!=0) |
|
| 162 | $flags+=1<<6; |
|
| 163 | $fd.=",'Flags'=>".$flags; |
|
| 164 | //FontBBox |
|
| 165 | if(isset($fm['FontBBox'])) |
|
| 166 | $fbb=$fm['FontBBox']; |
|
| 167 | else |
|
| 168 | $fbb=array(0,$desc-100,1000,$asc+100); |
|
| 169 | $fd.=",'FontBBox'=>'[".$fbb[0].' '.$fbb[1].' '.$fbb[2].' '.$fbb[3]."]'"; |
|
| 170 | //ItalicAngle |
|
| 171 | $ia=(isset($fm['ItalicAngle']) ? $fm['ItalicAngle'] : 0); |
|
| 172 | $fd.=",'ItalicAngle'=>".$ia; |
|
| 173 | //StemV |
|
| 174 | if(isset($fm['StdVW'])) |
|
| 175 | $stemv=$fm['StdVW']; |
|
| 176 | elseif(isset($fm['Weight']) && preg_match('/bold|black/i',$fm['Weight']))
|
|
| 177 | $stemv=120; |
|
| 178 | else |
|
| 179 | $stemv=70; |
|
| 180 | $fd.=",'StemV'=>".$stemv; |
|
| 181 | //MissingWidth |
|
| 182 | if(isset($fm['MissingWidth'])) |
|
| 183 | $fd.=",'MissingWidth'=>".$fm['MissingWidth']; |
|
| 184 | $fd.=')'; |
|
| 185 | return $fd; |
|
| 186 | } |
|
| 187 | ||
| 188 | function MakeWidthArray($fm) |
|
| 189 | {
|
|