Improving font rendering in Microsoft Edge
By: Bruce G. Kreeger
On June 2, 2021 Microsoft announced improved font rendering in the latest Canary builds of Microsoft Edge on Windows. We have improved the contrast enhancement and gamma correction to match the quality and clarity of other native Windows applications. Font rendering will also now respect user ClearType Tuner settings when applying text contrast enhancement and gamma correction.
What’s New?
In the latest Canary builds, we now have support for applying the system settings for contrast enhancement and gamma correction of text. You can enable this with the edge://flags#edge-enhance-text-contrast flag.
You can see the effect of the various choices you made in the tuner by viewing a demo page hosted on GitHub. Here is a comparison of the Edge default settings compared to the maximum settings:
Font rendering at default contrast level (100). Left is ClearType and right is Grayscale
Font rendering at maximum contrast level (400). Left is ClearType and right is Grayscale.
Behind the scenes, the registry key KEY_CURRENT_USER\SOFTWARE\Microsoft\Avalon.Graphics\DISPLAY1 is modified to a value between 50 and 400.
Technical Background
To give some context as to why this change was made, we need to look at how the Legacy Microsoft Edge rendered text. Like many native Windows applications, Legacy Microsoft Edge utilized the DirectWrite framework to render glyphs to the screen. The benefit of using DirectWrite is that certain system-wide user settings are respected and use the same rendering pipeline across all other native Windows applications.
Chromium, by contrast, only utilizes DirectWrite for part of the text-rendering pipeline: font enumeration, glyph information retrieval, and glyph bitmap generation; it handles its own text shaping, layout, and rendering. This enables code reuse across platforms, but on Windows, the results are typically different than the rest of the system’s text rendering.
The final compositing of glyph bitmaps in Chromium is handled by the Skia graphics library and does not respect the Windows system settings for contrast enhancement and gamma correction of anti-aliased text. Consequently, font rendering with the hardcoded settings in Skia results in text that is subtly lighter than Windows’ system defaults. The difference is even more pronounced on CJK characters, where anti-aliased pixels comprise a larger percentage of each rendered glyph.
Looking Ahead
Today, the changes described above must be manually enabled, but after a rollout period we plan to have this behavior enabled by default in the Edge 92 stable channel. Also, while these changes are specific to Edge, we hope to be able to contribute them back to Chromium so that all Chromium-based browsers on Windows enjoy a consistent font rendering experience.
We would love to hear your feedback on whether these changes improve your reading experience and if it addresses your feedback around font clarity and contrast. If you have comments or suggestions, please reach out on Twitter @MSEdgeDev or send feedback via the Microsoft Edge Feedback Tool. As always, we will continue to listen to your feedback and look for ways to improve text rendering going forward. We think that this change will address some of the feedback around font clarity and contrast, and we will continue to look for ways to improve text rendering going forward.Clarity is an MSP (Managed Services Provider), CS Cloud Services Provider (Cloud Service Provider), VoIP Trunking service provider, Microsoft 365 CSP, 3CX PBX Titanium Partner, along with other IT support offering such as UCaaS (Unified Communications as a Service) and SaaS (Security as a Service). Clarity’s Dotman Tech division provides more services in Software Development, Content Creation, and Marketing Automation services. Clarity is an MSP (Managed Services Provider), CS Cloud Services Provider (Cloud Service Provider), VoIP Trunking service provider, Microsoft 365 CSP, 3CX PBX Titanium Partner, along with other IT support offering such as UCaaS (Unified Communications as a Service) and SaaS (Security as a Service). Clarity’s Dotman Tech division provides more services in Software Development, Content Creation, and Marketing Automation services.
Clarity is an MSP (Managed Services Provider), CS Cloud Services Provider (Cloud Service Provider), VoIP Trunking service provider, Microsoft 365 CSP, 3CX PBX Titanium Partner, along with other IT support offering such as UCaaS (Unified Communications as a Service) and SaaS (Security as a Service). Clarity’s Dotman Tech division provides more services in Software Development, Content Creation, and Marketing Automation services.
Call Clarity at 800-354-4160 today or email us at [email protected]. We are partnered internationally around the globe and we are open seven days a week 8:30 AM to 5:00 PM EST/EDT. http://45.33.92.219 and https://dotmantech.com.
[mc4wp_form id=”314″]