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

Вниз

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

 
FX ©   (2004-06-24 19:44) [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 см,
а текст получается намного мельче чем при выводе на принтер.

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


 
FX ©   (2004-06-24 20:00) [1]

Ну что МАСТЕРА DELPHI? Кто-нибудь ответит?


 
FX ©   (2004-06-24 20:50) [2]

Once again...


 
TUser ©   (2004-06-24 21:01) [3]

Goto "Основная"



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

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

Наверх




Память: 0.47 MB
Время: 0.045 c
6-1084427884
AnP
2004-05-13 09:58
2004.07.11
Как избавиться от асинхрониус сокет ерор


1-1088526545
Николай
2004-06-29 20:29
2004.07.11
Получить кусок строки


3-1087469130
asa
2004-06-17 14:45
2004.07.11
Поиск


4-1085931269
фпп
2004-05-30 19:34
2004.07.11
Можно как-нибудь определить, что программа была запущена не клика


1-1088614294
sWhite
2004-06-30 20:51
2004.07.11
Компонент TCart