![当 \pdfinclusioncopyfonts=0 时,R 生成的图形中缺少字符](https://linux22.com/image/330386/%E5%BD%93%20%5Cpdfinclusioncopyfonts%3D0%20%E6%97%B6%EF%BC%8CR%20%E7%94%9F%E6%88%90%E7%9A%84%E5%9B%BE%E5%BD%A2%E4%B8%AD%E7%BC%BA%E5%B0%91%E5%AD%97%E7%AC%A6.png)
我有一个由 R/ggplot2 生成的 .pdf 图形,当作为独立文件查看时可以正确呈现,但当通过 pdftex 嵌入到文档中时,一个字符缺失。我已将问题归结为这个 R 脚本...
library(grid)
cairo_pdf("arghfig.pdf", width=2, height=0.5)
grid.newpage()
grid.text(label = "Bias (\U01d712\u00b2 odds ratio)") #
答案1
当你编译示例时,你可以在日志中看到它加载了字体。在我的情况下是这样的:
d:/texlive/2015/texmf-dist/fonts/type1/public/tex-gyre/qhvr.pfb
该字体显然不是用于文档中的某些文本(无论如何都会使用 cm 字体),而是用于图形中的文本。
应该清楚的是,字体我的PC 与您创建时使用的字体不同你的图形。pdflatex 猜测字体适合——并且几乎正确,除了上标——这并不奇怪,因为像 AZ 这样的普通字符很少成为问题,但像 ² 这样的特殊字符的编码可能会有很大差异——WinAnsi 不是 tex 会产生的编码。
\pdfinclusioncopyfonts=1
强制 pdflatex 使用图形中的字体而不是寻找替代品,在我看来,如果您无法改变图形嵌入和使用字体的方式,这是正确的做法。
我能想到的唯一选择是找到图形使用的字体并尝试强制 pdftex 加载它(但如果您也想在文本中使用英雄,这可能会产生副作用)。