2010年3月4日 星期四

Firefox/Chrome遇到flash方塊字

這個問題已經持續好幾個版本了,問題雖然知道是出在字型設定,但為何問題出在字型就不是我感興趣的部份。大致爬了一下大家的blog都提到了/etc/fonts/conf.d/49-sansserif.conf這個檔案。他是一個軟連結,來源是/etc/fonts/conf.avail/49-sansserif.conf。他原本是這樣:

  1. <?xml version="1.0"?>
  2. <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
  3. <fontconfig>
  4. <!--
  5.  If the font still has no generic name, add sans-serif
  6. -->
  7.     <match target="pattern">
  8.         <test qual="all" name="family" compare="not_eq">
  9.             <string>sans-serif</string>
  10.         </test>
  11.         <test qual="all" name="family" compare="not_eq">
  12.             <string>sans-serif</string>
  13.         </test>
  14.         <test qual="all" name="family" compare="not_eq">
  15.             <string>monospace</string>
  16.         </test>
  17.         <edit name="family" mode="append_last">
  18.             <string>sans-serif</string>
  19.         </edit>
  20.     </match>
  21. </fontconfig>

由於他只是一個軟連結,把他幹掉就可以正常顯示字型。但你如果希望讓flash使用系統其他字型,請繼續往下看。

我系統的預設字型是Sans,不過我也可以把他改成我們要的樣子。

sudo rm /etc/fonts/conf.d/49-sansserif.conf
接著,產生一個新的49-sansserif.conf檔案,把字型的部份用喜歡的字型取代,例如Mac的儷黑體:

  1. <?xml version="1.0"?>
  2. <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
  3. <fontconfig>
  4. <!--
  5.  If the font still has no generic name, add sans-serif
  6. -->
  7.     <match target="pattern">
  8.         <test qual="all" name="family" compare="not_eq">
  9.             <string>LiHei Pro</string>
  10.         </test>
  11.         <test qual="all" name="family" compare="not_eq">
  12.             <string>LiHei Pro</string>
  13.         </test>
  14.         <test qual="all" name="family" compare="not_eq">
  15.             <string>LiHei Pro</string>
  16.         </test>
  17.         <edit name="family" mode="append_last">
  18.             <string>LiHei Pro</string>
  19.         </edit>
  20.     </match>
  21. </fontconfig>
  22.  

重新啟動你的chrome/firefox,應該就可以看見正常的字體了!

參考來源:
FourDollars Blog
FireFox中文flash方塊字的問題

沒有留言: