[gtk/gtk-3-24: 1/2] GDK W32: set default settings for fontconfig
- From: Christoph Reiter <creiter src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/gtk-3-24: 1/2] GDK W32: set default settings for fontconfig
- Date: Sat, 1 Dec 2018 16:03:15 +0000 (UTC)
commit 5a23c0f038be973fed7b2e0fe6e0a5bb2cb307ee
Author: Christoph Reiter <reiter christoph gmail com>
Date: Sat Dec 1 10:38:10 2018 +0100
GDK W32: set default settings for fontconfig
Enables hinting, antialiasing and set the subpixel orientation according to the
active clear type setting. This ensures that font rendering with the fontconfig backend
looks similar to the win32 backend, at least with the default system font.
gdk/win32/gdkproperty-win32.c | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
---
diff --git a/gdk/win32/gdkproperty-win32.c b/gdk/win32/gdkproperty-win32.c
index 3524cd13a2..7c780428c0 100644
--- a/gdk/win32/gdkproperty-win32.c
+++ b/gdk/win32/gdkproperty-win32.c
@@ -333,6 +333,42 @@ _gdk_win32_screen_get_setting (GdkScreen *screen,
g_value_set_boolean (value, TRUE);
return TRUE;
}
+ else if (strcmp ("gtk-xft-hinting", name) == 0)
+ {
+ GDK_NOTE(MISC, g_print ("gdk_screen_get_setting(\"%s\") : 1\n", name));
+ g_value_set_int (value, 1);
+ return TRUE;
+ }
+ else if (strcmp ("gtk-xft-antialias", name) == 0)
+ {
+ GDK_NOTE(MISC, g_print ("gdk_screen_get_setting(\"%s\") : 1\n", name));
+ g_value_set_int (value, 1);
+ return TRUE;
+ }
+ else if (strcmp ("gtk-xft-hintstyle", name) == 0)
+ {
+ g_value_set_static_string (value, "hintfull");
+ GDK_NOTE(MISC, g_print ("gdk_screen_get_setting(\"%s\") : %s\n", name, g_value_get_string (value)));
+ return TRUE;
+ }
+ else if (strcmp ("gtk-xft-rgba", name) == 0)
+ {
+ unsigned int orientation = 0;
+ if (SystemParametersInfoW (SPI_GETFONTSMOOTHINGORIENTATION, 0, &orientation, 0))
+ {
+ if (orientation == FE_FONTSMOOTHINGORIENTATIONRGB)
+ g_value_set_static_string (value, "rgb");
+ else if (orientation == FE_FONTSMOOTHINGORIENTATIONBGR)
+ g_value_set_static_string (value, "bgr");
+ else
+ g_value_set_static_string (value, "none");
+ }
+ else
+ g_value_set_static_string (value, "none");
+
+ GDK_NOTE(MISC, g_print ("gdk_screen_get_setting(\"%s\") : %s\n", name, g_value_get_string (value)));
+ return TRUE;
+ }
else if (strcmp ("gtk-font-name", name) == 0)
{
NONCLIENTMETRICS ncm;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]