Виведення тексту

Для виведення тексту на поверхню графічного об’єкта використовується метод TextOut. Інструкція виклику методу TextOut в загальному вигляді виглядає наступним чином:

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

де:

  • об’єкт – ім’я об’єкта, на поверхню якого виводиться текст;
  • х, у – координати точки графічної поверхні, від якої виконується виведення тексту (рис. 10.3);
  • Текст – змінна або константа символьного типу, значення якої визначає виведений методом текст.

Рис. 10.3. Координати області виведення тексту

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

Таблиця 10.7. Властивості об’єкта TFont

Властивість Визначає
Name Шрифт. В Як значення слід використовувати назву шрифту, наприклад Arial
Size Розмір шрифту в пунктах (Points). Пункт- це одиниця виміру розміру шрифту, що використовується в поліграфії. Один пункт дорівнює 1/72 дюйма
Style Стиль зображення символів. Може бути: нормальним, напівжирним, курсивним, підкресленим, перекресленим. Стиль задається за допомогою наступних констант: fsBold (напівжирний), fsltalic (курсив), f sUnderline (підкреслений), f sStrikeOut (перекреслений). Властивість style є безліччю, що дозволяє комбінувати необхідні стилі. наприклад, інструкція програми, що встановлює стиль & quot; напівжирний курсив, виглядає так:

Об’єкт. Canvas. Font : = [FsBold, fs Italic]

Color Колір символів. В якості значення можна використовувати константу типу Tcolor

Увага!

Область перегляду тексту зафарбовується поточним кольором кісті. Тому перед виведенням тексту властивості Brush.Color потрібно привласнити значення bsClear або задати колір кісті, що співпадає з кольором поверхні, на яку виводиться текст.

Наступний фрагмент програми демонструє використання функції 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;