国际语言环境指南

.xpr 文件

缺省情况下,这些文件位于 /usr/lib/lp/locale/C/mp/.xpr 文件与每个 PostScript prolog 布局文件相对应,但 mp.common.ps. 除外。您可以通过定义 MP_PROLOGUE 环境变量来定义替换的 prolog 目录。

这些文件用作关键字/值对。以 # 开头的行被当做注释。空格分隔不同的标记(除非显式进行说明)。每个 .xpr 文件的三个主要部分由下列关键字对绑定:

某些关键字/值对可用于这三个区域。在下节中介绍每个区域。

STARTCOMMON/ENDCOMMON 关键字

出现在 STARTCOMMON 关键字之后并且在 ENDCOMMON 关键字之前的所有关键字/值对打印页的常规属性进行定义。关键字的不同有效值使用斜线 (/) 字符分隔。

ORIENTATION 0/1

0 表示以纵向模式打印,而 1 表示以横向模式打印。

PAGELENGTH 无符号整数

一个值,用于表示每个逻辑页的行数。

LINELENGTH 无符号整数

表示每行的单列字符数的值。

NUMCOLS 无符号整数

每个物理页的逻辑页数。

HDNGFONTSIZE 无符号整数

标题字体点尺寸(以小数点表示)。

BODYFONTSIZE 无符号整数

正文字体点尺寸(以小数点表示)。

PROLOGDPI 无符号整数

创建当前 .xpr 文件使用的每英寸点数比例。

YTEXTBOUNDARY 无符号整数

此 y 坐标确定了页或逻辑页(列)中文本打印的边界。此边界还可以用于检查文本打印是否发生在预期的区域内。在复杂文本布局和 EUC 打印时需要此边界,这是因为从相应的字体中获取的字符高度信息有可能是错的。

STARTTEXT 无符号整数无符号整数

以小数点表示的 x/y 点,这是物理页的第一个逻辑页中实际文本打印的开始位置。

PAGESTRING 0/1

1 表示需要在标题中的页号前附加一个页字符串。

0 表示只显示页号。

EXTRAHDNGFONT font string 1font string 2 ... font string n

字体字符串是 X 逻辑字体描述。将关键字 EXTRAHDNGFONT 与逗号分隔的字体名称列表分开的标记是引号 " 字符,而不是空格或制表符。当打印标题时,给定的首选项是这些字体,而不是内置字体。通常情况下,EXTRABODYFONT 用于分配在 /usr/openwin/server/etc/XpConfig/C/print/models/<model name>/fonts 目录中配置的打印机常驻字体。

fonts.dir 文件包含打印机常驻字体的 XLFD。

.xpr 文件中,通常指定字体,如下例所示:

 "-monotype-Gill Sans-Regular-r-normal- -*-%d-*-*-p-0-iso8859-2" 

%d(如果存在)被 mp 替换为 .xpr 文件中当前标题字体的点尺寸。x 分辨率和 y 分辨率由 * 指定。平均宽度字段设置为 0 表示选择了可缩放字体(如有可能)。您还可以提供更多的特定字体名称。

EXTRABODYFONT font string 1font string 2 ... font string n

EXTRAHDNGFONT 相同,除了这些字体被用来打印页面正文以外。

XDISPLACEMENT 带符号/无符号整数

提供要应用于此页的 x 坐标位移,以便在 x 方向移动该页的内容。此位移可以是 +ve 或 -ve 值。

YDISPLACEMENT 带符号/无符号整数

与 x 位移相同(除了移动发生在 y 方向)。

当您处理某些具有非标准页边距宽度并且要求在页中移动打印内容时的打印机时,这两个关键字很有用。

STARTPAGE/ENDPAGE 关键字

此部分中的关键字值对由 STARTPAGE ENDPAGE 关键字绑定。此部分包含要应用于物理页的绘图和标题信息。物理页可包含许多逻辑页,但是,包含在这些关键字之间的所有绘图例程仅一次应用于逻辑页。

有效的绘图实体为 LINE ARCXDrawLine()XDrawArc() 函数在这些关键字的值上执行。

此部分内的尺寸被映射在 PROLOGDPI 单元中。角度以度数表示。

LINE x1 y1 x2 y2

x/y 无符号坐标定义连接一条直线的两个点。

ARC x y width height angle1 angle2

x 和 y 均为表示弧线起始点的无符号整数。width 和 height 为表示弧线的宽度和高度的无符号整数。

USERSTRINGPOS x y

无符号坐标表示标题中用户信息的打印位置。

TIMESTRINGPOS x y

无符号坐标表示标题中打印时间的打印位置。

PAGESTRINGPOS x y

无符号坐标表示每个打印页的页字符串的打印位置。

SUBJECTSTRINGPOS x y

无符号坐标表示页中主题的打印位置。

STARTFORCEDPAGE/ENDFORCEDPAGE 部分

-n 选项分配给 mp 时,STARTPAGE/ENDPAGE 部分内的所有装饰都不打印。但是,即使给出 -n 选项,也会打印 STARTFORCEDPAGE/ENDFORCEDPAGE部分内包含的任何内容。

STARTCOLUMN/ENDCOLUMN 部分

所有关键字与STARTPAGE/ENDPAGE 关键字 中描述的相同,除了此部分中的条目可 NUMCOLS 次应用于物理页以外。如果 NUMCOLS 为 3,则物理页的可打印区域将被分为三个部分,并且每页中直线、弧线或标题装饰将出现三次。

STARTFORCEDCOLUMN/ENDFORCEDCOLUMN 部分

-n 选项分配给 mp 时,STARTCOLUMN/ENDCOLUMN 部分内给定的所有装饰都不打印。但是,即使给出 -n 选项,也会打印 STARTFORCEDCOLUMN/ENDFORCEDCOLUMN 部分内包含的任何内容。

创建新的 .xpr 文件

当创建新的 .xpr prolog 文件时,只需指定与缺省值不同的值。

下表列出针对不同关键字的 mp 程序缺省值(如果在 STARTCOMMON/ENDCOMMON 部分的 .xpr 文件中没有指定这些值):

表 7–2 STARTCOMMON/ENDCOMMON 关键字值

关键字 

值 

ORIENTATION

0

PAGELENGTH

60

LINELENGTH

80

YTEXTBOUNDARY

3005

NUMCOLS

01

HDNGFONTSIZE

120

PROLOGDPI

300

STARTTEXT

135 280

PAGESTRING

0

STARTPAGE/ENDPAGESTARTCOLUMN/ENDCOLUMN 绑定的另两个部分不需要缺省值。

要创建不带装饰的页,请使用如下方式:每个物理页有四个逻辑页,打印格式为纵向格式。指定下列部分和值:

在创建不带装饰的页面时,不需要指定下列两个部分:

如果您不在打印页中加入装饰,则不需要这些参数。所有坐标的缺省值都为 300 dpi,除非您没有指定 PROLOGDPI 关键字。如果目标打印机的分辨率不同,程序将调整 .xpr 文件以适应此分辨率。

在创建 .xpr 文件时,您必须事先知道纸张的尺寸。在美国使用的纸张为 8.5x11 英寸,对于分辨率为 300 dpi 的打印机,2550X3300 为总的尺寸。大多数打印机无法从纸张的左上角打印。相反,在物理纸张的四周会分配一些边距空间。即使您试图从 0,0 打印,也不会打印到页的左上角。当创建新的 .xpr 文件时,请考虑此限制。