我想在我的文件中包括一些 PDF 文件,并制作一个带有指向各个页面的超链接的目录。我几乎可以正常工作了\phantomsection
,\addcontentsline
但是,如果我单击目录中的链接,我会被定向到正确的页面,但它会跳转到页面中间而不是开始。我该如何解决这个问题?
为了编译文档,您需要目录中具有相应名称的 pdf 文件。该文档是可编译的,但是每次编译时我都会得到一个 miktex 包管理器窗口,并收到此消息“进程已启动
不幸的是,无法安装 xcolor 包。
请检查日志文件:C:/Users/Tim/AppData/Local/MiKTeX/2.9/miktex/log/pdflatex.log”
编辑:亲爱的 Christian Hupfer。由于我的声誉不足以发表评论,所以这是我知道的唯一与您交流的方式。我该如何改进我的问题以便您能帮助我?
代码:
\documentclass[12pt]{article}
\usepackage{cite}
\usepackage[german]{babel}
\usepackage[utf8]{inputenc}
\usepackage{pdfpages}
\usepackage[bookmarks,hypertexnames=false,debug]{hyperref}
\usepackage{bookmark}
\begin{document}
\section*{test}
\tableofcontents
\newpage
\phantomsection
\addcontentsline{toc}{section}{Section without standard heading1}
\includepdf[pages=-]{asdf}
\newpage
\phantomsection
\includepdf[pages=-]{asdf2}
\addcontentsline{toc}{section}{Section without standard heading2}
\newpage
\phantomsection
\includepdf[pages=-]{asdf3}
\addcontentsline{toc}{section}{Section without standard heading3}
\end{document}
答案1
向目录添加内容的正确方法pdfpages
是addtotoc
(另请参阅
如何通过附加文档开头的自定义标签来生成目录?
请)
\documentclass[12pt]{article}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{pdfpages}
\usepackage[bookmarks]{hyperref}
\usepackage{bookmark}
\begin{document}
\section*{test}
\tableofcontents
\clearpage
\includepdf[pages=-,addtotoc={1,section,1,Section without standard heading1,firstsection}]{7}
\clearpage
\includepdf[pages=-,addtotoc={1,section,1,Section without standard heading2,secondsection}]{8}
\end{document}
这是代码7.pdf
(像往常一样生成pdftex 7.tex
,然后也复制到8.pdf
)
\documentclass{article}
\usepackage{blindtext}
\begin{document}
\section{Beginning \jobname}
\blindtext[50]
\end{document}
答案2
我设法通过以下方法解决了这个问题:
\usepackage{geometry}
\geometry{paper=a4paper, left=35mm, right=35mm, top=0mm, bottom=30mm}
在文档的开始处。
这并没有改变 s 的位置,.pdf
因为它们的大小与整个页面相同,但它会自动使超链接指向正确的位置( 的开头.pdf
)。
答案3
嗨,这是我在安装了 texlive-full 的 Ubuntu 16.04 上使用的。如果您的硬盘上有 3 GB 的空间用于存放大多数不需要的软件包,我建议您始终安装完整的 Latex。这样做最有可能防止出现与 xcolor 软件包类似的问题。
如您所见,我定义了一个名为 fakesection 的新命令,然后它为我完成了这项工作。它跳转到页面顶部(fakesection 所在的位置,PDF 位于下方。)
\documentclass{article}
\usepackage{pdfpages}
\newcommand{\fakesection}[1]{%
\par\refstepcounter{section}% Increase section counter
\sectionmark{#1}% Add section mark (header)
\addcontentsline{toc}{section}{\protect\numberline{\thesection}#1}% Add section to ToC
% Add more content here, if needed.
}
\usepackage{hyperref}
\hypersetup{
colorlinks,
citecolor=black,
filecolor=black,
linkcolor=black,
urlcolor=black
}
\begin{document}
\pagenumbering{gobble}
\includepdf[pages=-]{coverletter.pdf}
\tableofcontents
\pagenumbering{arabic}
\fakesection{Curriculum vitae}
\includepdf[pages=-]{resume.pdf}
\fakesection{Doctoral certificate}
\includepdf[pages=-]{DoctorRerumNaturalium.pdf}
\end{document}