desc:eel_windows_fonts
slider1:0<0,16,1{Gr00,Gr01,Gr02,Gr03,Gr04,Gr05,Gr06,Gr07,Gr08,Gr09,Gr10,Gr11,Gr12,Gr13,Gr14,Gr15,Gr16}>groupFont
slider2:0<0,16,1>fontPosition
slider3:0<0,8,1{withoutFlags, Italic, UnderLine, Italic+UnderLine, Bold, Italic+Bold, UnderLine+Bold, Italic+UnderLine+Bold}>Flags
@init
function win_fonts(idX, sizeFont, fontGroup, flags)
local(_flag _p _pos _len)
(
    // Регистрируем строчную переменную, куда положим текст
    STR_WIN_TEXT = 0;
    //-------------------------------------------------------------
    // Ложим текст в зарегистрированную переменную STR_WIN_TEXT,
    // длина текста в строке не более 64kB
    strcpy(STR_WIN_TEXT,                                 //_pos    _len  
                           "Default Reaper Bitmap font"  //0000-----026
                           //--------------------------------------------
                           "Academy Engraved LET"        //0026-----020      
                           "AdLib WGL 4BT"               //0046-----013
                           "AlphabetSoup Tilt BT"        //0059-----020
                           "Amazone BT"                  //0079-----010
                           "Archivo"                     //0089-----007
                           "Arial"                       //0096-----005
                           "Bahnschrift"                 //0101-----011
                           "BankGothic Md BT"            //0112-----016
                           "BernhardTango BT"            //0128-----016
                           "Blackletter686 BT"           //0144-----017
                           "Brandish"                    //0161-----008
                           "Broadway BT"                 //0169-----011
                           "BroadwayEngraved BT"         //0180-----019
                           "Brush455 BT"                 //0199-----011
                           "Calibri"                     //0210-----007
                           "Calligraph421 BT"            //0217-----016
                           ///-----------------------------------------
                           "Cambria"                     //0233-----007
                           "Cambria Math"                //0240-----012
                           "Candara"                     //0252-----007
                           "CandyBits BT"                //0259-----012
                           "Carmina Blk BT"              //0271-----014
                           "CaslonOpnface BT"            //0285-----016
                           "Cataneo BT"                  //0301-----010
                           "Century725 Blk BT"           //0311-----017
                           "Chianti XBd BT"              //0328-----014
                           "Comic Sans MS"               //0342-----013
                           "Consolas"                    //0355-----008
                           "Constantia"                  //0363-----010
                           "Cooper BlkOul BT"            //0373-----016
                           "Corbel"                      //0389-----006
                           "Courier New"                 //0395-----011
                           "Decorated035 BT"             //0406-----015
                           //------------------------------------------
                           "DomBold BT"                  //0421-----010
                           "Ebrima"                      //0431-----006
                           "Eyeballs BT"                 //0437-----011
                           "Folio Lt BT"                 //0448-----011
                           "FontAwesome"                 //0459-----011
                           "Fraktur BT"                  //0470-----010
                           "FrankGoth BT"                //0480-----012
                           "Franklin Gothic"             //0492-----015
                           "Freehand591 BT"              //0507-----014
                           "Futura LtCn BT"              //0521-----014
                           "Futura Md BT"                //0535-----012
                           "Futura XBlklt BT"            //0547-----016
                           "FuturaBlack WGL4 BT"         //0563-----019
                           "Gabriola"                    //0582-----008
                           "Gadugi"                      //0590-----006
                           "GENUINE"                     //0596-----007
                           //------------------------------------------
                           "Geometr212 Bk BT"            //0603-----016
                           "Georgia"                     //0619-----007
                           "Geotype TT"                  //0626-----010
                           "HandelGothic BT"             //0636-----015
                           "Highlight LET"               //0651-----013
                           "HolidayPi BT"                //0664-----012
                           "HoloLens MDL2 Assets"        //0676-----020
                           "Humanst521 XBd BT"           //0696-----017
                           "Impact"                      //0713-----006
                           "Incised901 Nd BT"            //0719-----016
                           "Incised901 Ndlt BT"          //0735-----018
                           "Ink Free"                    //0753-----008
                           "Javanese Text"               //0761-----013
                           "John Handy LET"              //0774-----014
                           "Jokerman LET"                //0788-----012
                           "Kaufmann BT"                 //0800-----011
                           //------------------------------------------
                           "La Bamba LET"                //0811-----012
                           "Leelawadee UI"               //0823-----013
                           "Lucida Console"              //0836-----014
                           "Lucida Sans Unicode"         //0850-----019
                           "Malgun Gothic"               //0869-----013
                           "Marlett"                     //0882-----007
                           "Martina"                     //0889-----007
                           "Material Icons"              //0896-----014
                           "Mekanik LET"                 //0910-----011
                           "Microsoft Himalaya"          //0921-----018
                           "Microsoft JhengHei"          //0939-----018
                           "Microsoft JhengHei UI"       //0957-----021
                           "Microsoft New Tai Lue"       //0978-----021
                           "Microsoft PhagsPa"           //0999-----017
                           "Microsoft Sans Serif"        //1016-----020
                           "Microsoft Tai Le"            //1036-----016
                           //------------------------------------------
                           "Microsoft YaHei"             //1052-----015
                           "Microsoft YaHei UI"          //1067-----018
                           "Microsoft Yi Baiti"          //1085-----018
                           "Milano LET"                  //1103-----010
                           "MingLiU_HKSCS-ExtB"          //1113-----018
                           "MingLiU-ExtB"                //1131-----012
                           "MisterEarl BT"               //1143-----013
                           "Mongolian Baiti"             //1156-----015
                           "MS Gothic"                   //1171-----009
                           "MS PGothic"                  //1180-----010
                           "MS UI Gothic"                //1190-----012
                           "MV Boli"                     //1202-----007
                           "Myanmar Text"                //1209-----012
                           "NewspaperPi BT"              //1221-----014
                           "Nirmala UI"                  //1235-----010
                           "Normande BT"                 //1245-----011
                           //------------------------------------------
                           "NSimSun"                     //1256-----007
                           "OCR-A BT"                    //1263-----008
                           "Odessa LET"                  //1271-----010
                           "OldDreadfulNo7 BT"           //1281-----017
                           "One Stroke Script LET"       //1298-----021
                           "Open Sans"                   //1319-----009
                           "Orange LET"                  //1328-----010
                           "Palatino Linotype"           //1338-----017
                           "Parisian BT"                 //1355-----011
                           "ParkAvenue BT"               //1366-----013
                           "PMingLiU-ExtB"               //1379-----013
                           "PosterBodoni WGL4 BT"        //1392-----020
                           "PrimaSans BT"                //1412-----012
                           "Pump LET"                    //1424-----008
                           "Quixley LET"                 //1432-----011
                           "Rage LET"                    //1443-----008
                           //--------------------------------------------
                           //Ruach LET
                         
           );
           //------------------------------------------------------------
           // Условие для флагов параметра[flags] функции gfx_setfont
           // Принцип: число в двоичной системе счисления
           // Т.е. макисмум три символа = 3заполненных бита = 7;
           // пустой символ        = 0; символ i = 0бит(2^0) = 1;
           // символ u = 1бит(2^1) = 2; символ b = 2бит(2^2) = 4;
           // Остальные значения символов-производные от заполнения
           // битов числа 7
           // 3='iu'-->(1['i']+2['u'])
           // 5='ib'-->(1['i']+4['b'])
           // 6='ub'-->(2['u']+4['b'])
           // 7='iub'->(1['i']+2['u']+4['b'])
           //------------------------------------------------------------
           // charVal 0=' '  (Empty BitField)               = decNum = 0;
           // charVal 1='i'  (zeroBit)                      = decNum = 1;
           // charVal 2='u'  (firstBit)                     = decNum = 2;
           // charVal 3='iu' (zeroBit+firstBit)             = decNum = 3;
           // charVal 4='b'  (secondBit)                    = decNum = 4;
           // charVal 5='ib' (zeroBit+secondBit)            = decNum = 5;
           // charVal 6='ub' (firstBit+secondBit)           = decNum = 6;
           // charVal 7='iub'(zeroBit+firstBit+seconddBit)  = decNum = 7;
           flags==00?_flag=' ' ; flags==01?_flag='i';
           flags==02?_flag='u' ; flags==03?_flag='iu';
           flags==04?_flag='b' ; flags==05?_flag='ib';
           flags==06?_flag='ub'; flags==07?_flag='iub';
           //------------------------------------------------------------
           // Группы хранимых шрифтов(Одна группа = 17 шрифтов
           // [ограничение функции gfx_setfont],0 позиция любой группы
           // всегда шрифт по умолчанияю (Default Reaper Bitmap font)
           //Group_0-----------------------------------------------------
           // Условия для выполнения параметров среза для группы 0
           // Множественный выбор: присваивание двух значений-
           //  [_pos-позиция начала среза в тексте]
           //  [_len-длина среза в символах]
           // через выражение присваивания переменной _p
           (idX==00)&&(fontGroup==0)?_p=(_pos=0000; _len=026;);
           (idX==01)&&(fontGroup==0)?_p=(_pos=0026; _len=020;);
           (idX==02)&&(fontGroup==0)?_p=(_pos=0046; _len=013;);
           (idX==03)&&(fontGroup==0)?_p=(_pos=0059; _len=020;);
           (idX==04)&&(fontGroup==0)?_p=(_pos=0079; _len=010;);
           (idX==05)&&(fontGroup==0)?_p=(_pos=0089; _len=007;);
           (idX==06)&&(fontGroup==0)?_p=(_pos=0096; _len=005;);
           (idX==07)&&(fontGroup==0)?_p=(_pos=0101; _len=011;);
           (idX==08)&&(fontGroup==0)?_p=(_pos=0112; _len=016;);
           (idX==09)&&(fontGroup==0)?_p=(_pos=0128; _len=016;);
           (idX==10)&&(fontGroup==0)?_p=(_pos=0144; _len=017;);
           (idX==11)&&(fontGroup==0)?_p=(_pos=0161; _len=008;);
           (idX==12)&&(fontGroup==0)?_p=(_pos=0169; _len=011;);
           (idX==13)&&(fontGroup==0)?_p=(_pos=0180; _len=019;);
           (idX==14)&&(fontGroup==0)?_p=(_pos=0199; _len=011;);
           (idX==15)&&(fontGroup==0)?_p=(_pos=0210; _len=007;);
           (idX==16)&&(fontGroup==0)?_p=(_pos=0217; _len=016;);
           //Group_1---------------------------------------------------
           // Условия для выполнения параметров среза для группы 1
           (idX==00)&&(fontGroup==1)?_p=(_pos=0000; _len=026;);
           (idX==01)&&(fontGroup==1)?_p=(_pos=0233; _len=007;);
           (idX==02)&&(fontGroup==1)?_p=(_pos=0240; _len=012;);          
           (idX==03)&&(fontGroup==1)?_p=(_pos=0252; _len=007;);
           (idX==04)&&(fontGroup==1)?_p=(_pos=0259; _len=012;);
           (idX==05)&&(fontGroup==1)?_p=(_pos=0271; _len=014;);
           (idX==06)&&(fontGroup==1)?_p=(_pos=0285; _len=016;);
           (idX==07)&&(fontGroup==1)?_p=(_pos=0301; _len=010;);
           (idX==08)&&(fontGroup==1)?_p=(_pos=0311; _len=017;);
           (idX==09)&&(fontGroup==1)?_p=(_pos=0328; _len=014;);
           (idX==10)&&(fontGroup==1)?_p=(_pos=0342; _len=013;);
           (idX==11)&&(fontGroup==1)?_p=(_pos=0355; _len=008;);
           (idX==12)&&(fontGroup==1)?_p=(_pos=0363; _len=010;);
           (idX==13)&&(fontGroup==1)?_p=(_pos=0373; _len=016;);
           (idX==14)&&(fontGroup==1)?_p=(_pos=0389; _len=006;);
           (idX==15)&&(fontGroup==1)?_p=(_pos=0395; _len=011;);
           (idX==16)&&(fontGroup==1)?_p=(_pos=0406; _len=015;);
           //Group_2---------------------------------------------------
           // Условия для выполнения параметров среза для группы 2
           (idX==00)&&(fontGroup==2)?_p=(_pos=0000; _len=026;);
           (idX==01)&&(fontGroup==2)?_p=(_pos=0421; _len=010;);
           (idX==02)&&(fontGroup==2)?_p=(_pos=0431; _len=006;);
           (idX==03)&&(fontGroup==2)?_p=(_pos=0437; _len=011;);
           (idX==04)&&(fontGroup==2)?_p=(_pos=0448; _len=011;);
           (idX==05)&&(fontGroup==2)?_p=(_pos=0459; _len=011;);
           (idX==06)&&(fontGroup==2)?_p=(_pos=0470; _len=010;);
           (idX==07)&&(fontGroup==2)?_p=(_pos=0480; _len=012;);
           (idX==08)&&(fontGroup==2)?_p=(_pos=0492; _len=015;);
           (idX==09)&&(fontGroup==2)?_p=(_pos=0507; _len=014;);
           (idX==10)&&(fontGroup==2)?_p=(_pos=0521; _len=014;);
           (idX==11)&&(fontGroup==2)?_p=(_pos=0535; _len=012;);
           (idX==12)&&(fontGroup==2)?_p=(_pos=0547; _len=016;);
           (idX==13)&&(fontGroup==2)?_p=(_pos=0563; _len=019;);
           (idX==14)&&(fontGroup==2)?_p=(_pos=0582; _len=008;);
           (idX==15)&&(fontGroup==2)?_p=(_pos=0590; _len=006;);
           (idX==16)&&(fontGroup==2)?_p=(_pos=0596; _len=007;);
           //Group_3---------------------------------------------------
           // Условия для выполнения параметров среза для группы 3
           (idX==00)&&(fontGroup==3)?_p=(_pos=0000; _len=026;);
           (idX==01)&&(fontGroup==3)?_p=(_pos=0603; _len=016;);
           (idX==02)&&(fontGroup==3)?_p=(_pos=0619; _len=007;);
           (idX==03)&&(fontGroup==3)?_p=(_pos=0626; _len=010;);
           (idX==04)&&(fontGroup==3)?_p=(_pos=0636; _len=015;);
           (idX==05)&&(fontGroup==3)?_p=(_pos=0651; _len=013;);
           (idX==06)&&(fontGroup==3)?_p=(_pos=0664; _len=012;);
           (idX==07)&&(fontGroup==3)?_p=(_pos=0676; _len=020;);
           (idX==08)&&(fontGroup==3)?_p=(_pos=0696; _len=017;);
           (idX==09)&&(fontGroup==3)?_p=(_pos=0713; _len=006;);
           (idX==10)&&(fontGroup==3)?_p=(_pos=0719; _len=016;);
           (idX==11)&&(fontGroup==3)?_p=(_pos=0735; _len=018;);
           (idX==12)&&(fontGroup==3)?_p=(_pos=0753; _len=008;);
           (idX==13)&&(fontGroup==3)?_p=(_pos=0761; _len=013;);
           (idX==14)&&(fontGroup==3)?_p=(_pos=0774; _len=014;);
           (idX==15)&&(fontGroup==3)?_p=(_pos=0788; _len=012;);
           (idX==16)&&(fontGroup==3)?_p=(_pos=0800; _len=011;);
           //Group_4---------------------------------------------------
           // Условия для выполнения параметров среза для группы 4
           (idX==00)&&(fontGroup==4)?_p=(_pos=0000; _len=026;);
           (idX==01)&&(fontGroup==4)?_p=(_pos=0811; _len=012;);
           (idX==02)&&(fontGroup==4)?_p=(_pos=0823; _len=013;);
           (idX==03)&&(fontGroup==4)?_p=(_pos=0836; _len=014;);
           (idX==04)&&(fontGroup==4)?_p=(_pos=0850; _len=019;);
           (idX==05)&&(fontGroup==4)?_p=(_pos=0869; _len=013;);
           (idX==06)&&(fontGroup==4)?_p=(_pos=0882; _len=007;);
           (idX==07)&&(fontGroup==4)?_p=(_pos=0889; _len=007;);
           (idX==08)&&(fontGroup==4)?_p=(_pos=0896; _len=014;);
           (idX==09)&&(fontGroup==4)?_p=(_pos=0910; _len=011;);
           (idX==10)&&(fontGroup==4)?_p=(_pos=0921; _len=018;);
           (idX==11)&&(fontGroup==4)?_p=(_pos=0939; _len=018;);
           (idX==12)&&(fontGroup==4)?_p=(_pos=0957; _len=021;);
           (idX==13)&&(fontGroup==4)?_p=(_pos=0978; _len=021;);
           (idX==14)&&(fontGroup==4)?_p=(_pos=0999; _len=017;);
           (idX==15)&&(fontGroup==4)?_p=(_pos=1016; _len=020;);
           (idX==16)&&(fontGroup==4)?_p=(_pos=1036; _len=016;);
           //Group_5---------------------------------------------------
           // Условия для выполнения параметров среза для группы 5
           (idX==00)&&(fontGroup==5)?_p=(_pos=0000; _len=026;);
           (idX==01)&&(fontGroup==5)?_p=(_pos=1052; _len=015;);
           (idX==02)&&(fontGroup==5)?_p=(_pos=1067; _len=018;);
           (idX==03)&&(fontGroup==5)?_p=(_pos=1085; _len=018;);
           (idX==04)&&(fontGroup==5)?_p=(_pos=1103; _len=010;);
           (idX==05)&&(fontGroup==5)?_p=(_pos=1113; _len=018;);
           (idX==06)&&(fontGroup==5)?_p=(_pos=1131; _len=012;);
           (idX==07)&&(fontGroup==5)?_p=(_pos=1143; _len=013;);
           (idX==08)&&(fontGroup==5)?_p=(_pos=1156; _len=015;);
           (idX==09)&&(fontGroup==5)?_p=(_pos=1171; _len=009;);
           (idX==10)&&(fontGroup==5)?_p=(_pos=1180; _len=010;);
           (idX==11)&&(fontGroup==5)?_p=(_pos=1190; _len=012;);
           (idX==12)&&(fontGroup==5)?_p=(_pos=1202; _len=007;);
           (idX==13)&&(fontGroup==5)?_p=(_pos=1209; _len=012;);
           (idX==14)&&(fontGroup==5)?_p=(_pos=1221; _len=014;);
           (idX==15)&&(fontGroup==5)?_p=(_pos=1235; _len=010;);
           (idX==16)&&(fontGroup==5)?_p=(_pos=1245; _len=011;);
           //Group_6---------------------------------------------------
           // Условия для выполнения параметров среза для группы 6
           (idX==00)&&(fontGroup==6)?_p=(_pos=0000; _len=026;);
           (idX==01)&&(fontGroup==6)?_p=(_pos=1256; _len=007;);
           (idX==02)&&(fontGroup==6)?_p=(_pos=1263; _len=008;);
           (idX==03)&&(fontGroup==6)?_p=(_pos=1271; _len=010;);
           (idX==04)&&(fontGroup==6)?_p=(_pos=1281; _len=017;);
           (idX==05)&&(fontGroup==6)?_p=(_pos=1298; _len=021;);
           (idX==06)&&(fontGroup==6)?_p=(_pos=1319; _len=009;);
           (idX==07)&&(fontGroup==6)?_p=(_pos=1328; _len=010;);
           (idX==08)&&(fontGroup==6)?_p=(_pos=1338; _len=017;);
           (idX==09)&&(fontGroup==6)?_p=(_pos=1355; _len=011;);
           (idX==10)&&(fontGroup==6)?_p=(_pos=1366; _len=013;);
           (idX==11)&&(fontGroup==6)?_p=(_pos=1379; _len=013;);
           (idX==12)&&(fontGroup==6)?_p=(_pos=1392; _len=020;);
           (idX==13)&&(fontGroup==6)?_p=(_pos=1412; _len=012;);
           (idX==14)&&(fontGroup==6)?_p=(_pos=1424; _len=008;);
           (idX==15)&&(fontGroup==6)?_p=(_pos=1432; _len=011;);
           (idX==16)&&(fontGroup==6)?_p=(_pos=1443; _len=008;);
           //Group_7---------------------------------------------------
           // (Для визуального контроля в дебагвью на перебор
           //  длины строки)
           //  Длина текста <= 64000 ascii символов[asciiCharLen=1byte]
           //  в строчной переменной STR_WIN_TEXT
           //  переменная _strLen - количество символов
           //  в строчной переменной STR_WIN_TEXT
           _strLen = strlen(STR_WIN_TEXT);
           // Берем срез с текста(копирование в подстроку)
           // с заданными параметрами и ложим в
           // именованную строку #FontName(для принта в
           // секцию графики и визуального контроля правильности
           // имени шрифта в дебагвью)
           strcpy_substr(#FontName, STR_WIN_TEXT, _pos,     _len );
           // Результат среза ложим в параметр функции gfx_setfont
             gfx_setfont(idX,       #FontName, sizeFont, _flag);
);
@gfx 300 300
gfx_r=1;gfx_g=1;gfx_b=.7;gfx_a=1;gfx_x=10;gfx_y=50;
/////////////////////////
win_fonts(slider2, 90, slider1, slider3);
/////////////////////////
gfx_printf(" Hello RMM site Users" /*" Привет Мир"*/);
gfx_r=1;gfx_g=1;gfx_b=1;gfx_a=.7;gfx_x=10;gfx_y=250;
gfx_setfont(01, "Arial", 20);
gfx_printf("fontName-%s",#FontName);