Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.25;
Скачать: CL | DM;

Вниз

Как на Canvas е писать текст под углом ?   Найти похожие ветки 

 
Велосипед   (2005-07-05 01:19) [0]

И какие вообще есть хорошие библиотеки для работы с Canvas"ом ?


 
Юрий Зотов ©   (2005-07-05 01:29) [1]

См. TLogFont. Еще - CreateFont, CreateFontIndirect(Ex), SelectObject, DeleteObject. Примеры использования есть в VCL.


 
Просто Джо ©   (2005-07-05 03:01) [2]

Простой пример:

procedure TextOutExt (ACanvas: TCanvas; const X, Y, AAngle: Integer;
 const AText: string);
var
 LogFont : TLogFont;
 SavedDC: Integer;
begin
 with ACanvas do
 begin
   SavedDC := SaveDC (ACanvas.Handle);
   try
     GetObject(Font.Handle, SizeOf(TLogFont), @LogFont);
     LogFont.lfEscapement := AAngle*10;
     Font.Handle := CreateFontIndirect(LogFont);
     TextOut(X,Y,AText);
   finally
     RestoreDC(ACanvas.Handle,SavedDC)
   end;
 end;
end;


Использование (на форме TImage и кнопка):

procedure TForm1.Button1Click(Sender: TObject);
begin
 // обязательно используем TrueType или OpenType шрифт
 Image1.Canvas.Font.Name := "Arial";

 Image1.Canvas.TextOut(0,0,"Без наклона");

 TextOutExt(Image1.Canvas,100,100,45,"Разворот на 45 градусов");

 Image1.Canvas.TextOut(20,20,"Опять без наклона");
end;



Страницы: 1 вся ветка

Текущий архив: 2005.07.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.04 c
14-1119856274
Holy
2005-06-27 11:11
2005.07.25
Athlon 64


4-1113913379
Max_005
2005-04-19 16:22
2005.07.25
Как программно закрыть PopupMenu и отлавливать указатель мыши


3-1118267255
highlander
2005-06-09 01:47
2005.07.25
Использование маски в QRDBText


4-1117203919
alex_***
2005-05-27 18:25
2005.07.25
Как узнать хендл своего процесса


4-1117293373
Greg123
2005-05-28 19:16
2005.07.25
Как сделать чтобы окно всегда было поверх остальных окон