Why was there a font just for drawing symbols on buttons?

Henke37 wonders why the Marlett font was introduced. Why use a font for drawing symbols on window buttons?

Using a font was a convenient way to have scalable graphics.

It’s not like Windows could’ve used VML or SVG since they hadn’t been invented yet. EMFs would have been overkill as well. Fonts were very convenient because the technology to render scalable fonts already existed and was well-established. It’s always good to build on something that has been proven, and TrueType scalable font technology proved itself very nicely in Windows 3.1. TrueType has the added benefit of supporting hinting, allowing tweaks to the glyph outlines to be made for particular pixel sizes. (A feature not available in most vector drawing languages, but also a feature very important when rendering at small font sizes.)

Comments (19)
  1. Rick C says:

    Are you going to mark questions in Suggestion Box 4 as answered with links back (forward?) to the answering post, like you did with SB3?

  2. ulric says:

    wow. I was absolutely not aware of that font. I could have used it for my custom ui

  3. Tommy Carlier says:

    Another advantage is that it doesn't have predefined colors: you can render it in any color you want (makes theming very easy).

    Interestingly, a new hype is using and designing web-fonts containing icons to be used in the UI of web-apps: css-tricks.com/…/IconFont

  4. nbevans says:

    The various Wingdings and Webdings fonts are also little hidden gems, plenty of useful glyphs in them.

  5. Joshua says:

    Facinating. I wondered about that long ago but had more or less forgotten about it.

  6. Jack Mathews says:

    Whoever thought of using the font renderer for those elements should be given a medal.  Brilliant decision, and a huge time savings for a number of my projects.

  7. Scott says:

    In my mind, the more interesting thing was that Windows made it a real font, instead of just using the Truetype renderer to render arbitrary binary data.

  8. Anonymous Coward says:

    Scott, I think it was done that way because it can be done completely with pre-existing infrastructure. You don't need to implement new entry-points into the Truetype renderer.

  9. steveg says:

    Marlett also makes it easier to develop a custom non-client area (title bar). Documentation benefits, too.

  10. AC says:

    Any insight on where the name "Marlett" stems from?

  11. Joel says:

    Huh, TIL. That could come in handy some day…

  12. Falcon says:

    I watched the following clip just an hour or two before reading this post!

    (WARNING: Coarse language)


  13. AKX says:

    A (not all that) humorous side effect of this was that when Windowses of yore ran out of GDI resources, widget symbols started getting drawn in the System font instead.

    That also usually meant a reboot was required shortly after.

  14. BAA says:

    The "-lett" of Marlett comes from designer Virginia Howlett. I forget the "Mar" but I believe it was a co-creator.

    Related: the "-ana" of "Verdana" is for Virginia's daughter, Ana.

  15. Thomas Thomassen says:

    Hacking the Marlett font was fun. :) Ah the days of early windows customization… *sigh*

  16. Chris says:

    What was funny was occasionally I'd cause my system to run out of resources when I screwed up my Windows API stuff, and then the min/max/close buttons would suddenly turn into numbers in MS Sans Serif

  17. Scott: I suspect it's a code re-use thing, as well as good old KISS. If it needs to walk like a duck, quack like a duck and taste good with orange sauce, why create a special-purpose modified chicken? In terms of implementation, using a genuine font is surely the easiest all round: the UI people can use regular font-design tools to create it, they can print it out to discuss and annotate. Then for documentation purposes – you can use the actual font easily, instead of trying to improvise something and reinvent the wheel.

    Being a genuine font doesn't cause any problems I can see, besides the tiny risk of someone being confused by a non-text font (which already exists anyway, with Wingdings, Symbol etc) – so why make changes you don't need?

  18. Gabe says:

    jas88: Since when do UI people use "regular font-design tools"? Regular UI people use vector or bitmap design tools (like Illustrator or Photoshop), so those would have been better formats for them. Odds are the UI people started with bitmaps and then gave them to the font people to convert into a font only once they were done designing them.

    Of course it makes perfect sense from the implementation standpoint, but not from the standpoint of a UI person.

  19. gordy says:

    probably also helped with the user manual

Comments are closed.