DirectWriteは、Microsoft DirectXのコンポーネントの1つであり、GDI/GDI+の後継となる文字描画用API群である。略称はDWriteDirectWrite (DWrite) - Win32 apps | Microsoft Learn。Direct2Dを経由してハードウェアアクセラレーションによる高速なテキスト描画が可能となるほか、OpenTypeの機能への対応や多数の言語への対応などが含まれる。また縦方向のアンチエイリアス処理が付加されたClearType処理も備えている。Windows 7およびWindows Server 2008 R2以降のOSで標準実装・サポートされているが、バージョン1.0はDirect2DとともにWindows VistaおよびWindows Server 2008にもバックポートされた。

DirectWriteはDirect2Dとともにナンバリングされており、Windows 7とともにリリースされたバージョン1.0、Windows 8とともにリリースされたバージョン1.1、Windows 8.1とともにリリースされたバージョン1.2、Windows 10とともにリリースされたバージョン1.3が存在する。Windows 10の機能更新時に、DirectWriteにも機能が追加されているWhat's new in DirectWrite - Win32 apps | Microsoft Learn。

DirectWriteは主にDirect2Dと組み合わせて利用することを想定されているが、GDIとの相互運用もサポートしており、GDIフォントとの相互変換や、デバイスコンテキストを経由したGDIサーフェイスへの描画が可能となっているInteroperating with GDI - Win32 apps | Microsoft LearnIDWriteGdiInterop (dwrite.h) - Win32 apps | Microsoft Learn。

縦書き 従来のGDI/GDI+は縦書きに対応しており、単価記号(アットサイン、アットマーク)@で始まる名前のフォント(縦書きのグリフを含むフォント)と回転角度指定あるいは縦方向フォーマットフラグを使用することで、日本語などアジア系言語の縦書きを実現することができるRotating Lines of Text - Win32 apps | Microsoft LearnFormatting Text (GDI+) - Win32 apps | Microsoft Learn。Windows 7までのDirectWriteは縦書きに対応していなかったが、Windows 8以降のDirectWriteは縦書きにも対応するようになったVertical Text - Win32 apps | Microsoft Learn。

カラーフォント OpenTypeのカラーフォント(カラー絵文字)への対応は、Windows 8.1から始まった§Rendering color fonts : What's new in DirectWrite - Win32 apps | Microsoft LearnColor font support - Win32 apps | Microsoft Learn。当初はレイヤー方式(COLR/CPAL)のみをサポートしていたが、Windows 10 Anniversary Update (バージョン1607、ビルド14393) でSVG方式や埋め込みビットマップ方式(CBDT/CBLCおよびsbix)にも対応した。

脚注

関連項目 Microsoft DirectX Direct2D Graphics Device Interface

外部リンク Microsoft Learn(旧MSDN ライブラリ) DirectWrite の紹介 | Microsoft Learn