124

我的 LaTeX 让我在每个小节之后分页,因为我的小节位于单独的文件中。我使用在\include{file}使用后添加分页符的命令。

我希望不会因使用\include{file}.

include使用-command后如何不分页?

4

4 回答 4

173

\include总是使用\clearpage,一个不完全合理的默认值。它适用于整个章节,而不是小节(为什么要在单独的文件中放置小节呢?)。

您可以通过使用\input{filename}或加载newclude包并改为编写\include*{filename}来修复它。

于 2009-07-31T01:22:54.377 回答
40

\include您可以停止由放置在它之前引起的分页符\let\clearpage\relax。所以,

\let\clearpage\relax
\include{file1}
\include{file2}
\include{file3}

会将三个文件(以及任何随后包含的文件)的内容放在一起,而不会在它们之间使用分页符。如果您想停止放松\clearpage命令,则将文件包装为包含在这样的组中而不包含分页符:

\begingroup
\let\clearpage\relax
\include{file1}
\include{file2}
\endgroup
\include{file3}

这将停止 file1 和 file2 之间的分页符,但在 file2 之后插入正常的分页符。(注意:我不知道这是否会干扰参考和页码编号,尽管我想应该没问题。)

于 2012-04-08T21:54:53.010 回答
4

Will Robertson 建议的 newclude 包对于避免 clearpage 非常有用。看来,为了\includeonly工作,必须立即调用包\documentclass{...}。在我论文的复杂环境中,我也遇到了参考文献损坏的问题。

当最终版本不需要 includeonly 时,一个好的解决方法是仅在草稿中使用 include:

\newif\ifdraft\drafttrue

或者

\newif\ifdraft\draftfalse

\ifdraft
  \include{...}
\fi

\ifdraft
  \include{file}
\else
  \input{file}
\fi

第一行可以很容易地通过 makefile 附加,以制作草稿或生产版本的生产 make 目标。

\includeonly{file1,file2,...}允许指定将显示在结果文档中的源文件列表\include{file1}(其中file1是示例)。其他的将不会显示,但会在包含相应的辅助文件时考虑用于计数器、标签、目录。

换句话说,通过使用includeandincludeonly可以在草稿中缩短编译时间,同时具有正确的引用。在Wikibooks上进一步阅读。

@威尔罗伯逊

\include非常有用,因为它只允许\includeonly{...}构建需要的部分。在处理较长的文本时,仅包含冗长章节的一部分会在编译时间上产生相当大的差异。它也非常有用,因为在某个时间点工作时不必翻阅冗长的草稿。最后,较小的源代码文件在版本管理中更容易处理,例如 git。

于 2016-02-24T03:54:00.457 回答
1

谢谢你,剑桥

使用 \include 代替 \input,并使用 \includeonly 命令选择要处理的部分

于 2009-07-31T00:05:10.297 回答