Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Unicode support in Web standard fonts

I need to decide whether to render geometric symbols in a web GUI (e.g. arrows and triangles for buttons, menus, etc.) as Unicode symbols (MUCH easier and color-independent) or GIF/PNG files (lots of hassle I would like to avoid).

However, I have seen clients that have trouble displaying even advanced punctuation symbols declared as unicode characters (Example).

Does anybody know from which version on, OSs / Service Packs / Applications ship with Unicode versions of the standard fonts? There is, for example, Microsoft's Arial unicode that ships with Office since 1999, however I do not have office installed and still my Arial has at least some of the Unicode range.

Also, what is the situation with Mac OS and Linux?

Could somebody point me towards some comprehensive resources on this - reports, lists, overviews?

like image 201
Pekka Avatar asked Nov 22 '09 11:11

Pekka


People also ask

What is Unicode Standard font?

A Unicode font is a computer font that maps glyphs to code points defined in the Unicode Standard. The vast majority of modern computer fonts use Unicode mappings, even those fonts which only include glyphs for a single writing system, or even only support the basic Latin alphabet.

Do all browsers support Unicode?

No browser supports all of Unicode, or is required to do so. The specifications do not require that all characters, or any specific subset thereof, will be displayed properly.

What is Unicode font for example?

A Unicode font is a font that covers a large portion of the Unicode character set to support multiple written languages. For example, Arial Unicode MS and GNU Unifont are considered to be Unicode fonts.

Can I use Unicode in HTML?

You can enter any Unicode character in an HTML file by taking its decimal numeric character reference and adding an ampersand and a hash at the front and a semi-colon at the end, for example — should display as an em dash (—).


3 Answers

There's not really such a thing as a “Unicode version” of a font(*). “Arial Unicode” is a misleading name: it's not materially different to normal “Arial”, it just has some more characters in it. It does not contain usable glyphs for every single one of the tens of thousands of characters defined so far, and indeed there is no one OS standard font that does.

The significant question is merely whether the characters you want to use have glyphs in the default fonts of commonly-deployed operating systems. You need to look to look at font support for particular characters you wish to use on an individual basis.

The character U+0360 Combining Double Tilde you mentioned is not really ‘advanced punctuation’, it's an curious and rarely-used diacritical mark for phonetics work. So it's not really surprising that font support for it is poor. On the other hand, Stack Overflow can get away with using U+25CF Black Circle (●) because lots of fonts have it. Some of the other characters from the Geometric Shapes block such as U+25B2 Black Up-pointing Triangle (▲) are also pretty common.

fileformat.info has a list of common fonts that support each character, so you can check there to get a feel of how widely supported a symbol is, and whether the default OS fonts you recognise are present, before using it as a replacement for an image. For example U+25CF is in many fonts, but U+0360 isn't that well-supported: none of the default Windows install fonts are there, and the ‘Libertine’ font renders it badly wrong.

(*: OK, there is sort of such a thing as a Unicode font, in that a font's internal character lookup tables may be denominated in Unicode or some other character set. However this makes no practical difference as the application will always be addressing it as Unicode; the OS will do the conversion on lookup transparently.)

like image 76
bobince Avatar answered Oct 05 '22 03:10

bobince


This question may be a duplicate of Unicode and fonts where I posted a list of unicode font links:

http://en.wikipedia.org/wiki/Category%3AFree%5Fsoftware%5FUnicode%5Ftypefaces

http://en.wikipedia.org/wiki/Unicode%5Ftypefaces

http://unifoundry.com/unifont.html

http://www.fileformat.info/info/unicode/font/index.htm

http://www.alanwood.net/unicode/fontsbyrange.html

http://www.alanwood.net/unicode/fonts.html

http://www.unifont.org/fontguide/

http://www.wazu.jp/index.html

However, I am not sure how the Unicode standard defines how to render a stand-alone COMBINING DOUBLE character, as it is supposed to combine other characters.

like image 32
devio Avatar answered Oct 05 '22 02:10

devio


Some random observations:

  • On OS X the Unicode support is perfect, at least for your needs.
  • On Windows the situation seems to depend on the browser. I don’t use many arcane characters, but the few I do (mostly punctuation) seem to display just fine in Firefox. The only problem is in Internet Explorer, as usual.
  • If you have some control over your clients you could distribute some good free fonts?
  • Even web fonts could work.
  • One drawback to Unicode charactes is that they are often quite ugly. Too big, too small, have wrong position, etc.
like image 33
zoul Avatar answered Oct 05 '22 04:10

zoul