imho.ws |
|
03.11.2006, 14:38 | # 1 |
Junior Member
Регистрация: 16.07.2005
Адрес: Украина, г. Ровно
Пол: Male
Сообщения: 140
|
Печать рисунка
Столкнулся с такой проблемой.
Есть проект на MFC Логотип - .bmp в ресурсах. Нужно роспечать некую форму и вставить туда логотип компании. Есть куча способов но все они страшные... а печать до этого особо не колупал. Может кто подскажет что нить конкретно.
__________________
Та программа не глючит, которая не написана |
10.11.2006, 10:29 | # 5 |
Junior Member
Регистрация: 11.10.2005
Сообщения: 63
|
Вообще-то всё просто: выводишь как и на экран.
void CMapView::OnPrint(CDC* pDC, CPrintInfo* pInfo) { //Некоторые предварительные вычисления POINT curPos; double mask; CPoemDoc* curDoc = GetDocument(); double koef = curDoc->m_koef; CRect curRect; GetClientRect(curRect); //Выводится только часть изображения curPos.x = curDoc->m_curPos.x - curRect.Width() * koef/2; curPos.y = curDoc->m_curPos.y - curRect.Height() * koef/2; CSize sizeDib = m_dibFile.GetDimensions(); CSize totalSize; // = m_dibFile.GetDimensions(); mask = 4500/curRect.Width(); totalSize.cx = curRect.Width() * mask; totalSize.cy = curRect.Height() * mask; SetScrollSizes(MM_TEXT,totalSize,CSize(400, 400), CSize(50, 50)); this->ScrollToPosition(CPoint(0,0)); StretchDIBits(pDC->GetSafeHdc(),0,0,totalSize.cx,totalSize.cy,curPos.x,sizeDib.cy-curPos.y-curRect.Height()*koef,koef*curRect.Width(),koef*curRect.Height(),m_dib File.m_lpImage,(LPBITMAPINFO) m_dibFile.m_lpBMIH,DIB_RGB_COLORS,SRCCOPY); /*здесь у меня ещё другие слои накладываются и текст*/ curDoc->chPos = true; } |