Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МУ к ПЗ по программированию.doc
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
4 Мб
Скачать
☆

Вывод текста

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

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

где:

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

  • х, у – координаты точки графической поверхности, от которой выполняется вывод текста (рис. 10.3);

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

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

Таблица . Свойства объекта TFont

Свойство

Определяет

Name  

Size

Style

 

Color

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

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

Стиль начертания символов. Может быть: нормальным, полужирным, курсивным, подчеркнутым, перечеркнутым. Стиль задается при помощи следующих констант: fsBold (полужирный), fsltalic (курсив), f sUnderline (подчеркнутый), f sStrikeOut (перечеркнутый).

Свойство style является множеством, что позволяет комбинировать необходимые стили. Например, инструкция программы, устанавливающая стиль "полужирный курсив", выглядит так:

Объект. Canvas . Font : = [fsBold, fs Italic]

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

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

with Form1.Canvas do

begin

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

Font.Name := 'Tahoma';

Font.Size := 20;

Font.Style := [fsltalic, fsBold] ;

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

TextOut(0, 10, 'Borland Delphi 7');

end;

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

with Form1.Canvas do

begin

TextOut(0, 10, 'Borland ') ;

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

end;