QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3220|回复: 17

[PATCH] CJK 字体下划线位置纠正。

[复制链接]
发表于 2005-10-13 21:18:30 | 显示全部楼层 |阅读模式
补丁:
http://www.magiclinux.org/people ... rline-position.diff
效果图:


请大家测试,看看有没有什么负面影响。
发表于 2005-10-13 21:35:58 | 显示全部楼层
看起来不错,不过我认为最好能把下划线的粗细也搞定。是不是还要freetype配合?
回复

使用道具 举报

 楼主| 发表于 2005-10-13 21:37:28 | 显示全部楼层
粗细是由字体提供的
回复

使用道具 举报

发表于 2005-10-13 21:43:34 | 显示全部楼层
所以我才问是不是要freetype配合。按理说embolden以后,weight等参数应该是变了的,相当于返回了一个新字体。
回复

使用道具 举报

 楼主| 发表于 2005-10-13 21:46:26 | 显示全部楼层
这种情况处理起来比较麻烦。。。
不过实现还是可能的。。。
回复

使用道具 举报

 楼主| 发表于 2005-10-13 21:49:32 | 显示全部楼层
只拿到 ft 的 face 然后检查不是是粗体, 如果不是并且 pango 的字体描述为粗体的话,就可以给下划线的
大小加粗:)
回复

使用道具 举报

发表于 2005-10-13 21:51:47 | 显示全部楼层
其实现在这样就很好了。

weight的变化值其实是应该由上层(比如pango)指定的,比如我要加到标准粗体(200)或者更粗(400)。然后借此来调整embolden的浓度。现在freetype的下一个版本是2.2的libfreetype7,可以不考虑向后兼容性,所以添加这么个参数感觉还可以。
回复

使用道具 举报

 楼主| 发表于 2005-10-13 21:58:05 | 显示全部楼层
现在这个还是没有办法,因为 pango 自己并不渲染字体, 这些都是在 libXft/cairo 内部完成了。
如果要改就大家一起,而显然这将改变这些库的 api..., 你说这个是不是动作太大点了。。
回复

使用道具 举报

发表于 2005-10-13 22:00:18 | 显示全部楼层
对于libfreetype7来说,这是个美好的suggestion。
回复

使用道具 举报

 楼主| 发表于 2005-10-13 22:11:05 | 显示全部楼层
愿望是美好的,现实是残酷的
回复

使用道具 举报

发表于 2005-10-13 23:44:02 | 显示全部楼层
我打了。 pango 1.9.1
回复

使用道具 举报

发表于 2005-10-14 00:12:02 | 显示全部楼层
1.10.1

也不行。字体 文泉驿 0.6 :neutral:
回复

使用道具 举报

 楼主| 发表于 2005-10-14 06:37:35 | 显示全部楼层
yangh 什么效果?
freetype 的版本?
回复

使用道具 举报

发表于 2005-10-14 09:51:13 | 显示全部楼层
改了个ebuild就成,效果很好。
glc停了虽可惜,让上游接受更多中文补丁才更有远见
回复

使用道具 举报

 楼主| 发表于 2005-10-14 19:51:59 | 显示全部楼层
重要更新:
以前的补丁会造成 gaim 收到 URL 时崩溃,请更新。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-22 04:56 , Processed in 0.073992 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表