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

时间:2009-04-28 12:31:02

标签: latex pdflatex

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

我想要包含的文件是在LaTeX中向我的主管完成的每周报告。显然,所有文件都是单独编号的。 我希望将它们纳入最终文件。

我可以使用GhostScript或其他工具连接所有最终的PDF,但我希望在整个文档中保持一致的编号。

我尝试在主文档中包含每个文档中的LaTeX,但是序言等导致问题,我在每个报告中的小标题占用了整整一页......

总之,我正在寻找一种在大型报告中包含1或2页自填式LaTeX文件的方法,保留原始布局,但更改页码。

4 个答案:

答案 0 :(得分:9)

对于\input在跳过序言时可能解决原始LaTeX文件的问题,newclude包可能会有所帮助。

否则,您可以使用pdfpages将预先存在的PDF插入论文。我似乎记得它有一个“压制”原始页码的功能,用白框盖住它们。

答案 1 :(得分: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}。如果省略start,则默认为第一页,如果省略end,则默认为最后一页。
  • 要将其包含在横向模式中,请执行landscape=true

答案 2 :(得分:5)

查看combine包,这似乎正是您要搜索的内容。 由于它在源级合并文档,我猜页码是正确的。

答案 3 :(得分:4)

如果使用不同的格式,维护每个文档的原始格式将很困难。例如,连接不同的文档类几乎是不可能的。

我建议你稍微改一下GhostScript解决方案。 Latex允许您使用\ setcounter {page} {13}设置起始页码。如果您可以找到可以计算PDF文档页面的应用程序(pdfjam Ubuntu包中的pdfinfo就是一个例子),那么您可以执行以下操作:

  • 将下一个文档编译为PDF
  • 将最新的PDF与当前的完整PDF连接起来
  • 查找完整PDF的页数
  • 使用sed将\ setcounter {page} {N}命令插入下一个latex文件
  • 回到起点

如果您需要进行任何其他处理,请再次使用sed。你应该(假设你修复了上述算法中的无限循环;-))最终得到一个最终的PDF文档,其中包含所有连接的原始PDF和连续的行号。