Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ggplot2 pdf import in Adobe Illustrator missing font AdobePiStd

Although changing the fonts used by AI works well, an alternative is to restrict ggplot2 from using Dingbats in the first place by adding the argument 'useDingbats' to your ggsave command eg:

ggsave(plot=p,height=6,width=6,dpi=200, filename="~/example.pdf", useDingbats=FALSE)

I ran into this problem as well on Mac OS X 10.8.2.

This resolved the issue for me:

font='/Library/Application Support/Adobe/PDFL/10.9/Fonts/AdobePiStd.otf'
cp $font /Library/Fonts/

On your system, find the file with find:

find / -name AdobePiStd.otf 2>/dev/null

/Applications/Adobe Photoshop CC 2018/Adobe Photoshop CC 2018.app/Contents/Required/PDFL/Resource/Fonts/AdobePiStd.otf
/Applications/Adobe Illustrator CC 2018/Adobe Illustrator.app/Contents/Required/PDFL Resource/Resource/Fonts/AdobePiStd.otf
/Applications/Adobe Acrobat DC/Adobe Acrobat.app/Contents/Resources/Resource/Font/AdobePiStd.otf

For dots or points that don't' display correctly in a pdf, I just substitute Zapf Dingbats for the missing font in Adobe Illustrator. For simple plot markers, this does the job most of the time.


This seems to be a perverse problem in which Adobe Illustrator cannot find a font (AdobePiStd) that is distributed with Adobe Reader and thus is likely present.

If you search your computer, you are likely to find it. On my WindowsXP system, it was in: C:\Program Files\Adobe\Reader 10.0\Resource\Font

After finding it, you can install it and other fonts in that folder, which should enable Illustrator to find them.

For other font/pdf problems in R, the embedFonts function in grDevices package is useful.


Use useDingbats=FALSE for the pdf output, then Illustrator will no complain.

pdf("example.pdf", useDingbats=FALSE)
ggplot(plotobject, aes(x=Pos, y=Pval),res=300)
dev.off()