分页: 1 / 2

寻求Ubuntu的中文粗体解决方案!

发表于 : 2005-04-09 10:13
oneleaf
为了进一步推动中文的发展,征询ubuntu中文粗体解决方案!

发表于 : 2005-04-09 10:42
id_sonic
啊 狂晕

发表于 : 2005-04-09 22:57
freeflying
用linuxsong的字体就可以很好了

最简单的办法

发表于 : 2005-04-09 23:29
slowfish
1 降级 libxft2 到 2.1.2-6firefly

加 source.list
deb http://debian.okey.net/debian-uo sid firefly java misc jrfonseca marillat rareware ustc

就用新立得包管理器 找到 libxft
菜单 -- 软件包 -- 强制版本 ------2.1.2-6firefly
升级完后
建议 菜单 -- 软件包 -- 锁定版本


2 修改/etc/font/ font.conf

代码: 全选

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- /etc/fonts/fonts.conf file to configure system font access -->
<fontconfig>

<!--
	DO NOT EDIT THIS FILE.
	IT WILL BE REPLACED WHEN FONTCONFIG IS UPDATED.
	LOCAL CHANGES BELONG IN 'local.conf'.

	The intent of this standard configuration file is to be adequate for
	most environments.  If you have a reasonably normal environment and
	have found problems with this configuration, they are probably
	things that others will also want fixed.  Please submit any
	problems to the fontconfig bugzilla system located at fontconfig.org

	Note that the normal 'make install' procedure for fontconfig is to
	replace any existing fonts.conf file with the new version.  Place
	any local customizations in local.conf which this file references.

	Keith Packard
-->

	<dir>/usr/share/fonts</dir>
	<dir>/usr/X11R6/lib/X11/fonts/Type1</dir> <dir>/usr/local/share/fonts</dir>
	<dir>~/.fonts</dir>

<!--
	<match target="font">
		<edit name="rgba" mode="assign"><const>rgb</const></edit>
	</match>
-->

<!--
  Accept deprecated 'mono' alias, replacing it with 'monospace'
-->
	<match target="pattern">
		<test qual="any" name="family">
			<string>mono</string>
		</test>
		<edit name="family" mode="assign">
			<string>monospace</string>
		</edit>
	</match>

<!--
  Accept alternate 'sans serif' spelling, replacing it with 'sans-serif'
-->
	<match target="pattern">
		<test qual="any" name="family">
			<string>sans serif</string>
		</test>
		<edit name="family" mode="assign">
			<string>sans-serif</string>
		</edit>
	</match>

<!--
  Accept deprecated 'sans' alias, replacing it with 'sans-serif'
-->
	<match target="pattern">
		<test qual="any" name="family">
			<string>sans</string>
		</test>
		<edit name="family" mode="assign">
			<string>sans-serif</string>
		</edit>
	</match>

<!--
  Mark common families with their generics so we'll get
  something reasonable
-->

<!--
  Serif faces
 -->
	<alias>
		<family>Bitstream Vera Serif</family>
		<family>AR PL New Sung</family>
		<family>Times</family>
		<family>Times New Roman</family>
		<family>Nimbus Roman No9 L</family>
		<family>Luxi Serif</family>
		<family>Kochi Mincho</family>
		<family>AR PL SungtiL GB</family>
		<family>AR PL Mingti2L Big5</family>
		<family>Baekmuk Batang</family>
		<family>FreeSerif</family>
		<default><family>serif</family></default>
	</alias>
<!--
  Sans-serif faces
 -->
	<alias>
		<family>Bitstream Vera Sans</family>
		<family>AR PL New Sung</family>
		<family>Helvetica</family>
		<family>Arial</family>
		<family>Verdana</family>
		<family>Nimbus Sans L</family>
		<family>Luxi Sans</family>
		<family>Kochi Gothic</family>
		<family>AR PL KaitiM GB</family>
		<family>AR PL KaitiM Big5</family>
		<family>Baekmuk Dotum</family>
		<family>SimSun</family>
		<family>FreeSans</family>
		<default><family>sans-serif</family></default>
	</alias>
<!--
  Monospace faces
 -->
 	<alias>
		<family>Bitstream Vera Sans Mono</family>
		<family>AR PL New Sung</family>
		<family>Courier</family>
		<family>Courier New</family>
		<family>Andale Mono</family>
		<family>Luxi Mono</family>
		<family>Nimbus Mono L</family>
		<family>NSimSun</family>
		<family>FreeMono</family>
		<default><family>monospace</family></default>
	</alias>
<!--
  If the font still has no generic name, add sans-serif
 -->
	<match target="pattern">
		<test qual="all" name="family" compare="not_eq">
			<string>sans-serif</string>
		</test>
		<test qual="all" name="family" compare="not_eq">
			<string>serif</string>
		</test>
		<test qual="all" name="family" compare="not_eq">
			<string>monospace</string>
		</test>
		<edit name="family" mode="append_last">
			<string>sans-serif</string>
		</edit>
	</match>
	
<!--
  Some Asian fonts misadvertise themselves as monospaced when
  in fact they are dual-spaced (half and full).  This makes
  FreeType very confused as it forces all widths to match.
  Undo this magic by disabling the width forcing code -->
	<match target="font">
		<test name="family"><string>GulimChe</string></test>
		<edit name="globaladvance"><bool>false</bool></edit>
	</match>
	
	<match target="font">
		<test name="family"><string>DotumChe</string></test>
		<edit name="globaladvance"><bool>false</bool></edit>
	</match>

	<match target="font">
		<test name="family"><string>BatangChe</string></test>
		<edit name="globaladvance"><bool>false</bool></edit>
	</match>

	<match target="font">
		<test name="family"><string>GungsuhChe</string></test>
		<edit name="globaladvance"><bool>false</bool></edit>
	</match>

<!-- 
	The Bitstream Vera fonts have GASP entries suggesting that hinting be
	disabled below 8 ppem, but FreeType ignores those, preferring to use
	the data found in the instructed hints.  The initial Vera release
	didn't include the right instructions in the 'prep' table. Fix this
	by disabling hinting manually at smaller sizes (< 8ppem)
 -->
	
	<match target="font">
		<test name="family">
			<string>Bitstream Vera Sans</string>
		</test>
		<test name="pixelsize" compare="less">
			<double>7.5</double>
		</test>
		<edit name="hinting">
			<bool>false</bool>
		</edit>
	</match>
	
	<match target="font">
		<test name="family">
			<string>Bitstream Vera Serif</string>
		</test>
		<test name="pixelsize" compare="less">
			<double>7.5</double>
		</test>
		<edit name="hinting">
			<bool>false</bool>
		</edit>
	</match>
	
	<match target="font">
		<test name="family">
			<string>Bitstream Vera Sans Mono</string>
		</test>
		<test name="pixelsize" compare="less">
			<double>7.5</double>
		</test>
		<edit name="hinting">
			<bool>false</bool>
		</edit>
	</match>
	
<!--
  Load local system customization file
-->
	<include ignore_missing="yes">local.conf</include>

<!--
  Load per-user customization file
-->
	<include ignore_missing="yes">~/.fonts.conf</include>

<!--
  Alias well known font names to available TrueType fonts
-->
	<alias>
		<family>Times</family>
		<accept><family>Times New Roman</family></accept>
	</alias>
	<alias>
		<family>Helvetica</family>
		<accept><family>Verdana</family></accept>
	</alias>
	<alias>
		<family>Arial</family>
		<accept><family>Verdana</family></accept>
	</alias>
	<alias>
		<family>Courier</family>
		<accept><family>Courier New</family></accept>
	</alias>

<!--
 Check user preference to avoid bitmap fonts and replace
 bitmap face names with equivalent scalable fonts
 -->

	<match target="pattern">
	        <test name="prefer_outline">
	                <bool>true</bool>
	        </test>
	        <test name="family">
	                <string>Helvetica</string>
	        </test>
	        <edit name="family" mode="prepend" binding="same">
	                <string>Arial</string>
	        </edit>
	</match>

	<match target="pattern">
	        <test name="prefer_outline">
	                <bool>true</bool>
	        </test>
	        <test name="family">
	                <string>Times</string>
	        </test>
	        <edit name="family" mode="prepend" binding="same">
	                <string>Times New Roman</string>
	        </edit>
	</match>
<!--
  Provide required aliases for standard names
-->
	<alias>
		<family>serif</family>
		<prefer>
			<family>Bitstream Vera Serif</family>
			<family>AR PL New Sung</family>
			<family>Times New Roman</family>
			<family>Nimbus Roman No9 L</family>
			<family>Luxi Serif</family>
			<family>Times</family>
			<family>Frank Ruehl</family>
			<family>Kochi Mincho</family>
			<family>AR PL SungtiL GB</family>
			<family>AR PL Mingti2L Big5</family>
			<family>Baekmuk Batang</family>
			<family>FreeSerif</family>
		</prefer>
	</alias>
	<alias>
		<family>sans-serif</family>
		<prefer>
			<family>Bitstream Vera Sans</family>
			<family>AR PL New Sung</family>
			<family>Verdana</family>
			<family>Nimbus Sans L</family>
			<family>Luxi Sans</family>
			<family>Arial</family>
			<family>Helvetica</family>
			<family>Nachlieli</family>
			<family>Kochi Gothic</family>
			<family>AR PL KaitiM GB</family>
			<family>AR PL KaitiM Big5</family>
			<family>Baekmuk Dotum</family>
			<family>SimSun</family>
			<family>FreeSans</family>
		</prefer>
	</alias>
	<alias>
		<family>monospace</family>
		<prefer>
			<family>Bitstream Vera Sans Mono</family>
			<family>AR PL New Sung</family>
			<family>Andale Mono</family>
			<family>Courier New</family>
			<family>Luxi Mono</family>
			<family>Nimbus Mono L</family>
			<family>Miriam Mono</family>
			<family>Kochi Gothic</family>
			<family>AR PL KaitiM GB</family>
			<family>Baekmuk Dotum</family>
			<family>FreeMono</family>
		</prefer>
	</alias>

<!-- 
 Artificial oblique for fonts without an italic or oblique version
 -->
 
	<match target="font">
		<!-- check to see if the font is roman -->
		<test name="slant">
			<const>roman</const>
		</test>
		<!-- check to see if the pattern requested non-roman -->
		<test target="pattern" name="slant" compare="not_eq">
			<const>roman</const>
		</test>
		<!-- multiply the matrix to slant the font -->
		<edit name="matrix" mode="assign">
			<times>
				<name>matrix</name>
				<matrix><double>1</double><double>0.2</double>
					<double>0</double><double>1</double>
				</matrix>
			</times>
		</edit>
		<!-- pretend the font is oblique now -->
		<edit name="slant" mode="assign">
			<const>oblique</const>
		</edit>
	</match>
<!-- 
 Add by firefly@firefly.idv.tw
 Artificial bold for fonts without a bold version.
 -->
	<match target="font">
		<!-- check to see if the pattern requested > "medium" -->
		<test target="pattern" name="weight" compare="more">
			<const>medium</const>
		</test>
		<!-- pretend the font is bold now -->
		<edit name="weight" mode="assign">
			<const>bold</const>
		</edit>
	</match>

<!--
  Add by firefly@firefly.idv.tw
  Disable "Global Advance" for all mono spacing fonts.
-->
        <match target="font">
		<test name="spacing" compare="eq">
			<const>mono</const>
		</test>
		<edit name="globaladvance" mode="assign">
			<bool>false</bool>
		</edit>
        </match>

<!--
  Add by firefly@firefly.idv.tw
  Enable "hinting & autohint" for all fonts.
-->
	<match target="font">
		<test name="family" compare="eq">
			<string>SimSun</string>"or"<string>MingLiu</string>"or"<string>Bitstream Cyberbit</string>"or"<string>AR PL KaitiM Big5</string>"or"<string>AR PL Mingti2L Big5</string>"or"<string>AR PL KaitiM GB</string>"or"<string>AR PL SungtiL GB</string>
		</test>
		<edit name="hinting" mode="assign">
			<bool>true</bool>
		</edit>
		<edit name="autohint" mode="assign">
			<bool>true</bool>
		</edit>
	</match>

<!--
  Add by firefly@firefly.idv.tw
  If you don't want to use emdebedbitmap first.
  you can set this "embed" with false.
	<match target="font">
		<edit name="embed" mode="assign">
			<bool>false</bool>
		</edit>
	</match>
-->
	<config>
<!--
  These are the default Unicode chars that are expected to be blank
  in fonts.  All other blank chars are assumed to be broken and
  won't appear in the resulting charsets
 -->
		<blank>
			<int>0x0020</int>	<!-- SPACE -->
			<int>0x00a0</int>	<!-- NO-BREAK SPACE -->
			<int>0x00ad</int>	<!-- SOFT HYPHEN -->
			<int>0x115f</int>	<!-- HANGUL CHOSEONG FILLER -->
			<int>0x1160</int>	<!-- HANGUL JUNGSEONG FILLER -->
			<int>0x1680</int>	<!-- OGHAM SPACE MARK -->
			<int>0x2000</int>	<!-- EN QUAD -->
			<int>0x2001</int>	<!-- EM QUAD -->
			<int>0x2002</int>	<!-- EN SPACE -->
			<int>0x2003</int>	<!-- EM SPACE -->
			<int>0x2004</int>	<!-- THREE-PER-EM SPACE -->
			<int>0x2005</int>	<!-- FOUR-PER-EM SPACE -->
			<int>0x2006</int>	<!-- SIX-PER-EM SPACE -->
			<int>0x2007</int>	<!-- FIGURE SPACE -->
			<int>0x2008</int>	<!-- PUNCTUATION SPACE -->
			<int>0x2009</int>	<!-- THIN SPACE -->
			<int>0x200a</int>	<!-- HAIR SPACE -->
			<int>0x200b</int>	<!-- ZERO WIDTH SPACE -->
			<int>0x200c</int>	<!-- ZERO WIDTH NON-JOINER -->
			<int>0x200d</int>	<!-- ZERO WIDTH JOINER -->
			<int>0x200e</int>	<!-- LEFT-TO-RIGHT MARK -->
			<int>0x200f</int>	<!-- RIGHT-TO-LEFT MARK -->
			<int>0x2028</int>	<!-- LINE SEPARATOR -->
			<int>0x2029</int>	<!-- PARAGRAPH SEPARATOR -->
			<int>0x202a</int>	<!-- LEFT-TO-RIGHT EMBEDDING -->
			<int>0x202b</int>	<!-- RIGHT-TO-LEFT EMBEDDING -->
			<int>0x202c</int>	<!-- POP DIRECTIONAL FORMATTING -->
			<int>0x202d</int>	<!-- LEFT-TO-RIGHT OVERRIDE -->
			<int>0x202e</int>	<!-- RIGHT-TO-LEFT OVERRIDE -->
			<int>0x202f</int>	<!-- NARROW NO-BREAK SPACE -->
			<int>0x205f</int>	<!-- MEDIUM MATHEMATICAL SPACE -->
			<int>0x2060</int>	<!-- WORD JOINER -->
			<int>0x2061</int>	<!-- FUNCTION APPLICATION -->
			<int>0x2062</int>	<!-- INVISIBLE TIMES -->
			<int>0x2063</int>	<!-- INVISIBLE SEPARATOR -->
			<int>0x206A</int>	<!-- INHIBIT SYMMETRIC SWAPPING -->
			<int>0x206B</int>	<!-- ACTIVATE SYMMETRIC SWAPPING -->
			<int>0x206C</int>	<!-- INHIBIT ARABIC FORM SHAPING -->
			<int>0x206D</int>	<!-- ACTIVATE ARABIC FORM SHAPING -->
			<int>0x206E</int>	<!-- NATIONAL DIGIT SHAPES -->
			<int>0x206F</int>	<!-- NOMINAL DIGIT SHAPES -->
			<int>0x3000</int>	<!-- IDEOGRAPHIC SPACE -->
			<int>0x3164</int>	<!-- HANGUL FILLER -->
			<int>0xfeff</int>	<!-- ZERO WIDTH NO-BREAK SPACE -->
			<int>0xffa0</int>	<!-- HALFWIDTH HANGUL FILLER -->
			<int>0xfff9</int>	<!-- INTERLINEAR ANNOTATION ANCHOR -->
			<int>0xfffa</int>	<!-- INTERLINEAR ANNOTATION SEPARATOR -->
			<int>0xfffb</int>	<!-- INTERLINEAR ANNOTATION TERMINATOR -->
		</blank>
<!--
  Rescan configuration every 30 seconds when FcFontSetList is called
 -->
		<rescan>
			<int>30</int>
		</rescan>
	</config>

</fontconfig>

发表于 : 2005-04-10 13:51
oneleaf
转:http://www.linuxsir.org/bbs/showthread.php?t=190017
作者:deerlux

我这种效果改起来比较简单,就是在/etc/fonts/local.conf里加入这么几句就可以了,当然前提是你的系统安装了方正粗宋的字体(搜索一下去下载一个吧)

代码: 全选

<match target="pattern">
            <test name="weight" compare="more">
               <const>medium</const>
            </test>
            <test name="family" compare="eq">
               <string>SimSun</string>
            </test>
            <edit name="family" mode="assign">
               <string>FZCuSong-B09S</string>
            </edit>
</match>
<match target="pattern">
            <test name="weight" compare="more">
               <const>medium</const>
            </test>
            <test name="family" compare="eq">
               <string>NSimSun</string>
            </test>
            <edit name="family" mode="assign">
               <string>FZCuSong-B09S</string>
            </edit>
</match>

发表于 : 2005-04-10 15:07
id_sonic
oneleaf 老大 你的那个粗体 看起来不是很好……

按照 slowfish 的方案粗体效果不错

发表于 : 2005-04-10 15:45
id_sonic
效果不错

发表于 : 2005-04-10 15:48
id_sonic
论坛

发表于 : 2005-04-14 13:07
aninfeel
我方正那些字体全部用上了就有了。

发表于 : 2005-04-15 23:01
gisworld
重新找回粗体

按照UBUNTU的方法进行中文字体的优化后,就失去了粗体。

在linuxsky下载的字体拷贝到/usr/share/fonts/truetype/目录,
运行sudo fc-cache -f
修改fons.conf文件:
sudu gedit /etc/fonts/fonts.conf
在相应的simsun字体前面加入一行:
<family>Vera Sans YuanTi</family>
同时,可把前面的
<family>Tahoma</family>中的字体改为其他的英文字体或者注释掉。
最后,在加入:

<match target="font">
<test name="family"><string>Vera Sans YuanTi</string></test>
<edit name="globaladvance"><bool>false</bool></edit>
</match>

<match target="font">
<test name="family"><string>Vera Sans YuanTi Mono</string></test>
<edit name="globaladvance"><bool>false</bool></edit>
</match>

<match target="font">
<edit name="antialias"><bool>true</bool></edit>
<edit name="hinting"><bool>false</bool></edit>
<edit name="autohint"><bool>false</bool></edit>
</match>

<match target="font">
<test name="pixelsize" compare="more_eq"><double>12</double></test>
<test name="pixelsize" compare="less_eq"><double>16</double></test>
<edit name="antialias"><bool>false</bool></edit>
<edit name="hinting"><bool>true</bool></edit>
<edit name="autohint"><bool>false</bool></edit>
</match>

发表于 : 2005-04-16 11:33
冰封尘
gisworld 写了:重新找回粗体

按照UBUNTU的方法进行中文字体的优化后,就失去了粗体。

在linuxsky下载的字体拷贝到/usr/share/fonts/truetype/目录,
运行sudo fc-cache -f
修改fons.conf文件:
sudu gedit /etc/fonts/fonts.conf
在相应的simsun字体前面加入一行:
<family>Vera Sans YuanTi</family>
同时,可把前面的
<family>Tahoma</family>中的字体改为其他的英文字体或者注释掉。
最后,在加入:

<match target="font">
<test name="family"><string>Vera Sans YuanTi</string></test>
<edit name="globaladvance"><bool>false</bool></edit>
</match>

<match target="font">
<test name="family"><string>Vera Sans YuanTi Mono</string></test>
<edit name="globaladvance"><bool>false</bool></edit>
</match>

<match target="font">
<edit name="antialias"><bool>true</bool></edit>
<edit name="hinting"><bool>false</bool></edit>
<edit name="autohint"><bool>false</bool></edit>
</match>

<match target="font">
<test name="pixelsize" compare="more_eq"><double>12</double></test>
<test name="pixelsize" compare="less_eq"><double>16</double></test>
<edit name="antialias"><bool>false</bool></edit>
<edit name="hinting"><bool>true</bool></edit>
<edit name="autohint"><bool>false</bool></edit>
</match>
楼在linuxsky 下的什么字体?

发表于 : 2005-04-17 11:53
gisworld

发表于 : 2005-04-17 18:03
hardychow
里面有8个字体,是不是都需要安装阿?

发表于 : 2005-04-21 22:35
jimmy3719
麻烦那个能把http://www.linuxsky.net/down/ftproot/incoming/ ... nti/字体打包一下,最好能APT安装。还有能写一个fons.conf。 :P :P

发表于 : 2005-04-22 8:17
冰封尘
jimmy3719 写了:麻烦那个能把http://www.linuxsky.net/down/ftproot/incoming/ ... nti/字体打包一下,最好能APT安装。还有能写一个fons.conf。 :P :P
这个主意好 不过 有的时候 自己还是要动一下手的