我正在整理一份带有以下YAML设置的Rmarkdown PDF文档:
---
output:
pdf_document:
fig_caption: true
fig_crop: true
toc_depth: 3
header-includes:
- \usepackage{hyperref}
---
在文档正文中,我使用以下语法插入了一些PNG图像
Paragraph 1..........
![Caption](path/image.png)
Paragraph 2....
在呈现文档时,图像在文本中按预期显示在Paragraph 1
和Paragraph 2
之间。但是,我得到了一些不可预知的结果,在某些情况下,渲染的图像出现在Paragraph 2
之后,我无法设法解决它。
答案 0 :(得分:4)
在处理类似问题时,我已使用\FloatBarrier
(来自placeins
包)来控制定位。我不是经验最丰富的knitr
rmarkdown
LaTeX
用户,但我之前已经取得了成功。
基本上,图像"浮动&#34 ;;您可以通过插入障碍物来控制可以浮过的东西。这种描述很粗糙,但您可能会发现该技术有效。
答案 1 :(得分:3)
我遇到了同样的问题。如果您将图像包装在“段落”标签中,则图像将与文本一致。
Paragraph 1...
<p>
![](image.png)
</p>
Paragraph 2...
答案 2 :(得分:1)
将插入垂直空格
要保留图形标题,请确保Rmarkdown文档中的[[]仍在单独的段落中(由上方和下方的空白行分隔)
### Heading 1 ![This is my figure caption](`r fig_var`){width=400px}
### Heading 2
其中fig_var
是一个r变量,其中包含图形图像的完整路径
答案 3 :(得分:0)
一个选项是添加
\newpage
以与Floatbarrier类似的方式行事。这不是优雅,但似乎有效。
为了更加清晰,请考虑上面的例子:
Paragraph 1..........
![Caption](path/image.png)
Paragraph 2....
要避免图像在第二段前面移动,您可以执行以下操作:
Paragraph 1..........
![Caption](path/image.png)
\newpage
Paragraph 2....
答案 4 :(得分:0)
对此没有正确答案。
fig.show='hold'
来将图像保留在应有的位置我使用(1)整理了问题,然后使用(2)进行“处理”
\pagebreak
的位置取决于第1段和第2段之前和之后的内容。
只有在看到pdf结果之后,才可以通过使所讨论的图像更好地适合可能的下一页(更多空间)来完成此操作。当然,这也意味着将分页符添加到其他位置(例如,在p1,p2或图像之前或之后)。
答案 5 :(得分:0)