对于一份出版物,我必须包含另一份出版物。第二份出版物是英文的,采用 IEEEtr 格式。
我当然可以将第二个文件编译成 pdf 文件,并将 pdf 包含到第二个文件中,但页码不会匹配。
删除第二个文件的标题数据实际上不是一个选择,因为设置完全不同(其他语言、样式、定义、内容)......
答案1
您可以使用combine
包,但可能需要一些工作。combine
包的默认设置是所有单个文档都属于同一类,并且支持该类(文章、回忆录、书籍、报告和信件)。文档说,通过一些限制和工作,您可以让它适用于其他情况。
尽管你评论
我当然可以将第二个文件编译成 pdf 文件,并将 pdf 包含到第二个文件中,但页码不会匹配。
这是我采取的方法,因为让页码工作起来相对容易,并且解决方案在这个问题中给出
`xr` - 临时重新定义 `\label` 以将节计数器导出至姊妹文档?。然后您只需要pdfpages
打包并将arara
它们全部放在一起(虽然arara
从技术上讲是可选的,但它使事情变得更容易)。
我创建了3个文件:
主文本
\documentclass{article}
\usepackage{pdfpages}
\begin{document}
\includepdf[pages={-}]{docA.pdf}\clearpage
\includepdf[pages={-}]{docB.pdf}
\end{document}
% arara: pdflatex: { files: [ docA.tex] }
% arara: pdflatex: { files: [ docB.tex] }
% arara: pdflatex: { files: [ main.tex] }
文档A.tex
\documentclass{article}
\usepackage{zref-lastpage}
\usepackage{lipsum}
\makeatletter
\zref@ifpropundefined{pagevalue}{\zref@newprop*{pagevalue}[0]{\number\value{page}}}{}
\zref@addprops{LastPage}{pagevalue}
\makeatother
\begin{document}
\lipsum[1-10]
\end{document}
文档B.tex
\documentclass{article}
\usepackage{zref-xr}
\usepackage{zref-lastpage}
\usepackage{lipsum}
\makeatletter
\zref@ifpropundefined{pagevalue}{\zref@newprop*{pagevalue}[0]{\number\value{page}}}{}
\zref@addprops{LastPage}{pagevalue}
\zexternaldocument[pre-]{docA}\relax
\zref@ifrefundefined{pre-LastPage}{\@latex@error{Zref label `LastPage' of `DocumentA' is undefined}\@ehc}{%
\setcounter{page}{\numexpr\zref@extractdefault{pre-LastPage}{pagevalue}{0}+1\relax}}
\makeatother
\begin{document}
\lipsum[1-10]
\end{document}
然后运行arara
。main.tex
您可以arara
根据需要使指令变得尽可能复杂。