红联Linux门户
Linux帮助
当前位置: 红联Linux门户 > Debian

今天堕落了一把,装了小盗盗字体!(微软雅黑++,内含安装方法)

发布时间:2009-04-07 23:18:00来源:红联作者:刘冲
[i=s] 本帖最后由 刘冲 于 2009-4-10 11:58 编辑 [/i]

坚持了一段时间,还是忍不住装几个好看的字体。
看了网上几个帖子,写的五花八门,自己琢磨了一番,好像很简单,现在贴出来让大家帮忙鉴别下。这里我是安装在debian上,其他发行版方法一样。

[color=Blue]先说下,好像很长,但是都是废话,不愿意看的话,直接
复制字体到/usr/share/fonts,不想弄乱目录的话可以自己建立个/usr/share/fonts/myfonts复制字体进来。[/color]
然后切换进来运行mkfontscale;mkfontdir;fc-cache -fv就行了。

这个引用自9楼。
引用:
最简单的就是把TTC,TTF字体直接放到~/.fonts,系统自动认到。非常好,不用那么麻烦。一般我的做法是在/usr下建立一个字体目录,然后ln -s 到相应的用户的目录下去,快捷高效。
kelvinwu_2008 发表于 2009-4-8 10:44


根据下面回复的,好像直接复制相应字体到相应目录就行了,不用运行什么命令,字体目录一般是/usr/share/fonts或者~/.fonts

下面是废话,有兴趣的看看。


1、准备要安装的字体
我就是去windows下,复制了windows/fonts里面的字体,然后去网上下载了微软雅黑,下载了vs的编程等宽字体Consolas,以及一些其他字体,放好(这些字体文件是后缀为.ttf或者.ttc的那些文件;假设放在~/myfonts,用户名username,按照默认主目录在/home下)准备开始安装。

2、复制字体文件并设置权限
为了不弄乱目录,我建立了自己的安装目录。
切换到root用户,su -
然后执行
cd /usr/share/fonts
(这个目录放置字体,凡是放在这个目录的字体,就可以检测到)
执行
mkdir myfonts
cp -r /home/username/myfonts ./myfonts
修改字体权限,使root以外的用户可以使用这些字体。
chmod 755 myfonts -R(这个大可不必,一般下载的文件都默认普通用户有读权利的,特别是从fat32复制过来的)

3、安装字体
cd fset
下面三个命令大家在别的帖子上肯定见过,我就是直接抄过来的,没有去理解是什么意思,看过文泉驿上写的。是这样:
#############################
#############################
由于该字体采用了压缩的pcf字体格式,很多用户反映浏览器在使用wqy字体时会出现CPU负载过高、渲染速度较慢的问题。用户如果希望提高显示速度,[请将字体文件解压后使用],具体命令如下(请将/path/to/wqy/font/替换为wenquanyi_*.pcf.gz字体文件所在的真实目录):
cd /path/to/wqy/font/
sudo gunzip wenquanyi*pcf.gz
sudo rm fonts.dir fonts.scale fonts.cache*
sudo mkfontdir .
sudo cp fonts.dir fonts.scale
sudo fc-cache -fv
注意:Debian sid中的xfonts-wqy已经采用了没有压缩的pcf字体格式,不会出现上述的渲染速度问题。用户无须手动解压缩。
#############################
#############################
mkfontscale
mkfontdir
fc-cache -fv
如果是在普通用户下,每个命令前面加上sudo(当然,要设置好sudo权限)
或者用这三个(我同样也没有在仔细研究)
su -c 'mkfontscale'
su -c 'mkfontdir'
su -c 'fc-cache -fv'

好了,现在大功告成!
如果有不正常的地方,重启一下就好了。

运行fc-cache -fv的时候,我发现机器自动检测了/usr/share/fonts下的字体文件并设置好了。

备注:
man mkfontscale
mkfontscale - create an index of scalable font files for X

man mkfontdir
mkfontdir - create an index of X font files in a directory

man fc-cache -fv
fc-cache - build font information cache files
-f --force
Force re-generation of apparently up-to-date cache files, over-
riding the timestamp checking.

-v --verbose
Display status information while busy.
文章评论

共有 16 条评论

  1. aspo 于 2011-12-11 12:31:19发表:

    上图看看效果吗

  2. Haore 于 2009-04-09 12:48:09发表:

    黑黑用在LINUX下很好

  3. 刘冲 于 2009-04-09 09:31:36发表:

    引用:
    13# 刘冲
    我的Fedora为何双击一下字体就休安装,没有楼主说的那么麻烦。
    但用雅黑字体还是不好看。
    水龙月 发表于 2009-4-9 01:33
    没有试过,但是把字体保存在一个特定的目录总比乱放好的多。可能这就是linux的灵活吧。

  4. 水龙月 于 2009-04-09 01:33:40发表:

    [i=s] 本帖最后由 水龙月 于 2009-4-9 16:51 编辑 [/i]

    13# 刘冲
    我的Fedora为何双击一下字体就安装上了,没有楼主说的那么麻烦。
    但用雅黑字体还是不好看。

  5. 刘冲 于 2009-04-08 12:00:47发表:

    [i=s] 本帖最后由 刘冲 于 2009-4-8 12:16 编辑 [/i]

    我找到了次像素平滑设置了,在桌面点右键,选更改桌面背景,里面有个选项是字体,就有次像素平滑选项,还有微调,但是对浏览器效果不大。
    我的简报宋比litkt的差不少,我的黑一块,白一块的。次像素平滑效果不如最佳对比好,次像素平滑会有点杂色的。

  6. litkt 于 2009-04-08 11:45:00发表:

    [i=s] 本帖最后由 litkt 于 2009-4-8 11:55 编辑 [/i]

    字体变色是次像素平滑设错了吧。
    在我的debian上系统自动设好了,我也不知道在哪里设。
    我用的是icewm。
    redhat 9.0里的中易18030宋体移植到debian下显示发虚,文鼎宋体就很好。楷体显示发虚,打印出来要比宋体舒服。

  7. 水龙月 于 2009-04-08 11:26:29发表:

    我用的是Fedora 10,为何我用微软雅黑字体模糊呢:

    但用文泉驿正黑没事。

  8. 刘冲 于 2009-04-08 11:18:31发表:

    7# litkt
    文鼎给的两套开源字体,在fedora10上比debian要舒服,啥什么原因?
    字体平滑我还没有找到在哪里。

  9. kelvinwu_2008 于 2009-04-08 10:44:58发表:

    最简单的就是把TTC,TTF字体直接放到~/.fonts,系统自动认到。非常好,不用那么麻烦。一般我的做法是在/usr下建立一个字体目录,然后ln -s 到相应的用户的目录下去,快捷高效。

  10. 刘冲 于 2009-04-08 00:56:32发表:

    引用:
    总觉得黑体没用,显示宋体,打印楷体对眼睛是最舒服的。文鼎给的两套开源字体不是胡给的。
    litkt 发表于 2009-4-8 00:53
    不知道哪里设置的不对,我的文鼎的宋体跟楷体总是有点变色,看着不是很清晰。

  11. litkt 于 2009-04-08 00:53:50发表:

    总觉得黑体没用,显示宋体,打印楷体对眼睛是最舒服的。文鼎给的两套开源字体不是胡给的。

  12. 刘冲 于 2009-04-08 00:14:09发表:

    引用:

    赞同
    LZ似乎把一个很简单的问题折腾得很复杂了~
    个人感觉,LZ这样的方法作为学术探讨还是不错的,但实际应用时就反受其累了~
    大宝 发表于 2009-4-8 00:07
    谢谢指教,已做出相应更改。:0wmjh(1

  13. 大宝 于 2009-04-08 00:07:49发表:

    引用:
    复制到/usr/local/share/fonts就行
    相思爱文 发表于 2009-4-7 23:51

    赞同
    LZ似乎把一个很简单的问题折腾得很复杂了~
    个人感觉,LZ这样的方法作为学术探讨还是不错的,但实际应用时就反受其累了~

  14. verytow 于 2009-04-08 00:03:13发表:

    雅黑的确好看

  15. 刘冲 于 2009-04-07 23:56:08发表:

    我找到了如下一篇文章:

    FreeBSD环境下KDE桌面系统配置与使用
    作者:佚名 出处:网络整理 更新时间:2007-08-07 责任编辑:


    -

    概要:以KDE桌面环境为例,试析Fontconfig的运作机制

    一、Fontconfig在桌面系统中的作用

    KDE是类Unix系统中建立在X基础上的一个主流桌面环境,对用户来说,它提供了良好的图形界面和语言切换机制,用以满足来自不同国家、使用不同语言的用户的使用需求,这种机制简称“国际化”。主要包括界面文字的翻译,多种语言字体的管理、显示的支持以及输入法等等。这其中系统层面字体的管理和显示的支持直接关系到文字的显示效果,因此显得尤为重要。在KDE系统中,字体管理、显示的支持采用的是如下框架。

    Fontconfig(字体配置)-------->Freetype(字库操作)-------------->xft(字体渲染)

    Fontconfig : 管理系统安装的字体,根据应用程序的字体配置,match(匹配)一种字体,填充match字体的各种属性。

    Freetype : 以Fontconfig匹配到的字体为参数,根据应用程序需要读取相应的字库。

    xft: 对需要显示的语言文字进行渲染

    二、X系统中字体的管理

    作为KDE底层支持的X,它使用字体服务器(xfs)对安装的字体进行管理,也称之为“核心字库管理系统”,基本配置原理是xfs使用可维护的字体安装目录和fonts.dir文件对字体进行操作。

    X为之提供了一些工具来完成管理操作。诸如 :

    mkfontdir,mkfontscale 用来生成安装字体的 fonts.dir和fonts.scale。

    xlsfonts 用来显示安装的字体。

    xfd 用来显示指定字库的信息。

    xset 用来管理字体服务器。

    对于FreeBSD,在安装了xorg 7.2并且X server运行的情况下,字体安装目录可用 xset q来查询

    shell>xset q

    Font Path:
    /usr/local/lib/X11/fonts/misc/,/usr/local/lib/X11/fonts/TTF/,
    /usr/local/lib/X11/fonts/OTF,/usr/local/lib/X11/fonts/Type1/,
    /usr/local/lib/X11/fonts/100dpi/,/usr/local/lib/X11/fonts/75dpi/,
    /home/dbhrscom/.fonts

    上面显示的是X系统安装时定义的字体目录。在这些目录中,都有利用mkfontdir生成的fonts.dir(对于true type 字体需要使用mkfontscale 生成 fonts.scale,然后拷贝到fonts.dir中)。fonts.dir是个文本文件,里面保存的是所在目录的字体信息。关于这些信息的具体含义,可以参见X的man手册,这里不再赘述。

    如果准备把一个字体安装到X系统中,并且使用Xfs进行管理,大致需要以下过程:

    1、建立一个目录,并且把字库文件拷贝到这个目录下

    2、运行mkfontdir或者mkfontscale,生成安装字库的fonts.dir文件。

    3、运行“mkfontdir -e 系统编码目录” 生成encodings.dir 文件(可选)

    4、运行 “xset +fp 字体目录” 或者 “xset fp+ 字体目录”,把字体目录添加到xfs的字体目录列表中。需要注意的是当字体目录没有fonts.dir这个文件时,这种添加字体目录操作会失败。

    5、运行“xset rehash”进行更新,确保新添加的字体可用。

    注意:作为一种X系统的约定,安装字体最方便的做法是把字体文件拷贝到“$HOME/.fonts/“目录下,这样省去了添加字体目录的操作,而且xset +fp 是针对当前会话有效,如果准备系统启动时有效,还要修改相关的配置文件。

    三、Fontconfig的字体管理

    简单的说Fontconfig是使用字体缓存的机制来进行字体管理的。这个Xfs有所不同。fontconfig提供fc-cache来建立这个缓存。


    shell >fc-cache -v

    /usr/local/lib/X11/fonts: skipping, 0 fonts, 12 dirs
    /usr/local/lib/X11/fonts/100dpi: skipping, 398 fonts, 0 dirs
    /usr/local/lib/X11/fonts/75dpi: skipping, 398 fonts, 0 dirs
    /usr/local/lib/X11/fonts/Fonts: skipping, 4 fonts, 0 dirs
    /usr/local/lib/X11/fonts/OTF: skipping, 23 fonts, 0 dirs
    /usr/local/lib/X11/fonts/TTF: skipping, 13 fonts, 0 dirs
    /usr/local/lib/X11/fonts/Type1: skipping, 29 fonts, 0 dirs
    /usr/local/lib/X11/fonts/bitstream-vera: skipping, 10 fonts, 0 dirs
    /usr/local/lib/X11/fonts/cyrillic: skipping, 0 fonts, 0 dirs
    /usr/local/lib/X11/fonts/encodings: skipping, 0 fonts, 1 dirs
    /usr/local/lib/X11/fonts/encodings/large: skipping, 0 fonts, 0 dirs
    /usr/local/lib/X11/fonts/local: skipping, 0 fonts, 0 dirs
    /usr/local/lib/X11/fonts/misc: skipping, 55 fonts, 0 dirs
    /usr/local/lib/X11/fonts/util: skipping, 0 fonts, 0 dirs
    /home/dbhrscom/.fonts: skipping, 0 fonts, 0 dirs
    /var/db/fontconfig: not cleaning unwritable cache directory
    /home/dbhrscom/.fontconfig: cleaning cache directory
    fc-cache: succeeded

    fc-cache的运行原理是扫描fontconfig的配置文件中定义的字体目录,然后利用扫描的结果生成系统字体缓存。在这个fc-cache -v的运行结果中可以看到,它所扫描的路径已经涵盖了xfs所管理的系统字体路径。但这并不表示fontconfig和xfs的继承关系,fontconfig扫描这些目录,完全是因为在配置文件fonts.conf中有这样的定义!




    /usr/local/lib/X11/fonts

    ~/.fonts



    /var/db/fontconfig
    ~/.fontconfig

    fc-cache所作的扫描都是基于以上的定义。

    这个配置文件在fontconfig最新版本中,默认放在下面的目录中

    /usr/local/etc/fonts/

    而生成的字体缓存按照系统和当前用户,分别存放到

    /var/db/fontconfig
    ~/.fontconfig
    这两个目录中,诸如下面所看到的

    0c3f6abf7a2705d2e8570f7f70e9302d-x86.cache-2
    1e99991e6eeb0b3e05d4185c886f4b19-x86.cache-2
    2550ddc31d0b62d94bc27b0fea358aba-x86.cache-2
    55cbb48b13195d29d336fd465f155e7b-x86.cache-2
    75ff5e8ddb5aa19e5f229f72d89c73db-x86.cache-2

    .cache-2 就是fc-cache的运行记号,fontconfig通过这个缓存来管理系统安装的字体,也因为这种机制在系统中安装字体变得非常简单,只要把字体文件放到fonts.conf定义的目录中,然后运行一下fc-cache。

    甚至fc-cache一下也不需要,因为在fonts.conf中定义了刷新时间:



    30


    由此看出,fontconfig和xfs相比,fontconfig提供了更加灵活的字体管理机制,目前系统中保持xfs和fontconfig并行工作的理由,只能是为必须使用xfs机制的程序提供一种支援。而作为KDE,它使用的就是fontconfig进行字体管理。举例来说,KDE的控制中心有个“字体安装”模块,通过分析可知它进行字体安装的原理就是自定义一个安装路径,放到fontconfig的配置文件中,然后把字体拷贝到自定义的目录。

  16. 相思爱文 于 2009-04-07 23:51:50发表:

    [i=s] 本帖最后由 相思爱文 于 2009-4-7 23:53 编辑 [/i]

    复制到/usr/local/share/fonts就行