将完整的LaTeX文档包含在其他文档中

18

我目前正在完成我的论文,希望能够在LaTeX文档中包含一些文件。

我想要包括的文件是我向导师提交的每周用LaTeX制作的报告。显然,所有文档都有单独的页码。 我希望它们能够被包括在最终文档中。

我可以使用GhostScript或其他工具将所有最终的PDF文件连接起来,但我希望整个文档中的页码保持一致。

我已经尝试过将每个文档的LaTeX代码包含在主文档中,但是导言部分等会导致问题,而每个报告中我只有一个小标题占据了整个页面...

总之,我正在寻找一种方法,在大型报告中包含多个1或2页自完整的LaTeX文件,保留它们原来的版面设置,但更改页码。

4个回答

9

如果你想在跳过LaTeX文件导言部分的情况下解决\input问题,可以使用newclude包。

否则,你可以使用pdfpages插入预先存在的PDF文件到你的论文中。我记得它有一个“抑制”原始页码的功能,通过覆盖它们用白色框来实现。


8

@Will Robertson的建议非常好。我只想为所有懒人添加一个示例:

\usepackage{pdfpages}

...

% Insert _all_ pages from some_pdf.pdf:
\includepdf[pages=-]{some_pdf}   % the .pdf extension may be omitted

以下是该包的文档:

  • 如果您想要包含特定范围的页面,可以使用 pages={4-9}。如果省略开始页码,默认为第一页,如果省略结束页码,默认为最后一页。
  • 如果您想要横向打印,请使用 landscape=true

5
看看组合包,它似乎正是你正在寻找的。 由于它在源级别合并文档,我想页面编号将是正确的。

5
维护每个文档的原始格式将会很困难,如果它们使用不同的格式。例如,连接不同的文档类将几乎是不可能的。 我建议您采用GhostScript解决方案,并进行轻微修改。Latex允许您使用\setcounter{page}{13}设置起始页码。如果您能找到一个可以计算PDF文档页面数的应用程序(pdfjam Ubuntu软件包中的pdfinfo就是一个例子),则可以执行以下操作: 1. 将下一个文档编译为PDF 2. 将最新的PDF与当前完整的PDF连接起来 3. 查找完整PDF的页面数 4. 使用sed命令将\setcounter{page}{N}命令插入下一个latex文件中 5. 回到开始 如果需要进行其他处理,请再次使用sed。假设您修复了上述算法中的无限循环,您应该最终得到一个包含所有原始PDF的连续行号的最终PDF文档。

到目前为止,我找到的最好的解决方案,我会试一试,谢谢。 - Chris Clarke

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接