页眉和页脚

本文说明如何将页眉和页脚添加到打印文档。

当您在屏幕上查看文档时,文档的名称和您在文档中的当前位置通常显示在标题栏和状态栏中。 在查看文档的打印副本时,在页眉或页脚显示名称和页码很有用。 这是一种常用方法,采用此方法后,甚至是“所见即所得”程序执行打印和屏幕显示的方式都不同。

OnPrint 成员函数是打印页眉或页脚的合适位置,这是因为每个页都会调用它,并且调用它只是为了打印而不是为了屏幕显示。 您可以定义单独的函数来打印页眉或页脚,并从 OnPrint 将其传入打印机设备上下文。 可能需要在调用 OnDraw 前调整窗口原点或范围以免页面的正文与页眉或页脚重叠。 您可能还必须修改 OnDraw,因为页容纳的文档的数量的可能减少。

要补偿页眉或页脚占用的区域,一种方法是使用 CPrintInfom_rectDraw 成员。 每打印一页,就会使用该页的可用区域初始化此成员。 如果在打印页的正文前打印页眉或页脚,可减小 m_rectDraw 中存储的矩形的大小来补偿页眉或页脚占用的区域。 然后,OnPrint 可引用 m_rectDraw 来查看还剩多少区域可用于打印页的正文

不能从 OnPrepareDC 打印标题或任何其他内容,因为在调用 CDCStartPage 成员函数之后才调用它。 此时,打印机设备上下文被视为位于页边界上。 您只能从 OnPrint 成员函数执行打印。

你想进一步了解什么

另请参阅

打印