[cairo] DejaVuSansMono substituted by Helvetica

cairo at parvis.nl cairo at parvis.nl
Tue Apr 24 03:00:39 UTC 2018


Currently I'm working on a new port for munin on Mac OSX, and have trouble using DejaVuSansMono in rrdtool.

On Centos6 it works fine, on Fedora27 too, but OSX substitutes Helvetica.

               fedora27
rrdtool        1.7.0
pango          1.42.0
cairo          1.14.12
fontconfig     2.12.6
dejavu-fonts   2.37

On Mac, I installed the software with a local variant of macports.
Macports installed DejaVu fonts in /opt/port3/share/fonts, but the fonts wasn't found (except freetype and fontconfig). I assume this is a macports problem, so I installed DejaVu manually with the standard Mac App 'Font Book', now there is a copy in the standard /Library/Fonts.

I installed the same versions as fedora27 on mac, and changed configure options to be the same (I think).

rrdtool:
 fedora27: DejaVu
 mac P   : Helvetica (mac P means with macports location /opt/port3/share/fonts)
 mac L   : DejaVu    (mac L means with default  location /Library/Fonts)

fc-match DejaVuSansMono:
 fedora27: DejaVuSansMono.ttf: "DejaVu Sans Mono" "Book"
 mac P   : DejaVuSansMono.ttf: "DejaVu Sans Mono" "Book"
 mac L   : DejaVuSansMono.ttf: "DejaVu Sans Mono" "Book"

freetype (ft1):
FT_New_Face()
FT_Load_Char()
 fedora27: DejaVu
 mac P   : DejaVu
 mac L   : DejaVu

fontconfig (fc1):
FcPattern* pat = FcNameParse((const FcChar8*)"DejaVu Sans Mono");
 fedora27: /usr/share/fonts/dejavu/DejaVuSansMono.ttf
 mac P   : /opt/port3/share/fonts/dejavu-fonts/DejaVuSansMono.ttf
 mac L   : /Library/Fonts/DejaVuSansMono.ttf

(cairo1):
cairo_select_font_face (cr, "DejaVu Sans Mono", CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL);
cairo_show_text (cr, "the quick brown fox jumps over the lazy dog");
 fedora27: DejaVu
 mac P   : Helvetica
 mac L   : DejaVu

(cairo2):
pango_foint_description_set_family (font_description, "DejaVu Sans Mono");
pango_layout_set_text (layout, "the quick brown fox jumps over the lazy dog", -1);
 fedora27: DejaVu
 mac P   : Helvetica
 mac L   : DejaVu

(pango1)
pango_font_map_list_families (fontmap, &families, &n_families);
 fedora27: Family 3: DejaVu Sans Mono + Family 13: DejaVu LGC Sans Mono
 mac P   : <nothing>
 mac L   : Family 93: DejaVu Sans Mono (only DejaVuSansMono copied)

pango-view backend=xft:
 fedora27: DejaVu
 mac P   : DejaVu
 mac L   : DejaVu

pango-view backend=ft2:
 fedora27: DejaVu
 mac P   : DejaVu
 mac L   : DejaVu

pango-view backend=cairo:
 fedora27: DejaVu
 mac P   : Helvetica
 mac L   : Helvetica

rrdtool has these includes:
#include <cairo.h>
#include <cairo-pdf.h>
#include <cairo-svg.h>
#include <cairo-ps.h>
#include <pango/pangocairo.h>


Questions:
1. packages in the route are rrdtool pango cairo fontconfig freetype. are others important here?
2. where in this chain, and how, can i diagnose the problem? (see my tests above)?
3. different results for cairo1 cairo2 pango1 pango-view-backend=cairo. why?
4. can pango-view help (is it relevant here?), and if so, why the difference in backend?
5. any special configure options needed for these products?

-- 
Thanks,
paul.



More information about the cairo mailing list