免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 17783 | 回复: 10
打印 上一主题 下一主题

[故障求助] 求助AIX的中文字体问题(宋体/黑体) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-06-23 15:48 |只看该作者 |倒序浏览
请教一下AIX服务器是否支持宋体和黑体?
如果支持,它的字体文件放在哪里的?

########我遇到的问题描述#########
我们的ORACLE应用跑在AIX 5300-03 服务器上,做了这么一件事情:
根据模版生成.pdf文件,但是发现模版里定义的宋体,在生成的.pdf文件里都变成了黑体。

Oracle的support让我们在服务器上找字体文件Simsun.ttf 和 Simhei.ttf ,可是我没找到。
他们可能认为既然.pdf能显示出黑体,那么操作系统上一定应该有相应的字体文件。
我也比较不懂了,如果AIX上不能识别 宋体和黑体 ,为什么生成的.pdf里会显示出黑体呢?

结症:
对字体的支持应该是在操作系统级还是应用级呢?
还是说AIX上黑体对应的是另外一个名字的.ttf文件?

哪位知道请帮帮忙啊。

论坛徽章:
0
2 [报告]
发表于 2006-06-23 20:43 |只看该作者
自己顶一下, :(

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
3 [报告]
发表于 2006-06-24 19:24 |只看该作者
lsfont看看

论坛徽章:
0
4 [报告]
发表于 2006-06-24 22:07 |只看该作者
chinadns , 谢谢你。

# lsfont

FONT  FILE            GLYPH  FONT
ID    NAME            SIZE   ENCODING
====  ==============  =====  =========
0     Erg22.iso1.snf  12x30  ISO8859-1
1     Erg11.iso1.snf   8x15  ISO8859-1

#

网上关于AIX字体的资料很少,还没找到这个结果是什么意思。

论坛徽章:
0
5 [报告]
发表于 2006-06-25 09:05 |只看该作者
AIX环境中不用.ttf字体文件,而是用.bdf、.snf、.pcf字体文件。至于宋体和黑体而需要安装相应的字体文件。

在AIX图型界面下用xlsfonts列出你安装在你系统工作站上的所有字体的ID,以前AIX图型界面用的是X11R4所以应该用snf字体文件,新的用pcf字体文件,但看你执行lsfont返回用的是snf字体文件,如果能找到bdf字体文件可以用bdftosnf命令转化后使用。另外可以用showsnf打印.snf字体文件的内容。

当一个X客户机请求一个服务器调用一种字体的时候,X 服务器搜索缺省的字体目录。对于服务器,缺省的字体目录是/usr/lpp/X11/lib/X11/fonts。那个/usr/lib/X11/fonts 是一个路径,被连接到/usr/lpp/X11/lib/X11 字体目录。

字体目录中有两个文件:

fonts.dir
每种字体有一个字体ID(XLFD描述),在font.dir 文件中,每一个XLFD描述(字体ID)影射到一个字体文件。当你启动使用某种字体的X应用的时候, 你需要指定字体的ID。客户程序发送字体的ID到服务器,然后服务器根据字体ID调用相应的字体文件。如果服务器在fonts.dir文件中不能找到字体的ID,它将生成一个错误信息,并且选择一个缺省字体作为替代。你可以用mkfontdir命令为某一个字体目录产生一个font.dir

fonts.alias
这是一个需要你自己编辑的文件。它映射字体ID到其别名。然后你可以在你的客户程序中使用这个别名。因为别名是一个字体的逻辑名,你可以为一种物理字体设置几个别名。这提供了很大的灵活性,当你的客户程序请求一种服务器上不存在的字体时,你能选择一种最接近的字体,然后赋予这种字体一个别名,使这个别名和客户程序请求的字体名一致

安装字体文件过程是:
先执行mkfontdir,这个命令解压并且转换文件到.snf 格式。
再编辑fonts.alias 文件。
然后执行
# xset +fp <directory>                     //这个<directory>就是刚才用mkfontdir生成的目录。
# xset fp rehash
最后确认当前系统指向哪种字体
# xfd -fn rom14

[ 本帖最后由 zlg88 于 2006-6-25 09:07 编辑 ]

论坛徽章:
0
6 [报告]
发表于 2006-06-26 10:06 |只看该作者
谢谢zlg88,版主好强!! 赞!!

============== start ==============
安装字体文件过程是:
先执行mkfontdir,这个命令解压并且转换文件到.snf 格式。
再编辑fonts.alias 文件。
然后执行
# xset +fp <directory>                     //这个<directory>就是刚才用mkfontdir生成的目录。
# xset fp rehash
最后确认当前系统指向哪种字体
# xfd -fn rom14
============== end ==============

不过,对于最后一段关装字体文件还是有2点不清楚:
1. 我应该到www.ibm.com 上找到宋体的字体文件并下载下来,是吗?
  IBM支持宋体,是吗?
2. 我在服务器上看到的文件都是.pcf.Z 结尾的,我应该转换成.snf 还是 .snf.Z 还是 .pcf.Z 呢?
#################
# lsfont

FONT  FILE            GLYPH  FONT
ID    NAME            SIZE   ENCODING
====  ==============  =====  =========
0     Erg22.iso1.snf  12x30  ISO8859-1
1     Erg11.iso1.snf   8x15  ISO8859-1

# cd /usr/lpp/X11/lib/X11/fonts
# ls
fonts.alias.iso15
fonts.dir
gb18tt.pcf.Z
gb27s.pcf.Z
ibm27.pcf.Z
misc
serifR21.pcf.Z
serifR24.pcf.Z
smw10.ibm1252.pcf.Z
smw10.iso15.pcf.Z
(略)

论坛徽章:
0
7 [报告]
发表于 2006-06-26 17:21 |只看该作者
如果是java程序:
[/usr/java14/jre/lib/fonts]>ls
Court___.ttf                     LucidaSansRegular.ttf
Courtb__.ttf                     LucidaTypewriterBold.ttf
Courtbi_.ttf                     LucidaTypewriterBoldOblique.ttf
Courti__.ttf                     LucidaTypewriterOblique.ttf
LucidaBrightDemiBold.ttf         LucidaTypewriterRegular.ttf
LucidaBrightDemiItalic.ttf       Thonb___.ttf
LucidaBrightItalic.ttf           Thonbi__.ttf
LucidaBrightRegular.ttf          Thonburi.ttf
LucidaSansDemiBold.ttf           Thoni___.ttf
LucidaSansDemiOblique.ttf        fonts.dir
LucidaSansOblique.ttf            fonts.scale

论坛徽章:
0
8 [报告]
发表于 2006-07-07 21:02 |只看该作者
谢谢楼上各位帮助!

我今天看到了WINDOWS下安装的JAVA里有5份文件,我的AIX上安装的JAVA目录下没有, 楼上mxin
贴出来的也没有,觉得很奇怪,他们是:
ALBANWTJ.ttf,  ALBANWTK.ttf,  ALBANWTS.ttf,  ALBANWTT.ttf,  ALBANYWT.ttf

这几份文件分别表示:
Font Family Name     Actual Font    Actual Font Type                     
Albany WT            ALBANYWT.ttf   TrueType (Latin1 only)               
Albany WT J          ALBANWTJ.ttf   TrueType(Japanese flavor)            
Albany WT K          ALBANWTK.ttf   TrueType (Korean flavor)            
Albany WT SC         ALBANWTS.ttf   TrueType(Simplified Chinese flavor)  
Albany WT TC         ALBANWTT.ttf   TrueType(Traditional Chinese flavor)

看这两份:
ALBANWTS.ttf   TrueType(Simplified Chinese flavor)  
ALBANWTT.ttf   TrueType(Traditional Chinese flavor)

我把这几份文件拷贝到AIX服务器目录/usr/java14/jre/lib/fonts下后,在AIX上生成的PDF文件中文就不再是问号(???)了。
但是中文却全部是黑体,而且全部字都是没有加粗的,其实我制作的生成PDF的模版是有宋体和黑体之分的,而且还有加粗和不加粗之分。
但是既然ALBANWTT.ttf是Traditional Chinese flavor,应该可以区分宋体和黑体了啊。
我推测还是字体文件的问题,但是不知道该怎么办。

我又找到了这几份字体文件:
Font Family Name        Actual Font    Actual Font Type                                
Andale Duospace WT      ADUO.ttf       TrueType (Latin1 only, Fixed width)            
Andale Duospace WT      ADUOB.ttf      TrueType (Latin1 only, Fixed width)            
Andale Duospace WT J    ADUOJ.ttf      TrueType(Japanese flavor,Fixed width)           
Andale Duospace WT J    ADUOJB.ttf     TrueType(Japanese flavor,Fixed width)           
Andale Duospace WT K    ADUOK.ttf      TrueType (Korean flavor, Fixed width)           
Andale Duospace WT K    ADUOKB.ttf     TrueType (Korean flavor, Fixed width)           
Andale Duospace WT SC   ADUOSC.ttf     TrueType(Simplified Chinese flavor,Fixed width)
Andale Duospace WT SC   ADUOSCB.ttf    TrueType(Simplified Chinese flavor,Fixed width)
Andale Duospace WT TC   ADUOTC.ttf     TrueType(Traditional Chinese flavor,Fixed width)
Andale Duospace WT TC   ADUOTCB.ttf    TrueType(Traditional Chinese flavor,Fixed width)
然后我做了以下测试,先删除/usr/java14/jre/lib/fonts下的ALBANWTJ.ttf,  ALBANWTK.ttf,  ALBANWTS.ttf,  ALBANWTT.ttf,  ALBANYWT.ttf这几份文件,然后把ADUOSC.ttf,ADUOSCB.ttf(它应该是ADUOSC.ttf的粗体文件),ADUOTC.ttf,ADUOTCB.ttf等文件拷贝到/usr/java14/jre/lib/fonts下,然后生成一份PDF,发现中文又全部变成问号(???)了。看来这几份文件拷贝到/usr/java14/jre/lib/fonts目录下一点用都没有呢。

求教各位关于AIX上JDK字体的设置。

论坛徽章:
0
9 [报告]
发表于 2006-07-10 09:18 |只看该作者
自己再顶一下.

论坛徽章:
0
10 [报告]
发表于 2006-10-24 11:06 |只看该作者

我用lsfont命令,提示我没有配置

输入lsfont命令,系统提示我lsfont没有没有被配置,是什么原因,我也需要中文字体
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP