本章描述简体中文 Solaris 操作环境中的 PostScript 字体、使用 PostScript 字体需要什么以及如何编辑这种字体。
简体中文 Solaris 操作环境在显示 PostScript 系统 (DPS) 中提供 PostScript 字体。本节描述了简体中文 Solaris 软件中 DPS 的使用,以及使用简体中文 Solaris 软件中的 DPS 需要什么。有关进一步的细节,请参见由 Adobe® Systems 公司所出版的 Programming the Display PostScript System with X (X 环境下的显示 PostScript 系统编程)。
简体中文 Solaris 操作环境包括列在下面表格的字体。可以像使用罗马字体一样地使用任何简体中文字体。
表 7-1 简体中文 Solaris 操作环境的 PostScript 字体
字体名 |
说明 |
---|---|
宋体 |
宋体 EUC 的假名,可像罗马字体一样地使用。 |
宋体 EUC |
宋体字体、EUC 编码、水平显示;可像罗马字体一样地使用。 |
楷体 |
楷体 EUC 的假名,可像罗马字体一样地使用。 |
楷体 EUC |
楷体字体、EUC 编码、水平显示;可像罗马字体一样地使用。 |
仿宋体 |
仿宋体 EUC 的假名,可像罗马字体一样地被使用。 |
仿宋体 EUC |
仿宋体字体、EUC 编码、水平显示;可像罗马字体一样地使用。 |
黑体 |
黑体 EUC 的假名,可像罗马字体一样地使用。 |
黑体 EUC |
黑体字体、EUC 编码、水平显示;可像罗马字体一样地使用。 |
以下图形展示了一个宋体的样本。
可以使用任何罗马字体和简体中文字体的组合创建复合字体。例如,下面的 PostScript 代码定义了复合字体,Times 斜体+楷体,该复合字体用 Times 斜体表现 ASCII 字符,用楷体字体表现简体中文字符:
/make EUC font { /AsianFont exch def /WestFont exch def /NewFont exch def /CIDInit /ProcSet findresource begin NewFont [ AsianFont WestFont ] beginrearrangedfont 1 usefont 1 beginbfrange <00> <7e> <00> endbfrange endrearrangedfont end bind def /LC_Times-Roman /Times-Roman /Kai-Medium make EUC font
在 DPS 中作出环绕定义时,可以像使用罗马字体一样地使用简体中文字体。以下代码样例生成下一图形中的显示。
defineps PSWDisplayText(char *text) /pointSize 50 def /Helvetica pointSize selectfont (Hello World) stringwidth pop 2 div neg 0 moveto (Hello World) show /cpSize 40 def /Song-Medium cpSize selectfont (text) stringwidth pop 2 div neg pointSize neg moveto (text) show endps
可以在一个 C 语言程序里调用 PSWDisplayText (中文文本) 以显示所设计的中文文本。请参看下面图形的实例。
简体中文 Solaris 软件在 DPS 中提供了对 TrueType 字体的支持。
本章节说明如何在应用于简体中文 Solaris 操作环境中的可移植编译格式 (PCF) 字体中编辑、创立和安装新的字符。然后可以保存所作的改变并在本地系统中使用该编辑过的字体。这一过程包括下面几个步骤:
为所编辑或创建的字体准备一个工作区。
使用字体编辑程序编辑位图分布格式 (BDF) 的字体文件。
将 BDF 字体文件转换成 PCF 格式。
使该字体在您的系统上可使用。
简体中文 Solaris 操作环境所提供的字体编辑程序可用于编辑位图字体。
启动字体编辑程序。
字体编辑程序窗口显示在屏幕上。
system% fontedit |
字体编辑程序不能编辑用于 Solaris 软件的 PCF 格式字体文件 (.pcf 文件扩展名)。该工具仅处理 BDF 中的字体。BDF 是 MIT X Consortium 所定义的一种便携格式。
在 BDF 格式中找出要编辑的简体中文字体文件。
该文件的编码应该从 8481 (0x2121) 开始。例如,假如您有一个 BDF 文件叫 myfont14.bdf:
STARTFONT 2.1 COMMENT Sample Font ... FONT Myfont-Medium14SIZE 14 75 75 STARTCHAR C101 ENCODING 8481 ... |
在字体编辑程序窗口中的文件按钮上面按住菜单鼠标器按钮,并在下拉式菜单中选择装入...。
在装入弹出式窗口的字体名称字段中键入所要编辑的 BDF 文件名,例如,myfont14.bdf。
在弹出式窗口的装入按钮按一下选择。
这样就装入了文件。
在字体编辑程序主窗口的选择按钮按一下选择。
这样就会显示出选择窗口,在那里要做以下几个步骤。
为要编辑的字符键入其字体编码代码的高位和低位字节数值,例如 0x3302。
可用下一个 (右箭头) 按钮或前一个 (左箭头) 按钮来提高或减少高位或低位字节的数值。
将这个简体中文字体的代码长度设为多字节。
对于一个 ASCII/英文字体,要将代码长度设为单字节。
在编辑按钮上 [在 Fontedit (字体编辑) :选择窗口里] 按一下以把字型显示在主幕布上。
所指定的字型会在字体编辑程序窗口里出现。
通过把像素打开或关闭可在主幕布上编辑字型:
在鼠标器按钮上按一下"选择"以把像素打开。
在鼠标器按钮上按一下"调整"以把像素关闭。
按住菜单鼠标器按钮可出现其他附加功能的菜单。
当您把字型的像素打开和关闭时,主窗口左上角中的字符字型会显出该字型的实际外观。
当完成字型的编辑后,在存储按钮上按一下"选择"。
完成编辑以后,按住在文件按钮上的菜单并选择"存入..."以保存在字体文件中已编辑好的字型。
在应用程序能够使用改动过的 BDF 文件之前,必须先把它转换成 PCF 格式文件。
为使已编辑的字体能在简体中文 Solaris 操作环境中使用,按下列步骤把这些字体转换为 X11 PCF 格式:
system% bdftopcf -o myfont14.pcf myfont.bdf |
有关更多信息,请参看 bdftopcf (1) 的手册页。
要添加一个新的位图,将该 .pcf 字体文件移入您的字体目录。在移入您的字体目录前,可先将该 .pcf 字体文件进行压缩:
system% compress myfont 14.pcf |
在您的字体目录中执行下列指令。
.bdf 文件不应该在字体目录里。
system% cat >> fonts.alias -new-myfont-medium-r-normal--16-140-75-75-c-140-gb2312.1980-0 Myfont-Medium14' ^D system% mkfontdir system% xset +fp `pwd` |
可以使用 X 环境中的字体显示器 (xfd) 查看您的字体,键入:
system% xfd -fn Myfont-Medium14 |
所有简体中文字体都有 XLFD 字体名称,可以使用 xlsfonts 实用程序来显示这些名称如下:
system% xlsfonts | grep gb2312 |
可以使用 sdtudctool 实用程序中的绘画工具来创建新的字符。 (有关如何修改字体的信息,请参看"使用 fontedit 编辑字体"。) 使用 sdtudctool 所创建的新字符可以保存在 1 级和 2 级中文字符之间的五个空的代码位置上 (从 0xD7FA 到 0xD7FE)。sdtudctool 实用程序支持位图、Type 1 和 CID 等字体。还可以为新的字符确定字体的大小。本节包含了使用 sdtudctool 的步骤。
目前 sdtudctool 仅支持 EUC 语言环境,例如 zh。因而该实用程序不能在 zh_GBK 语言环境中使用。
本节提供使用 sdtudctool 实用程序创建新字符的指导。
如要启动实用程序,键入下面的命令:
system% sdtudctool |
出现下面所示的窗口。
按一下"字符"。
出现下面所示的对话框:
指定新字符的编码位置。
使用绘画工具为该字符创建外框或位图。
在"保存"上按一下以保存该字符。
继续创建新的字符。
完成后,在文件菜单中选择"保存"以把所作的改变保存到您的环境。
新的字符被保存在 $HOME/.Xlocale/zh/fonts/UDC。
从文件菜单中选择"选项"。
选项对话框出现。
打开添加字体路径以把 UDC 字体的假名添加到您的字体路径上。
打开保存字体路径以把字体文件加到系统的字体路径上。
新的字体文件 (位于 $HOME/.Xlocale/zh/fonts/UDC) 将被列在 $HOME/.OWfontpath 文件之中,并且下次您登录时,该新的字体文件即可在 X 服务器环境中被使用。
如果保存字体路径是关闭的,该字体文件仍会被保存在 $HOME/.Xlocale/zh/fonts/UDC 中,但下次当您登录时该字体文件不会被加到系统的字体路径上。
从下列尺寸中为该位图字体选择一个或数个字体尺寸 (以点为单位) :12、14、16、20 或 24。
如要键入您创建的字符,可使用区位码输入模式 (有关更多的信息,请参看"区位码模式")。