2012-02-03 10:08


  • character
  • fonts
  • linux
  • php
  • encoding

I'm programming a custom bit of hardware (a media box) running a custom build of Linux (tangox #2 PREEMPT Tue Dec 20 14:00:43 UTC 2011 mips GNU/Linux) and need to find out what fonts are available on this system.

Globally, my task is to quiz a web service for some content and display it on the system (i.e. on the TV screen), but not all characters I receive from the "outside world" can be rendered via the font used by the media box. Fonts on the media box are outside of my control, as is the firmware - I have to get on with what I've got via the supported PHP API.

Question 1: How would I list all fonts available on the box, along with their supported character ranges? (We suspect that the font being used does not render some of the chars we need - so my issues can't be solved by just making sure everything is UTF8.)

I've tried:

xlsfonts (command not found)
/etc/X11/ (dir does not exist)
fc-list (command not found)

...none of the above helped.

I've located some fonts in:

ls -al /firmware/fonts

-rw-r--r--    1 root     root        42643 Dec 31  1969 verdana-108-subset.aaf
-rw-r--r--    1 root     root       236340 Dec 31  1969 verdana-25.aaf
-rw-r--r--    1 root     root       426097 Dec 31  1969 verdana-34.aaf
-rw-r--r--    1 root     root       696763 Dec 31  1969 verdana-44.aaf
-rw-r--r--    1 root     root       834851 Dec 31  1969 verdana-48.aaf
-rw-r--r--    1 root     root         1539 Dec 31  1969 webdings-30.aaf
-rw-r--r--    1 root     root         5517 Dec 31  1969 webdings-38.aaf
-rw-r--r--    1 root     root         4509 Dec 31  1969 webdings-49.aaf

But I want to be sure that there are no other fonts hidden somewhere around the system and used by the firmware.

Question 2: Once I know the character range I can display in, is there a fool-proof way to strip out everything outside that range (I can do that), but simplify some of the fancy characters (e.g. accented e) into their English counter-parts? And last but not least - does anyone know of an existing PHP library that would do most of this for me?

P.S. Sorry if this question is a bit too n00bish - I'm not a Linux guru and don't have an intimate understanding of fonts/encodings.

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享