Hello DirectWrite. We’ve been waiting.
(Update with an example.)
I was excited to see this post from Sriram about DirectWrite today. I’m also glad to see that he’ll be PM’ing the DirectWrite effort. He’s a former WPF guy, now on the Windows 7 team—a good guy to make sure that DirectWrite (a Windows7 API) gets well represented in WPF and (please!) Silverlight.
At this point, I think I would take better text support over any other feature in Silverlight or WPF. Yup. You guys can have blend modes, effects, 3D, and everything else I have asked for (or even hinted about) if it means I get awesome text.
The problem is that I start my designs in Photoshop and, frankly, Photoshop has a great text engine. By the time I get to production, I’m just about always disappointed. To my eye, WPF text rendering doesn’t even come close and Silverlight is losing its socks. Sorry xaml-based technologies. You know we’re still friends, right? I’m just trying to help you grow.
By now, I (probably like you) have learned which are the “safe” fonts and the safe sizes in WPF, and I stick with them. By doing that I can get some okay looking text that works with most of my apps (incidentally the Ascender fonts that shipped with the SDK are great!). But, frankly, the importance of text in a UI can probably not be overstated and I’m tired of feeling like I’m settling. In Silverlight, I rarely even use the text engine. In most of the projects I’ve done, I’ve pre-rendered the text into images! That’s a sad state of affairs.
So, here’s my wishlist:
- Awesome type that looks great at any size and any weight with any well-constructed font (if the font is bad then we both agree that you can only do what you can do)
- More developer control over the qualities of the rendering (let me control just how much sub-pixel rendering and how you do it—let me call the shots about perf and readability)
- A WPF story (I think Scott Guthrie said something about this at PDC, right?)
- A Silverlight story (ideally we’d get the same engine or at least some of the awesomeness even if we don’t get the tweaks)
- A downward compat story (it would be a real bummer if this only showed up in Windows7—it means it’s not something that I can rely on and I end up back with my safe fonts. Or, worse, I end up with a smaller set of safe fonts that work in both rendering environments—in that event, things got worse and not better).
thomas
12 dec 2008
The abysmal display of fonts in Silverlight is the primary reason I don’t use it. I have about 5 major projects I’d like to use Silverlight for but the fonts in Silverlight are actually painful to read so the projects will have to wait until Silverlight font presentation improves. This has been a major, major frustration for me.
Mike Strobel
12 dec 2008
From what I understand, the DirectWrite text engine is bringing a lot of the features of the WPF text engine to unmanaged code. WPF already has Y-direction antialiasing and subpixel positioning, and I haven’t heard anything to suggest that DirectWrite will be bringing anything new to WPF.
I’m actually a bit surprised to hear you complain about WPF’s text rendering. In my experience, it has superior text rendering to any other platform. I’m developing a game in WPF, and several people have given me positive feedback about the text rendering. There are a couple edge cases in which WPF falls back to grayscale antialiasing, but for the most part I find the glyphs to be exceptionally clear and crisp. Personally, I can’t stand Photoshop’s text engine. I find the antialiasing options to very limited, and I keep expecting it to get better with each release, but it seems to go unchanged :-/.
However, I will join with you in requesting more detailed control over text rendering options. I’d also like to see a mechanism for altering the character spacing (one very nice Photoshop feature that I always miss).
mike duggan
15 dec 2008
hi, can mention which font is used in the comparison above of Photoshop v WPF?
nerdplusart.com | Free Typefaces for Your WPF of Silverlight Project
15 dec 2008
[...] spite of my humbug perspective on text rendering from the other day, I’m a huge advocate for using type creatively in your project and WPF and [...]
Grant Hinkson
22 dec 2008
I have to agree with you 100% here. This has been, and continues to be, one of my main rendering complaints. I can achieve good results if I convert text to paths (in Fireworks or Blend) but that is only practical for logos and illustrations, not for headline or body text.
nerdplusart.com | Jing Pro Launches (and it’s definitely worth the $14.95 they’re asking for it)
07 jan 2009
[...] At least, I’m pretty sure that it is. I got an instant WPF vibe from it (maybe the text?) and dug up this post which would seem to confirm my [...]
Helen Thomas
08 aug 2009
I’m actually having trouble with old fashioned, simple rasterization. Seems WPF doesn’t allow the use of aliased texts, which annoys certain users.