Функции для вывода текста позволяют вывести строку текста в произвольном месте рисунка, в произвольном направлении и вдоль произвольной кривой. MathGL позволяет использовать произвольное начертание шрифта и многие ТеХ-ие команды (детальнее см. Стиль текста). Все функции вывода текста имеют варианты для 8-bit строк (char *
) и для Unicode строк (wchar_t *
). В первом случае используется конверсия из текущей локали, т.е. иногда вам требуется явно указать локаль с помощью функции setlocale()
. Аргумент size определяет размер текста: размер шрифта если положителен или относительный размер (=-size*SetFontSize()
) если отрицателен. Начертание шрифта (STIX, arial, courier, times и др.) можно изменить с помощью функции LoadFont(). See Шрифты.
Параметры шрифта задаются строкой, которая может содержать символы цвета ‘wkrgbcymhRGBCYMHW’ (см. Цвета). Также после символа ‘:’ можно указать символы стиля (‘rbiwou’) и/или выравнивания (‘LRCTV’). Стили шрифта: ‘r’ – прямой, ‘i’ – курсив, ‘b’ – жирный, ‘w’ – контурный, ‘o’ – надчеркнутый, ‘u’ – подчеркнутый. По умолчанию используется прямой шрифт. Типы выравнивания: ‘L’ – по левому краю (по умолчанию), ‘C’ – по центру, ‘R’ – по правому краю, ‘T’ – под текстом, ‘V’ – по центру вертикально. Например, строка ‘b:iC’ соответствует курсиву синего цвета с выравниванием по центру. Начиная с MathGL версии 2.3, вы можете задать цветовой градиент для выводимой строки (см. Цветовая схема).
Если строка содержит символы ‘aA’, то текст выводится в абсолютных координатах (полагаются в диапазоне [0,1]). При этом используются координаты относительно рисунка (если указано ‘A’) или относительно последнего subplot/inplot (если указано ‘a’). Если строка содержит символ ‘@’, то вокруг текста рисуется прямоугольник.
См. раздел Text features, для примеров кода и графика.
x y
'text' ['fnt'='' size=-1
]
¶x y z
'text' ['fnt'='' size=-1
]
¶mglGraph
: void
Puts (mglPoint
p, const char *
text, const char *
fnt=":C"
, mreal
size=-1
)
¶mglGraph
: void
Putsw (mglPoint
p, const wchar_t *
text, const char *
fnt=":C"
, mreal
size=-1
)
¶mglGraph
: void
Puts (mreal
x, mreal
y, const char *
text, const char *
fnt=":AC"
, mreal
size=-1
)
¶mglGraph
: void
Putsw (mreal
x, mreal
y, const wchar_t *
text, const char *
fnt=":AC"
, mreal
size=-1
)
¶void
mgl_puts (HMGL
gr, mreal
x, mreal
y, mreal
z, const char *
text, const char *
fnt, mreal
size)
¶void
mgl_putsw (HMGL
gr, mreal
x, mreal
y, mreal
z, const wchar_t *
text, const char *
fnt, mreal
size)
¶Выводит строку text от точки p шрифтом определяемым строкой fnt. Размер шрифта задается параметром size (по умолчанию -1
).
x y dx dy
'text' ['fnt'=':L' size=-1
]
¶x y z dx dy dz
'text' ['fnt'=':L' size=-1
]
¶mglGraph
: void
Puts (mglPoint
p, mglPoint
d, const char *
text, const char *
fnt=':L'
, mreal
size=-1
)
¶mglGraph
: void
Putsw (mglPoint
p, mglPoint
d, const wchar_t *
text, const char *
fnt=':L'
, mreal
size=-1
)
¶void
mgl_puts_dir (HMGL
gr, mreal
x, mreal
y, mreal
z, mreal
dx, mreal
dy, mreal
dz, const char *
text, const char *
fnt, mreal
size)
¶void
mgl_putsw_dir (HMGL
gr, mreal
x, mreal
y, mreal
z, mreal
dx, mreal
dy, mreal
dz, const wchar_t *
text, const char *
fnt, mreal
size)
¶Выводит строку text от точки p вдоль направления d. Параметр fnt задает стиль текста и указывает выводить текст под линией (‘T’) или над ней (‘t’).
x y
'fname' [n=0
'fnt'='' size=-1.4
]
¶x y z
'fname' [n=0
'fnt'='' size=-1.4
]
¶Выводит n-ую строку файла fname от точки {x,y,z} шрифтом fnt и размером size. По умолчанию используются параметры заданные командой font.
ydat 'text' ['fnt'='']
¶xdat ydat 'text' ['fnt'='' size=-1 zval=nan
]
¶xdat ydat zdat 'text' ['fnt'='' size=-1
]
¶mglGraph
: void
Text (const mglDataA &
y, const char *
text, const char *
fnt=""
, const char *
opt=""
)
¶mglGraph
: void
Text (const mglDataA &
y, const wchar_t *
text, const char *
fnt=""
, const char *
opt=""
)
¶mglGraph
: void
Text (const mglDataA &
x, const mglDataA &
y, const char *
text, const char *
fnt=""
, const char *
opt=""
)
¶mglGraph
: void
Text (const mglDataA &
x, const mglDataA &
y, const wchar_t *
text, const char *
fnt=""
, const char *
opt=""
)
¶mglGraph
: void
Text (const mglDataA &
x, const mglDataA &
y, const mglDataA &
z, const char *
text, const char *
fnt=""
, const char *
opt=""
)
¶mglGraph
: void
Text (const mglDataA &
x, const mglDataA &
y, const mglDataA &
z, const wchar_t *
text, const char *
fnt=""
, const char *
opt=""
)
¶void
mgl_text_y (HMGL
gr, HCDT
y, const char *
text, const char *
fnt, const char *
opt)
¶void
mgl_textw_y (HMGL
gr, HCDT
y, const wchar_t *
text, const char *
fnt, const char *
opt)
¶void
mgl_text_xy (HCDT
x, HCDT
y, const char *
text, const char *
fnt, const char *
opt)
¶void
mgl_textw_xy (HCDT
x, HCDT
y, const wchar_t *
text, const char *
fnt, const char *
opt)
¶void
mgl_text_xyz (HCDT
x, HCDT
y, HCDT
z, const char *
text, const char *
fnt, const char *
opt)
¶void
mgl_textw_xyz (HCDT
x, HCDT
y, HCDT
z, const wchar_t *
text, const char *
fnt, const char *
opt)
¶Выводит строку text вдоль кривой {x[i], y[i], z[i]} шрифтом fnt. Строка fnt может содержать символы: ‘t’ для вывода текста под кривой (по умолчанию), или ‘T’ для вывода текста под кривой. Размеры по 1-ой размерности должны быть одинаковы для всех массивов x.nx=y.nx=z.nx
. Если массив x не указан, то используется "автоматический" массив со значениями в диапазоне осей координат (см. Масштаб осей координат). Если массив z не указан, то используется минимальное значение оси z. Строка opt содержит опции команды (см. Опции команд).