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

Вниз

TCanvas и CS_OWNDC   Найти похожие ветки 

 
akvilon ©   (2005-01-28 17:50) [0]

Оравдано ли будет использование класса TCanvas в окне со стилем CS_OWNDC? есть ли какие альтернативы классу TCanvas, мне нужен только удобный интерфейс к апи функциям и больше ничего


 
akvilon ©   (2005-01-28 17:53) [1]

добавлю еще, необходимо писать выводить текст под разными углами похоже TFont для этого не пригоден...


 
MBo ©   (2005-01-28 18:26) [2]

>похоже TFont для этого не пригоден...
Пригоден. Нужно создать шрифт (CreateFont(Indirect)) с двумя соотв. полями структуры LogFont, отвечающими за поворот, и присвоить полученный дескриптор свойству Handle


 
akvilon ©   (2005-01-28 18:32) [3]

а как же канвас? если сам канвас не подходит то и фонт тут зачем ...


 
MBo ©   (2005-01-28 18:33) [4]

procedure TForm1.Button2Click(Sender: TObject);
var
 lf:TLogFont;
begin
Canvas.Font.Name:="Arial";//шрифт должен быть True Type
GetObject(Canvas.Font.Handle, SizeOf(TLogFont),@lf);
lf.lfOrientation:=450;
lf.lfEscapement:=450;
Canvas.Font.Handle:=CreateFontIndirect(lf);
Canvas.TextOut(100,100,"abcd");
end;


 
akvilon ©   (2005-01-28 18:52) [5]

спасибо, буду думать ...
просто мне кажется что сам класс TCanvas не подходит для рисования в окне со стилем CS_OWNDC, во-первых является избыточным, так как все настройки HDC сохраняются в самом HDC и вообще тут нужен немного другой подход, на уровне WinAPI для правильного использования такого HDC (OWNDC)
Вот в чем вопрос ...


 
MBo ©   (2005-01-28 19:05) [6]

А для чего тебе CS_OWNDC, вещь довольно редкая?
Хочется избавиться от сброса настроек контекста при WM_PAINT?


 
akvilon ©   (2005-01-28 19:14) [7]

У меня всё тут в милиметрах :) и постоянно нужно вызывать LPtoDP и наоборот, да еще каретку показываю, а с ней OWNDC необходим

решил вот все рисование через непосредственный вызов АПИ сделать, минуя Canvas

хочется избавиться от сброса смещения области вывода окна (WindowOrgEx) и т.п. да много чего ...



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

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

Наверх




Память: 0.48 MB
Время: 0.048 c
10-1083307141
TheLastLamer
2004-04-30 10:39
2005.02.13
Регистрация COM (UpdateRegistry)


1-1107121682
haM3r
2005-01-31 00:48
2005.02.13
TRichEdit проблема со сменой цвета текста


9-1098104871
NightFire
2004-10-18 17:07
2005.02.13
Всем всем программистам игр и не только


1-1107090214
Mickey_Mouse
2005-01-30 16:03
2005.02.13
Вопрос по работе со строками


1-1106655454
Phoenix
2005-01-25 15:17
2005.02.13
Help в Delphi