目录:章节标签中没有章节编号

目录:章节标签中没有章节编号

我的目录如下所示:

 I        Chapter I
 I.1      Section I.1
 I.2      Section I.2

 II       Chapter II
 II.1     Section II.1
 II.2     Section II.2

我怎样才能让它看起来像这样:

 I        Chapter I
 1        Section I.1
 2        Section I.2

 II       Chapter II
 1        Section II.1
 2        Section II.2

梅威瑟:

\documentclass{report}
\usepackage[T1]{fontenc}
\usepackage{titlesec}
\usepackage{titletoc}

\titleclass{\part}{top}
\titleformat{\part}[display]
{\centering\normalfont}
{\itshape \partname~\thepart}{1.0em}
{\bfseries\MakeUppercase}
\titlespacing*{\part}{0pt}{0pt}{20pt}

\renewcommand{\thechapter}{\Roman{chapter}}

\dottedcontents{chapter}[3.0em]{\scshape\bfseries\vspace{1.0em}}{2.5em}{0pc}
\dottedcontents{section}[3.0em]{}{3.5em}{0.75pc}

\begin{document}

\startcontents[parts]
\part{Part I}

\printcontents[parts]{}{0}{}

\chapter{Chapter I}
\section{Section I.1}
\section{Section I.2}

\chapter{Chapter II}
\section{Section II.1}
\section{Section II.2}

\stopcontents[parts]

\end{document}

答案1

这是您所需要的。

  • \renewcommand{\thesection}{\arabic{section}}
  • \titleformat{\section} {\normalfont\Large\bfseries}{\thechapter.\thesection}{1em}{}对于标题
  • \renewcommand{\p@section}{\thechapter.}以供交叉引用。

当然,您需要调整目录条目的间距。

例子

\documentclass{report}
\usepackage[T1]{fontenc}
\usepackage{titlesec}
\usepackage{titletoc}

\titleclass{\part}{top}
\titleformat{\part}[display]
{\centering\normalfont}
{\itshape \partname~\thepart}{1.0em}
{\bfseries\MakeUppercase}
\titlespacing*{\part}{0pt}{0pt}{20pt}

\renewcommand{\thechapter}{\Roman{chapter}}

\titleformat{\section}
{\normalfont\Large\bfseries}{\thechapter.\thesection}{1em}{}
\renewcommand{\thesection}{\arabic{section}}
\makeatletter 
\renewcommand{\p@section}{\thechapter.}
\makeatother

\dottedcontents{chapter}[3.0em]{\scshape\bfseries\vspace{1.0em}}{2.5em}{0pc}
\dottedcontents{section}[3.0em]{}{3.5em}{0.75pc}

\begin{document}

\startcontents[parts]
\part{Part I}

\printcontents[parts]{}{0}{}

\chapter{Chapter I}
\section{Section I.1}
\section{Section I.2}

\chapter{Chapter II}
\section{Section II.1}
\section{Section II.2}

\stopcontents[parts]

\end{document}

答案2

可能不是最好和更简单的答案...我重新定义了各个部分以显示与目录不同的内容并在正文中具有不同的外观:

\documentclass{report}
\usepackage[T1]{fontenc}
\usepackage{titlesec}
\usepackage{titletoc}

\titleclass{\part}{top}
\titleformat{\part}[display]
{\centering\normalfont}
{\itshape \partname~\thepart}{1.0em}
{\bfseries\MakeUppercase}
\titlespacing*{\part}{0pt}{0pt}{20pt}


\titleformat{\section}{\large\bf}{}{0pt}{}

\renewcommand{\thechapter}{\Roman{chapter}}
\renewcommand{\thesection}{\arabic{section}}
\dottedcontents{chapter}[3.0em]{\scshape\bfseries\vspace{1.0em}}{2.5em}{0pc}
\dottedcontents{section}[3.35em]{}{3.5em}{0.75pc}

\let\oldsection\section
    \makeatletter
    \def\section{%
    \@ifstar{\@Starred}{\@nonStarred}%
    }
    \def\@Starred{%
    \@ifnextchar[%
    {\GenericWarning{}{Warning: A starred section can not have parameters. I am going to ignore them!}\@StarredWith}%
    {\@StarredWithout}%
    }      
    \def\@StarredWith[#1]#2{%
    \oldsection*[\thesection]{\thechapter.\thesection\space#2}%
    }
    \def\@StarredWithout#1{
    \oldsection*{\thechapter.\thesection\space#1}%
    }
    \def\@nonStarred{%
    \@ifnextchar[%
    {\@nonStarredWith}%
    {\@nonStarredWithout}%
    }
    \def\@nonStarredWith[#1]#2{%
    \oldsection[#1]{\thechapter.\thesection\space#2}%
    }
    \def\@nonStarredWithout#1{%
    \oldsection[#1]{\thechapter.\thesection\space#1}%
    }
    \makeatother




\begin{document}

\startcontents[parts]
\part{Part I}

\printcontents[parts]{}{0}{}

\chapter{Chapter I}
\section{Section I.1}
\section{Section I.2}

\chapter{Chapter II}
\section{Section II.1}
\section{Section II.2}


\stopcontents[parts]

\end{document}

您可以在 def 命令中的新部分中执行任何您想做的事情。我只是将原来没有 toc 选项的无星标部分改为有 toc 选项。

结果内容:

在此处输入图片描述

在正文中:

在此处输入图片描述

相关内容