Glyphs appearing sometimes with bad positioning and font with poppler
Long story short, an issue was opened initially in Gnome evince, related to rendering issue with some PDF files. It appeared to occur with many poppler-based PDF viewers, so I opened another issue in Poppler...
After more investigation, the bug disappeared once I reverted the cairo package (from
1.16.0-2), so I open yet another issue here! :)
The user-level problem is well described (with visual examples) in the evince issue: https://gitlab.gnome.org/GNOME/evince/issues/1244 , along with problematic files. In a few words, rendering some PDFs may let some undesirable glyphs to appear or disappear, apparently in a random fashion, depending the zoom level and the exact content of the PDF.
I was able to isolate the problematic commit in cairo using
git bisect, but I am only half-confident as the problem occurs somehow randomly. I believe and hope I did not missed a bad commit.
git bisect start # good: [3ad43122b21a3299dd729dc8462d6b8f7f01142d] 1.16.0 release git bisect good 3ad43122b21a3299dd729dc8462d6b8f7f01142d # bad: [52a7c79fd4ff96bb5fac175f0199819b0f8c18fc] Fix vertical subpixel positioning git bisect bad 52a7c79fd4ff96bb5fac175f0199819b0f8c18fc # good: [cb871c6c692af68d8e0bf9e26472af45435f8a2c] clip-boxes: Drop too-early return git bisect good cb871c6c692af68d8e0bf9e26472af45435f8a2c # good: [250ae25b0a671b9de7313c042710bbb6760248c4] Don't use deprecated rsvg_set_default_dpi() git bisect good 250ae25b0a671b9de7313c042710bbb6760248c4 # good: [bab53d91a8543e2ddb15f9dce98ebb3f9bcd5d22] ft-font: Fix color font support git bisect good bab53d91a8543e2ddb15f9dce98ebb3f9bcd5d22 # bad: [6fd4222ab00c3b93f038172a8c9d48375c5f86f0] Add a testcase for subpixel positioning git bisect bad 6fd4222ab00c3b93f038172a8c9d48375c5f86f0 # bad: [ea9329215d3431ded51a71b724baf0edc25ad633] image compositor: Support subpixel positioning git bisect bad ea9329215d3431ded51a71b724baf0edc25ad633 # first bad commit: [ea9329215d3431ded51a71b724baf0edc25ad633] image compositor: Support subpixel positioning
Hence it seems to appear with ea932921, but giving the limited amount of changes in this commit I can't figure out what happen.
I will be happy to test patches, or investigate more by myself if anyone here has some pointers.