如何将 Rmarkdown 中包含图像和文本的行的两个单元格与 .PDF 输出垂直对齐?

问题描述 投票:0回答:1

我正在使用表格来布局标题,其中一个单元格包含图像,另一个单元格包含文本,但我无法正确垂直对齐它们。

这是我的代码片段:

---
output: pdf_document
---

```{r echo=FALSE}
library(knitr)
library(tibble)

header <- tibble::tibble(logo = "![](G:\\logo.png){width=50}",
                         text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus vehicula sodales ligula, at efficitur erat tincidunt ac. Aenean malesuada turpis at dui aliquam laoreet. Cras ultricies, purus vitae egestas sagittis, neque tellus rutrum purus, in pulvinar neque orci vel odio. Nulla gravida nunc nec metus cursus lacinia. Nulla et augue mattis purus faucibus eleifend. Aliquam congue eget odio vel vehicula. Vestibulum sit amet pharetra dolor. Cras gravida gravida varius. Cras suscipit lacus urna, at semper est tincidunt vel. Aliquam ipsum felis, auctor vel pulvinar vel, blandit at lorem. Ut augue ligula, suscipit non neque a, luctus ultricies lorem. Cras a sem diam.")
```

```{r echo=FALSE}
knitr::kable(header, col.names = c('', ''), align = 'c')
```

这是我期望的结果: 预期结果

这是我得到的实际结果: 实际结果

我以为这将是一个简单的问题,但我找不到解决方案。

要知道的另一件重要的事情是,我在一台无法访问互联网的计算机上工作,我可以使用

tidyverse
,但我无法安装任何其他软件包。

非常感谢您的帮助!

r r-markdown kable
1个回答
0
投票

我同意@Paul Lemmens。通过下面的LaTeX写法,就可以轻松实现了。

---
output: pdf_document
header-includes:
   - \usepackage{graphicx}
   - \usepackage{lipsum}
---

\begin{figure}[h]
    \centering
    \begin{minipage}{0.2\textwidth}
        \centering
        \includegraphics[width=\textwidth]{logo.jpg} %you need to change according to image file name
    \end{minipage}\hfill
    \begin{minipage}{0.8\textwidth}
        \lipsum[1] % This generates the text
    \end{minipage}
\end{figure}
© www.soinside.com 2019 - 2024. All rights reserved.