DirectWrite

From Wikipedia, the free encyclopedia
Jump to: navigation, search

DirectWrite is a text-layout and glyph-rendering API by Microsoft. It was designed to replace GDI/GDI+ and Uniscribe for screen-oriented rendering[citation needed] and was shipped with Windows 7 and Windows Server 2008 R2, as well as Windows Vista and Windows Server 2008 (with Platform Update installed[1] and Platform Update Supplement for Windows Vista and for Windows Server 2008(KB2117917)[2] & KB2505189[3] update installed.

Microsoft has fixed many DirectWrite bugs in Windows 7 through Windows 7 Service Pack 1(SP1)[4] and KB2505438 update[5].

Contents

[edit] Features

  • Comprehensive support for Unicode, with over 20 scripts providing layout and rendering of every language supported in Windows. DirectWrite supports measuring, drawing, and hit-testing of multi-format text. Supported Unicode features include BIDI, line breaking, surrogates, UVS, language-guided script itemization, number substitution, and glyph shaping.
  • Sub-pixel ClearType text rendering with bi-directional antialiasing which can interoperate with GDI/GDI+, Direct2D/Direct3D and any application-specific technology. When using with Direct2D, text rendering can be hardware-accelerated or can use WARP software rasterizer when hardware acceleration is not available. It is, however, unable to render aliased (or bi-level) text.
  • Supports advanced typographic features of OpenType, such as stylistic alternates and swashes, which were never supported in GDI and WinForms.
  • Provides a low-level glyph rendering API for those who employ proprietary text layout and Unicode-to-glyph processing.

[edit] Supported scripts

‡ No default system font provided in Windows. Braille, Ogham, and Runic are supported by Segoe UI Symbol.

[edit] See also

  • Pango a cross platform library for rendering text in high quality, emphasising support for multilingual text
  • Cairo a vector-based cross platform graphics library that can render text

[edit] External links

[edit] References

Personal tools
Namespaces
Variants
Actions
Navigation
Interaction
Toolbox
Print/export
Languages