Package: fontconfig Version: 2.11.0-6.1 Severity: normal Dear Maintainer,
Even though I have `10-sub-pixel-rgb.conf` and `11-lcdfilter-default.conf` symlinked in `/etc/fonts/conf.d` from `/usr/share/fontconfig/conf.avail`, these settings do not seem to be honoured on my Debian Sid machine. They seem to register correctly: $ fc-match '' lcdfilter rgba :rgba=1:lcdfilter=1 but they are not applied in practice (as tested with Iceweasel and Audacious). However, by adding a `~/.config/font-manager/local.conf` file with contents: <?xml version='1.0'?> <!DOCTYPE fontconfig SYSTEM 'fonts.dtd'> <fontconfig> <match target="font"> <edit mode="assign" name="rgba"><const>rgb</const></edit> <edit mode="assign" name="lcdfilter"><const>lcddefault</const></edit> </match> </fontconfig> `fc-match` will still give the same output, but now subpixel rendering is activated, as verified by squinting heavily or taking a screenshot and magnifying it (see attached file). The difference in the configuration syntax is that the distribution uses `target="pattern"` and `mode="append"` instead of `target="font"` and `mode="assign"`. This seems to be done to honour existing settings if available through e.g. desktop environment setting applications. It can be noted that `man fonts-conf` has a sample user configuration that says: <!-- use rgb sub-pixel ordering to improve glyph appearance on LCD screens. Changes affecting rendering, but not matching should always use target="font". --> <match target="font"> <edit name="rgba" mode="assign"><const>rgb</const></edit> </match> Either the statement in the comment is outdated, or the distribution configuration just does not adhere to the stated principle. In any case, this is the setting format that seems to work. I have tested this in Iceweasel and Audacious with identical results. I attach a screenshot scaled up 4 times that shows colored fringes when I apply the `local.conf` settings above (as expected when using subpixel rendering), and only grayscale antialiasing when I comment out the `rgba` and `lcdfilter` entries in `local.conf` even though they are present in `/etc/fonts/conf.d` (both of these options seem to separately have the same issue with the configuration provided by the distribution). I have in my `local.conf` tried using * `target="pattern"` and `mode="assign"` * `target="pattern"` and `mode="append"` * `target="font"` and `mode="append"` but they give the same result as if the file was not there at all, except that when using `mode="append"`, the fc-match output changes to: $ fc-match '' lcdfilter rgba :rgba=1,1:lcdfilter=1,1 Only the combination of `target="font"` and `mode="assign"` seems to be picked up correctly by the renderer. To my knowledge there are no additional settings on this computer that should override `/etc/fonts/conf.d`. It uses Fluxbox as window manager and does not have a desktop environment installed (though there are some Gnome applications installed), and in any case I guess such a setting would have been made known by `fc-match`. I do not know if this is rather a Pango issue or something else, but I thought I would start here for guidance. The attached file shows how Audacious renders text when I use the effective local configuration as compared with only using the distributions configuration files in `/etc/fonts/conf.d`. -- System Information: Debian Release: jessie/sid APT prefers unstable APT policy: (500, 'unstable'), (1, 'experimental') Architecture: i386 (i686) Kernel: Linux 3.14-2-686-pae (SMP w/2 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=sv_SE.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages fontconfig depends on: ii fontconfig-config 2.11.0-6.1 ii libc6 2.19-10 ii libfontconfig1 2.11.0-6.1 ii libfreetype6 2.5.2-1.1 fontconfig recommends no packages. fontconfig suggests no packages. -- no debconf information