我有一份报告,将作为 Shiny 应用程序的一部分生成。基本上是 Shiny 仪表板的 PDF 版本。我需要在报告标题中添加一个特定部分。它由 4 行文本组成,周围是方框(向左对齐)和徽标(向右对齐),位于报告顶部的同一行/空间中。它应该看起来像这样(示例):
我实际上还没有代码来执行此操作。现有标题位于已使用的 Word 文档中,我正在尝试自动执行此过程。我尝试了各种组合和其他\tablular
东西\tabularx
。我的第一个想法是制作一个表格,全页宽度,包含每个部分 - 第一列中的文本和第二列中的徽标。但是,在第一列中获得多行并在其周围设置一个框对我来说很有挑战性。
由于这基本上是一个 knitr / RMarkdown (.Rmd) 文档,因此我使用了header.tex
我在序言中包含的文件。以下是header.tex
内容:
\usepackage{graphicx}
\usepackage{framed}
\usepackage{soul}
\usepackage{rotating}
\usepackage{tabularx}
\usepackage[table]{xcolor}
\usepackage{booktabs}
\usepackage{xcolor}
\usepackage{color}
\usepackage{fontspec}
\usepackage{array}
\usepackage[flushleft]{threeparttable}
\usepackage{lmodern}
\colorlet{lightred}{red!30}
\colorlet{lightyellow}{yellow!30}
\newcommand{\hlred}[1]{{\sethlcolor{lightred}\hl{#1}}}
\newcommand{\hlyellow}[1]{{\sethlcolor{lightyellow}\hl{#1}}}
\newcommand{\graph}[3]{
\raisebox{-#1mm}{\includegraphics[height=#2em]{#3}}
}
\usepackage{titling}
%\setlength{\droptitle}{10pt}
\pretitle{
\begin{flushleft}
Text
\end{flushleft}
\begin{flushright}
\includegraphics[height=1.7cm]{logo.png}\\[\bigskipamount]
\end{flushright}
\begin{center}
\LARGE
}
\posttitle{\end{center}}
\newcommand\crule[3][black]{\textcolor{#1}{\rule{#2}{#3}}}
我在 knitr 文档上的序言/ yaml 是相当标准的:
---
title: "Title
date: '`r format(Sys.Date(), "%B %d, %Y")`'
output:
pdf_document:
latex_engine: xelatex
includes:
in_header: header.tex
mainfont: Verdana
fontsize: 11pt
linkcolor: blue
geometry: margin=.75in
---
任何帮助都将不胜感激。非常感谢!
答案1
一种方法是,需要array
使用m
列的包。
\documentclass{article}
\usepackage{graphicx,array}
\begin{document}
\begin{tabular*}{\linewidth}{@{\extracolsep{\fill}}|m{4cm}|m{4cm}}
\cline{1-1}
Bla bla \newline Bla \newline Bla \newline bla \newline ...
& \includegraphics[height=2.5cm]{example-image}\\
\cline{1-1}
\end{tabular*}
\end{document}