Index: content/common/sandbox_win.cc |
diff --git a/content/common/sandbox_win.cc b/content/common/sandbox_win.cc |
index 68a00dd55908e07826be58616e45858e8d996cdd..7047421936a877e0b0c9abbdadc2fa52db6f34fb 100644 |
--- a/content/common/sandbox_win.cc |
+++ b/content/common/sandbox_win.cc |
@@ -590,6 +590,16 @@ bool ShouldUseDirectWrite() { |
return true; |
#endif |
+ // If anti-aliasing or ClearType are off, don't use DirectWrite. |
+ BOOL smoothing = FALSE; |
+ SystemParametersInfo(SPI_GETFONTSMOOTHING, 0, &smoothing, 0); |
+ if (!smoothing) |
+ return false; |
+ UINT smooth_type = 0; |
+ SystemParametersInfo(SPI_GETFONTSMOOTHINGTYPE, 0, &smooth_type, 0); |
+ if (smooth_type != FE_FONTSMOOTHINGCLEARTYPE) |
+ return false; |
+ |
// Otherwise, check the field trial. |
const std::string group_name = |
base::FieldTrialList::FindFullName("DirectWrite"); |