A bit about Marlett
by Michael S. Kaplan, published on 2006/01/26 05:01 -05:00, original URI: http://blogs.msdn.com/b/michkap/archive/2006/01/26/517738.aspx
Did you know that some of the graphics used in Windows are not actually graphics but are instead represented as symbols in a font?
It is true. And that font's name is Marlett. From its own description, as found in the TrueType Font Properties Extension tool:
Looking at it in Character Map, you may see a few familiar UI elements from your Windows experience:
And although the file sometimes tries to hide itself, it is always there helping Windows have the right look and feel....
I find this font to be pretty cool, myself. Maybe we could get the Invisible Jet added! :-)
This post brought to you by "ቚ" (U+125a, a.k.a. ETHIOPIC SYLLABLE QHWI)
# Yaytay on 26 Jan 2006 9:57 AM:
And for a good laugh, delete that font.
I assume that's not as easy as it used to be, but I've seen a couple of machines (probably Win9X) where it wasn't present.
# Mihai on 26 Jan 2006 12:56 PM:
The best way to see that those UI elements are not bitmaps is to play a bit with DrawFrameControl.
Although DrawFrameControl is not the right thing to use anymore (because if not theme-aware), it allows you to see that all the elements are vector based. Cool!
# Ben Cooke on 26 Jan 2006 1:27 PM:
I've never seen a machine with Marlett missing completely, but back in the Win95 days I often found that when the system started to run out of memory the text rendering code would go haywire and start rendering everything in the system font, causing the Marlett symbols to be replaced by their letter-ish counterparts.
I've often wondered if Marlett is considered to be a "public interface" for the purpose of third-party developers producing custom interfaces? Does Microsoft guarantee that it'll always be there and will always contain the same stuff at the same codepoints, or is this just a big, overly-visible implementation detail?
Also, does the Windows XP theme engine still use these symbols when it's drawing themed controls?
# Dean Harding on 26 Jan 2006 5:31 PM:
I'd always known those elements were done via a font, but I'd never really thought to look for the actual file :)
I have a question though, when I've got ClearType turned on, the Marlett font doesn't seem to get processed. This is both in the UI and when I just look at it in Character map, even though all the other fonts are being smoothed. Seems like it would have been cool if Marlett was smoothed, because you'd automatically get anti-aliased radio buttons and stuff :) But maybe it's ignored on purpose or something? Is that something any font author can do (say "don't smooth my font") or is it special for Marlett?
# Michael S. Kaplan on 26 Jan 2006 10:13 PM:
Hi Dean --
It appears that ClearType is not applied to this font. There are some people looking into the issue now....
Another bug found through blogging? :-)
# The SZ on 27 Jan 2006 6:10 AM:
From where can I get your font property sheet extension? If I look at the properties of a ttf font (inside and outside of the font folder), I have only the 3 default pages (general/security/summary).
You have a lot of font specific pages.
# Michael S. Kaplan on 27 Jan 2006 8:22 AM:
Hi SZ --
Click on the link I provided above. :-)
# Michael Dunn_ on 28 Jan 2006 3:21 AM:
Ben> Ah, the win 9x days... That was a sure sign that you were using up a 64K heap somewhere inside GDI - everything started rendering in that ugly bold "system font".
go to newer or older post, or back to index or month or day