[PR #12278] [MERGED] AtlasEngine: Fix various ClearType rendering issues #28955

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

📋 Pull Request Information

Original PR: https://github.com/microsoft/terminal/pull/12278
Author: @lhecker
Created: 1/28/2022
Status: Merged
Merged: 1/28/2022
Merged by: @undefined

Base: mainHead: dev/lhecker/atlas-engine-cleartype-fixup


📝 Commits (1)

  • 6909a5c AtlasEngine: Fix various ClearType rendering issues

📊 Changes

3 files changed (+30 additions, -5 deletions)

View changed files

📝 src/renderer/atlas/AtlasEngine.api.cpp (+12 -1)
📝 src/renderer/atlas/AtlasEngine.h (+3 -1)
📝 src/renderer/atlas/AtlasEngine.r.cpp (+15 -3)

📄 Description

This commit fixes the following issues when ClearType rendering is enabled:

  • Colored glyphs are now drawn using grayscale AA, similar to all current
    browsers. This ensures proper gamma correctness during blending in our
    shader, while generally making no discernable difference for legibility.
  • Our ClearType shader only emits fully opaque colors, just like the official
    ClearType implementation. Due to this we need to force grayscale AA if the
    user specifies both ClearType and a background image, as the image would
    otherwise not be visible.

PR Checklist

  • I work here
  • Tests added/passed

Validation Steps Performed

  • Grayscale AA when drawing emojis
  • Grayscale AA when using a background image

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/microsoft/terminal/pull/12278 **Author:** [@lhecker](https://github.com/lhecker) **Created:** 1/28/2022 **Status:** ✅ Merged **Merged:** 1/28/2022 **Merged by:** [@undefined](undefined) **Base:** `main` ← **Head:** `dev/lhecker/atlas-engine-cleartype-fixup` --- ### 📝 Commits (1) - [`6909a5c`](https://github.com/microsoft/terminal/commit/6909a5c003b23b2cd63cc614b5827abdba3c2e2e) AtlasEngine: Fix various ClearType rendering issues ### 📊 Changes **3 files changed** (+30 additions, -5 deletions) <details> <summary>View changed files</summary> 📝 `src/renderer/atlas/AtlasEngine.api.cpp` (+12 -1) 📝 `src/renderer/atlas/AtlasEngine.h` (+3 -1) 📝 `src/renderer/atlas/AtlasEngine.r.cpp` (+15 -3) </details> ### 📄 Description This commit fixes the following issues when ClearType rendering is enabled: * Colored glyphs are now drawn using grayscale AA, similar to all current browsers. This ensures proper gamma correctness during blending in our shader, while generally making no discernable difference for legibility. * Our ClearType shader only emits fully opaque colors, just like the official ClearType implementation. Due to this we need to force grayscale AA if the user specifies both ClearType and a background image, as the image would otherwise not be visible. ## PR Checklist * [x] I work here * [x] Tests added/passed ## Validation Steps Performed * Grayscale AA when drawing emojis ✅ * Grayscale AA when using a background image ✅ --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
claunia added the pull-request label 2026-01-31 09:31:51 +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#28955