Поделиться через


CView::OnPrint

Вызываемый платформой, чтобы распечатать или просмотреть страницу документа.

virtual void OnPrint( 
   CDC* pDC, 
   CPrintInfo* pInfo  
);

Параметры

  • pDC
    Указывает на контекст устройства принтера.

  • pInfo
    Указывает на CPrintInfo составляющие, описывающего текущее задание печати.

Заметки

Для каждой страницы, печатанными, платформа вызывает функцию эта функция сразу после вызова функции-члена OnPrepareDC. Страница, печатанной членом m_nCurPage структуры CPrintInfo которой pInfo указывающий на. Реализация по умолчанию вызывает функцию-член OnDraw и передает ему контекст устройства принтера.

Переопределить эту функцию для одной из следующих причин:

  • Разрешить печать многостраничных документов. Render только часть документа, соответствующий в настоящее время, печатанным странице. Если используется OnDraw выполнить отрисовку, которые может обрабатывать начало координат окна просмотра, поэтому печатается только соответствующую часть документа.

  • Сделать напечатанный образ поиск отличающейся от экранное изображение (то есть, если приложение не является режим WYSIWYG). Вместо передачи контекст устройства принтера на OnDraw используйте значения контекста устройства, чтобы подготовить образ с помощью атрибутов не отображаемые на экране.

    Если необходимы ресурсов GDI для печати, не использовать для экрана, выберите их в контекст устройства до отрисовки, и снимите их. Эти ресурсы должны быть выделены GDI в OnBeginPrinting и освобождены в OnEndPrinting.

  • К заголовкам или нижним колонтитулы ". Можно по-прежнему использовать OnDraw чтобы выполнить отрисовку, ограничить область, которую оно может напечатать on.

Обратите внимание, что элемент m_rectDraw параметра pInfo описывает печатаемой области страницы в логических единицах.

Не вызывайте OnPrepareDC в переопределенном методе OnPrint; границы OnPrepareDC автоматически вызывается перед вызовом OnPrint.

Пример

Следующее основу для OnPrint переопределенной функции:

void CMyView::OnPrint(CDC *pDC, CPrintInfo *pInfo)
{
   UNREFERENCED_PARAMETER(pInfo);

   // Print headers and/or footers, if desired. 
   // Find portion of document corresponding to pInfo->m_nCurPage.
   OnDraw(pDC);
}

Полный пример см. в разделе CRichEditView::PrintInsideRect.

Требования

Header: afxwin.h

См. также

Ссылки

Класс CView

Диаграмма иерархии

CView::OnBeginPrinting

CView::OnEndPrinting

CView::OnPrepareDC

CView::OnDraw