Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.06.2008, 21:25   #1
Alexoid
Пользователь
 
Аватар для Alexoid
 
Регистрация: 20.04.2008
Сообщений: 32
Сообщение Печать и предварительный просмотр

Здравствуйте !!!
Хотелось бы написать для своей проги ПРЕДВАРИТЕЛЬНЫЙ ПРОСМОТР перед печатью с многостраничной поддержкой, затея по-моему очень нудная и кодоёмкая, может я совсем обленился, но не мог-бы кто нить подкинуть примерчик какой-нибудь, или литер-у где было-бы пошаговой описание этой проблемы. Пишу ГОЛЫМ WINAPI. Але мож каким ActiveX Воспользовться
---------
Заранее благодарю за советы,
Новак Александр.
Имеющий желание - ищет возможность,
не имеющий желание - ищет причину.
---
Истина где-то рядом

Последний раз редактировалось rpy3uH; 30.06.2008 в 14:32.
Alexoid вне форума Ответить с цитированием
Старый 01.07.2008, 10:32   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

ПРЕДВАРИТЕЛЬНЫЙ ПРОСМОТР перед печатью чего?
QReports не устраивает? (хоть это и не WIN API)
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.07.2008, 21:19   #3
Alexoid
Пользователь
 
Аватар для Alexoid
 
Регистрация: 20.04.2008
Сообщений: 32
По умолчанию

По-моему это и несовсем важно, попытаюсь обьяснить, в общем делаю серьёзный проджект(покрайней мере для меня), что-то вроде клиента для оформления заказов на базе сервера СУРБД MySql, как уже говорилось выше - только WinApi, ловкость рук и никакого мошенства (т.е. библиотек, даже MFC) пишу на MS Visual C++. В общем после того как заказ оформлен, он должен отпечататься, там в основном одна большая таблица вот это должно печататься, с самой печатью я немного разобрался, хотелось-бы сделать и ПРЕВЬЮ (Это задача второстепенного характера, но хотелось-бы реализовать, когда всё остальное будет написано). Я так предполагаю, что эта проблема должна описываться в литературе ранних изданий, когда Win 95 рулил, подскажите, что почитать.
Буду рад любому ответу.
Имеющий желание - ищет возможность,
не имеющий желание - ищет причину.
---
Истина где-то рядом

Последний раз редактировалось Alexoid; 02.07.2008 в 21:34.
Alexoid вне форума Ответить с цитированием
Старый 02.07.2008, 23:55   #4
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

Alexoid, то ли я чего-то недопонял, то ли Вы сами пытаетесь усложнить себе жизнь... "Превью" - это та же самая печать, только в другой контекст, возможно, хотя и не обязательно, с некоторыми мелкими изменениями, вроде учёта разных DPI. Остаётся смастерить подходящее оконце и "печатать" в него тем же кодом...
B_N вне форума Ответить с цитированием
Старый 03.07.2008, 18:32   #5
Alexoid
Пользователь
 
Аватар для Alexoid
 
Регистрация: 20.04.2008
Сообщений: 32
По умолчанию

}{орошо, тогда помогите для начала правильно перенести эти параметры принтера на окно, допустим hDC-контекст принтера, hWnd-Окно.
Верно ли я думаю
Код:
HDC hWndDC=GetDC(hWnd);
int PhisHeight=GetDeviseCaps(hDC,PHYSICALHEIGHT);
int PhisWidth=GetDeviseCaps(hDC,PHYSICALWIDTH);
//Далее устанавливаю физ. коодинаты для hWnd
SetWindowExtEx(hDlgDC,PhisWidth,PhisHeight,0);
SetViewportExtEx(hDlgDC,PhisWidth,PhisHeight,0);
и это всё?
Имеющий желание - ищет возможность,
не имеющий желание - ищет причину.
---
Истина где-то рядом

Последний раз редактировалось Alexoid; 03.07.2008 в 20:00.
Alexoid вне форума Ответить с цитированием
Старый 04.07.2008, 13:15   #6
Alexoid
Пользователь
 
Аватар для Alexoid
 
Регистрация: 20.04.2008
Сообщений: 32
По умолчанию

Я тут уже малость разобрался, хотелось-бы разобраться с режимами SetMapMode, на сам принтер я вывожу таблицу в режиме MM_TEXT, а для окна предварительного просмотра ММ_TEXT - неподходит, т.к. использую ф-ции: SetWindowExtEx, SetViewportExtEx,SetViewportOrgEx. мне кажеться либо MM_ANISOTROPIC, либо MM_TWIPS или может MM_ISOTROPIC, что выбрать если вывожу текст обрамлённый таблицей и в чём будет разница....
Имеющий желание - ищет возможность,
не имеющий желание - ищет причину.
---
Истина где-то рядом

Последний раз редактировалось Alexoid; 04.07.2008 в 13:22.
Alexoid вне форума Ответить с цитированием
Старый 05.07.2008, 11:28   #7
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

Alexoid, я, честно говоря, не знаю, что можно добавить к тому, что написано в MSDN: SetMapMode. Разве что, как мне кажется, использовать MM_TEXT для вывода текста на принтер не совсем логично, как ни странно это звучит. Лучше делать это в дюймах, миллиметрах или типографских пунктах, но уж никак не в пикселях, которые у всех принтеров разные. А всё остальное - простая арифметика, составление пропорции... MM_ANISOTROPIC позволяет, в отличие от MM_ISOTROPIC, выводить "неквадратные" пиксели, скажем чтобы напечатать экран 4:3 на целом листе 210х297...
B_N вне форума Ответить с цитированием
Старый 11.07.2008, 11:39   #8
Alexoid
Пользователь
 
Аватар для Alexoid
 
Регистрация: 20.04.2008
Сообщений: 32
По умолчанию

Спобочки, просто надо было разобраться самому, что я и сделал, практически уже всё написал(Печатаю в режиме MM_HIMETRIC, а предвар. просмотр в MM_ISOTROPIC). Вот хотелось бы спросить, для общего образования, Вот допустим мне ужен шруфт в 9 pt, в режиме MM_TEXT это будет так:
Код:
CreateFont(-MulDiv(PointSize, GetDeviceCaps(hDC, LOGPIXELSY), 72)*9,0.............
в MM_TWIPS:
Код:
CreateFont(-9*20,0............
А в MM_HIMETRIC(MM_LOMETRIC) как мне указать размер, чтобы на лите я был уверен, что девятка.
Имеющий желание - ищет возможность,
не имеющий желание - ищет причину.
---
Истина где-то рядом
Alexoid вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Просмотр изображения Artem Мультимедиа в Delphi 4 08.05.2012 18:58
просмотр dll jziiiiiii Win Api 5 26.02.2008 18:54
просмотр изображений gulfiyush Общие вопросы Delphi 9 10.12.2007 04:47
Просмотр PNG изображений dimfil Компоненты Delphi 1 05.12.2007 18:16
Просмотр картинок Kocapb Общие вопросы C/C++ 1 25.11.2007 16:51