I had a similar problem with Japanese fonts. (PhantomJS 1.9.1, Redhat on Amazon EC2)
English characters showed up fine, but Japanese characters were rendered as boxes.
How I fixed it:
1) Installed the (Japanese) IPA fonts (Mincho and Gothic) using yum install
.
(Use yum list
to check the exact package names.)
2) The IPA .ttf
files were installed to:
/usr/share/fonts/IPA-Gothic/
/usr/share/fonts/IPA-Mincho/
3) Move the two downloaded .ttf
files to this directory: (Create it)
4) Make a backup of /etc/fonts/fonts.conf
5) Edit the original /etc/fonts/fonts.conf
and fill it with this:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<dir>/usr/share/fonts/ipa</dir>
<cachedir>/var/cache/fontconfig</cachedir>
<cachedir>~/.fontconfig</cachedir>
<alias>
<family>serif</family>
<prefer>
<family>IPAP Mincho</family>
</prefer>
</alias>
<alias>
<family>sans serif</family>
<prefer>
<family>IPAP Gothic</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>IPA Gothic</family>
</prefer>
</alias>
</fontconfig>
6) Refresh your font cache with fc-cache -vf
7) Enjoy your new working fonts.
Gotchas:
If you're getting no characters (blank space), your font cache is probably out of date.
Try fc-cache -vf
to regenerate it.
There's a fix for Japanese/Chinese/Korean characters in the 1.9.1 release. Not sure if it makes a difference, but probably worth upgrading from 1.9.0.