阅读:4686回复:16
能否实现汉字用某特定字体,E文用某特定字体?
不安装别的拓展. 就通过改userChrome.css的方法.
我想汉字都用"DFPheimediun-UN" E文全部都用宋体 谢过 |
|
|
1楼#
发布于:2009-10-29 12:20
不可能吧?很多网页都没有指定文字的语言(Word 生成的网页除外),所以浏览器无从判断一个字符究竟是何种语言的,也就只能够按“先到先得”原则显示。
例如如果设定如下: {font-family: Arial, "DFPheimediun-UN" !important;} 那么浏览器会优先用“Arial”显示,遇到“Arial”中没有的字符(也就是除罗马字母外的字符)时才用中黑體显示。 所以你要用宋体来显示英文的话,就要填“宋体”到上面“Arial”的位置,那么宋体中支持的字符也会优先用宋体显示,也就是大多数中文字也变成宋体了。 解决方法要么把宋体中的英文部分剥离出来成一个新字体放在上面“Arial”的位置,要么用一种相似的英文字体取代放在上面“Arial”的位置。 |
|
|
2楼#
发布于:2009-10-29 12:20
在字体设置里把西方和简体中文里的字体设置为想要的,再取消勾选“允许页面使用。。”。
试了下几个网站都可以正确显示我选择的中英文。 |
|
3楼#
发布于:2009-10-29 12:20
我就是这么设置的啊....但是没有用....
|
|
|
4楼#
发布于:2009-10-29 12:20
你要弄明白至少Windows的字体选择顺序,不幸的是它没有Linux那么个性化。
咱只说浏览器,只说Firefox,一般来说Firefox要显示多语言、多字符集的网页,首先要判断这个网页是什么语言——假设是中文(夹杂着一些英文、数字),并假设你的Firefox设定中关于简体中文的设定是无衬线字体,且是Tahoma。那么要显示这句话: 我的另1辆car也是保10洁 英文和数字(1,car,10)将用Tahoma显示,但是中文呢,注意,Tahoma里面没有中文字符,那么Firefox(Firefox知道“我的另”等字符是中文)将向系统询问:我找不到的字符在哪个字体中找?这就是字体Fallback技术,也称Fontlink技术,我已经提到过了。 在注册表中找到: 一看Tahoma的键值你就会明白,Tahoma被链接到了SimSun上面。也就是说你需要动一动注册表,例如把Tahoma这个键值里面,Simsun.ttc的前面加上你的DFPheimediun-UN。 但是这是有点麻烦并且有很多细节要注意的地方,并且需要反复重启才能看到效果。 还有就是你的要求很难实现,因为如果英文用宋体显示,Firefox会发现宋体中有也中文字符,那它根本不会启动Fallback程序。所以你不能用宋体的英文,而且宋体的英文太难看了,你怎么会喜欢?! Tagged_by_kmc : 字体, font link |
|
|
5楼#
发布于:2009-10-29 12:20
|
|
|
6楼#
发布于:2009-10-29 12:20
宋体的英文部分也不是等宽,等宽的是“新宋体”,即便如此,好像也只是把本来不等宽的字符都调整成等宽的。你推荐的那几个才是王道。
|
|
|
7楼#
发布于:2009-10-29 12:20
我用的是xp替换宋体(就相当于微软雅黑...)
|
|
|
8楼#
发布于:2009-10-29 12:20
我想那样主要是因为DFPHEIMEDIUM-UN的英文是不等宽的..都挤在一起了..我的意思就是说英文不用那个的 只要是等宽(像微软雅黑)的都可以...
到底应该怎么设置呢? 修改 \\\Registry\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink 会不会改掉系统字体 就是说文件夹名字等等? |
|
|
9楼#
发布于:2009-10-29 12:20
雅黑的英文是Segoe,怎么会是等宽的?你这个雅黑也是修改过的吧?
所以你应该把英文部分设置成Courier New或者Lucida Console,然后在注册表中添加一个Lucida Console的Multi String值,里面写你DFPHEIMEDIUM-UN的字体名,例如DFPHEIMEDIUM-UN.ttf 上面别试了,我记起来:Windows下面无法超越宋体的干预,要是fontlink可以方便地转链接到任意中文字体,也就不会有人搞替换宋体了。 |
|
|
10楼#
发布于:2009-10-29 12:20
是的 我的这个雅黑是改过的....
这么说还是没有办法罗?,,,,,,, |
|
|
11楼#
发布于:2009-10-29 12:20
在 userChrome.css (对应界面的样式)和 userContent.css (对应网页的样式) 中加入如下代码:
*{font-family: Consolas, "DFPheimediun-UN" !important;} 这样就可以了。 当然“Consolas”可以改成“Courier New”或“Lucida Console”,随你喜欢。 kmc 想多了,楼主只是想 Firefox 内显示自己想要的字体吧,这个可跟 Windows 的字体设置无关哦——除了标题栏。 |
|
|
12楼#
发布于:2009-10-29 12:20
会跟在工具-选项里的设置冲突吗? 是不是有那个了选项里就不用管了?..
---------------------------没问题了----------------- 选的*{font-family:aurulent sans, "DFPHeiMedium-UN" !important;} 看起来蛮不错!!谢谢大家哦! |
|
|
13楼#
发布于:2009-10-29 12:20
hzhbest:在 userChrome.css (对应界面的样式)和 userContent.css (对应网页的样式) 中加入如下代码:*{font-family: Consolas, "DFPheimediun-UN" !important;} 原来Firefox的CSS还有这样的字体选择顺序,谢谢了。 另外这个CSS的好处可以针对域名,但是能不能像Firefox字体选项中那样,针对网页语言呢?我希望简体和繁体的中文字体用不同的。 Tagged_by_kmc : font select fallback |
|
|
14楼#
发布于:2009-10-29 12:20
另外这个CSS的好处可以针对域名,但是能不能像Firefox字体选项中那样,针对网页语言呢?我希望简体和繁体的中文字体用不同的。 /* 全局字体 */ *{font-family: Arial, STXiHei !important;} :lang(en), :lang(en) *{font-family: "Times New Roman" !important;} :lang(zh-TW), :lang(zh-TW) *{font-family: "LiHei Pro" !important;} 其他语言我连怎么搜出其网页都不清楚(例外的下述),所以只列了上面两个,经测试成功,示例网页: 繁体中文的:http://www.tda.org.tw/ 示例网页只是通过 Google 随便搜出来的,不代表任何观点和含义。 例外的是日语,我用“:lang(jp)”没法让任何日文网页显示我要的字体,难道是其他代码? 要注意的是,语言为“Unicode”的网页或网页容器均会使用默认设置,也就是上面代码中第二行的设定;没这行的话则是优先使用跟系统语言相对应的语言下指定的字体,例如简体中文系统就用设置中“简体中文”下选用的字体。但 Firefox 也提供了这样一个选项来给你选择 Unicode 下应把网页“当成”什么语言处理: 不过也仍然只是个自定义优先级而已,浏览器自己不能判断 Unicode 下一个中文字例如“三”字究竟是简体的还是繁体的还是日文的。 |
|
|
上一页
下一页