Compartilhar via


CView::OnPrint

Chamado pela estrutura para imprimir ou visualizar uma página do documento.

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

Parâmetros

  • pDC
    Aponta para o contexto de dispositivo de impressora.

  • pInfo
    Aponta para um CPrintInfo estrutura que descreve o trabalho de impressão corrente.

Comentários

Para cada página que está sendo impressa, a estrutura chama esta função imediatamente após chamar o OnPrepareDCfunção de membro .A página que está sendo impressa é especificada pelo m_nCurPage membro de CPrintInfo estruturar que pInfo aponta para. A implementação padrão chama o OnDrawfunção de membro e passa o contexto de dispositivo de impressora.

Substitua esta função para qualquer um dos seguintes motivos:

  • Para permitir a impressão de documentos de várias páginas.Processa apenas a parte do documento que corresponde à página que está sendo impressa no momento.Se você estiver usando OnDraw para executar o renderização, você pode ajustar a origem da porta de visualização para que somente a parte apropriada do documento é impresso.

  • Para tornar a imagem impressa com uma aparência diferente da imagem na tela (ou seja, se seu aplicativo não for WYSIWYG).Em vez de passar a impressora contexto de dispositivo para OnDraw, use o contexto de dispositivo para processar uma imagem usando atributos não são mostrados na tela.

    Se precisar de recursos GDI para impressão que não são usadas para exibição na tela, selecionar-os no contexto de dispositivo antes de desenho e Cancelar seleção posteriormente.Esses recursos GDI devem ser alocados no OnBeginPrinting e lançada em OnEndPrinting.

  • Para implementar cabeçalhos ou rodapés.Você ainda pode usar OnDraw Para fazer o renderização, restringindo a área que pode imprimir em.

Observe que o m_rectDraw membro do pInfo parâmetro descreve a área imprimível da página em unidades lógicas.

Não chame OnPrepareDC na sua substituir de OnPrint; as chamadas de estrutura OnPrepareDC automaticamente antes de ligar OnPrint.

Exemplo

Este é um esqueleto para uma substituição OnPrint função:

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);
}

Para obter outro exemplo, consulte CRichEditView::PrintInsideRect.

Requisitos

Cabeçalho: afxwin.h

Consulte também

Referência

Classe CView

Gráfico de hierarquia

CView::OnBeginPrinting

CView::OnEndPrinting

CView::OnPrepareDC

CView::OnDraw

Outros recursos

CView membros