
부록의 정렬을 변경하고 싶습니다. 나는 사용하고있다
\documentclass[12pt]{report}
...
\usepackage{titletoc}
\usepackage[toc,titletoc]{appendix}
\usepackage{tocloft}
\renewcommand{\cftchapleader}{\cftdotfill{\cftdotsep}} % for chapters
\renewcommand{\cftchapfont}{\uppercase}
\renewcommand{\cftchappagefont}{}
\renewcommand{\cfttoctitlefont}{\hfill\uppercase}
\renewcommand{\cftaftertoctitle}{\hfill}
\setlength{\cftbeforetoctitleskip}{-3em}
\renewcommand{\cftloftitlefont}{\hfill\uppercase}
\renewcommand{\cftafterloftitle}{\hfill}
\setlength{\cftbeforeloftitleskip}{-3em}
\renewcommand{\cftlottitlefont}{\hfill\uppercase}
\renewcommand{\cftafterlottitle}{\hfill}
\setlength{\cftbeforelottitleskip}{-3em}
다른 몇 가지 사항을 수정해야 합니다. 이것이 내가 가진 것입니다.
APPENDICES................. 10
APPENDIX A ................ 13
APPENDIX B ................ 15
이것이 나에게 필요한 것입니다.
APPENDICES................. 10
APPENDIX A ............. 13
APPENDIX B ............. 15
답변1
한 가지 가능성은 \titlecontents
다음에서 사용하는 것입니다.titletoc
패키지.
비고:
titletoc
패키지 에 대한 옵션 은appendix
더 이상 필요하지 않습니다.\uppercase
LaTeX 문서에서 사용하면 안되는 TeX 명령입니다. 대신 사용할 수 있습니다\MakeUppercase
. 그러나 이 두 명령 모두 인수를 받기 때문에 질문에 제공된 예에서 수행된 대로\uppercase
(또는 )를 사용하면 오류가 발생합니다.\MakeUppercase
또한 내 대답의 일부 재정의 및 패치에 대해 원래 설정 중 일부가 대체되었음을 확인하십시오. 특히
\l@chapter
점선 리더를 사용하고 대문자를 사용하여 장 항목의 스타일을 지정하기 위해 의 재정의를 사용했습니다. 내부 명령\@cftmaketoctitle
,\@cftmakeloftitle
및\@cftmakelottitle
from 은 각각 ToC, LoF 및 LoT 제목에 대문자 글꼴을 사용하도록tocloft
패치되었습니다(패키지의 도움으로 ).etoolbox
코드:
\documentclass{report}
\usepackage[toc]{appendix}
\usepackage{titletoc}
\usepackage{tocloft}
\usepackage{etoolbox}
\usepackage{textcase}
\makeatletter
\renewcommand*\l@chapter[2]{%
\ifnum \c@tocdepth >\m@ne
\addpenalty{-\@highpenalty}%
\vskip 1.0em \@plus\p@
\setlength\@tempdima{1.5em}%
\begingroup
\parindent \z@ \rightskip \@pnumwidth
\parfillskip -\@pnumwidth
\leavevmode
\advance\leftskip\@tempdima
\hskip -\leftskip
\MakeTextUppercase{#1}\nobreak\leaders\hbox{$\m@th
\mkern \@dotsep mu\hbox{.}\mkern \@dotsep
mu$}\hfill
\nobreak\hb@xt@\@pnumwidth{\hss #2}\par
\penalty\@highpenalty
\endgroup
\fi}
\patchcmd{\@cftmaketoctitle}{\cfttoctitlefont\contentsname}{\cfttoctitlefont\MakeUppercase{\contentsname}}{}{}
\patchcmd{\@cftmakeloftitle}{\cftloftitlefont\listfigurename}{\cftloftitlefont\MakeUppercase{\listfigurename}}{}{}
\patchcmd{\@cftmakelottitle}{\cftlottitlefont\listtablename}{\cftlottitlefont\MakeUppercase{\listtablename}}{}{}
\makeatother
\renewcommand{\cfttoctitlefont}{\hfill}
\renewcommand{\cftaftertoctitle}{\hfill}
\setlength{\cftbeforetoctitleskip}{-3em}
%
\renewcommand{\cftloftitlefont}{\hfill}
\renewcommand{\cftafterloftitle}{\hfill}
\setlength{\cftbeforeloftitleskip}{-3em}
%
\renewcommand{\cftlottitlefont}{\hfill}
\renewcommand{\cftafterlottitle}{\hfill}
\setlength{\cftbeforelottitleskip}{-3em}
\begin{document}
\tableofcontents
\chapter{Test Regular Chapter}
\begin{appendices}
\titlecontents{chapter}[10em]
{\addvspace{10pt}}
{\contentslabel[\MakeUppercase{\appendixname~\thecontentslabel}]{8em}\MakeUppercase}
{\hspace*{-8em}}{\titlerule*[.754em]{.}\contentspage}
\chapter{First Test Appendix}
\chapter{Second Test Appendix}
\end{appendices}
\end{document}
마지막으로 (그리고 단지 제안으로서) ToC 항목에 대문자 글꼴 대신 작은 대문자를 사용하는 것이 더 낫다고 생각합니다. 이는 추가적인 이점도 제공합니다. 구현이 훨씬 더 쉬울 것입니다.