答案1
虽然确实可以使用类似的东西,但\obeylines
我发现使用tabular
带有明确结构的 -like 构造更容易\\
。
\documentclass{article}
\usepackage{array}
\usepackage{graphicx}
\usepackage{libertine}% just as example
\newenvironment{scaletowidth}[1]%
{%
\tabular{@{}
>{\setbox0=\hbox\bgroup}
l
<{\egroup\resizebox{#1}{!}{\box0}}
@{}
}%
}{\endtabular}
\begin{document}
\begin{scaletowidth}{4cm}
CAPERCALLIE\\
LAMMERGEYERHOFEN\\
CASSOWARY\\
ACCENTOR DOWITCHER DOTTEREL
\end{scaletowidth}
\end{document}
或者,不需要显式的版本\\
。这会导致垂直间距略有不同。
\documentclass{article}
\usepackage{graphicx}
\usepackage{libertine}% just as example
\newenvironment{scaletowidth}[1]%
{%
\begingroup
\lccode`\~=`\^^M
\lowercase{%
\endgroup
\def~{%
\def~{%
\egroup%
\endgraf%
\strut\resizebox{#1}{!}{\box0}%
\setbox0=\hbox\bgroup%
}%
\setbox0=\hbox\bgroup%
}%
}%
\catcode`\^^M=\active
}{\egroup}
\begin{document}
\begin{scaletowidth}{4cm}
CAPERCALLIE
LAMMERGEYERHOFEN
CASSOWARY
ACCENTOR DOWITCHER DOTTEREL
\end{scaletowidth}
\end{document}
我没有发布更多图片,因为你不会注意到差异。(但是,即使很小。)