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

Вниз

Как вызвать DPtoLP для точек из метафайла (TMetaFile)?   Найти похожие ветки 

 
Pavlik_Morozov   (2004-12-29 14:05) [0]

У меня есть метафайл
 procedure LoadFromMetaFile(const AFileName: string);
 var
   MF: TMetafile;
 begin
   MF := TMetafile.Create;
   try
     MF.LoadFromFile(FileName);
     DoMetaFile(MF);// различные действия с метафайлом
   finally
     MF.Free;
   end;
 end;

в котором "нарисованы" линии и при отрисовке использовались регионы отсечения.
Мне необходимо правильно извлечь примитивы из метафайла (в DoMetaFile), но так как LineTo работает в логических координатах, а SelectClipRgn в координатах устройства, то для преобразования региона в логические координаты мне необходимо вызывать функцию DPtoLP, на входе которой HDC... где его взять - непонятно:(
Подскажите, пожалуйста!


 
clickmaker ©   (2004-12-29 15:56) [1]


> на входе которой HDC... где его взять - непонятно

TMetafileCanvas.Handle ?


 
Pavlik_Morozov   (2004-12-29 16:14) [2]

не - это другое, это не DC


 
clickmaker ©   (2004-12-29 19:20) [3]


> Pavlik_Morozov   (29.12.04 16:14) [2]
> не - это другое, это не DC

а что это?


 
Pavlik_Morozov   (2004-12-30 11:01) [4]

oops, извиняюсь...
да, TMetafileCanvas.Handle именно HDC, но у меня нет TMetaFileCanvas... есть только TMetaFile, созданный указанным выше способом (т.е. открытый из файла)...
а вызов
 otherMFCanvas := TMetaFileCanvas.Create(MF, 0);
 DPtoLP(otherMFCanvas.Handle, vMyPoint, 1);

не даёт необходимого эффекта (точка не меняется).
Таким образом ещё появляется вопрос, как правильно "извлечь" TMetafileCanvas из метафайла.



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

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

Наверх




Память: 0.47 MB
Время: 0.062 c
14-1107190910
Piter
2005-01-31 20:01
2005.02.20
Проблемы с Half-Life 2


1-1107455544
ali_tash
2005-02-03 21:32
2005.02.20
Какое послать сообщение окну чтобы его свернуть ?


9-1100760359
Дина
2004-11-18 09:45
2005.02.20
Как проверить, что введенный текст в DBEdit соответствует формату


4-1104869339
Michael5
2005-01-04 23:08
2005.02.20
Как открыть файл под именем (с правами) другого пользователя?


9-1100688436
Bryke
2004-11-17 13:47
2005.02.20
Высоко сижу...