大型文档,如果把所有的文字都录入在同一个.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. Linq之Lambda表达式

    一 什么是LINQ? LINQ即Language Integrated Query(语言集成查询),LINQ是集成到C#和Visual Basic.NET这些语言中用于提供查询数据能力的一个新特性. ...

  2. mfc110.dll丢失,解决方法

    mfc110.dll下载_附文件使用方法 mfc110.dll是存放在windows系统中的一个重要dll文件,缺少它可能会造成部分软件或游戏无法正常运行.当系统提示“没有找到mfc110.dll”或 ...

  3. Verilog学习笔记设计和验证篇(二)...............同步有限状态机

    上图表示的就是数字电路设计中常用的时钟同步状态机的结构.其中共有四个部分产生下一状态的组合逻辑F.状态寄存器组.输出组合逻辑G.流水线输出寄存器组.如果状态寄存器组由n个寄存器组成,就可以记忆2^n个 ...

  4. 数据库==>>数据查询基础

    数据查询基础 还好吗?几天不见,甚是思念呀!笑对人生,好好生活,快快乐乐的迎接我们的美好未来吧! 好吧!抒情结束,我们一起来学习一下我们今天的主题:数据查询基础,很有意思哟.让我们来感受它的魅力吧! ...

  5. 3kb jQuery代码搞定各种树形选择。

    自制Jquery树形选择插件. 对付各种树形选择(省市,分类..)90行Jquery代码搞定,少说废话直接上插件代码.稍后介绍使用说明.是之前写的一个插件的精简版. 1.Jquery插件代码 /* * ...

  6. java线程控制、状态同步、volatile、Thread.interupt以及ConcurrentLinkedQueue

    在有些严格的系统中,我们需要做到干净的停止线程并清理相关状态.涉及到这个主题会带出很多的相关点,简单的总结如下: 我们知道,在java中,有一个volatile关键字,其官方说明(https://do ...

  7. MySQL Cluster配置概述

    一.     MySQL Cluster概述 MySQL Cluster 是一种技术,该技术允许在无共享的系统中部署“内存中”数据库的 Cluster .通过无共享体系结构,系统能够使用廉价的硬件,而 ...

  8. RadioButton 自定义控件

    在res/drawable新建radiobutton.xml(本案例为video——evaluate.xml)如下 <?xml version="1.0" encoding= ...

  9. 微信公共平台开发1 .net

    如果想通过微信去开发(当然,指的是开发模式下),首先 建议先申请一个服务号,因为服务号的功能与接口也多,有些功能订阅号是实现不了的.另外申请过以后必须得通过微信 认证才能开发,好像是得付300大洋,高 ...

  10. python初识(2)

    1.关于编码转换的方式. 比如,讲utf-8的编码转换为unicode方式如下 #-*- coding:utf-8 -*- i="德玛西亚" i_unicode=i_decode( ...