Форум программистов, компьютерный форум CyberForum.ru

Проблема с выводом bitmap-ов на принтер... - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как программно сжать директорию или несколько файлов? http://www.cyberforum.ru/cpp-beginners/thread474582.html
нужно программно сжать директорию или несколько файлов то что я нашел в сети сжимает только один файл подскажите если кто знает
C++ Как сделать Enable ComboBox в ATL (CWindow)? Добрый день! Проблема в следующем: есть ComboBox, надо сделать его Enable. Я пишу:SendDlgItemMessage(IDC_COMBO1,WM_ENABLE,FALSE,0). Но это что-то не работает! Не знаете, в чем дело? Спасибо! http://www.cyberforum.ru/cpp-beginners/thread474513.html
C++ Хочу получить исполняемый файл в OpenWatcom C++
Я новичок Скачал OpenWatcom C++ Теперь хочу получить исполняемый файл. Беру такую програмку: //============= #include <iostream.h> void main( void ) { cout << 'Hello world' << endl; }
C++ API: востановление "чужого" окна из min
Знатоки! Может кто знает какие API-функции вызываются при восстановлении минимизированного окна при щелчке на значке в панели задач. Практически яcно, что не только ShowWindows(hWnd, SW_RESTORE). В своей программе, правда не С++, решаю задачу предотвращения повторного запуска - если обнаруживается повторный запуск, то 'повторная' отображает 'первую' и отходит восвояси. Так вот обнаружилась...
C++ Послать файл на веб сервер используя эксплорер http://www.cyberforum.ru/cpp-beginners/thread474455.html
необходимо послать файл на веб сервер из программы на C++, используя эксплорер. если правильно понимаю, есть два варианта. первый - использовать метод navigate интерфейса IWebBrowserApp, здесь я не знаю как сформировать данные для параметра variantPostData. второй - заполнить непосресдственно форму и нажать кнопку 'отправить', тут вообще ни чего не нашел. подскажите плиз где копать.
C++ Можно ли сделать залипающие кнопки в WTL без переписывания класса CButton? . подробнее

Показать сообщение отдельно
CardsOuter
Сообщений: n/a
14.04.2009, 11:24     Проблема с выводом bitmap-ов на принтер...
вобчем, так видно никто и не знал
ладно, тупголы, сам разобрался уже
вот примерно так - может кому понадобится

CDC memDC;
memDC.CreateCompatibleDC(templ); // берем за основу любой _экранный_ DC

CBitmap logo;
if (logo.LoadBitmap(IDB_BITMAP) == 0)
::MessageBox(NULL, 'ERROR LOADING BITMAP', 'Error', MB_OK);

memDC.SelectObject(&logo);

CRect rz;
memDC.GetClipBox(&rz);

// dc - эт уже принтера, метрика стоит в 0.01 мм
dc.SetMapMode(MM_HIMETRIC);
dc.StretchBlt(500, -5300, 3500, -1400, &memDC, 0, 0, rz.right, rz.bottom, SRCCOPY);

короче фишки

1. контекст для битмапа - экранный. хрен селектобжект сработает на dc принтера
2. в случае мм-ой системы с отрицательными y - размер битмапа при выводе на принтер надо ставить ОТРИЦАТЕЛЬНЫМ.
типа вот.
мож кому поможет.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru