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

Вниз

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

 
FX ©   (2004-06-24 18:17) [0]

Здравствуйте.
Мне необходимо осуществить предварительный просмотр текста выводимого на печать. Для объекта Printer я устанавливаю режим отображения MM_LOMETRIC и вывожу текст на печать. Как мне вывести текст на Canvas метафайла что-бы он выглядел в тех-же пропорциях что и при печати. Я делаю так:
...
 PhysicalWidth:=GetDeviceCaps(Printer.Handle,
   Windows.PHYSICALWIDTH);
 PhysicalHeight:=GetDeviceCaps Printer.Handle,
   Windows.PHYSICALHEIGHT);
 Metafile := TMetafile.Create;
 Metafile.Width:=PhysicalWidth;
 Metafile.Height:=PhysicalHeight;
 MetaCanvas:= TMetafileCanvas.Create(Metafile, 0);

 SetMapMode(MetaCanvas.Handle, MM_ANISOTROPIC);
 SetWindowExtEx(MetaCanvas.Handle, 2100, 2970, nil);
 SetViewportExtEx(MetaCanvas.Handle, PhysicalWidth,
   PhysicalHeight, nil);
 MetaCanvas.Rectangle(0, 0, 100, 100);
 MetaCanvas.TextOut(100, 100, "TEXT");
...
 Прямоугольник рисуется как положено 1x1 см,
а текст получается намного мельче чем при выводе на принтер.

Как сделать правильно? Спасибо.


 
jiuraqserwer   (2004-06-24 18:36) [1]

Мне кажется что лучше использовать какой-нить VCL компонент для этого например GMPrint - они по умолчанию позволяют это сделать
за доп информацией обращатся на jiura@rambler.ru


 
FX ©   (2004-06-24 19:16) [2]

Мне кажется, можно обойтись без дополнительных компонентов, т.к. ответ на вопрос где-то на поверхности, не может быть, чтобы никто не сталкивался с этим... Жду конкретных ответов.


 
TUser ©   (2004-06-24 20:56) [3]

Пол-дня назад скачал с этого сайта TPrintPreview. Пока не поставил, как работает - не знаю. В jedi есть нечно подоное, и в EhLib, кажется тоже.


 
FX ©   (2004-06-24 21:14) [4]

Сейчас посмотрим что-там за EhLib



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

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

Наверх




Память: 0.47 MB
Время: 0.042 c
1-1088060509
happyandry
2004-06-24 11:01
2004.07.11
Radiogroup


1-1088059865
Maks Realov
2004-06-24 10:51
2004.07.11
Проблема с созданием библиотеки ресурсов.


6-1084507754
OlegM
2004-05-14 08:09
2004.07.11
Как определить что на компе другом запущен сервер


3-1087278970
Older22
2004-06-15 09:56
2004.07.11
Кто отвечал мне спасибо но проблемма нерешена


1-1088351380
tytus
2004-06-27 19:49
2004.07.11
TEdit