RStudio 中的 knitR、XeLaTeX 和 tikz:编译失败

RStudio 中的 knitR、XeLaTeX 和 tikz:编译失败

我尝试在 RStudio 中使用 knitr、tikz 和 xelatex。最小示例:

%-*- program: xelatex -*- 
% !Rnw weave = knitr
\documentclass{article}
\usepackage[a4paper]{geometry}

\usepackage{fontspec}
\usepackage{tikz}

\begin{document}
<<test, dev='tikz'>>= 
plot(1) 
@

Add some text äöüäöü
\end{document}

如果我按原样编译,我会收到“错误:无法将 figure/test-1.tikz 编译为 PDF”。

如果我删除 fontspec,它可以正常编译但不会显示öäüöäü。

如果我删除 R 代码,它可以与öäüöäü 一起正常编译。

sessionInfo()
## R version 3.3.1 (2016-06-21)
## Platform: x86_64-apple-darwin13.4.0 (64-bit)
## Running under: OS X 10.11.6 (El Capitan)
##
## locale:
## [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
##
## attached base packages:
## [1] stats     graphics  grDevices utils     datasets  methods   base
##
## other attached packages:
## [1] knitr_1.14
##
## loaded via a namespace (and not attached):
## [1] magrittr_1.5      formatR_1.4       tools_3.3.1
## [5] filehash_2.3      stringi_1.1.1     grid_3.3.1
## [9] evaluate_0.9

谢谢你的帮助。

答案1

好的,我找到了解决方案:

添加线条

<<pre_load>>=
options(tikzDefaultEngine='xetex')
@

紧接着

\begin{document}

并确保它没有被缓存。为什么只有 fontspec 才需要这个,我不明白。

相关内容