CodeNet / Языки программирования / C / C++ / Руководства и справочные материалы по C/C++ / Справочники по функциям / Справочник по функциям C/C++
settextjustify
settextjustify
Функция Устанавливает выравнивание текста для графических функций. Синтаксис #include <graphics.h> void far settextjustify(int horiz,int vert); Файл, содержащий graphics.h прототип Описание Выводимый текст, после обращения к settextjustify будет выравнен горизантально или вертикально относительно текущей позиции (СР). По умолчанию устанавливается выравнивание текста LEFT_TEXT (для горизонтального) и TOP_TEXT (для вертикального). Перечисленные в graphics.h text_just представляют собой имена для установки horiz и vert для передачи в settextjustify. ------------------------------------------- Название Знач. Описание ------------------------------------------- LEFT_TEXT 0 horiz CENTER_TEXT 1 horiz и vert RIGHT_TEXT 2 horiz BOTTOM_TEXT 0 vert TOP_TEXT 2 vert ------------------------------------------- Если horiz равно LEFT_TEXT и direction равно HORIZ_DIR, то элемент x CP продвигается с помощью textwidth(string) после вызова outtext(string). settextjustify работает с текстами выводимыми функцией outtext и не может быть использована в текстовом режиме и с потокоориентированными функциями. Возвращаемое Если в settextjustify передается неправильный значение ввод, то graphresult возвратит -11, а текущее выравнивание текста останется без изменений. Переносимость Функция уникальна для Borland C++. Она работает только на компьютерах IBM PC и совместимых с ними, оснащенных дисплейными адаптерами, поддерживающими графический режим. Функция не совместима с Windows. Смотрите также gettextsettings, graphresult, outtext, settextstyle. Пример: #include <graphics.h> #include <stdlib.h> #include <stdio.h> #include <conio.h> /* прототип функции */ void xat(int x,int y); /* горизонтальное выравнивание текста */ char *hjust[] = {"LEFT_TEXT", "CENTER_TEXT", "RIGTH_TEXT"}; /* вертикальное выравнивание текста */ char *vjust[] = {"BOTTOM_TEXT", "CENTER_TEXT", "TOP_TEXT"}; int main(void) { /* Запрос автоопределения */ int graphdriver = DETECT, gmode, errorcode; int midx,midy,hj,vj; char msg[80]; /* инициализация графики и локальных переменных */ initgraph(&graphdriver,&gmode,""); /* получение результата инициализации */ errorcode = graphresult(); if(errorcode != grOk) /* если ошибка */ { printf("Ошибка :%s\n",grapherrormessage(errorcode)); printf("Для останова нажмите любую клавишу\n"); getch(); exit(1); /* завершение с кодом ошибки */ } midx = getmaxx()/2; midy = getmaxy()/2; /* цикл по выравниваниям */ for(hj=LEFT_TEXT;hj<RIGHT_TEXT;hj++) for(vj=LEFT_TEXT;vj<RIGHT_TEXT;vj++) { cleardevice(); /* установить выравнивание текста */ settextjustify(hj,vj); /* создать строку сообщений */ sprintf(msg,"%s %s",hjust[hi],vjust[vj]); /* создать крестик на экране */ xat(midx,midy); /* вывести сообщение */ outtextxy(midx,midy,msg); getch(); } /* очистка */ getch(); closegraph(); return 0; } /* функция рисует крестик по координатам x и y */ void xat(int x, int y) { line(x-4,y,x+4,y); line(x,y-4,x,y+4); }