首先,我要指出,这是我第二次用 LaTex 完成的大型工作。通过第一次,我已经积累了一些经验,但不幸的是,在这里我无法取得进一步的进步。
主要问题是,编号\listoftables
从 1 开始,而表格本身的标题则以表 2(因此编号由于某种原因增加了 1)。此外,从到\listoftables
表格的超链接也不起作用,它总是跳转到标题页(我猜如果找不到引用,会有一个默认的后备行为)。
我会发现:
经过无数次不成功的互联网搜索后,我试图缩小问题首次出现的位置。在我看来,一切都与\printglossary
(带或不带参数)有关。如果词汇表未定义或打印,则\listoftables
和表格本身的编号和超链接正常工作。
如果有人有想法或者能指出我做错的地方/使用错误的地方,我会很高兴。提前谢谢!
MWE(我希望它能起作用):
\documentclass[11pt,a4paper]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[scaled]{helvet}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{caption}
\usepackage{xcolor}
\usepackage[ngermanb]{babel}
\usepackage{fancyhdr}
\usepackage{hyperref}
\usepackage{svg}
\usepackage[style=long,nonumberlist,toc,acronym,xindy]{glossaries}
\usepackage[section]{placeins}
\usepackage{setspace}
\usepackage[autostyle]{csquotes}
\usepackage[
backend=biber,
style=authoryear
]{biblatex}
\newacronym{BSD}{BSD}{Berkeley Software Distribution}
\definecolor{gray}{gray}{0.25}
\captionsetup[table]{skip=10pt}
\captionsetup[table]{labelfont={color=gray},font={color=gray}}
\captionsetup[figure]{skip=10pt}
\captionsetup[figure]{labelfont={color=gray},font={color=gray}}
\hypersetup{
colorlinks,
citecolor=black,
filecolor=black,
linkcolor=black,
urlcolor=black
}
\pagestyle{fancy}
\rhead{\thepage}
\lhead{\nouppercase\leftmark}
\chead{ }
\cfoot{ }
\makeindex
\makeglossaries
\begin{document}
\maketitle
\pagenumbering{Roman}
\newpage
\enlargethispage{-20mm}
\tableofcontents
\clearpage
\begin{onehalfspace}
\listoffigures
\clearpage
\listoftables
\clearpage
\printglossary[type=\acronymtype, title=Abkürzungsverzeichnis, toctitle=Abkürzungsverzeichnis]
% \setcounter{table}{0} <-- With this one I can fix the impact but not the cause :(
\clearpage
\pagenumbering{arabic}
\parindent=0pt
\parskip=6pt
\linespread{1.25}
\section{Section 1}
This is some text with an acronym \gls{BSD}.
\begin{table}[!ht]
\begin{center}
\setlength\tabcolsep{1.5em}
\def\arraystretch{1.25}
\caption{This is some Table}
\label{SomeTable}
\begin{tabular}{lcc}
Header 1 & Header 2 & Header 3 \\
\hline
Content 1 & Content 2 & Content 3 \\
\hline
\end{tabular}
\end{center}
\end{table}
\newpage
\clearpage
\addcontentsline{toc}{section}{Literaturverzeichnis}
\printbibliography[title={Literaturverzeichnis}]
\end{onehalfspace}
\end{document}
答案1
Ulrike 是对的,与正常环境相反,即使没有,longtable
也会增加计数器。我认为这可以被视为 中的一个错误。这是我的解决方案,比我的评论更进一步。如果在 中更正了这个问题,我评论中的解决方案将不再有效。下面的解决方案在任何一种情况下都有效。它只是在词汇表开始时保存计数器,并在结束时恢复它。table
\caption
table
glossaries
glossaries
table
\newcounter{mysavetablecounter}
\AddToHook{env/theglossary/begin}{\setcounter{mysavetablecounter}{\value{table}}}
\AddToHook{env/theglossary/end}{\setcounter{table}{\value{mysavetablecounter}}}