!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/home/picotech/domains/ecom1.picotech.app/public_html_ecom1/vendor/mpdf/mpdf/src/Language/   drwxr-xr-x
Free 25.3 GB of 117.98 GB (21.44%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     LanguageToFont.php (11.5 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

namespace Mpdf\Language;

class 
LanguageToFont implements \Mpdf\Language\LanguageToFontInterface
{

    public function 
getLanguageOptions($llcc$adobeCJK)
    {
        
$tags explode('-'$llcc);
        
$lang strtolower($tags[0]);
        
$country '';
        
$script '';
        if (!empty(
$tags[1])) {
            if (
strlen($tags[1]) === 4) {
                
$script strtolower($tags[1]);
            } else {
                
$country strtolower($tags[1]);
            }
        }
        if (!empty(
$tags[2])) {
            
$country strtolower($tags[2]);
        }

        
$unifont '';
        
$coreSuitable false;

        switch (
$lang) {
            
/* European */
            
case 'en':
            case 
'eng'// English        // LATIN
            
case 'eu':
            case 
'eus'// Basque
            
case 'br':
            case 
'bre'// Breton
            
case 'ca':
            case 
'cat'// Catalan
            
case 'co':
            case 
'cos'// Corsican
            
case 'kw':
            case 
'cor'// Cornish
            
case 'cy':
            case 
'cym'// Welsh
            
case 'cs':
            case 
'ces'// Czech
            
case 'da':
            case 
'dan'// Danish
            
case 'nl':
            case 
'nld'// Dutch
            
case 'et':
            case 
'est'// Estonian
            
case 'fo':
            case 
'fao'// Faroese
            
case 'fi':
            case 
'fin'// Finnish
            
case 'fr':
            case 
'fra'// French
            
case 'gl':
            case 
'glg'// Galician
            
case 'de':
            case 
'deu'// German
            
case 'ht':
            case 
'hat'// Haitian; Haitian Creole
            
case 'hu':
            case 
'hun'// Hungarian
            
case 'ga':
            case 
'gle'// Irish
            
case 'is':
            case 
'isl'// Icelandic
            
case 'it':
            case 
'ita'// Italian
            
case 'la':
            case 
'lat'// Latin
            
case 'lb':
            case 
'ltz'// Luxembourgish
            
case 'li':
            case 
'lim'// Limburgish
            
case 'lt':
            case 
'lit'// Lithuanian
            
case 'lv':
            case 
'lav'// Latvian
            
case 'gv':
            case 
'glv'// Manx
            
case 'no':
            case 
'nor'// Norwegian
            
case 'nn':
            case 
'nno'// Norwegian Nynorsk
            
case 'nb':
            case 
'nob'// Norwegian BokmÃ¥l
            
case 'pl':
            case 
'pol'// Polish
            
case 'pt':
            case 
'por'// Portuguese
            
case 'ro':
            case 
'ron'// Romanian
            
case 'gd':
            case 
'gla'// Scottish Gaelic
            
case 'es':
            case 
'spa'// Spanish
            
case 'sv':
            case 
'swe'// Swedish
            
case 'sl':
            case 
'slv'// Slovene
            
case 'sk':
            case 
'slk'// Slovak
                
$coreSuitable true;
                break;

            case 
'ru':
            case 
'rus'// Russian    // CYRILLIC
            
case 'ab':
            case 
'abk'// Abkhaz
            
case 'av':
            case 
'ava'// Avaric
            
case 'ba':
            case 
'bak'// Bashkir
            
case 'be':
            case 
'bel'// Belarusian
            
case 'bg':
            case 
'bul'// Bulgarian
            
case 'ce':
            case 
'che'// Chechen
            
case 'cv':
            case 
'chv'// Chuvash
            
case 'kk':
            case 
'kaz'// Kazakh
            
case 'kv':
            case 
'kom'// Komi
            
case 'ky':
            case 
'kir'// Kyrgyz
            
case 'mk':
            case 
'mkd'// Macedonian
            
case 'cu':
            case 
'chu'// Old Church Slavonic
            
case 'os':
            case 
'oss'// Ossetian
            
case 'sr':
            case 
'srp'// Serbian
            
case 'tg':
            case 
'tgk'// Tajik
            
case 'tt':
            case 
'tat'// Tatar
            
case 'tk':
            case 
'tuk'// Turkmen
            
case 'uk':
            case 
'ukr'// Ukrainian
                
$unifont 'dejavusanscondensed'/* freeserif best coverage for supplements etc. */
                
break;

            case 
'hy':
            case 
'hye'// ARMENIAN
                
$unifont 'dejavusans';
                break;
            case 
'ka':
            case 
'kat'// GEORGIAN
                
$unifont 'dejavusans';
                break;

            case 
'el':
            case 
'ell'// GREEK
                
$unifont 'dejavusanscondensed';
                break;
            case 
'cop':  // COPTIC
                
$unifont 'quivira';
                break;

            case 
'got':  // GOTHIC
                
$unifont 'freeserif';
                break;

            
/* African */
            
case 'nqo':  // NKO
                
$unifont 'dejavusans';
                break;
            
//CASE 'bax':    // BAMUM
            //CASE 'ha':  CASE 'hau':    // Hausa
            
case 'vai':  // VAI
                
$unifont 'freesans';
                break;
            case 
'am':
            case 
'amh'// Amharic ETHIOPIC
            
case 'ti':
            case 
'tir'// Tigrinya ETHIOPIC
                    
$unifont 'abyssinicasil';
                break;

            
/* Middle Eastern */
            
case 'ar':
            case 
'ara'// Arabic    NB Arabic text identified by Autofont will be marked as und-Arab
                
$unifont 'xbriyaz';
                break;
            case 
'fa':
            case 
'fas'// Persian (Farsi)
                
$unifont 'xbriyaz';
                break;
            case 
'ps':
            case 
'pus'// Pashto
                
$unifont 'xbriyaz';
                break;
            case 
'ku':
            case 
'kur'// Kurdish
                
$unifont 'xbriyaz';
                break;
            case 
'ur':
            case 
'urd'// Urdu
                
$unifont 'xbriyaz';
                break;
            case 
'he':
            case 
'heb'// HEBREW
            
case 'yi':
            case 
'yid'// Yiddish
                    
$unifont 'taameydavidclm'// dejavusans,dejavusanscondensed,freeserif are fine if you do not need cantillation marks
                
break;

            case 
'syr':  // SYRIAC
                
$unifont 'estrangeloedessa';
                break;

            
//CASE 'arc':    // IMPERIAL_ARAMAIC
            //CASE ''ae:    // AVESTAN
            
case 'xcr':  // CARIAN
                
$unifont 'aegean';
                break;
            case 
'xlc':  // LYCIAN
                
$unifont 'aegean';
                break;
            case 
'xld':  // LYDIAN
                
$unifont 'aegean';
                break;
            
//CASE 'mid':    // MANDAIC
            //CASE 'peo':    // OLD_PERSIAN
            
case 'phn':  // PHOENICIAN
                
$unifont 'aegean';
                break;
            
//CASE 'smp':    // SAMARITAN
            
case 'uga':  // UGARITIC
                
$unifont 'aegean';
                break;

            
/* Central Asian */
            
case 'bo':
            case 
'bod'// TIBETAN
            
case 'dz':
            case 
'dzo'// Dzongkha
                    
$unifont 'jomolhari';
                break;

            
//CASE 'mn':  CASE 'mon':    // MONGOLIAN    (Vertical script)
            //CASE 'ug':  CASE 'uig':    // Uyghur
            //CASE 'uz':  CASE 'uzb':    // Uzbek
            //CASE 'az':  CASE 'azb':    // South Azerbaijani

            /* South Asian */
            
case 'as':
            case 
'asm'// Assamese
                
$unifont 'freeserif';
                break;
            case 
'bn':
            case 
'ben'// BENGALI; Bangla
                
$unifont 'freeserif';
                break;
            case 
'ks':
            case 
'kas'// Kashmiri
                
$unifont 'freeserif';
                break;
            case 
'hi':
            case 
'hin'// Hindi    DEVANAGARI
            
case 'bh':
            case 
'bih'// Bihari (Bhojpuri, Magahi, and Maithili)
            
case 'sa':
            case 
'san'// Sanskrit
                
$unifont 'freeserif';
                break;
            case 
'gu':
            case 
'guj'// Gujarati
                
$unifont 'freeserif';
                break;
            case 
'pa':
            case 
'pan'// Panjabi, Punjabi GURMUKHI
                
$unifont 'freeserif';
                break;
            case 
'kn':
            case 
'kan'// Kannada
                
$unifont 'lohitkannada';
                break;
            case 
'mr':
            case 
'mar'// Marathi
                
$unifont 'freeserif';
                break;
            case 
'ml':
            case 
'mal'// MALAYALAM
                
$unifont 'freeserif';
                break;
            case 
'ne':
            case 
'nep'// Nepali
                
$unifont 'freeserif';
                break;
            case 
'or':
            case 
'ori'// ORIYA
                
$unifont 'freeserif';
                break;
            case 
'si':
            case 
'sin'// SINHALA
                
$unifont 'kaputaunicode';
                break;
            case 
'ta':
            case 
'tam'// TAMIL
                
$unifont 'freeserif';
                break;
            case 
'te':
            case 
'tel'// TELUGU
                
$unifont 'pothana2000';
                break;

            
// Sindhi (Arabic or Devanagari)
            
case 'sd':
            case 
'snd'// Sindhi
                
$unifont 'lateef';
                if (
$country === 'in') {
                    
$unifont 'freeserif';
                }
                break;

            
//CASE 'ccp':    // CHAKMA
            //CASE 'lep':    // LEPCHA
            
case 'lif':  // LIMBU
                
$unifont 'sun-exta';
                break;
            
//CASE 'sat':    // OL_CHIKI
            //CASE 'saz':    // SAURASHTRA
            
case 'syl':  // SYLOTI_NAGRI
                
$unifont 'mph2bdamase';
                break;
            
//CASE 'dgo':    // TAKRI
            
case 'dv':
            case 
'div'// Divehi; Maldivian  THAANA
                
$unifont 'freeserif';
                break;

            
/* South East Asian */
            
case 'km':
            case 
'khm'// KHMER
                
$unifont 'khmeros';
                break;
            case 
'lo':
            case 
'lao'// LAO
                
$unifont 'dhyana';
                break;
            case 
'my':
            case 
'mya'// MYANMAR Burmese
                
$unifont 'tharlon'// zawgyi-one is non-unicode compliant but in wide usage
                // ayar is also not strictly compliant
                // padaukbook is unicode compliant
                
break;
            case 
'th':
            case 
'tha'// THAI
                
$unifont 'garuda';
                break;

            
// VIETNAMESE
            
case 'vi':
            case 
'vie'// Vietnamese
                
$unifont 'dejavusanscondensed';
                break;

            
//CASE 'ms':  CASE 'msa':    // Malay
            //CASE 'ban':    // BALINESE
            //CASE 'bya':    // BATAK
            
case 'bug':  // BUGINESE
                
$unifont 'freeserif';
                break;
            
//CASE 'cjm':    // CHAM
            //CASE 'jv':    // JAVANESE
            
case 'su':  // SUNDANESE
                
$unifont 'sundaneseunicode';
                break;
            case 
'tdd':  // TAI_LE
                
$unifont 'tharlon';
                break;
            case 
'blt':  // TAI_VIET
                
$unifont 'taiheritagepro';
                break;

            
/* Phillipine */
            
case 'bku':  // BUHID
                
$unifont 'quivira';
                break;
            case 
'hnn':  // HANUNOO
                
$unifont 'quivira';
                break;
            case 
'tl':  // TAGALOG
                
$unifont 'quivira';
                break;
            case 
'tbw':  // TAGBANWA
                
$unifont 'quivira';
                break;

            
/* East Asian */
            
case 'zh':
            case 
'zho'// Chinese
                
$unifont 'sun-exta';
                if (
$adobeCJK) {
                    
$unifont 'gb';
                    if (
$country === 'hk' || $country === 'tw') {
                        
$unifont 'big5';
                    }
                }
                break;
            case 
'ko':
            case 
'kor'// HANGUL Korean
                
$unifont 'unbatang';
                if (
$adobeCJK) {
                    
$unifont 'uhc';
                }
                break;
            case 
'ja':
            case 
'jpn'// Japanese HIRAGANA KATAKANA
                
$unifont 'sun-exta';
                if (
$adobeCJK) {
                    
$unifont 'sjis';
                }
                break;
            case 
'ii':
            case 
'iii'// Nuosu; Yi
                
$unifont 'sun-exta';
                if (
$adobeCJK) {
                    
$unifont 'gb';
                }
                break;
            case 
'lis':  // LISU
                
$unifont 'quivira';
                break;

            
/* American */
            
case 'chr':  // CHEROKEE
            
case 'oj':
            case 
'oji'// Ojibwe; Chippewa
            
case 'cr':
            case 
'cre'// Cree CANADIAN_ABORIGINAL
            
case 'iu':
            case 
'iku'// Inuktitut
                
$unifont 'aboriginalsans';
                break;

            
/* Undetermined language - script used */
            
case 'und':
                
$unifont $this->fontByScript($script$adobeCJK);
                break;
        }

        return [
$coreSuitable$unifont];
    }

    protected function 
fontByScript($script$adobeCJK)
    {
        switch (
$script) {
            
/* European */
            
case 'latn'// LATIN
                
return 'dejavusanscondensed';
            case 
'cyrl'// CYRILLIC
                
return 'dejavusanscondensed'/* freeserif best coverage for supplements etc. */
            
case 'cprt'// CYPRIOT
                
return 'aegean';
            case 
'glag'// GLAGOLITIC
                
return 'mph2bdamase';
            case 
'linb'// LINEAR_B
                
return 'aegean';
            case 
'ogam'// OGHAM
                
return 'dejavusans';
            case 
'ital'// OLD_ITALIC
                
return 'aegean';
            case 
'runr'// RUNIC
                
return 'sun-exta';
            case 
'shaw'// SHAVIAN
                
return 'mph2bdamase';

            
/* African */
            
case 'egyp'// EGYPTIAN_HIEROGLYPHS
                
return 'aegyptus';
            case 
'ethi'// ETHIOPIC
                
return 'abyssinicasil';
            
//CASE 'merc':    // MEROITIC_CURSIVE
            //CASE 'mero':    // MEROITIC_HIEROGLYPHS
            
case 'osma'// OSMANYA
                
return 'mph2bdamase';
            case 
'tfng'// TIFINAGH
                
return 'dejavusans';

            
/* Middle Eastern */
            
case 'arab':  // ARABIC
                
return 'xbriyaz';
            case 
'xsux'// CUNEIFORM
                
return 'akkadian';
            
//CASE 'sarb':    // OLD_SOUTH_ARABIAN
            //CASE 'prti':    // INSCRIPTIONAL_PARTHIAN
            //CASE 'phli':    // INSCRIPTIONAL_PAHLAVI


            /* Central Asian */
            //CASE 'orkh':    // OLD_TURKIC
            //CASE 'phag':    // PHAGS_PA        (Vertical script)

            /* South Asian */
            //CASE 'brah':    // BRAHMI
            //CASE 'kthi':    // KAITHI
            
case 'khar'// KHAROSHTHI
                
return 'mph2bdamase';
            case 
'mtei'// MEETEI_MAYEK
                
return 'eeyekunicode';
            
//CASE 'shrd':    // SHARADA
            //CASE 'sora':    // SORA_SOMPENG

            /* South East Asian */
            
case 'kali'// KAYAH_LI
                
return 'freemono';
            
//CASE 'rjng':    // REJANG
            
case 'lana'// TAI_THAM
                
return 'lannaalif';
            case 
'talu'// NEW_TAI_LUE
                
return 'daibannasilbook';

            
/* East Asian */
            
case 'hans'// HAN (SIMPLIFIED)
                
if ($adobeCJK) {
                    return 
'gb';
                }
                return 
'sun-exta';
            case 
'bopo'// BOPOMOFO
                
return 'sun-exta';
            
//CASE 'plrd':    // MIAO
            
case 'yiii'// YI
                
return 'sun-exta';

            
/* American */
            
case 'dsrt'// DESERET
                
return 'mph2bdamase';

            
/* Other */
            
case 'brai'// BRAILLE
                
return 'dejavusans';
        }

        return 
null;
    }

}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0046 ]--