Embed Fonts in PDF
Figures generated using ggsave are not guaranteed to embed into the file. Although R comes with utility function (in the grDevices) embedFonts() and the extraFonts has a function embed_fonts() for the same purpose. However, sometimes both still fail to
embed the font into the document. This blog plot provides a much more robust solution based on ghostscript, which is only accessible via the command line interface. Here is my R wrapper function for this purpose. Credits go to the original post of Mr. Rupp.
grDevices::embedFonts()or
extrafont::embed_fonts()My R wrapper function through the system command.
myEmbedFont <- function(infile, outfile) {
script <- paste0("gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite ",
"-dPDFSETTINGS=/prepress ",
"-dEmbedAllFonts=true -sOutputFile=",
outfile, " -f ", infile
)
system(script, intern=TRUE, wait=FALSE)
}