MXDC_S0PAGE_RESOURCE_ESCAPE_T 结构

MXDC_S0PAGE_RESOURCE_ESCAPE_T结构是与MXDC_XPS_S0PAGE_RESOURCE_T结构串联的MXDC_ESCAPE_HEADER_T结构。

语法

typedef struct tagMxdcS0PageResourceEscape {
  MXDC_ESCAPE_HEADER_T       mxdcEscape;
  MXDC_XPS_S0PAGE_RESOURCE_T xpsS0PageResourcePassthrough;
} MXDC_S0PAGE_RESOURCE_ESCAPE_T, *P_MXDC_S0PAGE_RESOURCE_ESCAPE_T;

成员

mxdcEscape

一个 MXDC_ESCAPE_HEADER_T 结构,其 opCode 成员设置为 MXDCOP_SET_S0PAGE_RESOURCE。

xpsS0PageResourcePassthrough

表示 XPS 文档页上的资源(如字体或图像文件)的 MXDC_XPS_S0PAGE_RESOURCE_T 结构。

备注

当使用MXDC_ESCAPE转义调用该函数时,此结构在 ExtEscape 函数的 lpszInData 参数中传递,并且MXDCOP_SET_S0PAGE_RESOURCE MXDC_ESCAPE_HEADER_T结构的 opCode 成员。 结果是要发送到 MXDC 的页面资源。

按如下所示为转义分配内存,根据需要设置字段,然后调用 ExtEscape

// Compute size of buffer required adding the
//  size of the escape structure to the size
//  of the resource data buffer.
SIZE_T iTotalDataSize = sizeof(MXDC_S0PAGE_RESOURCE_ESCAPE_T) + 
                        iS0PageResourceDataSize - 1;

// Allocate the memory buffer.
P_MXDC_S0PAGE_RESOURCE_ESCAPE_T pS0PageResourceEscapeData = 
                        (P_MXDC_S0PAGE_RESOURCE_ESCAPE_T)HeapAlloc(
                            GetProcessHeap(),
                            0,
                            iTotalDataSize);

ExtEscape 的调用必须在对 StartPage 的调用和对 EndPage 的调用之间;但是,在对 StartPageEndPage 的调用之间可以有多个此类调用。

如果在使用 MXDCOP_SET_S0PAGE opCode 调用 ExtEscape 之前,使用页面上每个资源的 MXDCOP_SET_S0PAGE_RESOURCEopCode 调用 ExtEscape,则流式处理消耗效率更高。

要求

要求
最低受支持的客户端
Windows Vista [仅限桌面应用]
最低受支持的服务器
Windows Server 2008 [仅限桌面应用]
标头
Mxdc.h

另请参阅

打印

打印后台处理程序 API 结构

GDI 打印机转义函数

ExtEscape

MXDC_ESCAPE