打印机设备上下文 (文档和打印)
正如应用程序需要显示设备上下文 (DC) 才能开始在窗口的工作区中进行绘制一样,它需要打印机 DC 才能开始向打印机发送输出。 打印机 DC 类似于显示 DC,因为它是一个内部数据结构,用于定义一组图形对象及其关联属性,并指定影响输出的图形模式。 图形对象包括用于线条绘制的笔、用于绘制和填充的画笔以及用于文本输出的字体。
与显示 DC 不同,打印机 DC 不归窗口管理组件所有,并且无法通过调用 GetDC 函数获取。 相反,应用程序必须调用 CreateDC 或 PrintDlgEx 函数。
如果应用程序调用 CreateDC 函数,它必须提供驱动程序和端口名称。 若要检索这些名称,请调用 GetPrinter 或 EnumPrinters 函数。
如果应用程序调用 PrintDlgEx 函数并在 PRINTDLGEX 结构的 Flags 成员中指定PD_RETURNDC值,则系统会将句柄返回到用户选择的打印机的设备上下文。 有关详细信息,请参阅使用通用对话框中的打印属性表和“使用打印属性表”。