如何抑制目录中自定义标题的超链接但仍保留条目和页码的超链接?

如何抑制目录中自定义标题的超链接但仍保留条目和页码的超链接?

我想使用超链接来显示页码和目录中的相应条目,这\usepackage[linktoc=all]{hyperref}对我来说非常方便。我遇到的唯一问题是,我试图使用包tocloft和将条目分成不同的“部分”,这些部分代表标题\cftaddtitleline。每个部分可以包含多个条目,如下所示: 在此处输入图片描述

由于某种原因,我的标题也有一个超链接,这是不想要的。我希望超链接仅适用于条目页码,而不是标题。现在我知道我可以使用 来隐藏标题的超链接\usepackage[linktocpage=true]{hyperref},但这也会删除条目的超链接。这不是我想要的,“第一个条目”、“第二个条目”和“0.1 第三个条目”仍应有超链接。 在此处输入图片描述

这是所需的输出,我无法在 LaTeX 中重新创建: 在此处输入图片描述

这是我的代码。为了重复使用,您必须在存储 tex 文件的本地目录中创建一个名为“folder”的文件夹,其中包含两个不同的 pdf 文件,分别名为“file1.pdf”和“file2.pdf”。或者您当然可以使用而\section不是\includepdf(当然还要删除相应的参数)。

\documentclass{scrreprt} % notice this is a KOMA-script class

\usepackage{pdfpages}
\usepackage{tocloft}
\usepackage[linktoc=all]{hyperref}

\begin{document}
    
    % Dummy Page
    \chapter*{Dummy Page}
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec a diam lectus.
    
    % Table of contents linking to pdfs
    \clearpage
    \tableofcontents
    
    % Assign the TOC entries to different sections of TOC
    \cftaddtitleline{toc}{part}{First section of table of content}{}    
    \includepdf[pages=-, addtotoc={
        1,addsec,1,First entry,p1}]{folder/file1.pdf}
    
    
    \cftaddtitleline{toc}{part}{Second section of table of content}{}   
    \includepdf[pages=-, addtotoc={
        1,addsec,1,Second entry,p1}]{folder/file2.pdf}
    
    \section{Third entry}
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec a diam lectus.
    
\end{document}

提前感谢任何帮助!

答案1

我能够根据此处的答案解决我的问题: https://tex.stackexchange.com/a/301490/206040

\addtocontents这是使用并\contentsline转换它们以使超链接成为可能的新完整代码hyperref。对于标题,我创建了一个名为的新命令\tocheader,可以将标题名称作为参数给出。此外,此解决方案不再需要使用包tocloft

\documentclass{scrreprt} % notice this is a KOMA-script class

\usepackage{pdfpages}

\let\origcontentsline\contentsline
\let\origaddtocontents\addtocontents
\usepackage[linktoc=all]{hyperref}

\newcommand{\tocheader}[1]{\origaddtocontents{toc}{\protect\origcontentsline{chapter}{#1}{}}}

\begin{document}
    
    % Dummy Page
    \chapter*{Dummy Page}
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec a diam lectus.
    
    % Table of contents linking to pdfs
    \clearpage
    \tableofcontents
    
    % Assign the TOC entries to different sections of TOC
    \tocheader{First section of table of content}
    \includepdf[pages=-, addtotoc={
        1,addsec,1,First entry,p1}]{folder/file1.pdf}
    
    
    \tocheader{Second section of table of content}
    \includepdf[pages=-, addtotoc={
        1,addsec,1,Second entry,p1}]{folder/file2.pdf}
    
    \section{Third entry}
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec a diam lectus.
    
\end{document}

现在的输出看起来就像我想要的那样:

在此处输入图片描述

相关内容