Главная страница
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.022 c
10-1097579913
ИМХО
2004-10-12 15:18
2005.07.25
Снова о OLE-автоматизации Ворда


1-1120798275
Demidoff
2005-07-08 08:51
2005.07.25
Как правильно вести Log файл?


4-1117450284
toaster
2005-05-30 14:51
2005.07.25
Плоское окно & меню


8-1111882439
Valera
2005-03-27 04:13
2005.07.25
DSPack не обрабатывает сообщение на включение заставки и питания


14-1120124105
stone
2005-06-30 13:35
2005.07.25
Hello, World. На разных языках