Fonts rendered more blurry from 24.2.7.2 -> 24.8.0.1 with libcairo 2.18.x

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

after upgrading libreoffice on my SLED 15 SP6 from 24.2.1.2 to 24.8.1.2
we realized that font rendering has changed and fonts get rendered more
fuzzy/blurry than before. The same 24.8.1.2 worked fine on SLED 15 SP5
and it turned out that was due the libcairo version.

After some debugging the situation is as follows:
- libreoffice up to 24.2.7.2 works fine with libcairo2-1.16.0 (as
  shipped with SP5) and with libcairo2-1.18.0 (and the latest 1.18.2)
  as shipped with SP6.

- libreoffice starting with 24.8.0.1 and up to the latest release,
  all taken from the libreoffice download page, work fine with
  libcairo2-1.16.0 but show blurry/fuzzy fonts with libcairo2-1.18.0/2.

What I mean by "fine" vs. "blurry" can be seen in the screenshots.
The lines "1.16" show how it looks like with libcairo2-1.16.0 and
all libreoffice versions, but also for libreoffice 24.2.x and
libcairo2-1.18.x.

The lines marked with "1.18" are for libcairo2-1.18.x and libreoffice
24.8.x. Note: "LD_PRELOAD=/tmp/libcairo.so.2.11600.0" is enough to
revert the behaviour for libreoffice 24.8.x. to the previous, fine
rendering.

lo1.png shows Arial/Liberation Sans without any special environment
variables. You can see that libreoffice 24.2 as well as libcairo2 1.16
make every H rendered the same way, while LO 24.8 + libcairo2 1.18
render the same letter in different ways every 1-2 letters (depending
on the font size).

lo2.png shows the situation with "export SAL_ALLOW_DEFAULT_HINTING=true"
and "Xft.hintstyle: hintfull" in ~/.Xresources, i.e. activating the
patch that I wrote with Caolán McNamaras help back in 2023.

This causes crisp-clear rendering for LO 24.2 or libcairo2 1.16.10
but blurry letters with 24.x and 1.18.x due to that changing
rendering.
That causes texts to appear a little more fuzzy and makes them harder
to read (lo4.png), especially for very small sizes (lo3.png). It's
not much difference in lo4.png, but that's how we detected it when
our users complained it was harder to read their texts.

So there must be some change in LO 24.8.x that only changes font
rendering with libcairo2 1.18, but not with libcairo2 1.16.

It does not depend on the graphics card, we tested with nvidia anad
Ati with differents drivers, and even with NX and a framebuffer
device.

Is this change intended? To me it doesn't seem reasonable to render
the same letter in different ways, does it?

Has anyone an idea what patch could have caused this change, so I get
an idea where I can start looking to debug this in the libreoffice code?

Thanks a lot!
Frank

--
Dipl.-Inform. Frank Steiner   Web:  http://www.bio.ifi.lmu.de/~steiner/
Lehrstuhl f. Bioinformatik    Mail: http://www.bio.ifi.lmu.de/~steiner/m/
LMU, Amalienstr. 17           Phone: +49 89 2180-4049
80333 Muenchen, Germany       Fax:   +49 89 2180-99-4049
* Rekursion kann man erst verstehen, wenn man Rekursion verstanden hat. *

Attachment: lo1.png
Description: PNG image

Attachment: lo2.png
Description: PNG image

Attachment: lo3.png
Description: PNG image

Attachment: lo4.png
Description: PNG image


[Index of Archives]     [LARTC]     [Bugtraq]     [Yosemite Forum]     [Photo]

  Powered by Linux