Index

D-Type Text Layout Extension Scripts

D-Type Text Layout Extension supports the same scripts as the underlying HarfBuzz text shaping engine. Additionally, D-Type Text Layout Extension adds a small list of private scripts reserved for application-specific purposes. The list of defined script codes follows:

enum ScriptCodes
{
    /* public scripts */ 
    zyyyScriptCode =  0, /* Common */ 
    zinhScriptCode =  1, /* Inherited */ 
    qaaiScriptCode =  zinhScriptCode, /* manually added alias, for API stability */ 
    arabScriptCode =  2, /* Arabic */  /* */ 
    armnScriptCode =  3, /* Armenian */ 
    bengScriptCode =  4, /* Bengali */  /* */ 
    bopoScriptCode =  5, /* Bopomofo */ 
    cherScriptCode =  6, /* Cherokee */ 
    coptScriptCode =  7, /* Coptic */ 
    cyrlScriptCode =  8, /* Cyrillic */ 
    dsrtScriptCode =  9, /* Deseret */ 
    devaScriptCode = 10, /* Devanagari */  /* */  /* (Hindi, Sanskrit) */ 
    ethiScriptCode = 11, /* Ethiopic */ 
    georScriptCode = 12, /* Georgian */ 
    gothScriptCode = 13, /* Gothic */ 
    grekScriptCode = 14, /* Greek */ 
    gujrScriptCode = 15, /* Gujarati */  /* */ 
    guruScriptCode = 16, /* Gurmukhi */  /* */ 
    haniScriptCode = 17, /* Han */  /* */ 
    hangScriptCode = 18, /* Hangul */  /* */ 
    hebrScriptCode = 19, /* Hebrew */  /* */ 
    hiraScriptCode = 20, /* Hiragana */ 
    kndaScriptCode = 21, /* Kannada */  /* */ 
    kanaScriptCode = 22, /* Katakana */ 
    khmrScriptCode = 23, /* Khmer */  /* */ 
    laooScriptCode = 24, /* Lao */ 
    latnScriptCode = 25, /* Latin */  /* */ 
    mlymScriptCode = 26, /* Malayalam */  /* */ 
    mongScriptCode = 27, /* Mongolian */ 
    mymrScriptCode = 28, /* Myanmar */ 
    ogamScriptCode = 29, /* Ogham */ 
    italScriptCode = 30, /* Old Italic */ 
    oryaScriptCode = 31, /* Oriya */  /* */ 
    runrScriptCode = 32, /* Runic */ 
    sinhScriptCode = 33, /* Sinhala */  /* */ 
    syrcScriptCode = 34, /* Syriac */ 
    tamlScriptCode = 35, /* Tamil */  /* */ 
    teluScriptCode = 36, /* Telugu */  /* */ 
    thaaScriptCode = 37, /* Thaana */ 
    thaiScriptCode = 38, /* Thai */  /* */ 
    tibtScriptCode = 39, /* Tibetan */  /* */ 
    cansScriptCode = 40, /* Unified Canadian Aboriginal Symbols */ 
    yiiiScriptCode = 41, /* Yi syllables */ 
    tglgScriptCode = 42, /* Tagalog */ 
    hanoScriptCode = 43, /* Hanunoo */ 
    buhdScriptCode = 44, /* Buhid */ 
    tagbScriptCode = 45, /* Tagbanwa */ 
    braiScriptCode = 46, /* Braille New script in Unicode 4 */ 
    cprtScriptCode = 47, /* Cypriot New script in Unicode 4 */ 
    limbScriptCode = 48, /* Limbu New script in Unicode 4 */ 
    linbScriptCode = 49, /* Linear B New script in Unicode 4 */ 
    osmaScriptCode = 50, /* Osmanya New script in Unicode 4 */ 
    shawScriptCode = 51, /* Shavian New script in Unicode 4 */ 
    taleScriptCode = 52, /* Tai Le New script in Unicode 4 */ 
    ugarScriptCode = 53, /* Ugaritic New script in Unicode 4 */ 
    hrktScriptCode = 54, /* Katakana or Hiragana New script code in Unicode 4.0.1 */ 
    bugiScriptCode = 55,
    glagScriptCode = 56,
    kharScriptCode = 57,
    syloScriptCode = 58,
    taluScriptCode = 59,
    tfngScriptCode = 60,
    xpeoScriptCode = 61,
    baliScriptCode = 62,
    batkScriptCode = 63,
    blisScriptCode = 64,
    brahScriptCode = 65,
    chamScriptCode = 66,
    cirtScriptCode = 67,
    cyrsScriptCode = 68,
    egydScriptCode = 69,
    egyhScriptCode = 70,
    egypScriptCode = 71,
    geokScriptCode = 72,
    hansScriptCode = 73,
    hantScriptCode = 74,
    hmngScriptCode = 75,
    hungScriptCode = 76,
    indsScriptCode = 77,
    javaScriptCode = 78,
    kaliScriptCode = 79,
    latfScriptCode = 80,
    latgScriptCode = 81,
    lepcScriptCode = 82,
    linaScriptCode = 83,
    mandScriptCode = 84,
    mayaScriptCode = 85,
    meroScriptCode = 86,
    nkooScriptCode = 87,
    orkhScriptCode = 88,
    permScriptCode = 89,
    phagScriptCode = 90,
    phnxScriptCode = 91,
    plrdScriptCode = 92,
    roroScriptCode = 93,
    saraScriptCode = 94,
    syreScriptCode = 95,
    syrjScriptCode = 96,
    syrnScriptCode = 97,
    tengScriptCode = 98,
    vaiiScriptCode = 99,
    vispScriptCode = 100,
    xsuxScriptCode = 101,
    zxxxScriptCode = 102,
    zzzzScriptCode = 103,
    cariScriptCode = 104,
    jpanScriptCode = 105,
    lanaScriptCode = 106,
    lyciScriptCode = 107,
    lydiScriptCode = 108,
    olckScriptCode = 109,
    rjngScriptCode = 110,
    saurScriptCode = 111,
    sgnwScriptCode = 112,
    sundScriptCode = 113,
    moonScriptCode = 114,
    mteiScriptCode = 115,
    armiScriptCode = 116,
    avstScriptCode = 117,
    cakmScriptCode = 118,
    koreScriptCode = 119,
    kthiScriptCode = 120,
    maniScriptCode = 121,
    phliScriptCode = 122,
    phlpScriptCode = 123,
    phlvScriptCode = 124,
    prtiScriptCode = 125,
    samrScriptCode = 126,
    tavtScriptCode = 127,
    zmthScriptCode = 128,
    zsymScriptCode = 129,
    bamuScriptCode = 130,
    lisuScriptCode = 131,
    nkgbScriptCode = 132,
    sarbScriptCode = 133,
    bassScriptCode = 134,
    duplScriptCode = 135,
    elbaScriptCode = 136,
    granScriptCode = 137,
    kpelScriptCode = 138,
    lomaScriptCode = 139,
    mendScriptCode = 140,
    mercScriptCode = 141,
    narbScriptCode = 142,
    nbatScriptCode = 143,
    palmScriptCode = 144,
    sindScriptCode = 145,
    waraScriptCode = 146,
    afakScriptCode = 147,
    jurcScriptCode = 148,
    mrooScriptCode = 149,
    nshuScriptCode = 150,
    shrdScriptCode = 151,
    soraScriptCode = 152,
    takrScriptCode = 153,
    tangScriptCode = 154,
    woleScriptCode = 155,
    khojScriptCode = 156,
    tirhScriptCode = 157,

    /* private scripts */ 
    p016ScriptCode = 239,
    p015ScriptCode = 240,
    p014ScriptCode = 241,
    p013ScriptCode = 242,
    p012ScriptCode = 243,
    p011ScriptCode = 244,
    p010ScriptCode = 245,
    p009ScriptCode = 246,
    p008ScriptCode = 247,
    p007ScriptCode = 248,
    p006ScriptCode = 249,
    p005ScriptCode = 250,
    p004ScriptCode = 251,
    p003ScriptCode = 252,
    p002ScriptCode = 253,
    p001ScriptCode = 254,

    /* any script */ 
    a000ScriptCode = 255,

    /* counts */ 
    scriptCodeCountPublic = 158,
    scriptCodeCountPrivate = 16,
    scriptCodeCountUnused = 82,
    scriptCodeCount = 256
};
 

Index