当前时区 GMT+8, 现在时间是 2008-7-5 12:31 游客: 注册 登录 仅登录论坛 | 搜索 帮助


标题: 英文間距太大的解決方法
firefly
版主
Rank: 7Rank: 7Rank: 7


UID 11266
精华 5
积分 478
帖子 181
阅读权限 255
注册 2003-1-6
来自 Taiwan
状态 离线
发表于 2003-5-22 09:24  资料  短消息  加为好友 
英文間距太大的解決方法

首先,我先解釋為什麼會有英文間距過大的問題:

TrueType 字體分成兩種,一種是可變字距,也就是每個字符寬度不一樣,比如 "x" 與 "i",這兩個字符就不等寬,它是在每個字符中紀錄該字符的寬度,大多數的 TrueType 都是這種格式。

另一種就是固定字距。也就是每個字符寬度都一樣,這樣顯示或打印時,會有對齊效果,比較美觀,在英語環境中,不會有任何問題,聰明的您,知道問題所在了吧 :-)

沒錯!CJK 的等寬字體,包含『半寬英數字符』與『全寬 CJK 字符』,字型引擎會把全寬字寬度套用在半寬字上頭,造成半寬字看起來間距太大,這就是問題所在。

這裡提供一個方法,讓字型引擎忽略 CJK 字體指定的寬度,您可以將以下這段內容,複製到 /etc/fonts/fonts.conf 或是 /etc/fonts/local.conf 中:
[code:1]
<match target="font">
        <test target="pattern" name="lang" compare="contains">
                <string>zh-tw</string>
                <string>zh-cn</string>
                <string>ja</string>
                <string>ko</string>
        </test>
        <test name="spacing" compare="eq">
                <const>mono</const>
        </test>
        <edit name="globaladvance" mode="assign">
                <bool>false</bool>
        </edit>
</match>
[/code:1]
以上那段的意思是:當遇到 CJK 字型,又是等寬時,忽略系統內定寬度,這樣,當系統使用 CJK 等寬字時,便不會再有間距過大的問題。

顶部
ftyh
中级会员
Rank: 3Rank: 3


UID 976
精华 0
积分 695
帖子 305
阅读权限 30
注册 2002-7-6
来自 China
状态 离线
发表于 2003-6-4 17:17  资料  主页 短消息  加为好友  添加 ftyh 为MSN好友 通过MSN和 ftyh 交谈 QQ
但是这样在运行OO,还有Kate的时候,英文间距还是大。
OO的菜单英文,Kate的命令行。英文字体间距都是比较大。





我是Linux公社里的一只小小小菜鸟。我喜欢Linux,但是我是小小小菜鸟。
顶部
rexforce
新手上路
Rank: 1


UID 9846
精华 0
积分 8
帖子 3
阅读权限 10
注册 2002-12-28
来自 Taiwan.gif
状态 离线
发表于 2003-6-4 22:20  资料  短消息  加为好友 
OO用的是自己的fontconfig...
Kate裡的命令行是調用Konsole,按右鍵修改字型為"自訂",在更改為非Fixed的字型即可...

顶部
lanjian98
新手上路
Rank: 1


UID 41152
精华 0
积分 3
帖子 1
阅读权限 10
注册 2003-5-30
来自 China.gif
状态 离线
发表于 2003-6-5 12:45  资料  短消息  加为好友 
可变字距有什么好的?为什么会加进这个功能阿?

顶部
limux
新手上路
Rank: 1


UID 5858
精华 0
积分 10
帖子 4
阅读权限 10
注册 2002-11-23
来自 China.gif
状态 离线
发表于 2003-8-10 07:19  资料  短消息  加为好友 
[quote:333df4b8fd="lanjian98"]可变字距有什么好的?为什么会加进这个功能阿?[/quote]

嘿嘿,原因是大部分人认为可变的字距使文本更好看。为什么是这样土人我颗不动,这个你可能需要去问一问学美术或者学心里美学的人。

顶部
hahaghost
新手上路
Rank: 1


UID 54125
精华 0
积分 51
帖子 21
阅读权限 10
注册 2003-8-3
来自 China
状态 离线
发表于 2003-8-12 03:00  资料  主页 短消息  加为好友  添加 hahaghost 为MSN好友 通过MSN和 hahaghost 交谈
谢谢,谢谢,太谢谢了,找了几天了,终于在这里找到了,终端里的英语子母那么大,看着郁闷死了,嘿嘿,按照楼主斑竹的 方法成功解决!!!!!!!!!!!
愿公社更快的 发展,让我们这些小鸟成长的更快!@!!





Gentooer.....
顶部
Apollo
新手上路
Rank: 1



UID 4653
精华 0
积分 13
帖子 5
阅读权限 10
注册 2002-11-4
来自 China.gfi
状态 离线
发表于 2003-8-21 03:56  资料  短消息  加为好友 
奇怪,我的改了之后并没有出现任何变化,相反到是改变fonts.scale中的"c"为"p"可以解决部分问题.

其实现在也就剩下一个rxvt终端的字体没有解决,主要就是英文字体间距太大,只有在xtt下才会正常,freetype下一直搞不定,都有点灰心想回头用xtt了.

顶部
8425438
新手上路
Rank: 1


UID 44721
精华 0
积分 71
帖子 29
阅读权限 10
注册 2003-6-16
来自 China
状态 离线
发表于 2003-9-6 09:41  资料  短消息  加为好友 
可是我用了楼主的方法之后,字体变得模糊不清了,只得又忍痛删掉
这是为什么呢?

顶部
Aroutine
注册会员
Rank: 2


UID 71644
精华 0
积分 103
帖子 41
阅读权限 20
注册 2003-10-22
来自 China HuBei
状态 离线
发表于 2003-10-30 22:25  资料  短消息  加为好友 
怎么我用了之后没有一点的改变,还是和原来的一样,看看我这里的字体还是这样的宽!
g m p l a y e r这个是在终端里头的字的间距!





善始善终
顶部
Kingo
高级会员
Rank: 4


UID 3036
精华 7
积分 1083
帖子 419
阅读权限 50
注册 2002-10-4
来自 Australia
状态 离线
发表于 2003-10-30 23:21  资料  短消息  加为好友 
[code:1]<match target="font">
                <test target="pattern" name="lang" compare="contains">
                        <string>zh-tw</string>
                        <string>zh-cn</string>
                        <string>ja</string>
                        <string>ko</string>
                </test>
                <edit name="spacing">
                        <const>proportional</const>
                </edit>
                <edit name="globaladvance">
                <bool>false</bool>
                </edit>
        </match>[/code:1]

顶部
sleepdragon
注册会员
Rank: 2


UID 17199
精华 0
积分 100
帖子 40
阅读权限 20
注册 2003-2-17
来自 China.gif
状态 离线
发表于 2003-12-18 20:37  资料  短消息  加为好友 
我用楼主的代码没有解决问题
Kingo的代码能解决问题

顶部
BestMarine
银牌会员
Rank: 6Rank: 6



UID 53561
精华 0
积分 2061
帖子 881
阅读权限 70
注册 2003-7-31
来自 伟大的国度
状态 离线
发表于 2004-1-26 17:44  资料  短消息  加为好友  添加 BestMarine 为MSN好友 通过MSN和 BestMarine 交谈 QQ ICQ 状态
两种方法都不行         





回到从前 让我静静
顶部
vivo
注册会员
Rank: 2


UID 90491
精华 0
积分 168
帖子 67
阅读权限 20
注册 2004-1-21
来自 China
状态 离线
发表于 2004-1-29 14:38  资料  主页 短消息  加为好友  添加 vivo 为MSN好友 通过MSN和 vivo 交谈 QQ ICQ 状态
我试过了,可以!谢谢先!
不过还有一个问题就是大部分已经解决了,可是还有一部分字体是很宽的,
具体是在mozilla1.6的界面上有问题!





mozilla里面的菜单上的字体怎么设置阿?





抽刀断水水不流,举杯消愁愁不愁。 落下与孤鹜齐飞,秋水共vivo一色!
顶部
hq2000pro
注册会员
Rank: 2


UID 18042
精华 0
积分 324
帖子 136
阅读权限 20
注册 2003-2-23
来自 China
状态 离线
发表于 2004-2-16 14:14  资料  短消息  加为好友 
果然解决了问题

顶部
翔羽
高级会员
Rank: 4


UID 48012
精华 4
积分 1514
帖子 1028
阅读权限 50
注册 2003-7-2
来自 China
状态 离线
发表于 2004-2-17 00:58  资料  短消息  加为好友 
[quote:54965e5734="vivo"]我试过了,可以!谢谢先!
不过还有一个问题就是大部分已经解决了,可是还有一部分字体是很宽的,
具体是在mozilla1.6的界面上有问题!

mozilla里面的菜单上的字体怎么设置阿?[/quote]

[code:1]
<match target="font">
                <edit name="spacing">
                        <const>proportional</const>
                </edit>
                <edit name="globaladvance">
                <bool>false</bool>
                </edit>
        </match>
[/code:1]





工作繁忙中
顶部
 


Powered by Discuz! 5.5.0  © 2001-2007 Comsenz Inc.
清除 Cookies - 联系我们 - 中国Linux公社 - WAP