首页 > 解决方案 > 无法使用外部 tikz 文件编译 Rmd 文件

问题描述

我正在尝试从Rmd包含一些tikz图形的文档中编译一个 pdf 文件。

示例Rmd

---
output:
  pdf_document:
    latex_engine: lualatex
header-includes:
    - \usepackage{tikz}
---

# Introduction

Hello.

```{tikz img-plot, echo = FALSE, engine = "tikz", fig.ext = "pdf", fig.cap = "This is my image", code = readLines("testimg.tex")}
```

Figure \@ref(fig:img-plot) is not working.

参考tikz文件testimg.tex

\begin{tikzpicture}
    \node at (0.5, 0.5) {(a)};
\end{tikzpicture}

在使用中编译Rmd文件R

$ echo "rmarkdown::render('test.Rmd', output_file='test.pdf')" | R --no-save -q

给我以下日志:

rmarkdown::render('test.Rmd', output_file='test.pdf')

处理文件:test.Rmd

|
|
| 0% |
|.......................
| 33% 没有R代码的普通文本

|
|..................................................
| 67% 标签:img-plot (with options) List of 5 $ echo : logi FALSE $ engine : chr "tikz" $ fig.ext: chr "pdf" $ fig.cap: chr "This is my image" $ code :语言 readLines("testimg.tex")

|
|……………………………………………………………………………………………………………………………… .....................| 100%无R代码的普通文本

输出文件:test.knit.md

/usr/bin/pandoc +RTS -K512m -RTS test.utf8.md --to latex --from markdown+autolink_bare_uris+tex_math_single_backslash --output test.tex --template /usr/lib/R/library/rmarkdown/rmd /latex/default-1.17.0.2.tex --highlight-style tango --pdf-engine lualatex --variable graphics=yes --lua-filter /usr/lib/R/library/rmarkdown/rmd/lua/pagebreak. lua --lua-filter /usr/lib/R/library/rmarkdown/rmd/lua/latex-div.lua --variable 'geometry:margin=1in' --variable 'compact-title:yes' !错误:(文件“test_files/figure-latex/”“img-plot-1”.pdf)(pdf后端):canno

错误:无法编译 test.tex。调试技巧见 https://yihui.name/tinytex/r/#debugging。有关更多信息,请参阅 test.log。执行停止

错误日志在 中显示双引号""img-plot-1".pdf。这可能与它有关吗?

几周前我曾经能够编译一个类似的文件,这就是为什么我猜测R包中的某些更新,pandoc或者我系统上的其他地方破坏了它。任何想法这可能是什么根源?

系统信息:

标签: rpdfluar-markdowntikz

解决方案


推荐阅读