[PR #10525] Allow users to set font features and font axes #28090

Open
opened 2026-01-31 09:26:15 +00:00 by claunia · 0 comments
Owner

Original Pull Request: https://github.com/microsoft/terminal/pull/10525

State: closed
Merged: Yes


Adds support for users to be able to set font features and axes (see the spec for more details!)

Detailed Description

CustomTextLayout

  • Asks the DxFontRenderData for the font features when getting glyphs
  • If any features have been set/updated, we always skip the "isTextSimple" shortcut
  • Asks the _formatInUse for any font axes when mapping characters in _AnalyzeFontFallback

DxFontRenderData

  • Stores a map of font features (initialized to the standard feature list)
  • Stores a map of font axes
  • Has methods to add font features/axes to the map or update existing ones
  • Has methods to retrieve the font features/axes
  • Sets the font axes in the IDWriteTextFormat when creating it

Validation Steps Performed

It works!

Specified in #10457
Related to #1790
Closes #759
Closes #5828

**Original Pull Request:** https://github.com/microsoft/terminal/pull/10525 **State:** closed **Merged:** Yes --- Adds support for users to be able to set font features and axes (see the spec for more details!) ## Detailed Description **CustomTextLayout** - Asks the `DxFontRenderData` for the font features when getting glyphs - _If any features have been set/updated, we always skip the "isTextSimple" shortcut_ - Asks the `_formatInUse` for any font axes when mapping characters in `_AnalyzeFontFallback` **DxFontRenderData** - Stores a map of font features (initialized to the [standard feature list]) - Stores a map of font axes - Has methods to add font features/axes to the map or update existing ones - Has methods to retrieve the font features/axes - Sets the font axes in the `IDWriteTextFormat` when creating it ## Validation Steps Performed It works! [standard feature list]: https://github.com/fdwr/TextLayoutSampler/blob/ac5aef67d1cc0cb67c5e3be29b30bda5a90c3e2b/DrawableObject.ixx#L802 Specified in #10457 Related to #1790 Closes #759 Closes #5828
claunia added the pull-request label 2026-01-31 09:26:15 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#28090