如何右对齐 \part

如何右对齐 \part

我一直试图\part在乳胶中右对齐,但没有成功

还请考虑目录输入和文本格式(整个文档的字体等)。基本上我不想更改 latex 基本部件声明中的任何其他内容,除了右对齐并使用“:”或“-”代替部件号末尾的“。”。

我还想隐藏页码。

感谢你们!

附言:不幸的是,我现在无法发布我所拥有的照片。

我在网上搜索时发现了这段代码:

\def\@part[#1]#2{%
\ifnum \c@secnumdepth >-2\relax
  \refstepcounter{part}%
  %  add to TOC, but without page number (since this page is not counted)
   \addtocontents{toc}{\protect
      \nonumcontentsline{\numberline{\partname\space\thepart}#1}}
\else
  %  add to TOC, but without page number
  \addtocontents{toc}{\protect\nonumcontentsline{#1}}
\fi
\markboth{}{}%
{\centering
 \interlinepenalty \@M
 \normalfont
 \ifnum \c@secnumdepth >-2\relax
   % part number - UPPERCASE, and make it slightly larger
   \large \bfseries \MakeUppercase{\partname\nobreakspace\thepart}
   \par
   \vskip 20\p@
 \fi
 % part title - make it slightly larger
 \large \bfseries #2\par}%
\@endpart}

但无论我做什么,我都无法右对齐它。尝试了flushright环境。我的另一个想法是将其放在 makebox 中对齐。但这是不可能的 :(

更新

使用该minipage环境,我能够右对齐\part:-D yuhuu

我刚刚把这个放到了环境\partminipage,并调了一下它的属性。它工作得很好。但剩下的问题是如何让零件编号和标题在同一行上:

第一部分:第一部分的标题

答案1

使用\raggedleft就足够了。

\documentclass{book}

\makeatletter
\def\@part[#1]#2{%
  \ifnum \c@secnumdepth >-2\relax
    \refstepcounter{part}%
    %  add to TOC, but without page number (since this page is not counted)
    \addtocontents{toc}{\protect
      \nonumcontentsline{\numberline{\partname\space\thepart}#1}}%
  \else
    %  add to TOC, but without page number
    \addtocontents{toc}{\protect\nonumcontentsline{#1}}%
  \fi
  \markboth{}{}%
  {\raggedleft
   \interlinepenalty \@M
   \normalfont\large\bfseries % <-- Adjust here
   \ifnum \c@secnumdepth >-2\relax
     \large\bfseries\partname\nobreakspace\thepart: %
   \fi
   #2\par}%
  \thispagestyle{empty}% <-- remove the page number
  \@endpart}
\makeatother

\begin{document}
\mainmatter
\part{Title of the first part}
\end{document}

如果\large\bfseries不是您想要的,请进行更改以适应。

相关内容