使用 fancyhdr 包对表格环境中的图像和文本进行垂直对齐,放置在标题中

使用 fancyhdr 包对表格环境中的图像和文本进行垂直对齐,放置在标题中

Adjustbox 包提供了一种在表格环境中垂直对齐图像和一段文本的方法;我已提供一个示例来展示这一点:

麦维亚

\documentclass{article}
\usepackage{lipsum}
\usepackage{booktabs}
\usepackage[demo]{graphicx}
\usepackage[active,tightpage]{preview}
\usepackage[export]{adjustbox}
\PreviewEnvironment{tabular}
\setlength\PreviewBorder{5pt}
\newlength{\parboxwidth}
\setlength{\parboxwidth}{8.0cm}
\begin{document}
\begin{tabular}[t]{rl}
\midrule
    \adjustbox{valign=t}{\includegraphics[height=2.0cm, keepaspectratio=true]    {image.png}} & %
    \adjustbox{valign=t}{%
    \parbox[t]{\parboxwidth}{%
    \lipsum[1]}
} \\
\midrule
\end{tabular}
\end{document}

输出结果如下:

mwe a 的输出

最后,我想使用 fancyhdr 包将与上述非常相似的功能放置为标题。我在下面包含了我的尝试,但是,正如输出所证明的那样,我似乎无法对齐图像和文本,以使它们的顶部与标题区域的顶部相接。它们对齐到相同的垂直位置,但是,这个位置不在标题的顶部。

网页设计

\documentclass{article}
\usepackage{lipsum}
\usepackage{booktabs}
\usepackage[demo]{graphicx}
\usepackage[export]{adjustbox}
\usepackage{fancyhdr}
\usepackage[showframe,textwidth=245.0pt,%
top=2in,
headheight=1.0in,
headsep=0.20in]{geometry}
\newlength{\parboxwidth}
\setlength{\parboxwidth}{8.0cm}
\begin{document}
\fancypagestyle{plain}{%
\fancyhead[R]{%
    \begin{tabular}{rl}
    \adjustbox{valign=t}{\includegraphics[height=1.0cm, keepaspectratio=true]    {image.png}} & %
    \adjustbox{valign=t}{%
    \parbox[t]{\parboxwidth}{%
    content content content content content content content content content content     content content content content content content content content content content content     content content content content content content content}
}
\end{tabular}
}%
\renewcommand{\headrule}{}%
}%
\makeatletter
\let\ps@firstpage\ps@plain%
\makeatother
\thispagestyle{plain}
\section*{Body}
\lipsum[1]
\end{document}

这给出输出:

mwe b 的输出

任何意见或建议都将不胜感激。

补充材料:

补充材料

第二次尝试补充材料

答案1

您不需要tabular。一个问题是您的图形宽度加上 parbox 宽度加上任何左间隙和间隙必须加起来等于\textwidth,所以我这样定义它,使用\theleftgap\themidgap作为\figurewidth可设置尺寸。而不是adjustbox,我过去常常\belowbaseline[-\ht\strutbox]{...}垂直调整图形以匹配[t]parbox。为了让整个套件和 caboodle 顶部对齐,我将\rule负高度设置为\headheight

textwidth=245.0pt,我注释掉了导致我的 MWE 产生非常窄的输出的字符串。

\documentclass{article}
\usepackage{lipsum}
\usepackage{booktabs}
\usepackage[demo]{graphicx}
\usepackage{fancyhdr}
\usepackage[showframe,%textwidth=245.0pt,%
top=2in,
headheight=1.0in,
headsep=0.20in]{geometry}
\newlength{\parboxwidth}
\def\figurewidth{3cm}
\def\themidgap{1em}
\def\theleftgap{.5\textwidth}
\setlength{\parboxwidth}{\dimexpr\textwidth-\theleftgap-\figurewidth-\themidgap\relax}
\usepackage{stackengine}
\begin{document}
\fancypagestyle{plain}{%
\fancyhead[c]{\rule[-\headheight]{0pt}{1pt}%
    \hspace{\theleftgap}%
    \belowbaseline[-\ht\strutbox]{\includegraphics[width=\figurewidth, height=1cm]{image.png}}%
    \hspace{\themidgap}\parbox[t]{\parboxwidth}{%
    content content content content content content content content content content     
    content}
}%
\renewcommand{\headrule}{}%
}%
\makeatletter
\let\ps@firstpage\ps@plain%
\makeatother
\thispagestyle{plain}
\section*{Body}
\lipsum[1]
\end{document}

在此处输入图片描述

相关内容