Главная страница
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.026 c
14-1087981579
ArhDD
2004-06-23 13:06
2004.07.11
Создание среды разработки при помощи WinApi


14-1088062240
Frolov Alexey
2004-06-24 11:30
2004.07.11
Тихий системный блок -


1-1088233323
dreams
2004-06-26 11:02
2004.07.11
Проблема с MDI окнами


14-1087733307
Александр Матросов
2004-06-20 16:08
2004.07.11
Что случилось с MAIL.RU?


1-1087896534
Provodnick
2004-06-22 13:28
2004.07.11
OnMouseWheel в TScrollBox