我对目录有疑问。我已更改了章节编号,用文字代替数字,比如说“Dodatok A”。但现在,当章节的“编号”较长时,章节标题和“Dodatok A”会交叉,因此无法阅读。有没有办法调整章节编号的框宽度?我在这里放了一张包含目录部分的图片,您可以在那里看到问题。谢谢。
\documentclass[12pt,a4paper]{article}
\usepackage[slovak]{babel}
\usepackage[utf8x]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{palatino,verbatim}
\usepackage{graphicx}
\usepackage{multirow}
\usepackage{amsmath}
\usepackage{pstricks}
\usepackage{wrapfig}
\usepackage{epsfig}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{color}
\linespread{1.3}
\usepackage[total={17cm,25cm}, top=2.5cm, bottom=2.5cm, left=3.5cm, right=2cm, includefoot]{geometry}
\usepackage{xr}
\usepackage{float}
\usepackage{hyperref}
\usepackage{pdfpages}
\usepackage{calc,etoolbox}
\usepackage[titletoc,toc,title]{appendix}
\numberwithin{equation}{section}
\begin{document}
\tableofcontents
some sections, subsections, figures etc.
\setcounter{section}{0}
\setcounter{subsection}{0}
\renewcommand\thesection{Dodatok \Alph{section}}
\setcounter{figure}{0}
\setcounter{equation}{0}
\renewcommand\thefigure{\Alph{section}\arabic{figure}}
\renewcommand\theequation{\Alph{section}\arabic{equation}}
\section{Kalibračná symetria pre elektromagnetizmus}
text text
\end{document}
答案1
这种调整通常留给以下软件包:tocloft
。但是,也可以通过在适当的时间将调整内容插入到目录中来进行手动调整。使用babel
确实让事情变得有点棘手,因为babel
定义了某些特定于语言的简写。这些简写会影响动态修补(或修改)命令的能力。特别是,etoolbox
用于修补\l@section
- 负责在目录中设置 -style 条目的宏section
- 同时暂时关闭-
; 通过以下方式设置活动babel
:
\documentclass{article}
\usepackage{calc,etoolbox}% http://ctan.org/pkg/{calc,etoolbox}
\usepackage[slovak]{babel}% http://ctan.org/pkg/babel
\begin{document}
\tableofcontents
\section{A section}
\renewcommand{\thesection}{Section~\Alph{section}}
\makeatletter
\addtocontents{toc}{%
\protect\shorthandoff{-}% Remove 'active'ness of '-'
\protect\patchcmd{\protect\l@section}{1.5em}{\widthof{\textbf{Section X\quad}}}{}{}%
\protect\shorthandon{-}}% Make '-' active again
\makeatother
\section{Another section}
\end{document}
由于\tableofcontents
从文件中读取内容.toc
,因此其显示通常会延迟至少一次编译。为此,对于不熟悉 TeX 辅助文件用法的人来说,这有点违反直觉,您需要在文档中插入与 ToC 相关的调整。上面的代码通过插入补丁来替换1.5em
节号允许的默认空间\widthof{\textbf{Section X\quad}}
- 节“数字”的新宽度来实现这一点。