本章描述简体中文Solaris操作环境中的PostScript字体、使用PostScript字体需要什么以及如何编辑这种字体。
简体中文Solaris操作环境在显示PostScript系统(DPS)中提供PostScript 字体。本节描述了在简体中文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字符,用楷体字体表现简体中文字符:
/makeEUCfont { /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 makeEUCfont
在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/English字体,要将代码长度设为单字节。
在编辑按钮上[在Fontedit (字体编辑):选择窗口里]按一下以把小图形显示在主幕布上。
所指定的小图形会在字体编辑程序窗口里出现。
通过把象素打开或关闭可在主幕布上编辑小图形:
在鼠标器按钮上按一下选择以把象素打开。
在鼠标器按钮上按一下调整以把象素关闭。
按住菜单鼠标器按钮可出现其它附加功能的菜单。
当你把小图形的象素打开和关闭时,主窗口左上角中的字符小图形会显出该小图形的实际外观。
当完成小图形的编辑后,在存储按钮上按一下选择。
完成编辑以后,按住在文件按钮上的菜单并选择存入...以保存在字体文件中已编辑好的小图形。
在应用程序能够使用改动过的BDF文件之前,必须先把它转换成PCF格式文件。
为使已编辑的字体能在简体中文Solaris操作环境中使用,按下列步骤把这些字体转换为X11 PCF格式:
system% bdftopcf -o myfont14.pcf myfont.bdf |
有关更多信息,请参看bdftopcf(1)的手册页。
要添加一个新的位图,将该.pcf字体文件移入你的字体目录。 在移入你的字体目录前,可先将该.pcf字体文件进行压缩:
system% compress myfont14.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。
如要键入你创建的字符,可使用区位码输入模式 (有关更多的信息,请参看"区位码模式")。