[R-sig-Fedora] evince not showing "greek" and "math" in *.pdf plots
pstiis m@iii@g oii gm@ii@com
pstiis m@iii@g oii gm@ii@com
Mon Mar 11 15:31:07 CET 2024
Hi Martin and Tim,
I also have this bug. Though I think not necessarily with all the same
fonts as Martin.
Using Martin's code:
https://imgur.com/a/ILUoe3H
Fedora 39, Evince 45.0
It's a bug with Evince. I think. I think it's substituting in a font
set that doesn't have all the required symbols. I think it should be
possible to install the required fonts, but I haven't found a solution
that way, yet.
Nevertheless, the following should work, and may be a better solution
anyway, given that embedding the fonts is probably more cross-
platform/viewer friendly:
You can embed the fonts if you have Ghostscript installed (I think it
comes with Fedora already(?) if not then:
sudo dnf install ghostscript
)
You can then use the embedFonts() function in R:
(pdfil <- paste0("plotmath-example_R",
with(R.version, paste0(major, sub("[.]", "", minor))),
".pdf"))
pdf(pdfil)
example(plotmath); mtext(R.version.string)
dev.off()
# Use embedFonts to embed the fonts in the PDF
embedFonts(file = pdfil, outfile = paste0("embedded-example", pdfil),
options = "-dPDFSETTINGS=/prepress")
if(interactive()) {
system(paste("evince", paste0("embedded-example", pdfil), "&"))
}
Or you can do it in the terminal:
gs -dNOPAUSE -dBATCH -dPDFSETTINGS=/prepress -sDEVICE=pdfwrite -
dEmbedAllFonts=true -sOutputFile=plotmath-example-output_embedded.pdf -
f plotmath-example_R432.pdf
Compare:
Embedded:
❯ pdffonts plotmath-example-output_embedded.pdf
name type encoding emb sub uni object ID
---------------------- -------- -------- --- --- --- ------ ---
KHEPSB+Helvetica Type 1C Custom yes yes no 10 0
WNPVSJ+Symbol Type 1C Custom yes yes no 12 0
MQBKOK+Helvetica-Bold Type 1C WinAnsi yes yes no 20 0
Original:
❯ pdffonts plotmath-example_R432.pdf
name type encoding emb sub uni object ID
---------------------- -------- -------- --- --- --- ------ ---
Helvetica Type 1 Custom no no no 16 0
Helvetica-Bold Type 1 Custom no no no 17 0
Symbol Type 1 Symbol no no no 18 0
I hope this works for you. Like I said, I *think* it's a problem with
Evince so it's probably better to file a bug report with them, but I
also think embedding fonts isn't such a bad idea anyway - you'll know
the output will display as intended regardless of the viewer on the
user's system. It does lead to a larger file-size, but I think these
days we can live with that.
Thanks,
Peter
On Mon, 2024-03-11 at 14:15 +0100, Martin Maechler wrote:
> > > > > > Tim Taylor
> > > > > > on Mon, 11 Mar 2024 11:42:35 +0000 writes:
>
> > Hi Martin
> > Probably not the answer you're looking for but on the latest
> Fedora 39 (workstation edition) both locally, and on a freshly
> installed VM (with just R-core installed), all fonts render correctly
> for me in evince.
>
> > $ evince --version
> > GNOME Document Viewer 45.0
>
> > $ R --version
> > R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
> > Copyright (C) 2024 The R Foundation for Statistical Computing
> > Platform: x86_64-redhat-linux-gnu (64-bit)
>
> > It may be worth sharing more details about your installation
> (e.g. Fedora version) to see if anyone has any ideas.
>
> > Tim
>
> Thank you, Tim.
>
>
> Fedora is 38 :
>
> $ lsb_release -a
> LSB Version: :core-5.0-amd64:core-5.0-noarch:cxx-5.0-amd64:cxx-
> 5.0-noarch:desktop-5.0-amd64:desktop-5.0-noarch:languages-5.0-
> amd64:languages-5.0-noarch:printing-5.0-amd64:printing-5.0-noarch
> Distributor ID: Fedora
> Description: Fedora release 38 (Thirty Eight)
> Release: 38
> Codename: ThirtyEight
>
> $ evince --version
> GNOME Document Viewer 44.3
>
> R version does not matter at all.
> Same phenomenon in several versions of R I have installed
> simultaneously (from source).
> As I mentioned, I'm slightly misusing the list for non-R problem
> that I encounter a lot with R {because I like to use
> "plotmath"}, so I apologize in advance.
>
> Maybe it's rather a matter of fonts installed in
> /usr/share/fonts/ ??
>
> Martin
>
> > On Mon, 11 Mar 2024, at 10:51 AM, Martin Maechler wrote:
> >> This problem has bugged me for several years now,
> >> and our own IT staff has tried a few things, but then never
> >> cared enough to persist fixing it.
> >>
> >> It *is* a bug in evince, the standard pdf viewer on Fedora and
> >> IIUC also quite few other Linux distributions, and
> >> *not* a bug in R; hence I am asking for help/hints here.
> >>
> >> A very simple example:
> >>
> >> --------------------------------------------------------------
> -----------------
> >>
> >> (pdfil <- paste0("plotmath-example_R",
> >> with(R.version, paste0(major, sub("[.]", "", minor))),
> ".pdf"))
> >> ## "plomath-example_R433.pdf"
> >>
> >> pdf(pdfil)
> >> example(plotmath); mtext(R.version.string)
> >> dev.off()
> >>
> >> if(interactive())
> >> system(paste("evince", pdfil, "&"))
> >>
> >> --------------------------------------------------------------
> -----------------
> >>
> >> The pdf contains 4 pages, and in all of them *some* of the
> math
> >> symbols are replaced by open rectangles -- because evince does
> >> not find the fonts it should.
> >>
> >> E.g.
> >> - page 1: \pi is properly shown, \phi not
> >> - page 2: all greek letters, \theta, \xi, \eta are *not*
> shown
> >> ...
> >>
> >> Simply typing
> >>
> >> example(plotmath)
> >>
> >> in the R console will show you everything as it should be but
> is
> >> not for us, using evince.
> >>
> >> However, *everything* is rendered correctly, if I use very old
> >> 'xpdf' {which you may have to install
> >>
> >> ## OTOH: This always work fine with the very old 'xpdf' :
> >> system(paste("xpdf", pdfil, "&"))
> >>
> >> So the fonts *are* somewhere on my machine, but evince does
> not
> >> find them;
> >>
> >> How should our IT people fix this?
> >>
> >> IIRC they did install the Zapf Dingbats fonts -- which then
> are
> >> found by xpdf but not by evince ?
> >>
> >>
> >> Thank you in advance,
> >> Martin
> >>
> >> _______________________________________________
> >> R-SIG-Fedora mailing list
> >> R-SIG-Fedora using r-project.org
> >> https://stat.ethz.ch/mailman/listinfo/r-sig-fedora
> >>
>
> > [[alternative HTML version deleted]]
>
> _______________________________________________
> R-SIG-Fedora mailing list
> R-SIG-Fedora using r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-sig-fedora
More information about the R-SIG-Fedora
mailing list