Сейчас мы поговорим с Вами о том как можно средствами Дельфи вращать какой-нибудь текст. На первый взгляд задача не из простых, ведь даже Windows не умеет вращать изображения (ну и текст соответственно тоже), но мы же не Windows :))
Нам понадобится переменная-запись типа TLogFont, которая будет содержать характеристики шрифта, такие как: размер, стиль, шрифт, угол поворота. А также переменные типа hFont и TFont.
Теперь, чтобы не мучить Вас ожиданием привожу код примера (обработчик события OnClick для командной кнопки):
procedure TForm1.Button1Click(Sender: TObject);
var
Font : hFont;
LogFont : TLogFont;
F : TFont;
begin
FillChar(LogFont, SizeOf(LogFont), 0);
With LogFont do
Begin
lfHeight := 12;//высота шрифта
lfOrientation := 150;//угол поворота желательно, чтобы совпадал со
lfEscapement := 150;//значением этой переменной. В данном случае это 15'
lfWeight := FW_REGULAR; //к примеру жирный - FW_BOLD;
lfCharSet := RUSSIAN_CHARSET;//тут я думаю понятно
StrCopy(lfFaceName, 'Arial');//здесь - имя шрифта
End;
Font := CreateFontIndirect(LogFont);
F := TFont.Create;//создаем экземпляр объекта
F.Handle := Font;
Canvas.Font := F;
Canvas.Brush.Color := Color;
Canvas.TextOut(300, 100, 'Font Demo'); //рисуем на формк
F. Free;//
DeleteObject(Font);//освобождаем память, удаляя объект...
end;
Ну вот собственно и все, на основе этого можно к примеру компонент написать, может я конечно и сам скоро его напишу, но тем не менее презентую Вам эту идею.
Список литературы
Михаил Христосенко. О том, как вращать текст с помощью Delphi
Для подготовки данной работы были использованы материалы с сайта http://delphid.dax.ru.
Похожие работы
... данных будет нести больше смысла, если его отсортировать каким‑либо образом. Часто требуется сортировать данные несколькими различными способами. Во‑вторых, многие алгоритмы сортировки являются интересными примерами программирования. Они демонстрируют важные методы, такие как частичное упорядочение, рекурсия, слияние списков и хранение двоичных деревьев в массиве. Наконец, сортировка ...
... по соответствующему полю). В окне Конструктора таблиц созданные связи отображаются визуально, их легко изменить, установить новые, удалить (клавиша Del). 1 Многозвенные информационные системы. Модель распределённого приложения БД называется многозвенной и её наиболее простой вариант – трёхзвенное распределённое приложение. Тремя частями такого приложения являются: ...
... синтаксиса обобщенных функций вместо посылки сообщений; способность определять методы, различающиеся не только по первому аргументу ( так называемые мультиметоды); поддержка реализации других объектно-ориентированных языков с помощью ядра метаклассов, набора предопределенных классов, составляющих оставшуюся часть системы. Опытная реализация, названная Portable CommonLisp (PCL), распространена для ...
... быть выведены на печать. На экране рисунки могут быть статическими (неподвижными) или динамическими (движущимися). В последнее время машинная графика выделилась в самостоятельный раздел информатики с многочисленными приложениями. Средствами машинной графики создается не только печатная продукция, но и рекламные ролики на телевидении, мультфильмы. Объясним, как кодируется изображение в памяти ...
0 комментариев