我需要设置最小表格(单行表格)高度,并对齐其中的内容。为此,我在表格中包装了正确的tabular
内容,而 parbox 给出了最小高度。parbox
valign
我的问题是 - 如何在 parbox 中对齐表格(或者使用 minipage 进行对齐,但是 - 如何设置最小高度)?
以下是示例代码(与上一个问题相同:):如何对齐表格(此处位于标题中)
\documentclass{book}
\usepackage{fancybox,fancyhdr}
\usepackage[T1]{fontenc}
\usepackage[dvipsnames]{xcolor}
\usepackage[left=72pt,right=72pt,
headheight=124pt,
top=\dimexpr124pt+\headsep\relax,% <- added
textheight =540pt
]{geometry}
\usepackage{array}
\newcolumntype{L}[2]{>{\raggedright\arraybackslash}{#2}{#1}}
\fancyhf{}
\fancyhead[C]{%
\sbox{0}{\parbox{\textwidth}{\begin{tabular}{@{}L{\textwidth}{p}@{}}Non-disclosure agreement (NDA)\end{tabular}}}%
\ifdim\dimexpr\ht0+\dp0<124pt \dp0\dimexpr124pt-\ht0\fi
\makebox{\usebox{0}}%
}
\usepackage{lipsum}
\usepackage{showframe}
\begin{document}
\pagestyle{fancy}
\lipsum
\end{document}
由于评论:常见任务是制作一个具有一列和多列以及 valign-halign 和固定最小高度的表格。在我的示例中,我仅使用一列来使任务不那么复杂。
答案1
这是一个更简单的解决方案。
\documentclass{book}
\usepackage{fancybox,fancyhdr}
\usepackage[T1]{fontenc}
\usepackage[dvipsnames]{xcolor}
\usepackage[left=72pt,right=72pt,
headheight=124pt,
top=\dimexpr124pt+\headsep\relax,% <- added
textheight =540pt
]{geometry}
\usepackage{array}
\newcolumntype{L}[2]{>{\raggedright\arraybackslash}{#2}{#1}}
\fancyhf{}
\fancyhead[C]{%
%\raisebox{\dimexpr\headheight-\height}[\headheight][0pt]% top alignment
%\raisebox{0pt}[0.5\headheight][0.5\headheight]% middle alignment
\raisebox{\depth}[\headheight][0pt]% bottom alignment
{\begin{tabular}{@{}L{\textwidth}{p}@{}}
Non-disclosure agreement (NDA)\\
%a\\b\\c\\d\\e\\f\\g\\h\\i\\j\\k\\l
\end{tabular}}%
}
\usepackage{lipsum}
\usepackage{showframe}
\begin{document}
\pagestyle{fancy}
\lipsum
\end{document}