当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 8 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : [分享]我理解的字体美化中粗体的几个入门概念。(关于商业字库,修改过)
帖子发表于 : 2005-12-11 13:44 

注册: 2005-12-07 21:42
帖子: 47
送出感谢: 0 次
接收感谢: 0 次
我理解的字体美化中粗体的几个入门概念。
flytod@2005.12.11

以前只是关心linux中文化,对美化只是在装了ubuntu
5.10后才接触的概念。周五根据论坛上的帖子试验了几次,效果出来了,但思路比较乱。周日仔细的从网上理解一下,学习了很
多东西。下面是自己的体会和理解,希望能对初次美化的人有所帮助,如有不对,请拍。

一般说的美化,着重的粗体显示,尤其在浏览器中的。

=======================================================
首先说说字体的概念,linux里主要使用的是TrueType字体,这是一种矢量字体。屏幕上总是显示一个个点的,这就有个矢量->
点阵的转换。

在小字体下,这种效果一般都不是很好。所以为了显示效果,一般TrueType字库(尤其是中文的)都内嵌了几个小标号时的点阵
字体,比如,9,10.12.14。而在这么小的字体下面,字体间的区别就很少了。

字库也有开源和商业之分。在美化中,最方便的就是直接copy使用windows自带的simsun字体。

ttc和ttf的区别:
在一些文档中常看到simsun.ttf,simsun.ttf。其实windoow下的宋体,新宋体都是中易公司版权的字库。simsun.ttc里含有两
个字体 SimSun和NSimSun(宋体,新宋),所以文件名用extension ttc(TrueType Collection)。
(注:http://www.linuxforum.net/forum/printthread.php?Cat=&Board=chinese&main=280415)

这点可以在window的字体管理器中看出,打开simsun.ttc,首先显示的是宋体,上面的右箭头表示可以继续浏览下一种字体,点
下去,看到就是新宋体。而同目录下的黑,楷等就没有。而这些的后缀名就是ttf。

http://www.magiclinux.org/people/kanker/tools/fonts/ 也可下载宋粗,还有宋斜体,宋粗斜的。

最开始,在linux上安装了simsunblod后,感觉还可以,但后来总觉得不对,
1,中字号的宋粗比window看到的要粗一些,而且锯齿比较严重
2,标点有问题,本应在下面的跑到上面去了,本应在上面的跑到下面来了,上下颠倒。
3,有些字在宋粗时显示不出来,不能确定字库有缺字,还是原有字库已经损坏。
4,英文没有变粗,(此点在加装了英文字体的粗体后解决)

周末在家中研究的时候,在xp上装了宋粗,终于发现了问题。下面的截图(winxp+IE,word2003)可以看到安装了普通宋体变粗,
和宋粗体的区别。左侧是只装了普宋后的粗体显示情况,右侧是装了宋粗后的情况。

《截图见附件》

winxp上安装了那个simsunbold.ttf后,看到的粗体效果和ubuntu上装上后看到的效果是一样的。这时候才发现是说,以前window
上的粗体效果是系统利用算法自己实现的,只能算是笔画加粗。比真正的粗体要细一些。而真正的粗体真的很粗。

利用simsunblod.ttf字库美化在:http://forum.ubuntu.org.cn/viewtopic.php?t=3993可以找到详细步骤

还有修改过的VeraSansYuanTi字库,http://forum.ubuntu.org.cn/viewtopic.php?t=513有VeraSansYuanTi 美化的详细步骤。
simsun,VeraSansYuanTi等字库毕竟使用了商业字库,更pure的开源使用者提供了开源的字库(含粗体)如文泉驿字库。


=======================================================

美化中经常碰到的概念freetype,fontconfig,Xft的关系。
在http://www.linuxfans.org/nuke/modules.php?name=Forums&file=viewtopic&p=4532999&highlight=#4532999
已经描述的很清楚了:

《《《以下是引用《《《
一、包功能说明
freetype: 主要是画字用的,从字体文件中提取字体图像
fontconfig: 是用于字体选择控制的,实现像windows一样的字体名称-大小的选
取方法,早期字体选取要这样:
-misc-simsun-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0
libXft: 按照fontconfig中要求选择的字体,然后用freetype取字体的图像,然
后画到屏幕上

二、firefly补丁说明
firefly的补丁,主要是用作模拟粗体。
libXft补丁: 比如simsun没有粗体,于是firefly的libXft补丁,从freetype中
取出字体的图象,按线条加粗,画到屏幕上这就变成粗体了。
fontconfig补丁: fontconfig是按字体文件的信息,来列举字体给用户选择的,
又比如simsun字体因为没有粗体,所以即算libXft中模拟了粗体,fontconfig
也不知道,firefly的fontconfig补丁就作了这个判断。(当然fontconfig还作了
其他优化比如按CJK编码来现实字体的名称,咖非码控制等,这些都是firefly的
早期补丁中所作的事,那时候还没有在fontconfig中做fake粗体的功能,于是qt
和pango还必须打补丁由他们自己来判断是否模拟粗体,现在已经不要了。)
freetype补丁 对字形做了一些处理,主要也是为粗体实现服务的。

值得一题的是,firefly还在openoffice粗体方面有贡献,但因为他的补丁被广泛
的滥用,而他本人又似乎没有得到相应回报和尊重(主要得不到官方的认同,某
些人甚至对他嗤之以鼻),好像有逐渐淡出之感。

上面的字体补丁firefly已经没有对新版做维护了。

《《《以上是引用《《《

更详细,全面的,请看:http://www.linuxidea.org/index.php?title=%E4%B8%AD%E6%96%87%E5%8C%96
我也还在学习中。另外有个Cairo的概念,可以google一下,也还在理解中。

就我的理解,这些补丁实现的作用就是类似window中的粗体效果,只是笔画变粗。实际的实施步骤和全面补丁见xufan106的帖子
:http://forum.ubuntu.org.cn/viewtopic.php?t=3676给出来详细的步骤。上周末没有成功,发了帖子后,xufan106发了一个
to菜菜菜鸟版的,我喜欢。初接触粗体的同学应该也喜欢。

=======================================================

在maniac的帖子(http://forum.ubuntu.org.cn/viewtopic.php?t=4945)里说了:
《《《以下是引用《《《
Linux下中文粗体的支持,就我所知,应该有一下几种
1.使用内嵌粗体的字体(比如圆体)
2.使用独立的粗体字体(simsun-bold.ttf)
3.使用firefly补丁过的libXft (http://forum.ubuntu.org.cn/viewtopic.php?t=942)
4.使用补丁过的freetype( http://forum.ubuntu.org.cn/viewtopic.php?t=1039)
《《《以上是引用《《《

其实归纳起来,就是两种:使用粗体字体,系统打补丁。

=======================================================

打补丁实现的粗体方式,适合在Firefox和部分软件中使用,但在比较老软件下,应该是不行的,另外,在OpenOffice下面,这
种方法也不能实现粗体,需要oo打补丁。

linux公社的高质量字体研究版
http://www.linuxfans.org/nuke/modules.p ... forum&f=22有很多不错的文章。

就个人在xp中安装了宋粗的字库过程,感觉粗体字库不如打补丁好看,
粗体字库太粗了;)在windows下面看普宋粗习惯了。周一再去把安装的粗体字库卸掉,试验一下打补丁。再弄不好也不想弄了
,太费时间了,linux拿来用就好了。希望ubuntu下个版本能较好的实现中文美化和粗体,或则国内官方的源能自己补上。


附件:
文件注释: 截图的效果对比
chuti.png
chuti.png [ 131.76 KiB | 被浏览 1667 次 ]



最后由 flytod 编辑于 2005-12-12 14:53,总共编辑了 1 次
页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2005-12-11 15:18 
头像

注册: 2005-06-11 14:03
帖子: 6226
地址: 不明真相的群众
送出感谢: 0 次
接收感谢: 0 次
不错,总结的真好.看来我要多看几遍,好好学习一下.


_________________
我的blog,关于技术,软件,linux,vim <---- 所有博客均被河蟹.


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2005-12-11 22:25 

注册: 2005-05-02 12:27
帖子: 68
送出感谢: 0 次
接收感谢: 0 次
嗯。。。。总结写的好。。。
不过关于图片。。 :twisted: 打击一下:粗体很难看。如果我没看错是simsun-bold.ttf文件的粗体,,就是修改过的粗体。。。 :lol: :lol: :lol:


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2005-12-11 23:47 

注册: 2005-10-20 4:15
帖子: 92
送出感谢: 0 次
接收感谢: 0 次
VeraSansYuanTi可不是开源的,方正的圆体加bitstream vera sans


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2005-12-12 1:25 
头像

注册: 2005-05-15 3:09
帖子: 427
送出感谢: 0 次
接收感谢: 0 次
图片中左边的不知道是怎么搞的,但右边的一定是用粗体的字体文件来实现的。


_________________
琴声如我


页首
 用户资料  
 
6 楼 
 文章标题 :
帖子发表于 : 2005-12-12 12:59 

注册: 2005-12-02 0:59
帖子: 111
送出感谢: 0 次
接收感谢: 0 次
hehe,刚在linuxfans上看完
不开源的字体自己用用就好,别到处给人发


页首
 用户资料  
 
7 楼 
 文章标题 : 左侧就是普通的xp系统的情况。右侧的粗体是比较难看,所以现在不用了。
帖子发表于 : 2005-12-12 14:56 

注册: 2005-12-07 21:42
帖子: 47
送出感谢: 0 次
接收感谢: 0 次
GOVO 写道:
图片中左边的不知道是怎么搞的,但右边的一定是用粗体的字体文件来实现的。


页首
 用户资料  
 
8 楼 
 文章标题 :
帖子发表于 : 2005-12-14 18:46 

注册: 2005-07-31 23:13
帖子: 16
送出感谢: 0 次
接收感谢: 0 次
强文,总结得太好了


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 8 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 3 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译