文档的打印(1)

文档的打印
1.     MFC 打印体系结构
MFC 的打印工作大致按如下步骤进行:
[1]    显示 Print 对话框。
[2]    创建一个与当前打印机设置相匹配的设备上下文( CDC )对象。
[3]    设置要打印的页数。
[4]    调用 CDC::StartDoc 开始打印。
[5]    调用 CDC::StartPage 开始打印一页。
[6]    调用视图的 OnDraw 方法打印输出一页。
[7]    调用 CDC::EndPage 结束一页的打印。
[8]    循环输出全部内容。
[9]    调用 CDC::EndDoc 结束打印。
[10] 视图做打印的清理工作。
框架的打印文档功能是从 OnPreparePrinting(CprintInfo * pInfo) 开始的,在缺省的情况下,它只是简单的调用视图的 DoPreparePrinting 函数。 DoPreparePrinting 显示 Print 对话框,并创建与打印机相匹配的设备上下文。如果要改变打印机的初始设置,则可以在这里改。
 
MFC 提供了视图类的几个覆盖的函数,如下;这些可覆盖的函数允许用户在打印过程中进行干预,可在这些函数中添加所有的打印代码;
1. OnPreparePrinting    MFC 在打印作业开始调用该函数。可以用它在打印对话框显示之前把内容插入到对话框中。缺省时, OnPreparePrinting 调用 DoPreparePrinting 来完成对话框的显示工作,覆盖 OnPreparePrinting 主要用于设置打印页数,定制 CPrintInfo 对象来提供打印作业的相关信息,此时打印设备描述表尚未创建。
2 OnBeginPrinting      MFC 在打印开始之前调用该函数,它用于创建设备描述表,指定打印字体和其他资源。
3. OnPrepareDc       MFC 调用这个函数可同时用于打印和显示,对于打印来说,它在每一个页面打印之前调用。 VisDraw 覆盖它来计算下一个打印页面所需要绘图板空间,打印出所绘图形的左边为第一页,右边为第二页,一个文本文档可以用来标志需要打印的下一页的内容。
4. OnPrint        MFC 调用他来打印(或预览)一个页面,通常可以在 OnPrint 中调用 OnDraw 打印一个页面,可以用来覆盖页眉和页面中其他元素。
5. OnEndPrinting      MFC 在打印结束之后调用该函数,可以覆盖该函数来销毁在 OnBegingPrinting 中分配的字体或其他资源。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值