[转载]关于PC X-server的中文问题(终结篇)

发表于:2007-06-09来源:作者:点击数: 标签:
作者:猫弗利 最近有很多朋友讨论关于PCX-server不能显示中文问题。 看到很多朋友禅精竭虑的用各种方法(甚至包括自己制作中文字库) 首先我为他们的这种钻研精神深深感动,同时我也感到很惭愧, 因为早在X诞生之时已经设计了解决途径; 最简便的解决方法/也

作者:猫弗利

最近有很多朋友讨论关于PC X-server不能显示中文问题。 
看到很多朋友禅精竭虑的用各种方法(甚至包括自己制作中文字库) 
首先我为他们的这种钻研精神深深感动,同时我也感到很惭愧, 
因为早在X诞生之时已经设计了解决途径; 
最简便的解决方法/也是正确的方法就是使用 X Font Server。 

1.机制 
X Font Server 是X 为多语言准备的机制。 
由于Unix的X 是C/S结构的;X允许client通过tcp/ip使用server上的font. 
所以只要X Font server上有的font,client就可以使用, 
而不论client的平台是法语、德语、中文还是日文。 
一般的Unix X server也可以做 font server. 

  X fonts server(Fonts) -- tcp/ip --> X client/Other X server 

2.server端设置 
  一般的Unix在启动时都会启动X Font Server. 
  它的port是 7000(HP-UX) 或者 7100(Solaris),具体察看/etc/services 
  用netstat -an 可以检查端口是否被监听。 
  和很多tcp/ip service一样,可以是inetd监听也可以是xfs自己监听。 

3.client设置 
  在PC X-server里面有Font Path一项,加上下面的font path. 
  tcp/font_server_host_name or IP :7100 
  有好一些的软件(如:exceed)有单独的选项。 

4.后记。 
  好了,这样就可以随便选择语言了,想怎么玩就怎么玩了。 
  希望这是最后一次回答这个问题。 
  我不知道说什么好: 
  X Font Server 是个well-known的东东;而且很容易找到帮助; 
  不管是 man X 还是PC X-server自己的help里面都有详尽的描述。 
  我不知道为什么会有那么多的人前仆后继的想出各种麻烦的办法。 

            请阅读帮助先!


----
mkwf(猫弗利) 
oicq:333058 
mkwf@163.com 


 race 回复于:2002-12-26 08:36:23
X-WIN32的X-CONFIG里面有add font server和端口的地方,有使用中文环境的可以测试一下。

 jekie 回复于:2002-12-26 09:19:18
我按以上方法配置X-WIN32,但还是显示乱码。

 race 回复于:2002-12-26 09:25:41
reset x-win32了吗?本机乱不乱?

 jekie 回复于:2002-12-31 13:29:43
不但Reset,就是机器重启也还是乱码。本机很正常。

 wasp 回复于:2002-12-31 14:59:15
在xmanager和x-win32中显示中文 

   曾经试过象linux那样使用fontserver,但是没有成功, 其实只要把对应的字体文件copy到x-win32(xmanager同理,下略)所在的workstation即可。字体文件的位置在/usr/openwin/lib/locale目录的对应不同locale的子目录里。

    比如想要login的语言选项“zh”生效,就把zh/X11/fonts里面的*.pcf.Z拷贝到x-win32的目录里,注意要把.Z解压缩(用winzip就可以)。然后修改x-win32的fontpath(用xconfig),把这些字体所在的目录加上,关掉x-win32再重新启动即可。


 sohu3370 回复于:2002-12-31 16:14:51
[这个贴子最后由sohu3370在 2003/01/03 11:57am 编辑]

[quote][b]下面引用由[u]jekie[/u]在 [i]2002/12/26 09:19am[/i] 发表的内容:[/b]
我按以上方法配置X-WIN32,但还是显示乱码。
[/quote]

同感!X-Manager 1.3.9 Evaluation版本,FONT SERVER连接正常(就是我要连接的主机的7100 PORT可以看到创建了一个连接),但仍显示乱码。
当把x-config中的show missing font name选中时,会提示丢失的字体???


使用 wasp 的方法,成功!可以正常显示汉字了,但觉得是麻烦了点儿!

我想问题是这样的:只要设置FONT SERVER就能显示中文,前提是你的X-MANAGER必须装了中文支持包,比如X-MANAGER的ZH_CN.EXE,我把它装上,再设置FONT-SERVER就OK了!

当然,wasp的方法就是手工把字体复制过去,所以总是可以的!




 al 回复于:2003-02-19 00:51:25
Solaris 机:
修改 /usr/openwin/lib/X11/fontserver.cfg 在 catalog 段加入中文字体目录
如果没有运行 font server,在 terminal 以 root 身份输入 xfs&
系统自动运行(inet): 在 terminal 以 root 身份输入 fsadmin -e



localhost:
如果使用 XDMP 的话应该就不用
telnet 连接可在登陆后输入 xset +fp [b:34edcb9adf]IP[/b:34edcb9adf]:/7100 (这里的 [b:34edcb9adf]IP[/b:34edcb9adf] 指远程 Solaris 的 IP Address, 如: 202.0.3.42)
[/b]

 arbyao 回复于:2003-03-01 19:45:29
请问如果有了xmanager的中文字体
可不可以转换为xwin32的,
如何做

 johnyou 回复于:2003-03-01 23:51:06
支持。

 zl99 回复于:2003-03-26 21:59:37
为什么我用你们讲的2种方法都不行啊?
连接font server就提示“could not open default font 'fixed'”
用拷贝的方法,就什么中文都看不到。
你们的也是solaris8吗?

 zl99 回复于:2003-03-27 10:23:12
ok,可以了。
但是为什么我在xman窗口里面运行oracle的runinstaller却出不来窗口呢?并没有做权限设置啊。

 lk72 回复于:2003-07-10 11:50:22
引用:
希望这是最后一次回答这个问题。 
我不知道说什么好: 
X Font Server 是个well-known的东东;而且很容易找到帮助; 
不管是 man X 还是PC X-server自己的help里面都有详尽的描述。 
我不知道为什么会有那么多的人前仆后继的想出各种麻烦的办法。 
请阅读帮助先! 


----这话有些过分!我用的是redhat7.3,已按您的大法试了,根本无效,还是乱码。
----原因可能是7100端口没有被监听(在本机上用telnet 127.0.0.1 7100登录,被拒绝),但本机显示中文则没问题,很奇怪。不知道怎样才能让本机监听7100。

 lk72 回复于:2003-07-10 11:55:30
用ps -e|grep xfs检查,xfs已起,/etc/services的相关项是:
xfs     7100/tcp           # X font server
但7100端口就是没起来。

原文转自:http://www.ltesting.net