As I'm working through an SL3/SL4 application, and starting to work with fonts, I'm finding a lack of documentation and best practices on font strategies. For example:
- Are there common fallback fonts for
the supported font set (Arial, Comic
Sans MS, etc.)? Is there a set of recommendations on fallback fonts between Windows and Macintosh systems?
- Are there Silverlight-supported
fonts that will (almost always) be
on an end-user system, or like 99.5%
of the time, like "Times New Roman"
or "Verdana", including Macintosh?
Are there any sites that list this
kind of information?
- Are there recommendations for
accounting for Moonlight (Linux)
views of SL apps and the fonts that
are/aren't deployed with Linux
systems?
- Is there a way to determine, in XAML
or code-behind, if an end-user has a
supported font on their system? I'd
like this to run upon entry and then
change the XAML as a result of
findings to support the right font
or allow an embedded one to load.
- In the documentation for supported
fonts, it lists a bunch of fonts
that "Silverlight text elements can
use the following Latin fonts if
available on the local computer.".
Does this mean that if I use a font
that is not in this list, such as
"Cooper Black", and an end-user
does have this font on their system, they will still need to
download the font as embedded in my
application?
Any links or pointers that can lead to at least some of the questions above answered would be very appreciated.
Ok, here we go. These should get you closer to where you want to be:
- This is the same as CSS - you'll need to account for 'font stacks'. This is one of the best pages I've seen on the subject: Guide to CSS Font Stacks: Techniques and Resources
- This link is from November 2007 but it still has a great listing: Complete Guide to Pre-Installed Fonts in Linux, Mac, and Windows
- The link in #2 is the same - it covers Linux.
- Not sure about this one. Sorry :-(
- I believe that is correct, Silverlight only looks for fonts on the end user system that it will natively support. Otherwise, it will need to download the font.