The attached patch works without a new font driver. This requires the harfbuzz font backend to be available. It works by modifying the harfbuzz backend to use DirectWrite at some points, if it is available: - When encoding characters: w32hb_encode_char - When measuring text: w32font_text_extents - When drawing text: w32font_draw DirectWrite is setup by calling w32_initialize_direct_write. From that point, the function w32_use_direct_write will return true if DirectWrite is to be used. The lisp variable w32-inhibit-direct-write can switches it on and off. It builds with Mingw64 and Mingw. As mingw doesn't have the DirectWrite includes, I had to declare a lot of things at the start of the file. This line marks the end of that: /* End of dwrite_3.h definitions. */ I have tested this only on Windows 11.