大型文档,如果把所有的文字都录入在同一个.tex文件中,那个文件的体积是不可估量的,文件的结构式混乱不堪的,文字的定位也是令人头疼的。幸亏latex提供了结构化的处理命令---include。

命令\include{filename}(filename不包含后缀名.tex)能够把那个文件filename的内容编译时插入到当前位置。

要点:

  • 在主文档(例如 main.tex)中书写导言区,包含哪些宏包,对整个文档的风格、字体、行距、引用进行定义。
  • 在主文档的正文区使用命令 \include{filename}来包含子文档。
  • 在子文档里直接以\chapter{} 、\section{}开头,不需要导言区、标题、作者等信息了。
  • 可以再任何一个文件中引用其他文件的标签。
请看下面的实例:
  • main.tex
  1. % !TeX:pdflatex,pdfTeXify
  2. % 测试大型文档拆分多个源文件进行编译。
  3. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  4. %% main.tex
  5. %% 只在 main.tex 当中建立导言区,并include子文件
  6. %% 子文件不需要导言区、begin{document},只需
  7. %% \chapter{}、\section{}等等。
  8. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  9. \documentclass[UTF8]{ctexbook}
  10. \usepackage{graphicx}
  11. \usepackage[CJKbookmarks=true,colorlinks,linkcolor=black,anchorcolor=blue,citecolor=green]{hyperref}
  12. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  13. %%%%%%%%%% Text body %%%%%%%%%%
  14. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  15. \begin{document}
  16. \youyuan
  17. \sffamily
  18. \title{源文件拆分编译}
  19. \author{Lin\TeX9527}
  20. \date{2014--09--04}
  21. \maketitle
  22. \tableofcontents
  23. \include{file1}
  24. \include{file2}
  25. \end{document}

  • file1.tex
  1. \chapter{水果}
  2. \section{葡萄}
  3. 葡萄,紫黑紫黑的,甜,真甜。
  4. \section{西瓜}
  5. 西瓜,圆又圆。
  6. \section{狗狗和西瓜}
  7. 见第\pageref{fig:dog}页的图\ref{fig:dog}。

  • file2.tex
  1. \chapter{动物}
  2. \section{人}
  3. 人,人心隔肚皮。
  4. \section{狗}
  5. 狗是人类的好朋友。
  6. \begin{figure}[htbp]
  7. \centering
  8. % Requires \usepackage{graphicx}
  9. \includegraphics[scale=0.5]{dog}\\
  10. \caption{两只很萌的哈士奇}\label{fig:dog}
  11. \end{figure}

这时整个工程的结构文件:


可以再任何一个源文件中点击编译按钮。


大型文档源文件拆分编辑编译\include{filename}的更多相关文章

  1. 无法对含有多个.java(或.class)文档的程序进行编译(或解释)

    通常初学者会出现这样的问题:无法对含有多个.java(或.class)文档的程序进行编译(或解释). root@yogile-VirtualBox:/alive/string# javac work/ ...

  2. 解决SharePoint 文档库itemadded eventhandler导致的上传完成后,编辑页面保持报错的问题,错误信息为“该文档已经被编辑过 the file has been modified by...”

    在文档库中添加itemadded 后,在上传文件后,会自动打开文档属性的编辑页面,在保存的时候就会报错,说这个文档已经被编辑过了.这是应为默认itemadded实践是异步执行的,会在edit页面打开之 ...

  3. asp.net对word文档进行修改 对于使用word文档做模板编辑比较适用

    最近做项目,需要多word文档进行编辑并导出一个新的word,在最初的word编辑中留下特定的字符串用来替换,然后在本地生成一个新的word文档,并且不修改服务器中的word文档,这样才能保证服务器中 ...

  4. PDF文档的目录编辑与显示

    为了更好的保护PDF文件,可以将其转换为图片的格式,再重新排版编辑. 使用压缩率更高的JPEG 2000图片格式更佳. ---------------------------------------- ...

  5. DPDK - gsg文档(介绍与编译)

    && Hugepage 提前分配hugepage内存,可以减少虚拟页地址转换到物理地址所需的时间. 相关命令: 在虚拟机上运行时,在没有NUMA的机器上,执行“echo 1024 &g ...

  6. MFC单文档视图拆分窗口和相关链接

    第一步:准备2个视图类(如CTViewOne, CTViewTwo) 第二步:在CMainFrame类的头文件中添加数据成员变量: //MainFrm.h protected: CSplitterWn ...

  7. 转 Mindoc搭建流程 文档多人编辑工具。

    安装方法参考: https://www.yuanmas.com/info/1bz9Y126zx.html https://www.iminho.me/version.html #step 1,安装My ...

  8. 在项目中利用TX Text Control进行WORD文档的编辑显示处理

    在很多文档管理的功能模块里面,我们往往需要对WORD稳定进行展示.编辑等处理,而如果使用微软word控件进行处理,需要安装WORD组件,而且接口使用也不见得简单易用,因此如果有第三方且不用安装Offi ...

  9. linux文档编辑

    编辑某个文档: 可以直接编辑的如你有文档aa,可以用vi aa [注意:必须在AA所在的目录下]: 如果没有文档而且你又想编辑就可以直接编辑vi aa[名字你可以随便命名]; 也可以先建立一个文档to ...

随机推荐

  1. Winform开发框架之通用数据导入导出操作的事务性操作完善

    1.通用数据导入导出操作模块回顾 在我的Winfrom开发框架里面,有一个通用的导入模块,它在默默处理这把规范的Excel数据导入到不同的对象表里面,一直用它来快速完成数据导入的工作.很早在随笔< ...

  2. [移动开发]全面理解UnityUI系统

    随着 Unity 4.6 发布,新 UI 系统终于与大家见面了. RectTransform Unity UI 系统使用 RectTransform 实现基本的布局和层次控制.RectTransfor ...

  3. CSS行高line-height的理解

    一.行高的字面意思 “行高“顾名思义指一行文子的高度.具体来说是指两行文子间基线间的距离. 基线是在英文字母中用到的一个概念,我们刚学英语的时候使用到的那个英语本子每行有4条线,其中底部第二条线就是基 ...

  4. C#代码反编译 得到项目可运行源码

    C#代码反编译 得到项目可运行源码 摘自:http://www.cnblogs.com/know/archive/2011/03/15/1985026.html 谈到"C#代码反编译&quo ...

  5. SQL compute by 的使用

    SQL compute by 的使用 摘自:http://www.cnblogs.com/Gavinzhao/archive/2010/07/12/1776107.html GROUP BY子句有个缺 ...

  6. Windows Python2.7环境 安装paramiko模块

    Paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. 举个常见的例子,现有这样的需求:远程连接到Linux服务器,查看上面的日志状态,大家 ...

  7. 转:Web应用程序项目XX已配置为使用IIS

    转:http://www.cnblogs.com/Joetao/articles/2392526.html 今天在看开源项目Umbraco是,出现一个项目加载不了,并报如下错误: Web应用程序项目U ...

  8. centOS 安装 svnserve

    安装说明 系统环境:CentOS-6.3安装方式:yum install (源码安装容易产生版本兼容的问题)安装软件:系统自动下载SVN软件 检查已安装版本 ? 1 2 3 4 5 6 7 8 9 1 ...

  9. 【读书笔记】iOS-GCD-使用方法

    代码: -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { dispatch_async(dispatch_get_gl ...

  10. PL/SQL基础2(笔记)

    1 第一个PL/SQL的程序 DECLARE BEGIN DBMS_OUTPUT.PUT_LINE('Hello World!'); END; / --2一个简单的PL/SQL程序 DECLARE v ...