Главная страница
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
3-1086753895
Valera
2004-06-09 08:04
2004.07.11
master-detail с помощюю FIBPlus


1-1087771522
Алекс А
2004-06-21 02:45
2004.07.11
Как лучше работать с 300-мегабайтным массивом ?


1-1088545291
001
2004-06-30 01:41
2004.07.11
Как получить код символа в строчке?


4-1086157047
Term
2004-06-02 10:17
2004.07.11
как получить список дисков в системе, С ,D и т.д. скоко их там ес


14-1088090669
QuasiLamo
2004-06-24 19:24
2004.07.11
Oracle