evince doesn't display the correct font
Submitted by Sebastien Bacher
Assigned to poppler-bugs
Description
The bug has been opened on https://bugs.launchpad.net/bugs/132417
"... When displaying a PDF document with a non-embedded font 'ArialMT', no attempt is made to display the ArialMT font.
Expected behavior: evince asking fontconfig to produce the closest match to the ArialMT font.
Actual behavior: no request for font is seen in debug output of fontconfig.
It might be a poppler issue, poppler seems to convert ArialMT into Helvetica wich receives a less fitting match from fontconfig when Arial is present. ...
After trying to find an excellent example, i'll have to amend my bugreport a tiny bit. It is not about ArialMT but about non-embedded: PalatinoLinotype-Roman
It's about document http://www.vmware.com/pdf/vi3_301_201_admin_guide.pdf
The 'normal' text on for instance book page 7, is in acrobat reader a serif typeface, in evince it is a 'sans-serif'.
When i turn on FC_DEBUG=4 and 'printCommands yes' i learn the following:
Add Subst match pattern any family Equal "Palatino-Roman" edit Edit family Append "URWPalladioL-Roma";
(indeed: fc-match Palatino-Roman gives: URWPalladioL-Roma.pfb: "URW Palladio L" "Roman", which is in gfonts-x11)
I am not a master in interpreting fontconfig / poppler debug output, but i will try to find the relevant spot:
If poppler encounters the lines:
Tf /TT8 1 font: tag=TT8 name='PalatinoLinotype-Roman' 1 Tm 10.98 0 0 10.98 153 640.02 Tc 0.0008 Tw -0.0049 Tj (Customizing Guest Op)
It starts finding a proper font match.
FcConfigSubstitute Pattern has 6 elts (size 16) family: "Palatino Linotype"(s) slant: 0(i)(s) weight: 80(i)(s) width: 100(i)(s) spacing: 0(i)(s) lang: "xx"(s) ... (it passes the opportunity to match a close relative:) FcConfigSubstitute test pattern any family Equal "Palatino-Roman" No match ... (and concludes with:) Substitute match pattern all family NotEqual "sans-serif" pattern all family NotEqual "serif" pattern all family NotEqual "monospace" edit Edit family AppendLast "sans-serif";
Does this help you any further?
Gr. Sim ... By the way, i've recompiled libpoppler-glib and removed the internal font face translation (effectively delegating it to fontconfig). And the PDF's look almost perfect."