Delphi-Help

Главная Статьи Графика Как с помощью Дельфи можно вращать рисунок?

Как с помощью Дельфи можно вращать рисунок?

Оцените материал
(0 голосов)


Как с помощью Дельфи можно вращать рисунок?

Давайте мы будем говорить сейчас именно о том каким образом возможно самими средствами Дельфи любой текст вращать...

Представленная задача, кажется далеко не такой простой, как может показаться на первый взгляд, ведь сама операционная система 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;

Это наверно уже и все будет, используя данный материал есть возможность, например, написать компонент, возможно Вы даже сможете сделать это скорее чем мы и поблагодарите нас за хорошею идею!

Прочитано 4885 раз

Авторизация



Счетчики