Package hyperref Warning: The anchor of a bookmark and its parent's must not be the same. Added a new anchor on input 怎么修改
时间: 2024-09-30 18:03:04 浏览: 81
这个警告信息来自hyperref LaTeX 包,当你试图设置书签(bookmark)时,如果其锚点(anchor)与父级锚点相同,LaTeX 将发出警告,并自动为你添加一个新的锚点以解决冲突。这种情况通常发生在嵌套的链接或者书签中,为了保持PDF结构的正确性。
要修改这种情况,你可以:
1. **检查链接**:确认链接层级是否合理,避免在一个位置创建多个相同的锚点。确保每个子链接的锚点都不与父级相同。
2. **更改标签**:如果你明确知道要保留相同的锚点,可以在`hyperref`命令中使用`\hypertarget`手动指定新的锚点名称,比如:
```latex
\hypertarget{old-anchor}{\label{new-label}}
```
3. **使用别名**:通过`hyperref`包提供的`\phantomsection`命令生成临时锚点,然后链接到该位置:
```latex
\phantomsection
\label{your-label}
\href{#your-label}{Link text}
```
4. **忽略警告**:如果你确实不需要处理这个警告,可以使用`\usepackage{silence}`来阻止特定类型的警告显示:
```latex
\documentclass{article}
\usepackage{silence}
\WarningFilter{hyperref}{The anchor}
\begin{document}
...
\end{document}
```
记住,在编辑文档时,最好还是尽量避免引起此类警告,以保持文档的清晰性和兼容性。
阅读全文