|
|
procedure MyRotateText(CV : TCanvas;
sText:String;
X, Y, Angle:Integer); {угол в
градусах}
VAR LogFont : TLogFont;
BEGIN
GetObject(CV.Font.Handle, SizeOf(TLogFont), @LogFont);
LogFont.lfEscapement:= Angle*10;
CV.Font.Handle := CreateFontIndirect(LogFont);
CV.TextOut(X,Y,sText);
END; |
К примеру, при задании угла Angle = -90, тект выведется вертикально по
направлению сверху вниз.
- Neil
Neil -
Это классно! Спасибо! Но некоторые вопросы все-же имеются:
1) Как только я присвою свойству Handle новый шрифт, старый уничтожается,
правильно? А для восстановления оригинальных установок мне необходимо
восстановить предыдущий шрифт, правильно? Есть какое-либо простое решение для
сохранения оригинального шрифта?
-Dan
|
|
Var
SaveFont: TFont;
SaveFont := TFont.Create;
SaveFont.Assign (CV.Font);
CV.Font := CreateFontIndirect (....)
(....)
CV.Font.Assign (SaveFont);
SaveFont.Free; |
Спасибо Oleg Fyodorov за
исправление ошибок. |