1 |
Hi fellow gentoo users, long time no see. |
2 |
|
3 |
I run a desktop system with a largish screen (24 in, 96 dpi). No |
4 |
"integrated environment", just xdm and my choice of window manager. I |
5 |
have been annoyed by the "subpixel rendering" of TrueType fonts - the |
6 |
color fringes are 100% intolerable to me, no matter how minor or how |
7 |
well filtered. So I thought I would turn that off. The natural and |
8 |
proper place seemed to be fontconfig, and here's my current "eselect |
9 |
fontconfig list" output: |
10 |
|
11 |
Available fontconfig .conf files (* is enabled): |
12 |
[1] 10-autohint.conf |
13 |
[2] 10-hinting-full.conf * |
14 |
[3] 10-hinting-medium.conf |
15 |
[4] 10-hinting-none.conf |
16 |
[5] 10-hinting-slight.conf |
17 |
[6] 10-no-sub-pixel.conf * |
18 |
[7] 10-scale-bitmap-fonts.conf |
19 |
[8] 10-sub-pixel-bgr.conf |
20 |
[9] 10-sub-pixel-rgb.conf |
21 |
[10] 10-sub-pixel-vbgr.conf |
22 |
[11] 10-sub-pixel-vrgb.conf |
23 |
[12] 10-unhinted.conf |
24 |
[13] 11-lcdfilter-default.conf |
25 |
[14] 11-lcdfilter-legacy.conf |
26 |
[15] 11-lcdfilter-light.conf |
27 |
[16] 20-unhint-small-vera.conf |
28 |
[17] 25-unhint-nonlatin.conf * |
29 |
[18] 30-metric-aliases.conf * |
30 |
[19] 40-nonlatin.conf * |
31 |
[20] 45-generic.conf * |
32 |
[21] 45-latin.conf * |
33 |
[22] 49-sansserif.conf * |
34 |
[23] 50-user.conf * |
35 |
[24] 51-local.conf * |
36 |
[25] 60-generic.conf * |
37 |
[26] 60-latin.conf * |
38 |
[27] 61-stix.conf |
39 |
[28] 62-croscore-arimo.conf * |
40 |
[29] 62-croscore-cousine.conf * |
41 |
[30] 62-croscore-symbolneu.conf * |
42 |
[31] 62-croscore-tinos.conf * |
43 |
[32] 62-crosextra-caladea.conf * |
44 |
[33] 62-crosextra-carlito.conf * |
45 |
[34] 65-fonts-persian.conf |
46 |
[35] 65-khmer.conf |
47 |
[36] 65-nonlatin.conf * |
48 |
[37] 69-unifont.conf |
49 |
[38] 70-no-bitmaps.conf |
50 |
[39] 70-yes-bitmaps.conf * |
51 |
[40] 75-yes-terminus.conf * |
52 |
[41] 80-delicious.conf |
53 |
[42] 90-synthetic.conf * |
54 |
|
55 |
The first shock was that this had absolutely no effect on Gtk{2,3} apps |
56 |
- which are the majority among what I use. After playing around for a |
57 |
while I concluded that Gtk has its own configuration for these things, |
58 |
including its own defaults, which it will use without looking at |
59 |
fontconfig. So I added these files: |
60 |
|
61 |
-*- ~/.config/gtk-3.0/settings.ini -*- |
62 |
|
63 |
[Settings] |
64 |
gtk-xft-antialias=1 |
65 |
gtk-xft-hinting=1 |
66 |
gtk-xft-hintstyle=hintfull |
67 |
gtk-xft-rgba=none |
68 |
|
69 |
-*- ~/.gtkrc-2.0 -*- |
70 |
|
71 |
gtk-xft-antialias=1 |
72 |
gtk-xft-hinting=1 |
73 |
gtk-xft-hintstyle="hintfull" |
74 |
gtk-xft-rgba="none" |
75 |
|
76 |
The spelling (also quotes) here is from |
77 |
|
78 |
https://wiki.archlinux.org/index.php/GTK%2B#Examples |
79 |
|
80 |
And this had the desired effect on Gtk3 apps, including Firefox. |
81 |
Excellent! But Gtk2 apps continue to show the hated fringes :-( Am I |
82 |
right to conclude Gtk2 keeps doing subpixel rendering, and why should |
83 |
that be? |
84 |
|
85 |
I seem to have the latest stable versions of all relevant packages, with |
86 |
no USE changes: |
87 |
|
88 |
* Found these USE flags for media-libs/fontconfig-2.13.0-r4: |
89 |
U I |
90 |
- - abi_x86_32 : 32-bit (x86) libraries |
91 |
+ + doc : Add extra documentation (API, Javadoc, etc). It is recommended to enable per package instead |
92 |
of globally |
93 |
- - static-libs : Build static versions of dynamic libraries as well |
94 |
|
95 |
* Found these USE flags for media-libs/freetype-2.9.1-r3: |
96 |
U I |
97 |
+ + X : Add support for X11 |
98 |
- - abi_x86_32 : 32-bit (x86) libraries |
99 |
+ + adobe-cff : Use Adobe CFF as default font-renderer |
100 |
- - bindist : Disable ClearType support (see http://freetype.org/patents.html) |
101 |
+ + bzip2 : Support bzip2 compressed PCF fonts. |
102 |
+ + cleartype_hinting : New bytecode hinting mode for TrueType fonts that activates subpixel hinting (a.k.a. |
103 |
ClearType hinting) by default |
104 |
- - debug : Enable extra debug codepaths, like asserts and extra output. If you want to get |
105 |
meaningful backtraces see |
106 |
https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Backtraces |
107 |
- - doc : Add extra documentation (API, Javadoc, etc). It is recommended to enable per package |
108 |
instead of globally |
109 |
- - fontforge : Install internal headers required for TrueType debugger in media-gfx/fontforge (built |
110 |
with USE=truetype-debugger) |
111 |
- - harfbuzz : Use media-libs/harfbuzz for auto-hinting OpenType fonts. WARNING: may trigger circular |
112 |
dependencies! |
113 |
- - infinality : Enable infinality options for improved LCD filtering |
114 |
+ + png : Add support for libpng (PNG images) |
115 |
- - static-libs : Build static versions of dynamic libraries as well |
116 |
- - utils : Install utilities and examples from ft2demos |
117 |
|
118 |
* Found these USE flags for x11-libs/gtk+-2.24.32-r1: |
119 |
U I |
120 |
- - abi_x86_32 : 32-bit (x86) libraries |
121 |
- - cups : Add support for CUPS (Common Unix Printing System) |
122 |
- - examples : Install examples, usually source code |
123 |
- - introspection : Add support for GObject based introspection |
124 |
- - test : Enable dependencies and/or preparations necessary to run tests (usually controlled by |
125 |
FEATURES=test but can be toggled independently) |
126 |
- - vim-syntax : Pulls in related vim syntax scripts |
127 |
- - xinerama : Add support for querying multi-monitor screen geometry through the Xinerama API |
128 |
|
129 |
I did try to disable the cleartype_hinting USE for freetype, but no luck. |
130 |
|
131 |
-- |
132 |
Please don't Cc: me privately on mailing lists and Usenet, |
133 |
if you also post the followup to the list or newsgroup. |
134 |
To reply privately _only_ on Usenet and on broken lists |
135 |
which rewrite From, fetch the TXT record for no-use.mooo.com. |