www.adept7.kiev.ua
| Форум| Гостевая| Ссылки| Программы| Исходные тексты| Наши партнеры.|
   
| Главная| Рассылки| Услуги| Библиотека| Новости| Авторам| Программистам| Студентам|
delphi c++ assembler
  http://tikitak.narod.ru ---- Главная страница сайта

Шаг 81 - Распечатка и предварительный просмотр

	От: Dmitry Panferov 
	Дата: 10 января 2000 г. 3:51
	Тема: MFCByStep - question

	Хотелось бы еще поподробнее узнать о печати на принтер
	т.к.  известно что на экране мы все измеряем пикселами
	а на печать уже все идет в физических величнах
	Поэтому мне пришлось практически полностью переделывать функцию
	OnDraw чтобы распечатать данные на принтер
Первое, что нужно сделать - это реализовать проект на основе MFC AppWizard, который поддерживает предварительный просмотр. Для этого на шаге 4 волшебника необходимо установить Print and Priview опцию.

step81_1.gif (5125 b)

С этого момента всё, что Вы будете рисовать в функции OnDraw класса вида всё будет отражаться в окне предварительного просмотра. Только Вы должны будете заметить, что размеры далеко не совпадают. Это связанно с тем, что констекст устройства по умолчанию работает с графикой в единицах MM_TEXT. Так как принтер и экран могут иметь разное кодличество единиц на страницу это порождает и проблемы масштабирования.

При работе с графикой используйте режим MM_LOENGLISH. Вообще-то их несколько. Вот перечисление режимов.

MM_HIENGLISH	0.001 дюйма
MM_HIMETRIC	0.01 мм
MM_ISOTROPIC	определяет пользователь
MM_LOENGLISH	0.01 дюйма
MM_LOMETRIC	0.1 мм
MM_TEXT		пиксель устройства
MM_TWIPS	1/1440 дюйма
Вы можете выбирать любой. Но MM_LOENGLISH достаточно удобный. Только следует точно знать о расположении координат и нуля. Для каждого режима они разные. Для MM_LOENGLISH вот так.

step81_2.gif (1333 b)

Для установки режима у контекста устройства есть функция SetMapMode, с помощью которой переключается режим. Вызывайте её первой, и всё будет в порядке. Режим MM_LOENGLISH гарантирует, что и на экране и на принтере будет выводиться графика одинаково на основе размеров заданных в дюймах.


Предыдущий Шаг | Следующий Шаг | Оглавление

By Artem.
Используются технологии uCoz
 

Rambler's Top100 Rambler's Top100

©  Adept Design Studio

Используются технологии uCoz