Latex生成的PDF中加入书签/Navigation/导航

本文参考:【Latex学习】在生成pdf中加入书签/目录/提纲_latex 书签-CSDN博客

(这篇文章写的真的太棒了!非常推荐)

题外话,我的碎碎念,这也是我如何提高搜索能力的办法: 想在Latex生成的PDF中加入书签,我在检索这个问题的时候,脑子是有画面的,pdf阅读器左侧的navigation,我忘记了这个叫书签,因为我只记得在word中显示导航项的英文是navigation, 由英文才想起对应的中文是导航,于是检索这个问题时,我在必应的搜索框中键入的关键词是:Latex增加导航。

回车,在搜索页面中,总是会有更相关的词,这个时候,只需要把关键词替换一下,总是会得找到自己问题的解决办法。当然,今天的这个问题,并没有这么复杂,不需要找到更相关的词,再次进行搜索。

总结:

  1. 生成目录:

    复制代码
    \tableofcontents  % 生成目录
  2. 生成PDF书签:

    复制代码
    \usepackage{hyperref}  %添加在begin{document}之前

目录

一、Latex生成目录

二、生成PDF书签

2.1-生成PDF书签

2.1-进一步,消除红色超链接框,让保留超链接


一、Latex生成目录

假设Latex中已经生成多级标题,我们用命令:\tableofcontents可以生成目录。

值得注意的是,这种方式生成的目录不带有超链接。

注意:下述Latex代码 需要使用XeLatex编译

推荐使用Overleaf!简单方便!

R 复制代码
\documentclass{article}
\title{论文题目}
\author{作者}
\date{\today}


\usepackage[UTF8]{ctex} %中文
% 页边距
\usepackage{geometry}
\newgeometry{left = 3 cm, right = 3 cm, top=2.5cm, bottom=1.5cm}

\begin{document}
\maketitle
\textbf{Abstract}


\tableofcontents  % 生成目录

\newpage
\section{Python}  % 一级标题
\subsection{Leetcode}  % 二级标题

\section{写作}  % 一级标题

\section{其他}  % 一级标题
\subsection{Latex}  % 二级标题
\subsection{博客}  % 二级标题

\end{document}	

上述代码效果:

Latex中文环境参考:

LaTex支持中文的三种方式_latex编译中文-CSDN博客

二、生成PDF书签

2.1-生成PDF书签

直接加一行命令:\usepackage{hyperref}

值得注意的是,通过这种方式,得到的PDF中的目录是带有超链接的!

代码如下:

R 复制代码
\usepackage{hyperref}  % 在\begin{document}之前加入

\begin{document}

效果如下:

2.1-进一步,消除红色超链接框,让保留超链接

注意到,在第二节中,生成的PDF文件的目录带有红色的框框(通常红色的框框提示我们这个地方是有超链接的!)但是pdf文档中的目录有红框框,不好看,我们可以使用如下命令:

参考:

【Latex学习】在生成pdf中加入书签/目录/提纲_latex 书签-CSDN博客

本文主要参考:【Latex学习】在生成pdf中加入书签/目录/提纲_latex 书签-CSDN博客 , 这篇文章给出了两种生成PDF书签的方式,一是通过**hyperref** Latex宏包 ,二是通过pdfcomment Latex宏包

下面是由ChatGPT给出的hyperref宏包和pdfcomment宏包之间的区别:

pdfcommenthyperref是两个不同的LaTeX包,它们分别用于不同的目的。

  1. pdfcomment包用于在PDF文档中添加注释和批注。它提供了一些命令,可以在文档中添加注释、批注、高亮和下划线等标记,这些标记会直接在生成的PDF文件中显示。这对于在共享或审阅文档时添加注释非常有用。

  2. hyperref包用于创建超链接和书签。它可以让你在文档中创建内部和外部链接,包括交叉引用、URL链接、目录链接等。此外,hyperref还可以在PDF文档中生成书签,使得阅读和导航文档变得更加方便。

虽然这两个包都与PDF文档有关,但它们的功能和用途是不同的。pdfcomment用于添加注释和标记,而hyperref用于创建链接和书签。如果你需要在文档中添加注释,可以使用pdfcomment包;如果你需要创建链接和书签,可以使用hyperref包。需要注意的是,当同时使用这两个包时,可能会出现一些兼容性问题,需要小心处理。

相关推荐
不断进步的咕咕怪1 天前
meme分析
笔记
中屹指纹浏览器1 天前
进程级沙箱隔离与WebGL指纹抗识别:指纹浏览器核心技术难点与工程落地
经验分享·笔记
sayang_shao1 天前
Rust多线程编程学习笔记
笔记·学习·rust
Kratzdisteln1 天前
【MCM】(x= (N_A),y=(N_G),z=(p))RGB=T*
pdf
进阶的猪1 天前
Qt学习笔记
笔记·学习
mango_mangojuice1 天前
Linux学习笔记 1.19
linux·服务器·数据库·笔记·学习
Kratzdisteln1 天前
【1902】process_assignment_pdf()
大数据·人工智能·pdf
BlackWolfSky1 天前
鸿蒙中级课程笔记6—使用ArkWeb开发
笔记·华为·harmonyos
浅念-1 天前
C语言——双向链表
c语言·数据结构·c++·笔记·学习·算法·链表
ruxshui1 天前
个人笔记: 星环Inceptor/hive普通分区表与范围分区表核心技术总结
hive·hadoop·笔记