
Мое оглавление выглядит так:
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
Возможно, это не лучший и не самый простой ответ... Я переопределил разделы, чтобы отобразить различный edry к toc и иметь различный вид в теле:
\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. Я просто сделал исходный nonstarred без опции toc, чтобы иметь опцию toc.
Результат в содержании:
И в теле: