Для вывода текста на
поверхность графического объекта используется метод TextOut. Инструкция вызова
метода TextOut в общем виде выглядит следующим образом:
Объект.Canvas.TextOut(x,
у, Текст)
где:
Рис. 10.3. Координаты
области вывода текста
Шрифт, который используется
для вывода текста, определяется значением свойства Font соответствующего объекта
canvas. Свойство Font представляет собой объект типа TFont. В табл. 10.7 перечислены
свойства объекта TFont, позволяющие задать характеристики шрифта, используемого
методами TextOut и TextRect для вывода текста.
Таблица 10.7.
Свойства объекта TFont
Свойство |
Определяет |
||
Name
Size
Style |
Используемый шрифт. В
качестве значения следует использовать название шрифта, например Arial Размер шрифта в пунктах
(points). Пункт— это единица измерения размера шрифта, используемая
в полиграфии. Один пункт равен 1/72 дюйма Стиль начертания символов.
Может быть: нормальным, полужирным, курсивным, подчеркнутым, перечеркнутым.
Стиль задается при помощи следующих констант: fsBold (полужирный),
fsltalic (курсив), f sUnderline (подчеркнутый), f sStrikeOut (перечеркнутый). |
||
Свойство |
Определяет |
||
style
Color |
Свойство style является
множеством, что позволяет комбинировать необходимые стили. Например,
инструкция программы, устанавливающая стиль "полужирный курсив",
выглядит так: Объект. Canvas . Font
: = [fsBold, fs Italic] Цвет символов. В качестве
значения можно использовать константу типа 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;
Когда тот или иной физик использует понятие "физический вакуум", он либо не понимает абсурдности этого термина, либо лукавит, являясь скрытым или явным приверженцем релятивистской идеологии.
Понять абсурдность этого понятия легче всего обратившись к истокам его возникновения. Рождено оно было Полем Дираком в 1930-х, когда стало ясно, что отрицание эфира в чистом виде, как это делал великий математик, но посредственный физик Анри Пуанкаре, уже нельзя. Слишком много фактов противоречит этому.
Для защиты релятивизма Поль Дирак ввел афизическое и алогичное понятие отрицательной энергии, а затем и существование "моря" двух компенсирующих друг друга энергий в вакууме - положительной и отрицательной, а также "моря" компенсирующих друг друга частиц - виртуальных (то есть кажущихся) электронов и позитронов в вакууме.
Однако такая постановка является внутренне противоречивой (виртуальные частицы ненаблюдаемы и их по произволу можно считать в одном случае отсутствующими, а в другом - присутствующими) и противоречащей релятивизму (то есть отрицанию эфира, так как при наличии таких частиц в вакууме релятивизм уже просто невозможен). Подробнее читайте в FAQ по эфирной физике.