PCD 源文件格式

重要

建议使用 Microsoft 的 IPP 收件箱类驱动程序以及打印支持应用 (PSA) 来自定义 Windows 10 和 11 中的打印体验,以便进行打印机设备开发。

有关详细信息,请参阅打印支持应用设计指南

所有绘图器设备特征都使用以下格式指定:

keyword { value }

其中关键字是 PCD 源文件关键字之一,值为带引号的字符串或数值。 例如,以下语句指定绘图器支持颜色:

ColorCap {1}

下表介绍了关键字。

关键字 值定义 默认值
BezierCap 1=设备支持 HPGL2 Beziers 扩展。

0=不支持。
0
ColorCap 1=颜色设备

0=Monochrome 设备
0
COLORINFO 30 个 DWORD 大小的值,表示 COLORINFO 结构的内容 {
{6810,3050,0}、// xr、yr、Yr
{2260,6550,0}、// xg、yg、Yg
{1810,500,0}、// xb、yb、Yb
{2000,2450,0}、// xc、yc、Yc
{5210,2100,0}、//xm、ym、Ym
{4750,5100,0}、// xy、yy、Yy
{3324,3474,10000}、// xw、yw、Yw
10000,10000,10000,// RGB 伽玛
1422,952, // M/C, Y/C
787,495, // C/M, Y/M
324,248 // C/Y,M/Y
}
DeviceMargin 四个 DWORD 大小的值,以 1/1000 毫米单位表示左、上、右和下纸边距。 {5000,
5000,
5000,
36000}
设备名称 表示可显示设备名称的带引号的字符串(最大为 31 个字符)。 “HPGL/2 绘图器”
DevicePelsDPI 一个表示设备有效 DPI 的 DWORD 大小值。 有关详细信息,请参阅 GDIINFOupDevicePelsDPI 成员。 默认值为零,导致 GDI 计算值。
DeviceSize 表示最大纸张大小的两个 DWORD 大小值,以 xy 坐标表示 1/1000 毫米单位。

y 值为 25400(1 英寸)或更少表示设备接受可变纸张长度。
{215900,
279400}
FormInfo 绘图器支持的每个表单的表单说明。 有关详细信息,请参阅 下表后面的“窗体说明 ”部分。 无。
HTPatternSize 一个HT_PATSIZE_前缀的常量,用于标识标准半调模式。 0xffffffff
InitString 带引号的 C 语言字符串,表示驱动程序的 DrvStartPage 函数发送到打印机的命令。 NULL 字符串。
MaxCopies 设备可以呈现的每个页面的最大副本数。 1
MaxPens 笔数(最大为 32 支) 8
MaxPolygonPts 要绘制或填充的多边形的最大点数。 128
MaxQuality 质量级别数(最大 4 个) 4
MaxScale 最大缩放大小。 0-10000 (100 是 100%) 100
NoBitmapFont 1=设备不支持位图字体。

支持 0=位图字体。
0
PaperTrayCap 1=设备具有纸盒源。

0=不支持。
0
PaperTraySize 两个 DWORD 大小的值,表示纸盒宽度和高度,单位为 1/1000 毫米。 {-1, -1}
PlotDPI 两个 DWORD 大小的值,表示笔绘图仪的 xy 分辨率(以点/英寸为单位)。 {1016, 1016}
PlotPenData 每个笔的笔说明。 有关详细信息,请参阅 下表后面的“笔说明 ”部分。 无。
PushPopPal 1=在 RTL 和 HPGL2 之间切换时,驱动程序必须推送/弹出面板。

0=推送/pop 不是必需的。
0
RasterByteAlign 1=设备必须接收字节对齐 x 坐标上的所有光栅数据。

0=字节对齐不是必需的。
0
RasterCap 1=光栅设备

0=触控笔设备
0
RasterDPI 表示 xy 分辨率的两个 DWORD 大小的值,以每英寸点为单位。

对于光栅绘图器,这是光栅分辨率。

对于笔绘图器,这是 GDI 向应用程序提供的理想分辨率。
{300, 300}
RollFeedCap 1=设备具有卷纸源。

0=不支持。
0
ROPLevel ROP_LEVEL_0 = 无 RasterOp 支持。

ROP_LEVEL_1 = Rop1 支持。

ROP_LEVEL_2 = Rop2 支持。

ROP_LEVEL_3 = Rop3 支持。
ROP_LEVEL_0
RTLMonoEncode5 1=HP 光栅传输语言 (RTL) 单色压缩模式 5 受支持。

0=不支持。
0
RTLMonoFixPal 仅 RTL 单色调色板。

0=White,1=Black
0
RTLMonoNoCID 1=在 RTL Mono 模式下,不需要 CID 命令。

0=在 RTL Mono 模式下,需要 CID 命令。
0
RTLNoDPIxy 1=RTL DPI X,Y 移动命令不受支持。

0=支持这些命令。
0
TransparentCap 1=设备支持透明模式。

0=不支持。
0
WindingFillCap 1=设备支持绕行填充。

0=不支持。
0

笔说明

每个笔说明必须采用以下格式:

PlotPenData {Pen Number Color**}**

其中 ,笔号 标识笔的槽号, 颜色 是PC_IDX_前缀的颜色标识符。 下面是笔说明示例:

PlotPenData {1, PC_IDX_WHITE}
PlotPenData {2, PC_IDX_BLACK}
PlotPenData {3, PC_IDX_RED}

表单说明

每个表单说明必须采用以下格式:

FormInfo {“Form Description”, Width**, ** Length**, ** Left Margin**, ** Top Margin**, ** Right Margin**, ** Bottom Margin**}**

其中 窗体说明 是描述窗体的字符串, 宽度长度 以 1/1000 毫米单位指定窗体大小,边距也以 1/1000 mm 单位指定。 下面是三个示例:

FormInfo {"Roll Paper 24 in",    609600,      0, 0, 0, 0, 0}
FormInfo {"ANSI A 8.5 x 11 in",  215900, 279400, 0, 0, 0, 0}
FormInfo {"ISO A4 210 x 297 mm", 210000, 297000, 0, 0, 0, 0}