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

Вниз

Как создать TMetafileCanvas   Найти похожие ветки 

 
SDS ©   (2003-02-28 16:39) [0]

Прошу помощи.
Есть проблема, мне нужно нарисовать на метафайле TMetafile графические данные, но TMetafileCanvas создаеться только для конкретного устройства (параметр конструктора constructor TMetafileCanvas.Create(AMetafile: TMetafile; ReferenceDevice: HDC);) мне хотелось бы создать метафайл с определенными размерами, но если создаешь метафайл, вызываешь конструктор TMetafileCanvas.Create, с параметром ReferenceDevice := 0, создаеться меитафайл с размерами экрана, ест ли какой либо выход так чтоб при создании матафайла размеры его устанавливались мной, а также можно ли как либо создать TMetafileCanvas так чтобы результат TMetafileCanvas.ClipRect возвращал результат равный размерам метафайла.
Система Win2000 Prof SP3, заранее спасибо


 
RBear   (2003-04-08 15:20) [1]

При рисовании на канвасе метафайла нарисуй сначала треугольник, размеры которго будут соответствовать размер области, на которой хочешь рисовать. Дело в том, метафайл является устройствонезависимым и как показывать отдельный метафайл должна заботится сама программа. Поэтому при сохранении метафайла в собственно файле :) просчитывается позиция самой левой, самой правой, самой верхней и самой нижней точки на канвасе. По ним и пишется информация о размере.

Создавать метафайл на основе DC экрана очень даже нормально.

Думаю, если задашь размеры метафайла описанным мною способом, то и ClipRect правильно сработает.


 
RBear ©   (2003-04-08 18:16) [2]

упс, ошибка, нарисуй конечно прямоугольник :)



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

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

Наверх




Память: 0.47 MB
Время: 0.019 c
14-100881
abc
2003-07-16 10:50
2003.07.31
как организовать обратную связь в DCOM? т.е от сервера к клиенту


1-100825
афвуд
2003-07-16 18:51
2003.07.31
Хочу чтобы TImage был выше всех на форме.


14-100967
pet
2003-07-13 18:36
2003.07.31
иконки


6-100855
dim-
2003-05-22 20:41
2003.07.31
Смена ip адреса


1-100743
alexts
2003-07-14 12:33
2003.07.31
Помогите в выборе метода решения