这与或\usepackage
有什么不同?它只是将包文件中的命令导入当前文档还是更复杂?\input
\include
答案1
更复杂。\usepackage
:
- 能检查软件包是否比指定的版本日期新
- 能指定加载包的选项
- 能继承以下
\documentclass
行的选项 - 仅加载
.sty
文件 - 检查它是否只在之后
\documentclass
和之前被调用\begin{document}
- 确保 catcode 符合 LaTeX 包语法 (
\makeatletter
/\makeatother
),即使存在expl3
catcode 环境 - 执行各种整理工作,包括将包裹详细信息添加到给出的结果中
\listfiles
- 不会多次加载包的定义
- 检查如果一个包被加载多次,是否请求了相同的选项
而\input
只需开始读取请求的文件,就好像它确实被粘贴在文档的该位置一样。例如,它可用于输入文档文本和/或前导码。
\include
仅适用于在 之后插入文档文本\begin{document}
,实际上它专门用于文档的章节或部分。它对 执行附加操作\input
,例如开始新页面(使用\clearpage
)和更改.aux
文件,以便\includeonly
产生正确的结果。