Функция Получает информацию
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 и совместимых с ни- ми, оснащенных дисплейными адаптерами, поддержи- вающими графический режим.
Смотрите также
Пример:
#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; }