Linux下的中文显示和支持常见问题解答

发表于:2007-07-04来源:作者:点击数: 标签:
本FAQ主要帮助您解决下面几方面的问题 1、Linux下中文的显示问题和字体的安装 2、Linux下显示中文文件名 3、smb中的中文显示 4、中文pdf的显示 5、gftp,xmms,mplayer,openoffice下的中文支持 6、如何实现英文环境(或英文菜单)而使用中文输入或显示 一、

本FAQ主要帮助您解决下面几方面的问题
1、Linux下中文的显示问题和字体的安装
2、Linux下显示中文文件名
3、smb中的中文显示
4、中文pdf的显示
5、gftp,xmms,mplayer,openoffice下的中文支持
6、如何实现英文环境(或英文菜单)而使用中文输入或显示
一、Linux下中文的显示问题和字体的安装
1、rh8.0对中文支持到底多少?
8.0装好后,只要你安装时选择的是简体中文
上网、显示汉字什么的就没问题了
不过字体比windows要差,所以你要自己安装simsun,
这个网上有的是,而且是专门针对8.0的脚本,很容易的


2、请问有没有Linux下繁体简体中文的转换工具 
试试autoconvert吧,简繁hz自动识别转换.
ftp.dlut.edu.cn/pub/PEOPLE/saka/autoconvert-0.3.6.tar.gz
debian.turbo里都有.在debian里叫zh-autoconvert
或者试试下面的软件
gb2hz gbklatex gbtob5 gbtou7 gbtou8 gbtouni
b5togb b5tou7 b5tou8 b5touni

3、请问RedHat下要正确显示中文需要安装哪些包?
在console下显示中文可以使用clearcase/" target="_blank" >cce, 安装cce的rpm就可以,很多地方可以下载,装好后
直接打cce就进入了中文环境, 类似ucdos
Xwindow下要安装中文的XServer和字体,rh8,9之类的附带的Xfree86好像都可以显示中文,
如果是别的推荐看一下精华区(可能有)或在网上搜索一下,有很多文章专题谈XWindow的
中文显示,我就不多说了(其实是想不起来具体什么了)

4、更漂亮的中文显示的问题
在linuxfans.org下载关于美化的文件包,然后./install.sh 就可以了,相当完美。 

5、请问rh8.0下增加中文字体怎么安装?
ftp://ftp.byr.edu.cn/incoming/Openw...Sun_Font_linux/
after download, run sm.sh.

6、rh9中文字体simsun安装后英文字体显淡
取消字体平滑(antialias)

7、CXTerm如何输入中文
F1英文,F6中文

8、RH9如何输入中文
ctrl+空格

9、怎么在纯文本模式下显示中文?
下个zhcon装上

10、请问Linux下有支持中文的tree命令吗?
tree -N支持中文

11、man命令怎么显示中文啊
export PAGER=less -r
看看有没有帮助。

12、Konqueror的中文显示问题 
在sunsim字体目录下的fonts.dir,fonts.scale中加入一行:
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-gbk-0
个人感觉Konqueror比Mozilla强,无论是外观还是功能上.

 zhchhui 回复于:2003-07-24 11:05:03
二、Linux下显示中文文件名
linux下显示fat分区下的中文文件名 
mount -t vfat -o codepage=936,iocharset=cp936 /dev/hda1 /mnt/c

mount -t vfat -o codepage=936,iocharset=gb2312 /dev/hda1 /mnt/c
或者修改/etc/fstab文件
/dev/hda1 /mnt/c vfat defaults,codepage=936,iocharset=cp936 0 0

/dev/hda1 /mnt/c vfat defaults,codepage=936,iocharset=gb2312 0 0
经过试验,这里不能是GB2312,只能是gb2312(RH9下)

在Linux下显示光盘上的中文文件名 
发现在mount的时候指定-o iocharset=cp936就可以了
注意不能用-o codepage=cp936,这一句一加上就不行了
相关文档见内核源码的Documentation/filesystems/isofs.txt

 zhchhui 回复于:2003-07-24 11:05:59
三、smb中的中文显示
     rh8下smbclient显示网上邻居中文的问题
rh8带的smbclient似乎有点问题, 访问windows机器的时候没法显示中文目录和文件名.
我的解决办法是在/etc/samba/smb.conf的global配置部分加入如下两行:
client code page = 936
character set = 936
这两行的顺序很重要, 不能颠倒了.
执行smbclient的时候会有一行错误信息"unrecognized character set", 不过不影响
使用.

 zhchhui 回复于:2003-07-24 11:07:16
四、中文pdf的显示
     linux下如何看中文pdf
RH9.0对中文PDF的支持已经很好,一般的中文pdf都可以打开。如果有问题,参考
下面的方法:
方案1:
去linuxfans.org当它那个acroreader
chinapub得中文pdf都能看

方案2:
安装xpdf的中文字体包。默认这个是安装好的。
可以用下面的命令: rpm -qa | grep 'xpdf' 看看有没有下面的包
xpdf-chinese-traditional-2.01-8
xpdf-chinese-simplified-2.01-8
如果没有,参照下面的步骤:
1. 安装xpdf、xpdf-chinese-simplified这两个rpm包
2. 修改/usr/share/xpdf/chinese-simplified/add-to-xpdfrc, 把第1行的Adobe-G1
改成Adobe-GB1
3. 修改/usr/share/xpdf/chinese-simplified/add-to-xpdfrc.config,把第1行的
Adobe-G1改成Adobe-GB1,并将所有的/usr/local/share改成/usr/share
4. 将/usr/share/xpdf/chinese-simplified/add-to-xpdfrc.config中的内容添加
到/etc/xpdfrc的最后

方案3
在这个版里研究了好几天,一直不能打开我的中文pdf.后来有人说有的中文pdf能看,
有的则不能.于是灵机一动,跑到久违的W2K,打开Adobe Acrobat,把那些中文pdf逐个
另存为pdf文件(估计Adobe Acrobat在偷偷笑我白痴,呵呵).然后到Linux下就能看了.
看来原因可能和不支持GB18030有关. 另外,我用KGhostView看pdf dvi都比较慢,
但xpdf,acrobat reader都正常,不知道大家是不是这样.(我用的是Redhat9.0)


怎么让acroread在能够显示目录中的中文文件名?
就是装简体和繁体两个字体吧,呵呵
界面中文化的补丁好象没有?nbsp;呵呵


RH7.3中xpdf不能看中文pdf问题的解决 

在RH7.3下要看中文.pdf文件,除了要安装xpdf同时也要安装pdf的中文字体,
但RH7.3提供的xpdf-chinese-simplified字体安装/配置文件都有错误,
繁体xpdf-chinese-traditional也有同样的问题(比简体少一个).所以即使
装了也看不成.
问题之一是安装时没有进行自动配置,之二是配置文件有错误.字体安装在了
/usr/share/xpdf/chinese-simplified下,配置文件为其下的add-to-xpdfrc(.config)
按说明应当将配置文件内容加入/etc/xpdfrc或~/.xpdfrc中, 但打开配置文件
看看其内容就知道即使加进去也不会起作用, 错误有两个:
第一个错误是字体目录用的都是/usr/local/share/xpdf/chinese-simplified/
而实际安装目录是在/usr/share/xpdf/chinese-simplified,要么是安装包做错了
要么就是配置文件错了,还是改配置吧.
第二个错误是个录入错误,第一项目录中应当是GB1,少了一个1
改正后的配置为:
#----- begin Chinese Simplified support package (2002-jan-16)
cidToUnicode Adobe-GB1 /usr/share/xpdf/chinese-simplified/Adobe-GB1.cidToUnicode
unicodeMap ISO-2022-CN /usr/share/xpdf/chinese-simplified/ISO-2022-CN.unicodeMap
unicodeMap EUC-CN /usr/share/xpdf/chinese-simplified/EUC-CN.unicodeMap
cMapDir Adobe-GB1 /usr/share/xpdf/chinese-simplified/CMap
toUnicodeDir /usr/share/xpdf/chinese-simplified/CMap
displayCIDFontX Adobe-GB1 "-*-simsun-medium-r-normal-*-%s-*-*-*-*-*-gb2312.1980-0" ISO-2022-CN
#----- end Chinese Simplified support package

将其直接加到/etc/xpdfrc文件的后面即可, 最后一项是字体设置,根据系统中安装的字体自己选择吧,
我用的是从windows下弄过来的宋体. 这样配完后再用xpdf看中文的pdf加上漂漂的宋体, 比windows下
用acrobat的效果一点也不差!

 zhchhui 回复于:2003-07-24 11:08:35
五、gftp,xmms,mplayer,openoffice下的中文支持
     rh8下面xmms的playlist的中文显示问题 
给你一种更简单的方法,打开xmms
Ctrl+p->fonts把复选框选择中文支持上下两个都选
字体选择fangsongti和songti,在最后加上",fixed"(引号里面的),两个都加
这样就可以了,不过这只是个性设置,只对本用户有效,以其他用户登陆时
需自己再设置.(我没有加fixed,好像也可以)

另一个方法由smileliu提供,其实前面的步骤就是安装了一个新字体,后面和上面上的一样
xmms显示英文用的是ISO8859-1, 显示中文用的是gb2312.1980-0, 所以只要在
/usr/share/fonts/zh_CN/TrueType/fonts.dir中加上:
zysong.ttf -misc-ZYSong18030-medium-r-normal--0-0-0-0-c-0-gb2312.1980-0
然后退出X, 以root身份执行/etc/rc.d/init.d/xfs restart, 再进X, 启动xmms,
在选项中字体那一栏里选中"use fontsets"复选框和"Use X font"复选框, 同时将
playlist以及main windows的字体都设为:
-misc-zysong18030-medium-r-normal-*-*-120-*-*-c-*-*
就可以了.
如果你没有装zysong字体, 用别的字体的话照此办理就行了, 注意有的字体没有定义
ISO8859-1, 你还需要像添加gb2312.1980-0的定义那样添加它的定义.


gftp不能进入中文目录和下载中文文件 
是gtk2的问题,下载源码自己修改一下去掉gtk2的支持就行了。
我自己编译(rh7.2+gcc-3.2)的文件传到ftp.lib.pku.edu.cn了,包括修改好的src.rpm。
补充一下,gftp可以基于gtk2或者gtk1.2,用gtk1.2的话中文就没什么问题。
要使用gtk1.2,configure时加选项--disable-gtk20


如何使用mplayer播放.srt格式的中文字幕
For mplayer 0.9 you can do this:
1. ln -s /usr/share/simsun/simsun.ttf ~/.mplayer/subfont.ttf
2. mplayer -subcp cp936 ****.avi 
(OR you can add this option to ~/.mplayer/config: subcp = cp936)

by nightcat:
mplayer -sub subfile -font subfont.ttf -unicode 


mplayer怎么显示不了中文?
如果是对话框显示不了是gtk的字体没有配好,如果是播放的那个状态框
里面,是不可能显示中文的,因为那个其实是图片


OpenOffice1.0中文显示 
www.linuxforum.net上的讨论:
turbo中有个字体名叫song 
而openoffice的安装界面和程序界面都要使用song这个字体名 
随便给哪个中文字体起个song和kai的别名就行了 
界面字体可以工具/选项/视图 
调整显示百分比为110%就可以了

我试了一下,安装时字体怎么都不成功(可能是因为我没用truetye字体)
但安装后把simsun.ttf拷贝到oppenoffice的字体目录中,
再在菜单(T)->(O)中,选择第一个分支的倒数第二项,然后左侧选Interface User,
右侧选宋体,点第一个按钮即可。界面即成为pp的simsun了

 zhchhui 回复于:2003-07-24 11:09:34
六、如何实现英文环境(或英文菜单)而使用中文输入或显示
     Rh9中怎么设置才可以用中文输入而是英文菜单? 
RH9中语言选英文,但想输入中文,i18n如何修改?
redhat8.0英文界面+中文环境支持的方法
创建 ~/.i18n
LANGUAGE=en_US.UTF-8
LC_CTYPE=zh_CN.GB18030
应该就可以了

不过我的~/.i18n是这样的
LANG=zh_CN.GB18030
LANGUAGE=en_US.UTF-8
LC_CTYPE=zh_CN.GB18030
LC_TIME=en_US.UTF-8
因为不设LANG,似乎ctrl+space不能直接调出输入法,需要在每个程序里
点右键,设置Input Method为XIM(不知能不能自动设置?)
不设LC__TIME,右下角的时间显示还是有中文,而且在console下看时间的时候会出现乱码。

如果你用GNOME的话,上面这些就够了
如果你用KDE的话,理论上只要进控制中心修改界面语言为英文就可以了
但是rh9的KDE有bug,解决办法是rpm -e kde-i18n-Chinese

原理大概是这样的: gtk2程序是按`LANGUAGE' `LC_ALL' `LC_xxx' `LANG'的次序
来决定菜单的语言。

 Amymm 回复于:2003-07-24 11:40:38
楼主我的问题:在Rethat9.0英文版中访问2000系统中做的网页,中文不能显示? i18n是什麽?

 soway 回复于:2003-07-24 12:33:48
好文

 zhchhui 回复于:2003-07-24 12:49:59
i18n: 就是internationalization, 国际化,由于首字母"i"和末尾字母"n"间有18个字符,所以简称i18n. internationalization指为了使应用程序能适应不同的语言和地区间的变化而不作系统性的变化所采取的设计措施。

 osoftware 回复于:2003-07-24 13:44:32
mount -t vfat -o iocharset=cp936 /dev/hda1 /mnt/c
一直用来的

 好好先生 回复于:2003-07-24 14:07:31
不错!

 流氓无产者 回复于:2003-07-24 17:42:43
zhchhui 好人啦,太辛苦你了

 好好先生 回复于:2003-07-25 14:35:08
可是我用:mount -t ntfs -o codepage=936,iocharset=cp936 /dev/hda6 /mnt/ntfs 不能显示中文的文件名是何原因?英文的没有问题.

 zhchhui 回复于:2003-07-26 15:08:59
流氓无产者说:[quote:8d3fe88722]zhchhui 好人啦,太辛苦你了 [/quote:8d3fe88722]
团结奋进,振兴unix(linux)!
     好好先生说:[quote:8d3fe88722]可是我用:mount -t ntfs -o codepage=936,iocharset=cp936 /dev/hda6 /mnt/ntfs 不能显示中文的文件名是何原因?英文的没有问题[/quote:8d3fe88722]
        mount -t ntfs /dev/hda6 /mnt/ntfs -o iocharset=gb2312

 初学vb 回复于:2003-07-29 12:54:25
我想在rh9的console下显示中文,使用cce-0.36,按照README提示输入make install后无法安装,到现在console下还是无法显示中文!!请各位赐教!!

 tiansgx 回复于:2003-07-29 15:09:19
[quote:ccd36a7900="初学vb"]我想在rh9的console下显示中文,使用cce-0.36,按照README提示输入make install后无法安装,到现在console下还是无法显示中文!!请各位赐教!![/quote:ccd36a7900]     
可以用zhcon

 ohsnoopy 回复于:2004-03-10 18:09:07
[quote:bd7285d363="zhchhui"]三、smb中的中文显示
     rh8下smbclient显示网上邻居中文的问题
rh8带的smbclient似乎有点问题, 访问windows机器的时候没法显示中文目录和文件名.
我的解决办法是在/etc/samba/smb.conf的global配置部分加入如?..........[/quote:bd7285d363]

在/etc/samba/smb.conf的global配置部分加入如下两行:
client code page = 936(前面加#和不加都不行)
character set = 936(前面加#和不加都不行)
help me!

 sikanwang 回复于:2004-03-15 22:25:49
[quote:f176636ef4="ohsnoopy"]

在/etc/samba/smb.conf的global配置部分加入如下两行:
client code page = 936(前面加#和不加都不行)
character set = 936(前面加#和不加都不行)
help me![/quote:f176636ef4]

我的也是这个问题,请帮帮忙。谢谢!

 cysky 回复于:2004-03-26 21:22:12
里面的iocharset = cp936
应该是iocharset = gb2312

 firstcoolcat 回复于:2005-03-19 21:52:59
真是好人啊 谢谢你  永远支持  学习中

 周日游鱼 回复于:2005-08-23 08:40:12
一个新问题:
系统为RedHat Linux 9.0繁体(已安装简体及其它语言包)。
对于文本文件中的简体文字,用cat显示正常,但用vi时则显示为乱码,问题何在?

 周日游鱼 回复于:2005-08-26 17:09:18
再顶一顶,寻求高手之解决之道

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