/var/www/hkosl.com/imusiccircle/webadmin/libraies/phenx/php-font-lib/src/FontLib/Font.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<?php
/**
 * @package php-font-lib
 * @link    https://github.com/PhenX/php-font-lib
 * @author  Fabien Ménager <fabien.menager@gmail.com>
 * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
 */

namespace FontLib;

/**
 * Generic font file.
 *
 * @package php-font-lib
 */
class Font {
  static 
$debug false;

  
/**
   * @param string $file The font file
   *
   * @return TrueType\File|null $file
   */
  
public static function load($file) {
    
$header file_get_contents($filefalsenullnull4);
    
$class  null;

    switch (
$header) {
      case 
"\x00\x01\x00\x00":
      case 
"true":
      case 
"typ1":
        
$class "TrueType\\File";
        break;

      case 
"OTTO":
        
$class "OpenType\\File";
        break;

      case 
"wOFF":
        
$class "WOFF\\File";
        break;

      case 
"ttcf":
        
$class "TrueType\\Collection";
        break;

      
// Unknown type or EOT
      
default:
        
$magicNumber file_get_contents($filefalsenull342);

        if (
$magicNumber === "LP") {
          
$class "EOT\\File";
        }
    }

    if (
$class) {
      
$class "FontLib\\$class";

      
/** @var TrueType\File $obj */
      
$obj = new $class;
      
$obj->load($file);

      return 
$obj;
    }

    return 
null;
  }

  static function 
d($str) {
    if (!
self::$debug) {
      return;
    }
    echo 
"$str\n";
  }

  static function 
UTF16ToUTF8($str) {
    return 
mb_convert_encoding($str"utf-8""utf-16");
  }

  static function 
UTF8ToUTF16($str) {
    return 
mb_convert_encoding($str"utf-16""utf-8");
  }
}