Russian Belarusian English German Japanese Ukrainian

Rashka.studio - игры и приложения для Android! Заходи, ждём тебя =)

Settextstyle

CuBook05

Функция

Устанавливает текущие характеристики текста для графического вывода.
 
Синтаксис

#include <graphics.h>
void far settextstyle(int font,int direction, int charsize);
 
Прототип

graphics.h
 
Описание

Функция settextstyle устанавливает шрифт текста, направление отображения текста и размер символов. Вызов settextstyle действует для любых текстов, выводимых с помощью outtext и outtextxy. Параметры font, direction и charsize, передаваемые в settextstyle, описаны следующим образом:

font: допустимы: один шрифт с матрицей 8х8 бит и несколько «стилизованных» шрифтов. По умолчанию используется шрифт с матрицей 8х8 битов. Перечисленные font_names, определенные в graphics.h, определяют названия различных шрифтов( смотри таблицу):

DEFAULT_FONT 0 - шрифт 8х8 бит
TRIPLEX_FONT 1 - утроенный шрифт
SMALL_FONT 2 - малый шрифт
SANSSERIF_FONT 3 - шрифт sans-serif
GOTHIC_FONT 4 - готический шрифт

Битовый шрифт, используемый по умолчанию, встроен в графическую систему. Стилизованные шрифты хранятся в дисковых файлах *.CHR и по одному могут храниться в памяти. Поэтому при выборе шрифта, отличного от загруженного в систему, необходимо загрузить соответствующий *.CHR-файл с диска.

Для избежания этих загрузок при использовании нескольких шрифтов вы можете поместить шрифтовые файлы в вашу программу при компановки. Это осуществляется путем преобразования их в объектные файлы с помощью утилиты BGIOBJ и регистрации их через register- bgifont, как описано в файле UTIL.DOC, поставляемом вместе с Borland C++.

direction: поддерживается два направления - горизонтальный текст (слева направо) и вертикальный текст (повернут на 90 градусов против часовой стрелки). По умолчанию направление равно HORIZ_DIR.

HORIZ_DIR 0 - слева направо
VERT_DIR 1 - снизу вверх

charsize: размер каждого символа может быть увеличен фактором charsize. Значение charsize равное 0 используется только со стилизованными шрифтами, а ненулевое значение charsize можно использовать и с основным битовым шрифтом.

1) Если charsize равен 1, outtext и outtextxy будут отображать шрифтовую матрицу 8х8 бит в прямоугольник 8х8 пикселов на экране.

2) Если charsize равен 2, эта функция отобразит матрицу 8х8 бит в прямоугольник 16х16 пикселов на экране, и т.д.( до ограничения в 10 раз больше от нормального размера).

3) Когда charsize равен 0, функции вывода outtext и outtextxy увеличивают шрифт текста используя либо фактор увеличения символов(4) по умолчанию, либо размер шрифта определенный пользователем, используя setusercharsize.

Используйте также textheight и textwidth для определения размера шрифта.
 
Возвращаемое значение

Нет.
 
Переносимость

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

#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

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

int main(void)
{
/* Запрос автоопределения */
int graphdriver = DETECT, gmode, errorcode;
int style,midx,midy;
int size=1;

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

/* получение результата инициализации */
errorcode = graphresult();
if(errorcode != grOk) /* если ошибка */
{
printf("Ошибка :%s\n",grapherrormessage(errorcode));
printf("Для останова нажмите любую клавишу\n");
getch();
exit(1); /* завершение с кодом ошибки */
}
midx = getmaxx()/2;
midy = getmaxy()/2;
settextjustify(CENTER_TEXT,CENTER_TEXT);
/* цикл по шрифтам */
for(style=DEFAULT_FONT;style<GOTHIC_FONT;style++)
{
cleardevice();
if(style==TRIPLEX_FONT)
size = 4;
/* установить тип шрифта */
settextstyle(style,HORIZ_DIR,size);
/* вывести сообщение */
outtextxy(midx,midy,fname[style]);
getch();
}
/* очистка */
getch();
closegraph();
return 0;
}
Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter

Добавить комментарий