2.2.3.1. Функции, рисующие текст.

    Для вывода текста используются процедуры XDrawString( ), XDrawImageString( ) и XDrawText( ). Каждая из них имеет две версии. Первая используется для шрифтов, имеющих не более 256 символов. Если же символов больше ("большие" шрифты), то применяется вторая версия. Функции, работающие с "большими" шрифтами, имеют имена XDrawString16( ), XDrawImageString16( ) и XDrawText16( ). Параметры процедур, выводящих текст, задают дисплей, окно, графический контекст, строку, ее положение и т.д. Рисование идет в соответствии с областью отсечения контекста. Буквы или их части, находящиеся за пределами области отсечения, не изображаются. Наиболее часто употребляется процедура XDrawString( ) ( XDrawString16( ) ). Ее параметры дают строку, ее длину и положение в окне. Текст рисуется цветом переднего плана, выбранного в GC.

    Функция XDrawImageString( ) ( XDrawImageString16( ) ) похожа на предыдущую процедуру с той лишь разницей, что фон символов при рисовании закрашивается цветом фона, установленного в GC. XDrawString( ) и XDrawImageString( ) выводят символы, используя шрифт, установленный в GC.

    XDrawText( ) ( XDrawText16( ) ) позволяет рисовать несколько строк сразу, используя при этом разные шрифты. Каждая рисуемая единица задается структурой XTextItem.

    Процедура XDrawText16( ) использует структуру XDrawText16.

    Поле font, в приведенных структурах (XTextItem и XDrawText16) задает шрифт, используемый для рисования. Если значение поля font - None, то применяется шрифт, выбранный в GC.

    Более подробная информация об указанных структурах и функциях находится в приложении 1.