![]() |
Печать рисунка
Столкнулся с такой проблемой.
Есть проект на MFC Логотип - .bmp в ресурсах. Нужно роспечать некую форму и вставить туда логотип компании. Есть куча способов но все они страшные... а печать до этого особо не колупал. Может кто подскажет что нить конкретно. |
Да там особых проблем нет. Считываешь картинку и помещаешь в нужное место страницы. Если не забуду, дома посмотрю примеры.
|
_Lynx_
Второй вопрос как считать картинку? За примеры буду очень благодарен.. |
MFC? - MSDN - CBitmap
Там есть все. |
Вообще-то всё просто: выводишь как и на экран.
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; } |
| Часовой пояс GMT +4, время: 12:35. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.