TeXworks / texworks

Main codebase for TeXworks, a simple interface for working with TeX documents
https://tug.org/texworks/
GNU General Public License v2.0
697 stars 127 forks source link

Test failures in poppler-qt5 #1049

Closed NHOrus closed 7 months ago

NHOrus commented 7 months ago

https://bugs.gentoo.org/895268 Test log attached.

Poppler 24.03.0, texworks-0.6.9, but was observed with 0.6.8

LastTest.log Is this failure safe to ignore e.g. caused by poppler changes?

stloeffler commented 7 months ago

I think this may be related to missing fonts on the system running the test. According to the PDF specs, all viewers must ensure that 14 base fonts are provided by the system (i.e., they must be displayed correctly even if they are not embedded in the pdf file itself). This test covers exactly that (in particular the ZapfDingbats case which is the one causing most problems). Could you try installing the urw-fonts and see if that fixes the problem? (NB: If it does, urw-fonts should be a mandatory dependency of the texworks package (both for building and using) to comply with the PDF standard)

NHOrus commented 7 months ago

Fonts were installed before test failure. urw-fonts 20230503

stloeffler commented 7 months ago

Interesting. In case of the failures you mentioned, the test code saves the problematic renders. In your case, the log indicates that they are saved as /var/tmp/portage/app-editors/texworks-0.6.9/temp/test_poppler-qt5.* with random extensions.

Could you

NHOrus commented 7 months ago
  1. pdffonts -subst base14-fonts.pdf

    name                                 object ID substitute font                      substitute font file
    ------------------------------------ --------- ------------------------------------ ------------------------------------
    Times-Roman                               7  0 Font Awesome 6 Brands Regular        /usr/share/fonts/fontawesome/Font Awesome 6 Brands-Regular-400.otf
    Times-Bold                                8  0 Verdana Bold                         /usr/share/fonts/corefonts/verdanab.ttf
    Times-Italic                              9  0 Verdana Italic                       /usr/share/fonts/corefonts/verdanai.ttf
    Times-BoldItalic                         10  0 Verdana Bold Italic                  /usr/share/fonts/corefonts/verdanaz.ttf
    Helvetica                                11  0 Font Awesome 6 Brands Regular        /usr/share/fonts/fontawesome/Font Awesome 6 Brands-Regular-400.otf
    Helvetica-Bold                           12  0 Verdana Bold                         /usr/share/fonts/corefonts/verdanab.ttf
    Helvetica-Oblique                        13  0 DejaVu Sans Oblique                  /usr/share/fonts/dejavu/DejaVuSans-Oblique.ttf
    Helvetica-BoldOblique                    14  0 DejaVu Sans Bold Oblique             /usr/share/fonts/dejavu/DejaVuSans-BoldOblique.ttf
    Courier                                  15  0 Font Awesome 6 Brands Regular        /usr/share/fonts/fontawesome/Font Awesome 6 Brands-Regular-400.otf
    Courier-Bold                             16  0 Verdana Bold                         /usr/share/fonts/corefonts/verdanab.ttf
    Courier-Oblique                          17  0 DejaVu Sans Oblique                  /usr/share/fonts/dejavu/DejaVuSans-Oblique.ttf
    Courier-BoldOblique                      18  0 DejaVu Sans Bold Oblique             /usr/share/fonts/dejavu/DejaVuSans-BoldOblique.ttf
    Symbol                                   19  0 Font Awesome 6 Brands Regular        /usr/share/fonts/fontawesome/Font Awesome 6 Brands-Regular-400.otf
    ZapfDingbats                             20  0 Font Awesome 6 Brands Regular        /usr/share/fonts/fontawesome/Font Awesome 6 Brands-Regular-400.otf
  2. /usr/share/fonts/urw-fonts/D050000L.otf: D050000L:style=Regular Full list: fontlist.txt

  3. Images: test_poppler-qt5 qCCcsB test_poppler-qt5 yHmbtV

NHOrus commented 7 months ago

Okay. Fontconfig is messed up.

name                                 object ID substitute font                      substitute font file
------------------------------------ --------- ------------------------------------ ------------------------------------
Times-Roman                               7  0 NimbusRoman-Regular                  /usr/share/fonts/urw-fonts/NimbusRoman-Regular.otf
Times-Bold                                8  0 NimbusRoman-Bold                     /usr/share/fonts/urw-fonts/NimbusRoman-Bold.otf
Times-Italic                              9  0 NimbusRoman-Italic                   /usr/share/fonts/urw-fonts/NimbusRoman-Italic.otf
Times-BoldItalic                         10  0 NimbusRoman-BoldItalic               /usr/share/fonts/urw-fonts/NimbusRoman-BoldItalic.otf
Helvetica                                11  0 NimbusSans-Regular                   /usr/share/fonts/urw-fonts/NimbusSans-Regular.otf
Helvetica-Bold                           12  0 NimbusSans-Bold                      /usr/share/fonts/urw-fonts/NimbusSans-Bold.otf
Helvetica-Oblique                        13  0 NimbusSans-Italic                    /usr/share/fonts/urw-fonts/NimbusSans-Italic.otf
Helvetica-BoldOblique                    14  0 NimbusSans-BoldItalic                /usr/share/fonts/urw-fonts/NimbusSans-BoldItalic.otf
Courier                                  15  0 NimbusMonoPS-Regular                 /usr/share/fonts/urw-fonts/NimbusMonoPS-Regular.otf
Courier-Bold                             16  0 NimbusMonoPS-Bold                    /usr/share/fonts/urw-fonts/NimbusMonoPS-Bold.otf
Courier-Oblique                          17  0 NimbusMonoPS-Italic                  /usr/share/fonts/urw-fonts/NimbusMonoPS-Italic.otf
Courier-BoldOblique                      18  0 NimbusMonoPS-BoldItalic              /usr/share/fonts/urw-fonts/NimbusMonoPS-BoldItalic.otf
Symbol                                   19  0 Standard Symbols PS                  /usr/share/fonts/urw-fonts/StandardSymbolsPS.otf
ZapfDingbats                             20  0 D050000L                             /usr/share/fonts/urw-fonts/D050000L.otf

Should this be better?

NHOrus commented 7 months ago

Yeah, with that it is better.

Thank you for pointing me to solution.

Solution, for Gentoo people: in eselect-fontconfig enable:

  [49]  61-urw-bookman.conf *
  [50]  61-urw-c059.conf *
  [51]  61-urw-d050000l.conf *
  [52]  61-urw-fallback-backwards.conf *
  [53]  61-urw-fallback-generics.conf *
  [54]  61-urw-fallback-specifics.conf *
  [55]  61-urw-gothic.conf *
  [56]  61-urw-nimbus-mono-ps.conf *
  [57]  61-urw-nimbus-roman.conf *
  [58]  61-urw-nimbus-sans.conf *
  [59]  61-urw-p052.conf *
  [60]  61-urw-standard-symbols-ps.conf *
  [61]  61-urw-z003.conf *

after which tests pass.

stloeffler commented 7 months ago

You're welcome, glad I could help. That's exactly the kind of situation the test was written for.