
Отказ от ответственности: по сути, ни один из кодов не является моим оригиналом; я взял его из разных мест в Интернете (например, симпатичный оглавление взят с сайтаэтот ответ.)
Моя проблема:Номер раздела не отображается в моем документе. Я почти уверен, что это очень простое исправление, но я не могу его найти! (Я проверил документацию пакета titlesec, но безуспешно.)
Код:
\documentclass{article}
\usepackage{array}
\usepackage{graphicx}
\usepackage{fancyhdr}
\usepackage{tikz}
\usepackage[T1]{fontenc}
\usepackage[left=20mm, right=20mm,top=15mm,bottom=15mm,includehead=true,headsep=3pt]{geometry}
\usepackage{etoolbox}
\usetikzlibrary{calc}
\usepackage{enumitem}
\usepackage{scalerel}
\usepackage{titlesec}
\usepackage[pdfview=FitB,hidelinks]{hyperref}
%Format the section titles/headings
\newcommand{\colorsection}[1]{%
\colorbox{blue!20}{\parbox{\dimexpr\textwidth}{#1}}}
\titleformat{name=\section}[hang]
{\Large}
{}
{0pt}
{\colorsection}
\titlespacing{\section}{-5mm}{10mm}{\baselineskip}
%change how the TOC appears
\makeatletter
\patchcmd{\l@section}{\begingroup}{\begingroup\hacknumberline}{}{}
\newcommand\hacknumberline{\let\numberline\my@numberline}
\def\my@numberline #1%
{\vbox{\hbox{\kern-\fboxsep
\color{blue!20}%
\rlap{\rule{\dimexpr\linewidth+\fboxsep}{1pt}}%
\kern\fboxsep
}%
\nointerlineskip
\hb@xt@ \@tempdima
{\kern-\fboxsep\colorbox{blue!20}{\color{black}#1.}% I added a dot here
\hfil}%
}%
}
\makeatother
\makeatletter
\renewcommand{\tableofcontents}{\@starttoc{toc}}
\makeatother
\title{MyTOC}
\date{}
\begin{document}
\fontfamily{bch}\selectfont
\maketitle
\tableofcontents
\clearpage
\section{Section 1}
This is Section 1
\subsection{Subsection 1}
Hello
\end{document}
решение1
Согласно документации пакета titlesec
, ваша команда \colorsection
получает только заголовок раздела в качестве аргумента, поэтому вам придется самостоятельно позаботиться о нумерации. Ниже я добавил \arabic{section}\quad
; измените его по мере необходимости.
\newcommand{\colorsection}[1]{%
\colorbox{blue!20}{\parbox{\dimexpr\textwidth}{\arabic{section}\quad#1}}}