gettextsettings

 Функция            Получает информацию о текущем графическом шрифте.

 Синтаксис          #include 
                    void var gettexsettings(struct
                         textsettingstype far *texttypeinfo);


 Файл, содержащий   graphics.h
 прототип

 Описание           gettextsettings заполняет структуру
                    textsettingstype, на которую указывает textinfo,
                    информацией о текущем текстовом шрифте, направле-
                    нии, размере и выравнивании.

                    Структура textsettingstype, используемая
                    gettextsettings, определена в graphics.h следую-
                    щим образом:

                    struct textsettingstype{
                     int font;
                     int direction;
                     int charsize;
                     int horiz;
                     int vert;
                     };

                    Смотрите settextstyle, в которой содержится опи-
                    сание этих полей.

 Возвращаемое       Нет.
 значение

 Переносимость      Функция уникальна для Turbo C++. Она работает
                    только на компьютерах IBM PC и совместимых с ни-
                    ми, оснащенных дисплейными адаптерами, поддержи-
                    вающими графический режим.

 Смотрите также     outtext outtextxy registerbgifont
                    settextjustify settextstyle
                    setusercharsize textheight textwidth

 Пример:

 #include 
 #include 
 #include 
 #include 

 /* имена поддерживаемых шрифтов */
 char *font[] = {"DEFAULT_FONT",
                 "TRIPLEX_FONT",
                 "SMALL_FONT",
                 "SANS_SERIF_FONT",
                 "GOTHIC_FONT"
                 };
 /* имена направлений текста */
 char *dir[] = {"HORIS_DIR","VERT_DIR"};

 /* горизонтальное выравнивание текста */
 char *hjust[] = {"LEFT_TEXT","CENTER_TEXT","RIGTH_TEXT"};

 /* вертикальное выравнивание текста */
 char *vjust[] = {"BOTTOM_TEXT","CENTER_TEXT","TOP_TEXT"};

 int main(void)
 {
 /* Запрос автоопределения */
 int graphdriver = DETECT, gmode, errorcode;
 struct textsettingstype textinfo;
 int midx,midy,ht;
 char fontstr[80],dirstr[80],sizestr[80];
 char hjuststr[80],vjuststr[80];

 /* инициализация графики и локальных переменных */
 initgraph(&graphdriver,&gmode,"");

 /* получение результата инициализации */
 errorcode = graphresult();
 if(errorcode != grOk)  /* если ошибка */
 {
    printf("Ошибка :%s\n",grapherrormsg(errorcode));
    printf("Для останова нажмите любую клавишу\n");
    getch();
    exit(1);  /* завершение с кодом ошибки */
 }
 midx = getmaxx()/2;
 midy = getmaxy()/2;
 /* получить информацию о текущем шрифте */
 gettextsettings(&textinfo);
 /* преобразовать информацию в строки */
 sprintf(fontstr,"Шрифт: %s",font[textinfo.font]);
 sprintf(dirstr,"Напрвление: %s",dir[textinfo.direction]);
 sprintf(sizestr,"Размер: %d",textinfo.charsize);
 sprintf(hjuststr,"Горизонтальное выравнивание: %s",
          hjust[textinfo.horiz]);
 sprintf(hjuststr,"Вертикальное выравнивание: %s",
          hjust[textinfo.vert]);
 /* вывести информацию */
 ht = textheight("W");
 settextjustify(CENTER_TEXT,CENTER_TEXT);
 outtextxy(midx,midy,fontstr);
 outtextxy(midx,midy+2*ht,direstr);
 outtextxy(midx,midy+4*ht,sizestr);
 outtextxy(midx,midy+6*ht,hjuststr);
 outtextxy(midx,midy+8*ht,vjuststr);
 /* очистка */
 getch();
 closegraph();
 return 0;
 }