From: Elena B. <Ele...@ir...> - 2014-01-28 11:54:30
Attachments:
problem.png
|
Bonjour, Our installation is CentOS 64 bit, PLplot 5.9.10, cairo-devel v 1.8.8, pango-devel v 1.28.1. x06c from PlPlot examples: devices 1-3 - Xlib, PostScript - everything is OK. devices 7-13 - SVG and all cairo drivers - cannot recognize some symbols I've attached a PNG to explain the problem. It seems to be some improper installation - what should we check? Thanks Elena |
From: Alan W. I. <ir...@be...> - 2014-01-28 19:33:11
|
On 2014-01-28 12:50+0100 Elena Budnik wrote: > Bonjour, > > Our installation is CentOS 64 bit, PLplot 5.9.10, cairo-devel v 1.8.8, > pango-devel v 1.28.1. > > x06c from PlPlot examples: > > devices 1-3 - Xlib, PostScript - everything is OK. > devices 7-13 - SVG and all cairo drivers - cannot recognize some symbols > > I've attached a PNG to explain the problem. > > It seems to be some improper installation - what should we check? > Hi Elena: Thanks for switching your PLplot questions to this list, and thanks for a nice demonstration of the issue you have encountered with standard example 6. I just double-checked and cannot replicate it here (Debian stable), but I think I know what the problem is on your CentOS platform. First, to give you some background, devices 1-3 use our internal Hershey fonts to render those symbols. Those fonts are normally quite limited, but in their limited range (such as example 6) they are reliable but ugly. The cairo (and svg and qt) device drivers access system fonts the modern way where the required glyph is specified by unicode index. Normally, the results are much more complete than the Hershey fonts. For example, compare results for -dev xwin and -dev xcairo for standard examples 23 and 24. But if you look carefully at the example 6 results you have sent, that cairo device is telling you that glyphs are missing from your system fonts for unicode index 25b3, 22c6, and 2299, and I expect you will find a number of other missing glyphs (indicated for cairo devices by a rectangular box with a unicode index inside) for examples 23 and 24 as well. The likely explanation is you need to install additional system fonts on your CentOS platform. To give you some excellent information about what system fonts you have currently installed, I strongly suggest you install the gucharmap application (if you don't have it installed already). That gives you a very nice GUI demonstration of what glyphs are supplied by your system fonts. Here for gucharmap, if I use the search widget to find 25b3, 22c6, and 2299 (white up-pointing triangle, star operator, and circled dot operator), they are displayed (as expected) for the FreeSans, FreeSerif, and FreeMono system fonts. Many other system fonts I have installed also contain those glyphs. What happens if you try the same search in gucharmap? You should find the same result (empty glyphs) as for the cairo device driver since gucharmap also depends on libcairo, but I would like you to double-check that to rule out the possibility there is some obscure or subtle problem in the way that the PLplot cairo device driver is using that library compared to gucharmap. Note, that PLplot's modern devices such as the cairo devices never look for a specific system font. Instead, they ask the cairo system library to look for a generic system font (one of the sans, serif, or mono families). That library, in turn, asks fontconfig to automatically find the best glyph choice for the specified unicode index for any system font belonging to the specified sans, serif, or mono broad category of font. gucharmap works in a similar way although in that case you can ask for specific fonts as well (which falls back to the generic search for a glyph if the glyph is not present in the non-generic font you have specified). Assuming that your PLplot and gucharmap results are both telling you there are no system fonts with those desired 25b3, 22c6, and 2299 glyphs, then the likely issue is that your CentOS box just does not have many TrueType fonts installed (yet). So as a next step in the font debugging process, what happens if you try to install the FreeSans, FreeSerif, and FreeMono system fonts? (Those are general unicode fonts with good looking glyphs that have a very large coverage including 25b3, 22c6, and 2299 of the possible unicode glyphs.) On Debian, the name of the package that contains those system fonts is fonts-freefont-ttf, but on CentOS, the name of the package will be different, and you might have to use the rpmfind facilities to find what the package name is. Once you have those system fonts installed, then gucharmap should reveal very large numbers of glyphs available in most of the unicode index blocks, and examples 6, 7, 23, and 24 should show few or no missing glyphs. Let this list know whether installation of additional system fonts solves the problem for you. If that step doesn't solve your system font problems, then the possibility also exists that there is some bad screwup (e.g., fontconfig not being configured properly) in how CentOS installs system fonts. But I think a lot of CentOS users would be loudly complaining if that were the case so I view that possibility as fairly unlikely. Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); the Time Ephemerides project (timeephem.sf.net); PLplot scientific plotting software package (plplot.sf.net); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |
From: Elena B. <Ele...@ir...> - 2014-02-14 08:57:25
|
Alan, thanks once more It was really a problem of the absence of several fonts. Working 'font package' for CentOS 64 bit is: rpm -qa *font* xorg-x11-font-utils-7.2-11.el6.x86_64 fontconfig-2.8.0-3.el6.x86_64 liberation-sans-fonts-1.05.1.20090721-5.el6.noarch dejavu-fonts-common-2.30-2.el6.noarch ghostscript-fonts-5.50-23.1.el6.noarch libXfont-1.4.1-2.el6_1.x86_64 fontconfig-devel-2.8.0-3.el6.x86_64 dejavu-sans-fonts-2.30-2.el6.noarch libfontenc-1.0.5-2.el6.x86_64 fontconfig-2.8.0-3.el6.i686 urw-fonts-2.4-10.el6.noarch fontpackages-filesystem-1.41-1.1.el6.noarch liberation-fonts-common-1.05.1.20090721-5.el6.noarch Best regards Elena On 01/28/2014 08:33 PM, Alan W. Irwin wrote: > On 2014-01-28 12:50+0100 Elena Budnik wrote: > >> Bonjour, >> >> Our installation is CentOS 64 bit, PLplot 5.9.10, cairo-devel v >> 1.8.8, pango-devel v 1.28.1. >> >> x06c from PlPlot examples: >> >> devices 1-3 - Xlib, PostScript - everything is OK. >> devices 7-13 - SVG and all cairo drivers - cannot recognize some >> symbols >> >> I've attached a PNG to explain the problem. >> >> It seems to be some improper installation - what should we check? >> > > Hi Elena: > > Thanks for switching your PLplot questions to this list, and thanks > for a nice demonstration of the issue you have encountered with > standard example 6. I just double-checked and cannot replicate it > here (Debian stable), but I think I know what the problem is on your > CentOS platform. > > First, to give you some background, devices 1-3 use our internal > Hershey fonts to render those symbols. Those fonts are normally quite > limited, but in their limited range (such as example 6) they are > reliable but ugly. The cairo (and svg and qt) device drivers access > system fonts the modern way where the required glyph is specified by > unicode index. Normally, the results are much more complete than the > Hershey fonts. For example, compare results for -dev xwin and -dev > xcairo for standard examples 23 and 24. > > But if you look carefully at the example 6 results you have sent, that > cairo device is telling you that glyphs are missing from your system > fonts for unicode index 25b3, 22c6, and 2299, and I expect you will > find a number of other missing glyphs (indicated for cairo devices by > a rectangular box with a unicode index inside) for examples 23 and 24 > as well. The likely explanation is you need to install additional > system fonts on your CentOS platform. > > To give you some excellent information about what system fonts you > have currently installed, I strongly suggest you install the gucharmap > application (if you don't have it installed already). That gives you > a very nice GUI demonstration of what glyphs are supplied by your > system fonts. Here for gucharmap, if I use the search widget to find > 25b3, 22c6, and 2299 (white up-pointing triangle, star operator, and > circled dot operator), they are displayed (as expected) for the > FreeSans, FreeSerif, and FreeMono system fonts. Many other system > fonts I have installed also contain those glyphs. > > What happens if you try the same search in gucharmap? You should find > the same result (empty glyphs) as for the cairo device driver since > gucharmap also depends on libcairo, but I would like you to > double-check that to rule out the possibility there is some obscure or > subtle problem in the way that the PLplot cairo device driver is using > that library compared to gucharmap. > > Note, that PLplot's modern devices such as the cairo devices never > look for a specific system font. Instead, they ask the cairo system > library to look for a generic system font (one of the sans, serif, or > mono families). That library, in turn, asks fontconfig to > automatically find the best glyph choice for the specified unicode > index for any system font belonging to the specified sans, serif, or > mono broad category of font. gucharmap works in a similar way > although in that case you can ask for specific fonts as well (which > falls back to the generic search for a glyph if the glyph is not > present in the non-generic font you have specified). > > Assuming that your PLplot and gucharmap results are both telling you > there are no system fonts with those desired 25b3, 22c6, and 2299 > glyphs, then the likely issue is that your CentOS box just does not > have many TrueType fonts installed (yet). > > So as a next step in the font debugging process, what happens if you > try to install the FreeSans, FreeSerif, and FreeMono system fonts? > (Those are general unicode fonts with good looking glyphs that have a > very large coverage including 25b3, 22c6, and 2299 of the possible > unicode glyphs.) On Debian, the name of the package that contains > those system fonts is fonts-freefont-ttf, but on CentOS, the name of > the package will be different, and you might have to use the rpmfind > facilities to find what the package name is. Once you have those system > fonts installed, then gucharmap should reveal very large numbers > of glyphs available in most of the unicode index blocks, and examples 6, > 7, 23, and 24 should show few or no missing glyphs. > > Let this list know whether installation of additional system fonts > solves the problem for you. If that step doesn't solve your system > font problems, then the possibility also exists that there is some bad > screwup (e.g., fontconfig not being configured properly) in how CentOS > installs system fonts. But I think a lot of CentOS users would be > loudly complaining if that were the case so I view that possibility as > fairly unlikely. > > Alan > __________________________ > Alan W. Irwin > > Astronomical research affiliation with Department of Physics and > Astronomy, > University of Victoria (astrowww.phys.uvic.ca). > > Programming affiliations with the FreeEOS equation-of-state > implementation for stellar interiors (freeeos.sf.net); the Time > Ephemerides project (timeephem.sf.net); PLplot scientific plotting > software package (plplot.sf.net); the libLASi project > (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); > and the Linux Brochure Project (lbproject.sf.net). > __________________________ > > Linux-powered Science > __________________________ |