Форум: "Основная";
Текущий архив: 2005.07.25;
Скачать: [xml.tar.bz2];
ВнизКак на 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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.012 c