LaTeX in 24 Hours - 1. Introduction
文章目录
其他章节目录:
https://www.cnblogs.com/dansz/p/12819112.html
中间一些没必要记录的信息就不写了,如为什么LaTeX更牛?
1.1 What is LaTeX?
- 发展历史
1977:TeX(Donald E. Knuth),主要用于打数学公式。
1985:LaTeX 2.09(Leslie Lamport),基于TeX,更注重文档整体结构而不是细节。
1994:LaTeX 2ϵ\epsilonϵ(Frank Mittelbach的团队),进一步提高。 - 描述
LaTeX是一个基于编程语言写文档的宏包,可以写信,申请,文章,报告,出版物,论文,书籍等等. 其输入输出文件格式如下表。输入 输出 ∗∗.tex**.tex∗∗.tex ∗∗.dvi,∗∗.ps或者∗∗.pdf**.dvi, **.ps 或者**.pdf∗∗.dvi,∗∗.ps或者∗∗.pdf 类似于C语言的∗∗.c**.c∗∗.c或者∗∗.cpp**.cpp∗∗.cpp 类似于C语言的∗∗.exe**.exe∗∗.exe
1.2 Why LaTeX Over Other Word Processors
略…
1.3 How to Prepare a LaTeX Input File?
LaTeX 输入文件主要分为两个部分:Preamble(序文)和Body(主体)。

- 序言部分(Preamble)
包含内容:全局参数,LaTeX扩展包,新指令的定义(这一个翻译有点奇怪,原文是definitions of new instructions)。
例子:\documentclass[a4paper,11pt]{article}
在A4纸上以11pt的字号打印一篇文章。- [参数]
默认参数:纸张为信纸大小,字体大小:10pt
若多个参数应以逗号隔开。

- {文档类型}
letter,article,report,or book。
- [参数]
- 主体部分(Body)
以"\ begin{document}“开始,以”\ end{document}结束。另外\end{document}之后的内容被忽略。

- 输入文件扩展名为.tex.
1.4 How to Compile a LaTeX Input File?
(好想直接复制粘贴…,另外发现一个问题,csdn这个编辑器似乎没有多级列表啊,将就着看吧,强迫症的忍一忍)
- 编译软件
- TeXLive:http://www.tug.org/texlive/ - 全平台
- MiKTeX:https://miktex.org - 全平台
- MacTeX:http://www.tug.org/mactex/index.html - Mac专用
- 编译方法
图形界面
用鼠标点命令行
$ latex ***
例如myarticle.tex,用 $ latex myarticle 编译,会产生三个文件,分别是myarticle.aux,myarticle.log和 myarticle.dvi。myarticle.dvi
最终的输出文件,可用xdvi或evince查看。
命令如下:$ dvips -o myarticle.ps myarticle.dvi //生成.ps
$ dvipdf myarticle.dvi //生成.pdf文件
$ pdflatex myarticle.tex //直接生成pdf
aux和log,略…
1.5 LaTeX Syntax
1.5.1 Commands
LaTeX Commands(LaTeX 命令)可生成新的东西,也可以对已有的东西进行修饰,如修改字体。
下面是几个常用的LaTeX控制符。
反斜杠 - Backslash
一个command通常以反斜杠(\)开头,后面紧跟其他关键字。
例子:\LaTeX
结果:LaTeX\LaTeXLATEX
例子:\copyright
结果:\copyrightc◯非字母符号 - Non-alphabetic Characters
非字母符号通常不出现在LaTeX的命令中。 一些LaTeX的内部命令可能以@开头,这些命令都放在序言部分,并以\makeatletter和\makeatother区分。必要参数 - Mandatory Arguments
参数最多九个,用花括号{ }分开,花括号之间没有空格。
例子:\textcolor{blue}{ this is blue colored }
结果:this is blue colored\textcolor{blue}{ this\ is\ blue\ colored }this is blue colored
分析:修改第二个参数的颜色为蓝色。可选指令
很多命令有可选参数,写在中括号[ ]中,并以逗号分开。 这种有可选参数的命令至少有一个必要参数。
例子:\documentclass[a4paper,11pt,twoside]{article}
分析:纸张大小为A4,字号为11pt,双面打印。以字母结尾的命令
以字母结尾的命令(即,没有任何参数的命令)将忽略后面紧跟的空格。因此,如果后面跟有单词或数字,则该命令应以\结尾把前面的空格显示出来。
例子:\copyright 2007
结果:2007
例子:\copyright\ 2007
结果: 2007
但是,如果在此命令后加上任何标点符号,则该命令不必以\结尾,因为标点符号之前不应带有\加空格。
1.5.2 Environments
LaTeX上下文环境由一对命令组成,在该环境下可执行某些特定的工作,例如,编写方程式或插入图形。 LaTeX环境的不同属性如下:
- 创建环境
创建环境的一对命令是\ begin{ename}和\ end{ename},其中ename是环境的名称。
例子:\ begin{document}和\ end{document}
结果:在LaTeX输入文件中创建文档环境或者说主体

- 嵌套
可在环境中使用命令,也嵌套两个或多个环境。
例子:在\document中可以输入\copyright, 也可以插入图片。 - 必要参数
许多环境都需要一些强制性参数,这些强制性参数放在\begin{}之后。
例子:\begin{spacing}{1.3}
分析:在间距环境中创建1.3 pt的行间距
例子:\begin{tabularx}{10cm}{XXX}
分析:在Tabularx环境中创建三个等宽, 长10厘米的列表。 - 可选参数
像命令一样,许多环境也接受一对[]的可选指令。
例子:\begin{table}[t]
分析:[t]表示将表格放在页面顶部。
1.5.3 Packages
文档类型可通过\documentclass{́}的强制参数进行设定。包括文档的基本信息,如页面布局和分节。用户如果想自定义文档,可添加外部扩展包调用其中命令和环境。
- 加载包
在序言部分的\documentclass{}和\degin{document}中, 通过\usepackage{pname}命令加载外部扩展包,其中pname是软件包的名称。
例子:\usepackage{color}
分析:加载用于生成彩色文字的包
例子:\usepackage{amssymb,amsmath}
分析:加载用于生成AMS类型的数学符号和表达式。 - 可选参数
像命令和环境一样,许多软件包还接受可选指令。
例子:\usepackage[tight]{subfigure}
分析:减少图片之间的间距。 - 不同
与\documentclass[]{}的可选参数不同,\documentclass这类参数是全局参数, 对整个文档起作用。而\usepackage[]{}的可选参数仅对使用扩展包的部分起作用。
1.6 Keyboard Characters in LaTeX
打数学公式用$$, 可能需要加载amssymb这个包。打特殊字符用”\verb“, 或者”\verb!“
- 键盘上能直接打出来的字符

- 要加反斜杠的字符

1.7 How to Read This Book?
略…
LaTeX in 24 Hours - 1. Introduction的更多相关文章
- LaTeX技巧24:LaTeX常用命令集锦
\hyphenation{word list} %断字命令:\showthe\topmargin %显示某个参数的数值或者内容: 在tex编译过程中出现行溢出(overflow hbox)是由于断字程 ...
- 【转】An introduction to using and visualizing channels in Go
An introduction to using and visualizing channels in Go 原文:https://www.sohamkamani.com/blog/2017/08/ ...
- <转载>国外程序员推荐的免费编程书籍资源
一.George Stocker 提供了一大串,分类如下: How to Design Programs: An Introduction to Computing and Programming 2 ...
- Github上的1000多本免费电子书重磅来袭!
Github上的1000多本免费电子书重磅来袭! 以前 StackOverFlow 也给出了一个免费电子书列表,现在在Github上可以看到时刻保持更新的列表了. 瞥一眼下面的书籍分类目录,你就能 ...
- Github 的一个免费编程书籍列表
Index Ada Agda Alef Android APL Arduino ASP.NET MVC Assembly Language Non-X86 AutoHotkey Autotools A ...
- [No0000129]WPF(1/7)开始教程[译]
概要 在我使用了半年多 WPF 后,是时候写点关于 WPF 基础方面的东西了.我发表了一系列针对具体问题的文章.现在是到了让大家明白为什么说WPF是一款在界面开发上带来革命的产品了. 本文针对初级-中 ...
- Go 2 Draft Designs
Go 2 Draft Designs 28 August 2018 Yesterday, at our annual Go contributor summit, attendees got a sn ...
- 22 Gobs of data 设计和使用采集数据的包
Gobs of data 24 March 2011 Introduction To transmit a data structure across a network or to store it ...
- Cheatsheet: 2018 01.01 ~ 02.28
JAVA How to Improve the Performance of a Java Application Java Memory Management Writing Java Micros ...
- <2013 08 13> TeX and LaTeX, some introduction
1. TeX是Donald E. Knuth教授的精心杰作,它是个功能非常强大的幕后排版系统,含有弹性很大,而且很低阶的排版语言.含有九百多条指令,用Pascal语言(的一个子集)写成. 2. T ...
随机推荐
- 一个严谨的STM32串口DMA发送接收机制
关键点: 1.一个半接收机制 2.一个是寄存器的操作顺序 参考链接: https://www.eet-china.com/mp/a167050.html
- 大规模人脸分类—allgather操作(1)
pytorch中 all_gather 操作是不进行梯度回传的.在计算图构建中如果需要经过all_gather操作后,仍需要将梯度回传给各个进程中的allgather前的对应变量,则需要重新继承to ...
- HTTP相关知识学习
五层网络模型 应用层 包括HTTP,FTP... HTTP支持客户/服务器模式 简单快速有getpost方法 灵活,可以传输任意类型 无连接,每次连接只处理一个请求,收到应答就关闭 无状态,对于事物处 ...
- Java 多线程 术语
并行和并发:并发偏重于多个任务交替执行.并行是真正意义上的"同时执行".但两者的最终效果是一样的: 同步和异步:同步是指在同一时间里,一个同步方法调用后需要返回后,才能继续后续的行 ...
- calibredrv命令
flattencell: set L1 [layout create *.gds -dt_expand] $L1 flatten cell TOP_CELL_NAME $L1 gdsout ./*_f ...
- Pod资源的基础管理操作(Kubernetes)
Pod是Kubernetes API中的核心资源类型,它可以定义在JSON或者YAML格式的资源清单中,由资源管理命令进行陈述式声明管理.创建时通过create或apply命令将请求提交到API Se ...
- (已解决)问题:windows下,为THINKPHP配置apache虚拟主机。
1. 环境和需求 win10_x64,php7,apache24,thinkphp5. 现在,我要用apache给THINKPHP的一个项目设置一个虚拟主机,需要配置. 2. 步骤 a. 首先,找到h ...
- zk中控考勤机默认密码登陆
网络空间搜索: app="ZKTECO-考勤管理系统" 找到某一个考勤系统 进行弱口令登陆:admin/****** 成功! End!!!
- loadrunner 11
1 环境windows server 2012 2019 的.net 时, 服务器管理器--仪表板--勾选.net后报错? 其中一个办法就是将服务器临时联网,就能安装成功. 2 联机时 提示如 ...
- howork7
" 形式化方法 阅读了解形式化方法形式化方法|形式化方法对软件开发的挑战:历史与发展 根据表达能力,形式化方法可以分为五类: 1)基于模型的方法:通过明确定义状态和操作来建立一个系统模型 ...