On Wed, 18 Jan 2023 at 15:35:54 +0100, Vincent Lefevre wrote:
> After the upgrade from fontconfig 2.13.1-4.5 to fontconfig 2.14.1-3,
> the selection of the Bitstream font is broken

There is no font of that name in Debian. Bitstream is (was?) a font
foundry, not a font, so asking for a font named "Bitstream" is like
asking for an application named "Microsoft" if what you actually wanted
was Microsoft Word.

> With fontconfig 2.13.1-4.5,
> 
> cventin% fc-match Bitstream
> Vera.ttf: "Bitstream Vera Sans" "Roman"
> 
> With fontconfig 2.14.1-3,
> 
> cventin% fc-match Bitstream
> NotoSans-Regular.ttf: "Noto Sans" "Regular"

I can reproduce this. I think this is happening because you don't have any
font named "Bitstream" installed (and neither do I), so fontconfig is
falling back to looking for *any* font, for which its default seems to be
to go through a list of sans-serif fonts in preference order:

$ fc-match "Bitstream Vera Sans"
Vera.ttf: "Bitstream Vera Sans" "Roman"
$ fc-match "Bitstream"
NotoSans-Regular.ttf: "Noto Sans" "Regular"
$ fc-match "hello, world"
NotoSans-Regular.ttf: "Noto Sans" "Regular"

So I think this is probably working as intended, and the configuration
change that prompted your different font rendering is that fontconfig
2.13.1 had Bitstream Vera Sans as its fallback font, whereas 2.14.1 has
Noto Sans and DejaVu Sans listed as its preferred sans-serif fonts for
Latin text, as a result of
<https://gitlab.freedesktop.org/fontconfig/fontconfig/-/commit/fcb042028126d79ea5a5fa015b2b034b98656e73>
and then
<https://gitlab.freedesktop.org/fontconfig/fontconfig/-/commit/ad70d785974992c569b30108923875e5b5e9dc5e>.

In a bullseye container with the older fontconfig:

# apt install fontconfig fonts-noto ttf-bitstream-vera
# fc-match "hello, world"
Vera.ttf: "Bitstream Vera Sans" "Roman"

which would seem consistent with what I said above.

Please configure applications to use Bitstream Vera Sans, Bitstream
Vera Serif or Bitstream Vera Sans Mono, whichever is most appropriate
for your use-case, instead of "Bitstream".

However, Bitstream Vera is essentially unmaintained, so consider using
the DejaVu family (community-maintained forks of Bitstream Vera with
wider glyph coverage, which had to change the name for licensing reasons)
from the fonts-dejavu-core and optionally fonts-dejavu-extra packages,
in preference to ttf-bitstream-vera.

    smcv

Reply via email to