我需要创建签名行。我需要 3 行签名行,每行下面都有不同的文本,但我希望每行的长度都相同,文本居中。
带有 s 的表格\hline
使水平放置变得容易,但垂直放置行的效果不如\overline
。
以下代码实现了将文本置于长度为的(上)线下方的居中xDatum/Unterschrift Ausbildungsleiterx
,但问题是:有没有更好的方法来做到这一点,因为这感觉像是一个非常“奇怪”的解决方案。
\documentclass{article}
\usepackage{calc}
\newcommand{\strich}[1]{%
\makebox[\width][c]{%
\makebox[0pt][l]{%
\makebox[\widthof{xDatum/Unterschrift\ Ausbildungsleiterx}]{%
#1%
}%
}%
\makebox{%
\ensuremath{%
\overline{%
\phantom{%
\mathrm{xDatum/Unterschrift\ Ausbildungsleiterx}%
}%
}%
}%
}%
}%
}
\begin{document}
\begin{center}
\footnotesize{\strich{Datum/Unterschrift\ Auszubildender}}
\vspace{2.5cm}\\
\footnotesize{\strich{Datum/Unterschrift\ Betreuer}\hfill\strich{Datum/Unterschrift\ Ausbildungsleiter}}
\end{center}
\end{document}
请注意,这Datum/Unterschrift Ausbildungsleiter
是我需要放在签名栏下的 3 段文本中最长的一段。
答案1
您可以创建\parbox
并插入\rule
:
\documentclass{article}
\usepackage{calc}
%Specify the longest signaturekey here:
\newcommand{\sigwidth}{\widthof{\footnotesize xDatum/Unterschrift\ Ausbildungsleiterx}}
%Define a signaturbox of 2.5 cm in height with a mandatory argument of the signature
\newcommand{\signaturehere}[1]{%
\parbox[b][2.5cm][b]{\sigwidth}{%
\footnotesize%Everything in footnotesize
\centering%
\rule[-3pt]{\linewidth}{0.4pt}\\[0ex]%
{#1}%
}}
\begin{document}
\begin{center}
\signaturehere{Datum/Unterschrift\ Auszubildender}\\
\signaturehere{Datum/Unterschrift\ Betreuer}\hfill%
\signaturehere{Datum/Unterschrift\ Ausbildungsleiter}
\end{center}
\end{document}
答案2
您还可以自动计算最大的文本:
\documentclass{article}
\usepackage{calc}
\newlength{\signaturelength}
\newcommand{\signatures}[3]{%
\begin{center}\footnotesize % all is \footnotesize
% compute the maximum width
\setlength{\signaturelength}{\maxof{\widthof{#1}}{\widthof{#2}}}%
\setlength{\signaturelength}{\maxof{\signaturelength}{\widthof{#3}}}%
\addtolength{\signaturelength}{2em}% Add some space
% print the three lines with their caption
\strich{#1}\\[2.5cm]
\strich{#2}\hfill
\strich{#3}
\end{center}
}
\newcommand{\strich}[1]{% The line and its caption
\parbox[t]{\signaturelength}{\footnotesize % \parbox does \normalsize
\centering\hrule\vspace{.5ex}\strut#1}}
\begin{document}
\signatures{Datum/Unterschrift Ausbildungsleiter}
{Datum/Unterschrift Betreuer}
{Datum/Unterschrift Ausbildungsleiter}
\end{document}
(感谢 Heiko 发现规则的不一致。