Главная arrow IDE Delphi arrow Рисовать текст под любым углом  
10.02.2012
Главное меню
Главная
Лаборатория
Книги по дельфи
Инструменты
Статьи
Видео
Юмор
Ссылки
Поиск
База знаний Delphi
Общие вопросы
Windows, WinAPI
Графика, Звук
IDE Delphi
Консоль
Авторизация





Забыли пароль?
Вы не зарегистрированы. Регистрация
Каталог@Mail.ru - каталог ресурсов интернет
Рисовать текст под любым углом Версия для печати
Рейтинг: / 3
ХудшаяЛучшая 
Написал Snowy   
11.02.2009
procedure DrawAngledText(const ACanvas: TCanvas; const X, Y: Integer;
                         const Angle: Double; const Text: string);
var
  AFont: HFONT;
  OFont: HFONT;
  FontInfo: TLogFont;
begin
  if Windows.GetObject(ACanvas.Font.Handle, SizeOf(FontInfo), @FontInfo) = 0 then Exit;
  FontInfo.lfEscapement := Round(Angle * 10);
  FontInfo.lfOrientation := FontInfo.lfEscapement;
  AFont := CreateFontIndirect(FontInfo);
  if AFont = 0 then Exit;
  OFont := Windows.SelectObject(ACanvas.Handle, AFont);
  ACanvas.TextOut(X, Y, Text);
  Windows.SelectObject(ACanvas.Handle, OFont);
  Windows.DeleteObject(AFont);
end;
Функция принимает Canvas, на котором рисовать, координаты верхнего-левого угла первой буквы текста, угол в градусах, под которым рисовать текст и саму строку с текстом.
Добавить новыйПоиск
AlexAR - 7 не понимает типов переменных   2009-03-22 01:54:12
Семёрка не понимает "HFONT". Подскажите, пожалуйста, где взять библиотеку с реализацией этих типов?
Анонимно - re: 7 не понимает типов переме   2009-03-22 10:02:08
AlexAR написано:
Семёрка Delphi не понимает "HFONT". Подскажите, пожалуйста, где взять библиотеку с реализацией этих типов?


Покопавшись в Delphi Help, обнаружил все необходимые объявления в Сишных WinGDI.h и GDI32.lib - насколько я понимаю - это C-Builder-овские библиотеки?

Подскажите, пожалуйста, где взять и как подключить их аналоги к Дельфям?
DrAku1a   2009-05-18 16:17:04
Должны быть объявлены в модуле Windows.pas
или
Graphics.pas
комментарии
Имя:
Заголовок:
UBB-Код:
[b] [i] [u] [url] [quote] [code] [img] 
 
 
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch:
:(:shock::X:side::):P:unsure::woohoo::huh::whistle:;):s
:!::?::idea::arrow:
 
Security Image
Пожалуйста, введите проверочный код, который Вы видите на картинке.
 
След. >