将每个部分的文本放在一个环境中

将每个部分的文本放在一个环境中

我想把每个部分的内容放在一个center环境中,这意味着当我写代码时

\section{First}
texts\dots
text text text
\section{Second}
texts\dots
text text text

它将显示为

I.1 First
    texts...
text text text

I.2 Second
    texts...
text text text

如何获得它?

答案1

我认为最简单的方法是重新定义命令\section。它的原始定义来自book.cls(通过查看章节编号)是

\newcommand\section{\@startsection {section}{1}{\z@}%
                                   {-3.5ex \@plus -1ex \@minus -.2ex}%
                                   {2.3ex \@plus.2ex}%
                                   {\normalfont\Large\bfseries}}

通过添加\raggedright字体选择,部分格式将被本地化,并且我们可以将整个文档设置\centering为居中对齐。

左对齐部分;居中文本

\documentclass{book}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\makeatletter
\renewcommand{\thechapter}{\Roman{chapter}}% Redefine chapter numbers
\renewcommand\section{\@startsection {section}{1}{\z@}%
                                   {-3.5ex \@plus -1ex \@minus -.2ex}%
                                   {2.3ex \@plus.2ex}%
                                   {\raggedright\normalfont\Large\bfseries}}
\makeatother
\begin{document}
\centering
\chapter{A chapter}
\section{First section} \lipsum[1]
\section{Second section} \lipsum[2]
\section{Last section} \lipsum[3]
\end{document}

lipsum用于生成虚拟文本,乱码风格。

相关内容