Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс лекций по дисциплине Объектно-ориентирован...doc
Скачиваний:
33
Добавлен:
01.07.2025
Размер:
14 Мб
Скачать
☆

5.3. Вывод текста

Для вывода текста на поверхность графического объекта используется метод Textout. Инструкция вызова метода Textout в общем виде выглядит следующим образом:

Объект.Canvas.TextOut (x,у, Текст)

где:

Объект — имя объекта, на поверхность которого выводится текст;

x, у— координаты точки графической поверхности, от которой выполняется вывод текста;

Текст — переменная или константа символьного типа, значение которой определяет выводимый методом текст.

Шрифт, который используется для вывода текста, определяется значением свойства Font соответствующего объекта Canvas. Свойство Font представляет собой объект типа TFont. В табл. 70 перечислены свойства объекта TFont, позволяющие задать характеристики шрифта, используемого методами Textout и TextRect для вывода текста.

Таблица 70.

Свойства TFont

Свойство

Определяет

Name

Используемый шрифт. В качестве значения следует использовать название шрифта, например Arial

Size

Размер шрифта в пунктах (points). Пункт — это единица измерения размера шрифта, используемая в полиграфии. Один пункт равен 1/72 дюйма

Style

Стиль начертания символов. Может быть: нормальным, полужирным, курсивным, подчеркнутым, перечеркнутым. Стиль задается при помощи следующих констант: fsBold (полужирный), fsitalic (курсив), fsUnderline (подчеркнутый), fsStrikeOut (перечеркнутый). Свойство style является множеством, что позволяет комбинировать необходимые стили. Например, инструкция программы, устанавли­вающая стиль "полужирный курсив", выглядит так: Объект.Canvas. Font: =[fsBold, fsitalic]

Color

Цвет символов. В качестве значения можно использовать константу типа TColor

Примечание

Область вывода текста закрашивается текущим цветом кисти. Поэтому перед выводом текста свойству Brush.Color нужно присвоить значение bsClear или задать цвет кисти, совпадающий с цветом поверхности, на которую выводится текст.

Пример:

1) Следующий фрагмент программы демонстрирует использование функции Textout для вывода текста на поверхность формы:

with Forml.Canvas do begin

// установить характеристики шрифта

Font. Name : = ' Tahoma';

Font. Size := 20;

Font. Style :=[fsitalic, fsBold];

Brush.Style :~ bsClear; // область вывода текста не закрашивается

TextOut(0, 10, 'Borland Delphi 6'); end;

После вывода текста методом Textout указатель вывода (карандаш) перемещается в правый верхний угол области вывода текста.

Иногда требуется вывести какой-либо текст после сообщения, длина которого во время разработки программы неизвестна. Например, это может быть слово "руб." после значения числа, записанного прописью. В этом случае необходимо знать координаты правой границы уже выведенного текста. Координаты правой границы текста, выведенного методом Textout, можно получить, обратившись к свойству PenPos.

2) Следующий фрагмент программы демонстрирует возможность вывода строки текста при помощи двух инструкций Textout.

with Forml. Canvas do begin

TextOut(10, 10, 'Borland ');

TextOut(PenPos.X, PenPos.Y, 'Delphi 6');

end;