根据建议这里,我使用\includepdf
将几个多页的乐谱 PDF 文件插入到 LaTeX 文档中:
\newcommand{\insertScore}[3] {
\addcontentsline{toc}{section}{#2}
\includepdf[scale=0.8,pages=1,pagecommand=\section*{#2}]{#1/score.pdf}
\includepdf[scale=0.8,pages=2-,pagecommand={}]{#1/score.pdf}
… more stuff following
}
但是,虽然大多数 PDF 包含两页或更多页,但有些 PDF 只有一页,这导致第二个 PDF\includepdf
失败。有没有办法在不事先知道所包含的 PDF 将包含多少页的情况下解决这个问题?LaTeX 文件在此项目中自动生成,因此对不同的 PDF 使用不同的命令并不是一个真正的选择...
答案1
首先测试一下 PDF 中的页数(参见这个问题)。
\newcommand{\insertScore}[3] {%
\pdfximage{#1/score.pdf}%
\addcontentsline{toc}{section}{#2}%
\includepdf[scale=0.8,pages=1,pagecommand=\section*{#2}]{#1/score.pdf}%
\ifnum\pdflastximagepages>1\relax
\includepdf[scale=0.8,pages=2-,pagecommand={}]{#1/score.pdf}%
\fi
%
% … more stuff following
}