我希望每个章节简介都向右对齐,但希望文本块本身居中。因此,简短的章节简介看起来是居中的,但一旦行开始换行,就会清楚地看到文本实际上是向右对齐的。
除此之外,我memoir
对的章节精确度的外观非常满意,对于全长章节精确度,我希望它们看起来完全一样。
我的第一个想法是使用居中tabulary
环境,但我似乎无法让它编译。
尝试 1
\documentclass[oneside, 11pt]{memoir}
\usepackage{showframe}
\usepackage{tabulary}
\chapterstyle{dash}
\renewcommand{\prechapterprecis}{%
\vspace*{\prechapterprecisshift}%
\begingroup\centering\precisfont\begin{tabulary}{0.75\linewidth}{@{}L@{}}}
\renewcommand{\postchapterprecis}{\end{tabulary}\endgroup}
\begin{document}
\chapter{A chapter}
\chapterprecishere{
A short text
}
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
\chapter{Another chapter}
\chapterprecishere{
A longer text that should be long enough to wrap and to ensure that it keeps going a little bit
}
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
\end{document}
第二次尝试
\documentclass[oneside, 11pt]{memoir}
\usepackage{showframe}
\usepackage{tabulary}
\chapterstyle{dash}
\renewcommand{\chapterprecishere}[1]{%
\vspace*{\prechapterprecisshift}%
\begingroup\centering\precisfont\begin{tabulary}{0.75\linewidth}{@{}L@{}}}%
#1\end{tabulary}\endgroup%
}
\begin{document}
\chapter{A chapter}
\chapterprecishere{
A short text
}
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
\chapter{Another chapter}
\chapterprecishere{
A longer text that should be long enough to wrap and to ensure that it keeps going a little bit
}
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
\end{document}
答案1
我会使用varwidth
允许您将文本设置在与其自然宽度相匹配的框中的包,该框的宽度不得超过预设的最大值。这是一个可以满足您的要求的版本。
\documentclass[oneside, 11pt]{memoir}
\usepackage{showframe}
\usepackage{varwidth}
\chapterstyle{dash}
\renewcommand{\prechapterprecis}{%
\vspace*{\prechapterprecisshift}%
\begin{quote}%
\centering%
\begin{varwidth}{\linewidth}
%Uncomment the next line if you have multiple paragraphs
%in the precis
%\parskip\parsep%
\precisfont}
\renewcommand{\postchapterprecis}{\end{varwidth}\end{quote}}
\begin{document}
\chapter{A chapter}
\chapterprecishere{
A short text
}
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
\chapter{Another chapter}
\chapterprecishere{
A longer text that should be long enough to wrap and to ensure that it keeps going a little bit
}
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
\end{document}