LaTeX新人教程,30分钟从完全陌生到基本入门

2023-11-17

1.LaTeX软件的安装和使用 
方法A(自助):在MikTeX的官网下载免费的MikTeX编译包并安装。下载WinEdt(收费)或TexMaker(免费)等编辑界面软件并安装。 
方法B(打包):在ctex.org下载ctex套装(含MikTeX及WinEdt) 
哈哈这一部分当然不包含在标题的30分钟里。 


2.第一个文档 
打开WinEdt,建立一个新文档,将以下内容复制进入文档中,保存,保存类型选择为UTF-8。 

\documentclass{article} 
\begin{document} 
  hello, world 
\end{document} 

然后在WinEdt的工具栏中找到编译按钮(在垃圾桶和字母B中间),在下拉菜单中选择XeTeX,并点击编译。 
如果顺利的话,我们就可以顺利生成出第一个pdf文件,点击工具栏中的放大镜按钮就可以快速打开生成的pdf文件。 


3.标题、作者和注释 
建立一个新文档,将以下内容复制进入文档中,保存,保存类型选择为UTF-8,编译并观察现象。 

\documentclass{article} 
  \author{My Name} 
  \title{The Title} 
\begin{document} 
  \maketitle 
  hello, world % This is comment 
\end{document} 


4.章节和段落 
建立一个新文档,将以下内容复制进入文档中,保存,保存类型选择为UTF-8,编译并观察现象。 

\documentclass{article} 
  \title{Hello World} 
\begin{document} 
  \maketitle 
  \section{Hello China} China is in East Asia. 
    \subsection{Hello Beijing} Beijing is the capital of China. 
      \subsubsection{Hello Dongcheng District} 
        \paragraph{Tian'anmen Square}is in the center of Beijing 
          \subparagraph{Chairman Mao} is in the center of Tian'anmen Square 
      \subsection{Hello Guangzhou} 
        \paragraph{Sun Yat-sen University} is the best university in Guangzhou. 
\end{document} 

退格只是我个人偏好,看起来层次清晰美观。实际操作上未必要如此,每一行之前的空格不影响编译生成PDF的排版结果。 


5.加入目录 
建立一个新文档,将以下内容复制进入文档中,保存,保存类型选择为UTF-8,编译并观察现象。 

\documentclass{article} 
\begin{document} 
  \tableofcontents 
  \section{Hello China} China is in East Asia. 
    \subsection{Hello Beijing} Beijing is the capital of China. 
      \subsubsection{Hello Dongcheng District} 
        \paragraph{Hello Tian'anmen Square}is in the center of Beijing 
          \subparagraph{Hello Chairman Mao} is in the center of Tian'anmen Square 
\end{document} 

6.换行 
建立一个新文档,将以下内容复制进入文档中,保存,保存类型选择为UTF-8,编译并观察现象。 
\documentclass{article} 
\begin{document} 
  Beijing is 
  the capital 
  of China. 

  New York is 

  the capital 

  of America. 

  Amsterdam is \\ the capital \\ 
  of Netherlands. 
\end{document} 


7.数学公式 
建立一个新文档,将以下内容复制进入文档中,保存,保存类型选择为UTF-8,编译并观察现象。 

\documentclass{article} 
  \usepackage{amsmath} 
  \usepackage{amssymb} 
\begin{document} 
  The Newton's second law is F=ma. 

  The Newton's second law is $F=ma$. 

  The Newton's second law is 
  $$F=ma$$ 

  The Newton's second law is 
  \[F=ma\] 

  Greek Letters $\eta$ and $\mu$ 

  Fraction $\frac{a}{b}$ 

  Power $a^b$ 

  Subscript $a_b$ 

  Derivate $\frac{\partial y}{\partial t} $ 

  Vector $\vec{n}$ 

  Bold $\mathbf{n}$ 

  To time differential $\dot{F}$ 

  Matrix (lcr here means left, center or right for each column) 
  \[ 
    \left[ 
      \begin{array}{lcr} 
        a1 & b22 & c333 \\ 
        d444 & e555555 & f6 
      \end{array} 
    \right] 
  \] 

Equations(here \& is the symbol for aligning different rows) 
\begin{align} 
  a+b&=c\\ 
  d&=e+f+g 
\end{align} 

\[ 
  \left\{ 
    \begin{aligned} 
      &a+b=c\\ 
      &d=e+f+g 
    \end{aligned} 
  \right. 
\] 

\end{document} 

具体细节可以自行搜索LaTeX的数学符号表或别人给的例子。 


8.插入图片 
先搜索到一个将图片转成eps文件的软件,很容易找的,然后将图片保存为一个名字如figure1.eps。 
建立一个新文档,将以下内容复制进入文档中,保存,保存类型选择为UTF-8,放在和图片文件同一个文件夹里,编译并观察现象。 

\documentclass{article} 
  \usepackage{graphicx} 
\begin{document} 
  \includegraphics[width=4.00in,height=3.00in]{figure1.eps} 
\end{document} 


9.简单表格 
建立一个新文档,将以下内容复制进入文档中,保存,保存类型选择为UTF-8,编译并观察现象。 

\documentclass{article} 
\begin{document} 
  \begin{tabular}{|c|c|} 
    a & b \\ 
    c & d\\ 
  \end{tabular} 

  \begin{tabular}{|c|c|} 
    \hline 
    a & b \\ 
    \hline 
    c & d\\ 
    \hline 
  \end{tabular} 

  \begin{center} 
    \begin{tabular}{|c|c|} 
      \hline 
      a & b \\ \hline 
      c & d\\ 
      \hline 
    \end{tabular} 
  \end{center} 
\end{document} 


10.结尾 
到目前为止,你已经可以用LaTeX自带的article模板来书写一篇基本的论文框架了,至少你已经能够用得起来LaTeX了。 
在论文从框架到完整的过程中,必然还存在许多的细节问题,比如字体字号,比如图片拼合,比如复杂的表格等等。 
那些问题,就请咨询google吧。通常来说我们作为初学者会提出的问题,早就已经有许多的先辈们在网络上提过同样的问题了,看看别人的回答就可以。 
LaTeX在国内的普及率并不高,因此许多时候如果搜英文关键词,会获得更好的效果。


=============================== 
附录,有关我认为不是新手急需,但是的确比较有用的信息

 

1.中文支持 
曾经的LaTeX的中文支持是比较麻烦的一件事,但是现在使用MikTeX+WinEdt的中文支持非常容易。 
只需要把开头的\documentclass{atricle}换成\documentclass{ctexart}就可以了。 
如果是第一次使用ctexart的话,会自动下载和安装宏包和模板,之后就不会再下载了。 
例子参考如下: 
打开WinEdt,建立一个新文档,将以下内容复制进入文档中,保存,保存类型选择为UTF-8。 
\documentclass{ctexart} 
\begin{document} 
你好,世界 
\end{document} 


2.宏包 
\package{}就是在调用宏包,对计算机实在外行的同学姑且可以理解为工具箱。 
每一个宏包里都定义了一些专门的命令,通过这些命令可以实现对于一类对象(如数学公式等)的统一排版(如字号字形),或用来实现一些功能(如插入图片或制作复杂表格)。 
通常在\documentclass之后,在\begin{document}之前,将文章所需要涉及的宏包都罗列上。 
对于新人而言比较常用的宏包有 

编辑数学公式的宏包:\usepackage{amsmath}和 \usepackage{amssymb} 
编辑数学定理和证明过程的宏包:\usepackage{amsthm} 
插入图片的宏包:\usepackage{graphicx} 
复杂表格的宏包:\usepackage{multirow} 

差不多了,对于新人来说,这五个宏包已经基本够用了。如果有其他的特殊需求,就通过google去寻找吧。 
补充说明一下,现在ctexart模板里集成了中文支持,所以CJK宏包并不是必需品。 


3.模板 
模板就是在\documentclass{}后面的大括号里的内容。 
在这一份教程中,我们使用的是LaTeX默认自带的模板article,以及中文模板ctexart。 
模板就是实现我之前所介绍的LaTeX的经验总结的第二点的实现方式。 
一篇文章,我们定义了section,定义了paragraph,就是没有定义字体字号,因为字体字号这一部分通常来说是在模板中实现的。 
一个模板可以规定,section这个层级都用什么字体什么字号怎么对齐,subsection这个层级用什么字体什么字号怎么对齐,paragraph又用什么字体什么字号怎么对齐。 
当然模板里还可以包含一些自定义的口令,以及页眉页脚页边距一类的页面设置。 
由于模板的使用,在我的使用经验里来看,绝对不可能算是基本入门级的内容,所以在正文里当然不会提及。 
如果有人实在想学,如果LaTeX已经接触到这个程度上了,那么再去翻其他厚一些的教材,也不亏了。



4.参考文献和制作幻灯片
做参考文献的时候,文章也已经快写到尾声了,而幻灯片更不是进阶一些的需求。对这两个功能有需求的LaTeX user,使用LaTeX也已经相当熟练了,自己去google一下或查阅其他厚教程是很理所当然的,一点也不冤枉。
在此我就只提供两个搜索关键词,参考文献可以搜bibtex,制作幻灯片可以搜beamer。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LaTeX新人教程,30分钟从完全陌生到基本入门 的相关文章

  • 包含主 *.tex 文件的超级/子目录中的 *.sty 文件

    我想通过 git 与许多其他人分享乳胶文档 因此 我们决定将每个人的 Latex 安装中不存在的所有特殊 sty 文件放入资源目录中 如果这个目录是超级目录 那就太酷了 实际工作目录的 我究竟如何导入这些样式文件 重要的是 即使这些远程样式
  • 使用knitr和latex在Beamer中代码块字体大小

    我正在尝试获取一些 R 代码以适合我的投影仪幻灯片 似乎无法通过更改字体大小size代码块的参数 就像您对其他knitr类型文档所做的那样 唯一的方法似乎是与 footnotesize在每个代码块之前 这让人沮丧 因为我有很多代码块 在很多
  • xtable 包:跳过输出中的一些行

    In the xtable输出 如果我希望某些行中没有任何内容 我将输入NA位于与我要跳过的行相对应的矩阵元素中 然而 这将导致 xtable 输出类似 我想知道的是我如何做到这一点 所以它只是 对于我想跳过的那一行 仍然不确定我是否理解正
  • 如何在 Sweave 文档的表格中包含超链接?

    我有一个包含超链接的数据框 我想使用它作为可点击链接呈现Sweave 我知道关于xtable 但不确定如何使用它将数据帧的内容视为 LaTeX 命令 一种策略是使用sanitize text function来自print函数于xtable
  • LaTeX 中的脚注间距

    我正在写论文 研究生院说我需要在多个脚注之间留一个空格 而且文本和脚注开头之间的空格太小 有没有办法做到这一点 任何帮助是极大的赞赏 footnotesep是脚注之间的空格 setlength footnotesep 0 5cm footi
  • 如何在“表格列表”中仅显示一次表格标题,以便将表格拆分为多个页面

    我正在使用 R 包 xtable and knitr 和乳胶包 longtable and hyperref 准备一份文件 我的一张桌子很长并且分成多页 事实证明 表列表 显示了该表出现的每个页码 但所有超链接都将我带到了该表的开头 我的问
  • MathJax `\\` 换行符不渲染。简单地显示`\\`

    我使用 MathJax CDN 当我将其放入我的网页时 Say P k n is the probability of By definition 所有数学都正确呈现 但是 显示为 而不是换行符 并且没有换行符 它只是在同一条线上继续 所以
  • 带有特定乳胶模板的 bookdown

    我非常相信 Rmarkdown 和 bookdown 是内容出版的未来 但是一些出版商使用特定的 LaTeX 模板 并且为了提交手稿 他们需要在该精确的模板中使用它 例如 请参阅此施普林格手稿模板 http resource cms spr
  • R,knitr 不尊重块和文本的顺序

    想象一下我编织了这个 Rnw 文件 documentclass article begin document Table1 lt
  • Latex verbatim:如何显示tree命令创建的文件目录?

    我想插入使用逐字环境由树命令创建的文件目录图 但在输出文档中 仅保留文件名 并且连接线消失 documentclass article usepackage fancyvrb begin document begin Verbatim ap
  • sphinx 使用 Latexpdf 删除 pdf 中的章节标题?

    我使用 Latexpdf 和 sphinx 生成从 rst 到 pdf 的文档 如何删除每章之前的章节标题 CHAPTER ONE 如中所述狮身人面像文档 http sphinx doc org config html你可以改变latex
  • 正则表达式匹配 LaTeX 方程

    我正在尝试配置 TeXWorks 编辑器以使用与 TeXMaker 相同的语法着色 然而 TexWorks 使用正则表达式来指定应该着色的内容 不幸的是它没有数学的默认设置 我想匹配之间的所有内容 and 之间的一切 and 之间的一切 a
  • 如何使用 stargazer 或 xtable 省略交互?

    是否可以使用omit选项 通常我会将变量名称写入omit c varname 但在互动的情况下我不知道该写什么 有什么提示吗 在其他包中如何解决这个问题 例如xtable documentclass article begin docume
  • R Stargazer 报告系数、置信区间和精确 p 值

    我正在运行一个国家固定效应模型 进一步包括一个虚拟变量 我正在使用 Stargazer 包 但似乎无法弄清楚如何报告置信区间和确切的 p 值 如果我运行我的模型 stargazer dummy CPP title xx align TRUE
  • includepdf 将文档堆栈覆盖在一页上

    我正在尝试使用以下方法在文档中包含 PDF includepdf 问题是 Latex 将 pdf 的所有站点放在文档的一页上 彼此重叠 我对此有点迷失 没有找到任何解决方案 begin figure H includepdf landsca
  • 如何保存和编辑电缆打印的内容?

    这是后续如何以最小的格式将数据框导出到乳胶 https stackoverflow com questions 45929263 how to export a dataframe to latex with some minimal fo
  • 如何在plotly dash应用程序中编写数学符号?

    我想在绘图破折号应用程序中绘制数学符号 例如 我尝试过这个 import dash import dash html components as html app dash Dash name app layout html Div chi
  • 如何处理 Ipython Notebook 中的引用?

    在 Ipython Notebook 中处理引用的最佳方法是什么 理想情况下 我想要一个 bibtex 文件 然后像在 Latex 中一样 在 Ipython markdown 单元格中拥有一个速记列表 并在笔记本末尾提供完整的参考文献 我
  • Jupyter (iPython) 笔记本中的 Latex 宏未由 github 渲染

    我的 Jupyter 笔记本 ipynb 中有一个 Markdown 单元 其中包含以下内容 newcommand paren 1 left 1 right paren beta 2 该文件位于 Github 存储库中 LaTex 宏应用程
  • Python matplotlib:将轴标签/图例从粗体更改为常规粗细

    我正在尝试制作一些出版质量的图 但遇到了一个小问题 默认情况下 matplotlib 轴标签和图例条目的权重似乎比轴刻度线重 是否有办法强制轴标签 图例条目与刻度线的重量相同 import matplotlib pyplot as plt

随机推荐

  • StringUtils常用方法+StringUtils详细介绍

    StringUtils用法 StringUtils详细介绍 博文来源 http yijianfengvip blog 163 com blog static 175273432201212221935832 public static vo
  • anaconda64位环境切换为32位,切换64位和32位python的方法

    今天需要调用一个dll动态函数库 但是本地的python是64位的 dll是32位的 直接调用会报错 OSError WinError 193 1 不是有效的 Win32 应用程序 1 python版本 3 6 anaconda对于pyth
  • Python学习(三)条件运算

    Python学习 三 条件运算 之前讲解了Python中的一些基本语法 今天我们来讲一下Python中的条件运算 一 条件运算符 在Python中我们可以用条件运算符进行最基本的条件判断 基本语法为 语句1 if 条件判断式 else 语句
  • git上传项目到Github(详细版)

    第一步 下载git 官网 Git Downloads 第二步 再需要上传到github的项目右键 打开git的命令行界面 第三步 查看当前分支 所在的分支就是代码上传的地方 git branch 如果需要切换分支 则执行以下语句 切换到主分
  • 浅析java基本数据类型

    java中的基本数据类型4类8种 四种整数类型 byte short int long 两种浮点数类型 float double 一种字符类型 char 一种布尔类型 boolean true 真 和 false 假 所谓数据类型 在数据结
  • 若依免登录进首页

    现象 在启动若依后 输入验证码登录至首页 然后关掉idea中的前后端 再打开idea重启前后端 然后发现若依免登录直接进入到首页 应是login vue中设置了Cookie 如下图所示 这里验证码的答案因为已经缓存到Redis中了 因而在该
  • mpu6050数据,mqtt订阅实时存mysql数据库

    import json import paho mqtt client as mqtt import pymysql import time HOST mqtt域名 PORT mqtt端口号 KEEPALIVE 60 topic MPU60
  • linux系统架构与目录解析

    1 当有两个硬盘都装有linux时 居然可以直接跳进另一个操作系统 不用重启 使用命令chroot 做一些简单的操作 因为linux kernel差不多 2 linux本地启动过程为grub gt kernel gt initrd gt i
  • RIP的防环机制:水平分割、毒性反转、触发更新

    RIP的防环机制 水平分割 毒性反转 触发更新 RIP Routing Information Protocol 路由信息协议 一种距离矢量路由协议 属于IGP协议 适用于中小型网络 使用UDP进行路由信息的交互 端口号520 为了防止产生
  • 计网学习记录,burp抓包等学习记录

    攻防实验室 网安学习记录 1 学习到html的基础架构及其简单用法 1 html基础架构 2 table 定义表格 2 学会用phpstudy创建网站 3 用wordpress对phpstudy创建的网站进行了编辑修改 4 仅通过phpst
  • Android日志分析02-am篇

    Android日志分析02 am篇 在日常分析bug时 免不了和系统ActivityManagerService打交道 根据日志去查看各个Activity的生命周期 从而判断是否出现Activity生命周期异常 先使用adb logcat和
  • for in / for of / forEach 循环

    目录 1 for 循环 2 for in 循环 3 forEach 循环 4 for of循环 5 const 在 for in 或者for of 中的使用 1 for 循环 for 循环的最大缺点是需要跟踪计数器和退出条件 虽然 for
  • nginx解决端口问题含配置步骤---反向代理

    centos7下安装nginx博客链接 https blog csdn net qq 41357211 article details 99694744 nginx配置反向代理步骤 在文章下面 nginx安装在服务器后 例如服务器的域名为
  • android接口加密实现方案

    Fiddler抓包工具配置 android接口如何防抓取 Windows下使用OpenSSL生成RSA证书 文中使用的加密库 1 程序主类 import android os Bundle import android support v7
  • QTreeWidget表头拉伸宽度自适应导致长度显示有遮挡

    对QTreeWidget 设置 header gt setSectionResizeMode 0 QHeaderView ResizeToContents 后 由于控件的拉伸属性再为其设置setColumnWidth 0 200 将不再生效
  • CE+OD外挂制作实战 [提高篇]

    人造指针 基址 实验目标 通过向游戏注入一段特殊汇编代码 实现自动获取动态地址 省略找基址的麻烦 为什么会出现人造指针 1 基址偏移层数太多 很难找 2 有些游戏根本找不到基址 人造指针有什么优缺点 1 人造指针就算游戏更新也无需去重复找基
  • Numpy 通过矩阵操作避免for循环 之 [None, :, :]运用

    我们知道python中 for 循环的效率是不高的 相比之下 直接运用矩阵向量操作 如点乘 可以让代码运行更快 因为在复现paper时候遇到了这样的问题 在这里总结一下我的解决方法 None 介绍 通过None indexing 可以将一个
  • citespace数据处理:用python对Ref文档进行去重

    首先将txt文档提取到Excel表格中筛选出重复项 并且整理到txt中 需要去重的目标txt也准备好 接下来运行代码 注意代码中的路径需要自己按实际情况修改 coding utf 8 author pig 实现去重功能 import re
  • xampp安装

    常见报错 1 apache启动出错 ServerRoot must be a valid directory 解决方法 安装时 直接安装在D盘下 而不是子文件夹下 2 XAMPP与VMware端口443占用问题 Port 443 in us
  • LaTeX新人教程,30分钟从完全陌生到基本入门

    1 LaTeX软件的安装和使用 方法A 自助 在MikTeX的官网下载免费的MikTeX编译包并安装 下载WinEdt 收费 或TexMaker 免费 等编辑界面软件并安装 方法B 打包 在ctex org下载ctex套装 含MikTeX及