]>
Commit | Line | Data |
---|---|---|
4188f38a | 1 | <?php |
2 | ||
3 | ||
4 | function GetLangOpts($llcc, $adobeCJK) { | |
5 | if (strlen($llcc) == 5) { | |
6 | $lang = substr(strtolower($llcc),0,2); | |
7 | $country = substr(strtoupper($llcc),3,2); | |
8 | } | |
9 | else { $lang = strtolower($llcc); $country = ''; } | |
10 | $unifonts = ""; | |
11 | $coreSuitable = false; | |
12 | ||
13 | switch($lang){ | |
14 | CASE "en": | |
15 | CASE "ca": | |
16 | CASE "cy": | |
17 | CASE "da": | |
18 | CASE "de": | |
19 | CASE "es": | |
20 | CASE "eu": | |
21 | CASE "fr": | |
22 | CASE "ga": | |
23 | CASE "fi": | |
24 | CASE "is": | |
25 | CASE "it": | |
26 | CASE "nl": | |
27 | CASE "no": | |
28 | CASE "pt": | |
29 | CASE "sv": | |
30 | // Edit this value to define how mPDF behaves when using new mPDF('-x') | |
31 | // If set to TRUE, mPDF will use Adobe core fonts only when it recognises the languages above | |
32 | $coreSuitable = true; break; | |
33 | ||
34 | ||
35 | ||
36 | // RTL Languages | |
37 | CASE "he": | |
38 | CASE "yi": | |
39 | $unifonts = "dejavusans,dejavusansB,dejavusansI,dejavusansBI"; break; | |
40 | ||
41 | // Arabic | |
42 | CASE "ar": | |
43 | $unifonts = "xbriyaz,xbriyazB,xbriyazI,xbriyazBI,xbzar,xbzarB,xbzarI,xbzarBI"; break; | |
44 | CASE "fa": | |
45 | $unifonts = "xbriyaz,xbriyazB,xbriyazI,xbriyazBI,xbzar,xbzarB,xbzarI,xbzarBI"; break; | |
46 | CASE "ps": | |
47 | $unifonts = "xbriyaz,xbriyazB,xbriyazI,xbriyazBI,xbzar,xbzarB,xbzarI,xbzarBI"; break; | |
48 | CASE "ur": | |
49 | $unifonts = "xbriyaz,xbriyazB,xbriyazI,xbriyazBI,xbzar,xbzarB,xbzarI,xbzarBI"; break; | |
50 | ||
51 | // Sindhi (can be Arabic or Devanagari) | |
52 | CASE "sd": | |
53 | if ($country == "IN") { $unifonts = "ind_hi_1_001"; } | |
54 | // else if ($country == "PK") { $unifonts = ""; } | |
55 | // else { $unifonts = ""; } | |
56 | break; | |
57 | ||
58 | ||
59 | // INDIC | |
60 | // Assamese | |
61 | CASE "as": $unifonts = "ind_bn_1_001"; break; | |
62 | // Bengali | |
63 | CASE "bn": $unifonts = "ind_bn_1_001"; break; | |
64 | // Gujarati | |
65 | CASE "gu": $unifonts = "ind_gu_1_001"; break; | |
66 | // Hindi (Devanagari) | |
67 | CASE "hi": $unifonts = "ind_hi_1_001"; break; | |
68 | // Kannada | |
69 | CASE "kn": $unifonts = "ind_kn_1_001"; break; | |
70 | // Kashmiri | |
71 | CASE "ks": $unifonts = "ind_hi_1_001"; break; | |
72 | // Malayalam | |
73 | CASE "ml": $unifonts = "ind_ml_1_001"; break; | |
74 | // Nepali (Devanagari) | |
75 | CASE "ne": $unifonts = "ind_hi_1_001"; break; | |
76 | // Oriya | |
77 | CASE "or": $unifonts = "ind_or_1_001"; break; | |
78 | // Punjabi (Gurmukhi) | |
79 | CASE "pa": $unifonts = "ind_pa_1_001"; break; | |
80 | // Tamil | |
81 | CASE "ta": $unifonts = "ind_ta_1_001"; break; | |
82 | // Telegu | |
83 | CASE "te": $unifonts = "ind_te_1_001"; break; | |
84 | ||
85 | // THAI | |
86 | CASE "th": $unifonts = "garuda,garudaB,garudaI,garudaBI,norasi,norasiB,norasiI,norasiBI"; break; | |
87 | ||
88 | // VIETNAMESE | |
89 | CASE "vi": | |
90 | $unifonts = "dejavusanscondensed,dejavusanscondensedB,dejavusanscondensedI,dejavusanscondensedBI,dejavusans,dejavusansB,dejavusansI,dejavusansBI"; break; | |
91 | ||
92 | // CJK Langauges | |
93 | CASE "ja": | |
94 | if ($adobeCJK) { | |
95 | $unifonts = "sjis,sjisB,sjisI,sjisBI"; | |
96 | } | |
97 | /* Uncomment these lines if CJK fonts available */ | |
98 | // else { | |
99 | // $unifonts = "sun-exta,sun-extb,hannoma,hannomb"; | |
100 | // } | |
101 | break; | |
102 | ||
103 | CASE "ko": | |
104 | if ($adobeCJK) { | |
105 | $unifonts = "uhc,uhcB,uhcI,uhcBI"; | |
106 | } | |
107 | /* Uncomment these lines if CJK fonts available */ | |
108 | // else { | |
109 | // $unifonts = "unbatang_0613"; | |
110 | // } | |
111 | break; | |
112 | ||
113 | CASE "zh": | |
114 | if ($country == "HK" || $country == "TW") { | |
115 | if ($adobeCJK) { | |
116 | $unifonts = "big5,big5B,big5I,big5BI"; | |
117 | } | |
118 | /* Uncomment these lines if CJK fonts available */ | |
119 | // else { | |
120 | // $unifonts = "sun-exta,sun-extb,hannoma,hannomb"; | |
121 | // } | |
122 | } | |
123 | else if ($country == "CN") { | |
124 | if ($adobeCJK) { | |
125 | $unifonts = "gb,gbB,gbI,gbBI"; | |
126 | } | |
127 | /* Uncomment these lines if CJK fonts available */ | |
128 | // else { | |
129 | // $unifonts = "sun-exta,sun-extb,hannoma,hannomb"; | |
130 | // } | |
131 | } | |
132 | else { | |
133 | if ($adobeCJK) { | |
134 | $unifonts = "gb,gbB,gbI,gbBI"; | |
135 | } | |
136 | /* Uncomment these lines if CJK fonts available */ | |
137 | // else { | |
138 | // $unifonts = "sun-exta,sun-extb,hannoma,hannomb"; | |
139 | // } | |
140 | } | |
141 | break; | |
142 | ||
143 | } | |
144 | ||
145 | ||
146 | $unifonts_arr = array(); | |
147 | if ($unifonts) { | |
148 | $unifonts_arr = preg_split('/\s*,\s*/',$unifonts); | |
149 | } | |
150 | return array($coreSuitable ,$unifonts_arr); | |
151 | } | |
152 | ||
153 | ?> |