我试图将pdf图像插入到r markdown文件中。我知道可以插入jpg或png图像。我只是想知道是否也可以插入PDF图像。非常感谢!
对不起,我发现之前有一个类似的帖子:Add pdf file in Rmarkdown file
基本上,我可以使用类似下面的东西适用于html输出:
<img src="myFirstAlignment2.pdf" alt="some text" width="4200" height="4200">
类似下面的东西适用于pdf输出:(1)可能的解决方案
\begin{center} <br>
\includegraphics[width=8in]{myFirstAlignment2.pdf} <br>
\end{center}
(2)可能的解决方案![Alt](myFirstAlignment2.pdf)
如果pdf文件不在您的工作目录中,则myFirstAlignment2.pdf
应替换为path\myFirstAlignment2.pdf
。
如果您只是尝试将已导出的图像(例如,某些R分析)插入到pdf图像中,您还可以使用knitr引擎中的标准图像选项。
有类似的东西:
```{r, out.width="0.3\\linewidth", include=TRUE, fig.align="center", fig.cap=c("your caption"), echo=FALSE}
knitr::include_graphics("./images/imagename.pdf")
```
遗憾的是,您无法指定图像输出的初始尺寸(fig.width和fig.height),您需要在初始输出中预先定义,但您可以指定文档中图像的最终尺寸( out.width)。但是,如下所述,这仅限于缩小。
如果您的文件位于同一个工作目录中,您当然也可以省略初始目录规范。请注意指定图像路径时的操作系统差异。
另一种方法是使用@hermestrismegistus在this post上注明的Markdown语法:
![Image Title](./path/to/image.pdf){width=65%}
这也可以并排收集多个图像:
![Image Title](./path/to/image.pdf){width=33%}![Image2 Title](./path/to/image2.pdf){width=33%}![Image3 Title](./path/to/image3.pdf){width=33%}
编辑:
在更广泛地使用文本引用后,我发现使用r块和include_graphics
选项是最有用的。还因为图像对齐方面的灵活性(理由)。
举个例子:
```{r image-ref-for-in-text, echo = FALSE, message=FALSE, fig.align='center', fig.cap='Some cool caption', out.width='0.75\\linewidth', fig.pos='H'}
knitr::include_graphics("./folder/folder/plot_file_name.pdf")
```
该引用稍后可以在文本中使用,例如,图\@ref(fig:image-ref-for-in-text)
说明了等等。
使用此格式需要注意的一些重要事项:
out.width
文件中设置的out.height
和.pdf
条件。所以我建议在原始图像的较大一侧略微设置它们(只需注意任何图表文本都会相应缩放)。image-ref-for-in-text
)不能包含任何下划线(_
),但可以包含短划线(-
)。你会知道你是否通过陈述! Package caption Error: \caption outside float.
的错误消息弄错了fig.pos='H'
。其中H指的是“保持”位置。通过在最后一个花括号之后立即放置一个句号(句号.
),可以对前Markdown选项实现相同的效果。例:
![Image Title](./path/to/image.pdf){width=75%}.
不幸的是,后一种选择导致一些难看的全停。我更喜欢include_graphics
选项的另一个原因。
关于最佳答案的评论,有一种方法可以使用第二个选项,输出不会很小。
使用以下语法,高度为大数。在括号中包含文本是必要的。
![Alt](./file.pdf){width=100% height=400}