CTex基础

2023-11-16

1 什么是CTex?

电子排版系统

2 CTex使用前涉及的文件

  1. .bib文件:相当于一个参考文献的数据库。
  2. .cls文件:为LaTeX2e的格式文件,决定了LaTeX2e源文件的排版布局。
  3. .tex文件:基于宏的流行的文本格式,后期论文的编辑就是在.tex文件。

3 文档的基本结构

  1. \documentclass{*} ,表示文章的排版模式,*中的内容可以是book、report、letter、article。
  2. \usepackage{*},表示使用相关的宏包, 宏包就相当于c语言中所说的头文件。
  3. 文章的正文部分以 \begin{document} 开始,以 \end{document} 结束。其中, \begin{document}之前的部分被称为导言区。
  4. 在CTex的正文部分,段与段之前要空一行,即段与段之前以空行为分段标志。
  5. 在CTex中输出特殊符号 % $ {} \的方式
  • %: /%
  • $: /$
  • {}: /{/}
  • \: $\backslash$
  1. \eject 表示另起一页。
  2. 使用book模式的实践例子
\documentclass{book}
\usepackage{amsmath}
\begin{document}

\title{This is my book}

\author{Li}

\date{} 

\maketitle 

\tableofcontents

\mainmatter

\part{elementary}

\chapter{introduction}
\section{first section}

\subsection{I like book}

\chapter{balabala}

\chapter{summary}
The quick brown fox jumps over the lazy dog.

\part{advanced}

\chapter{intro}

\chapter{conclusion}
The quick brown fox jumps over the lazy dog.The quick brown fox jumps over the lazy dog.The quick brown fox jumps over the lazy dog.The quick brown fox jumps over the lazy dog.
\end{document}

  • \title{*} 表示该book的标题,\author{*} 为作者。
  • 在book模式下会自动在标题页生成该book的编写日期,如果想要 取消自动生成的日期 ,只需在作者下面一行加上 \date{} 即可。
  • **\maketitle **表示标题页结束。
  • \tableofcontents 表示自动生成book目录。
  • \mainmatter 是book的正文部分开始的标志。

4 LaTex替换

  • \newcommand{}{} 该命令相当于c中的宏替换,个人创建的命令不能与latex下的命令有冲突。

例:\newcommand{\fc}{\frac}即将所有的\fc当作\frac。

5 LaTex列表与表格环境

5.1 列表环境

5.1.1 itemize环境

\begin{itemize}
  \item this is itme1.
  \begin{itemize}%嵌套item
    \item this is sub-item1.
    \item this is sub-item2.
  \end{itemize}
  \item this is itme2.
  \item this is itme3.
\end{itemize}

效果:
在这里插入图片描述

5.1.2 enumerate环境

\begin{enumerate}
  \item this is itme1.
  \begin{enumerate}%嵌套item
    \item this is sub-item1.
    \item this is sub-item2.
  \end{enumerate}
  \item this is itme2.
  \item this is itme3.
\end{enumerate}

效果:
在这里插入图片描述

  1. 如何修改enumerate列表的序号编号方式?
  • 首先需要引进相关的宏包 \usepackage{enumerate} ;
  • 其次在\begin{enumerate}[*]中选择采用的序列。

例:

\begin{enumerate}[A]%表示采用A的序列
  \item this is itme1.
  \begin{enumerate}[a.]
    \item this is sub-item1.
    \item this is sub-item2.
  \end{enumerate}
  \item this is itme2.
  \item this is itme3.
\end{enumerate}

效果:
在这里插入图片描述

  1. 如何使得enumerate列表序号从某个指定的位置开始往后增加?
  • 在\begin{enumerate}的下一行加上\setcounter{enumi}{*},表示从第*+1个位置开始

例:

\begin{enumerate}[A.]
\setcounter{enumi}{4}
  \item this is itme1.
  \begin{enumerate}[a.]
    \item this is sub-item1.
    \item this is sub-item2.
  \end{enumerate}
  \item this is itme2.
  \item this is itme3.
\end{enumerate}

效果:
在这里插入图片描述

5.2 表格环境

  • 在定义表格的时候,就需要定义表格里面数据的对齐方式。
    c:居中对齐
    l:左对齐
    r:右对齐
  • \\在正文中表示回车,但在表格中表示一行的结束。

5.2.1 tabular环境

例1:tabular表格的使用

\begin{tabular}{clr}
223&76&233\\
34&136&90\\
\end{tabular}

效果:
在这里插入图片描述

例2:tabular表格添加表格竖线

\begin{tabular}{c|l|r}
223&76&233\\
34&136&90\\
\end{tabular}

效果:
在这里插入图片描述

例3:tabular表格添加表格横线

\begin{tabular}{|c|l|r|}
\hline
223&76&233\\
\hline
34&136&90\\
\hline
\end{tabular}

效果:
在这里插入图片描述
tabular环境无法使用表1、表2这种方式对表格进行标注,所以需要使用table表格。

5.2.2 table环境

例:

\begin{table}
  \centering
  \caption{*}
\end{table}
  1. ** \centering** 表示对该环境中的所有对象进行居中操作。

  2. ** \caption{*}** 为表格的名称

  3. 将表格的两个单元格进行合并操作
    \muticolumn{合并单元格的数量}{数据对齐方式}{单元格的具体内容}

  4. 将表格的两个列进行合并操作:
    \mutirow{合并单元格的数量}{数据对齐方式}{单元格的具体内容}

  5. 在表格指定的某行数据下面添加横线:
    \cline{开始的列数-结束的列数}

5.2.3 如何将excel中的表格快速导入

  1. 将execel里面的表格粘贴复制到记事本当中;
  2. 将空格替换成&;
  3. 在表格每行后加上\;
  4. 将数据加入表格中,并设置数据的对齐方式;
  5. 复制粘贴到文章中。

6 LaTeX的矩阵环境

使用矩阵,必须以 **$ $ 矩阵环境$ $ ** 的格式,因为矩阵属于数学状态下才可以使用的。

6.1 array环境

  1. 矩阵的输入
$$\begin{array}{clr}
4343& 33& 2344\\
45& 564& 5\\
564& 5& 55\\
\end{array}$$

结果:
在这里插入图片描述

  1. 给矩阵添加外框
    例1:添加原括弧外框
$$\left(\begin{array}{clr}
4343& 33& 2344\\
45& 564& 5\\
564& 5& 55\\
\end{array}\right)$$

结果:
在这里插入图片描述

例2:添加中括号外框

$$\left[\begin{array}{clr}
4343& 33& 2344\\
45& 564& 5\\
564& 5& 55\\
\end{array}\right]$$

结果:
在这里插入图片描述

6.2 bmatrix、Bmatrix、vmatrix、Vmatrix、pmatrix环境

bmatrix、Bmatrix、vmatrix、Vmatrix、pmatrix为amsmath宏包所提供的矩阵样式,都不用输入数据的对齐方式,因为默认都为居中对齐。
使用方式:

$$
\begin{bmatrix}
4343& 33& 2344\\
45& 564& 5\\
564& 5& 55\\
\end{bmatrix}
$$

依次的表示形式:
在这里插入图片描述

7 LaTeX的公式

  1. 行内公式:$公式$
    行间公式:$ $ 公式$ $ 或者\ [ 公式 \ ]
  2. 公式中特殊符号的输入
    点击Tex GUI Symbols就可以弹出相对应的数学符号。
  3. 公式中特殊数学字体的输入
    点击texfriend。mathrsfs宏包是用来支持数学公式中的特殊字体的。

7.1 equation公式环境

用equation公式表示,可以简化公式排序的步骤。equation在默认设置下是按照章节来对公式进行排序的。
例:

\begin{equation}\boxed{    
a^2+b^2=c}
\end{equation}

结果:
在这里插入图片描述

\boxed表示对公式进行加框,boxed只有在equation环境中才能使用。

  • 如何使得equation公式按节来对公式进行排序?
    在公式前加上, \numberwithin{equation}{section}
    例:
\begin{equation}
\numberwithin{equation}{section}
a^2+b^2=c
\end{equation}

结果:
在这里插入图片描述

  • 当两个公式的重要程度等同时,如何表示?
    当两个公式的重要程度相同时,可以使用subequations。
    例:
\begin{subequations}
\begin{equation}
a^2+b^2=c
\end{equation}
\begin{equation}
a^2+b^2=c
\end{equation}
\end{subequations}

结果:
在这里插入图片描述

7.2 公式中的括号

例:

$$\lim_{n\to\infty}(1+\fc{1}{n})^n=e$$

$$\lim_{n\to\infty}\left(1+\fc{1}{n}\right)^n=e$$%更改括号后

$$\frac{\partial y}{\partial x}|^{y_1=4}_{y_1=1}$$

$$\left.\frac{\partial y}{\partial x}\right|^{y_1=4}_{y_1=1}$$%更改竖杠后

结果:
在这里插入图片描述

7.3 公式的对齐方式

当某个公式太长的时候,可以使用相关的环境使得公式进行对齐。

  1. split命令
    split要在数学环境下运行,所以要在它之外加上equation。split对公式进行排版时候,以等号作为对称的依据。
    例:
\begin{equation}
\begin{split}
z&=(a+b)^4=(a+b)^2(a+b)^2\\
&=(a^2+2ab+b^2)(a^2+2ab+b^2)\\
&=a^4+4a^3b+6a^2b^2+4ab^3+b^4\\
\end{split}
\end{equation}

结果:
在这里插入图片描述
split存在的问题:当使用split命令让长公式进行对齐的时候,只使用了一个编号对公式的整体进行了标记。

  1. align命令
    align命令可以独立存在,所以不需要在前面加上任何数学环境。
    例:
\begin{align}
z&=(a+b)^4=(a+b)^2(a+b)^2\\
&=(a^2+2ab+b^2)(a^2+2ab+b^2)\\
&=a^4+4a^3b+6a^2b^2+4ab^3+b^4
\end{align}

结果:
在这里插入图片描述
去掉公式第一行的记号:

\begin{align}
z&=(a+b)^4=(a+b)^2(a+b)^2\nonumber\\
&=(a^2+2ab+b^2)(a^2+2ab+b^2)\\
&=a^4+4a^3b+6a^2b^2+4ab^3+b^4
\end{align}

结果:
在这里插入图片描述

  1. gathered命令
    gathered命令将几个相关的公式并在一块,共用一个编号。gathered命令需要放到数学环境中。
    例:
\begin{equation}
\begin{gathered}
z=(a+b)^4=(a+b)^2(a+b)^2\\
z=(a^2+2ab+b^2)(a^2+2ab+b^2)\\
z=a^4+4a^3b+6a^2b^2+4ab^3+b^4
\end{gathered}
\end{equation}

结果:
在这里插入图片描述

  1. eqnarray命令
    在eqnarray命令中,如果以等号做为对称的依据,则需要在等号的两端都加上&符号。
    例:
\begin{eqnarray}
z&=&(a+b)^4=(a+b)^2(a+b)^2\nonumber\\
&=&(a^2+2ab+b^2)(a^2+2ab+b^2)\\
&=&a^4+4a^3b+6a^2b^2+4ab^3+b^4
\end{eqnarray}

结果:
在这里插入图片描述
eqnarray命令与align命令的区别:eqnarray命令公式的等号之间,公式字符的空间隔开距离更大了。

7.4分段函数的表示

分段函数的表示需要用到amsmath宏包中提供的cases命令。
例:

Indicator Function:
\[I_A(a)=\begin{cases}
    1&a\in A\\
    0&a\not\in A
\end{cases}\]

结果:
在这里插入图片描述

8 图片环境

  1. 插入图片要使用宏包: \usepackage{graphicx}
  2. 引用格式:
\begin{figure}
  \centering 
  \includegraphics[scale=图像尺度大小]{导入图片文件名} 
  \caption{例图名}
  \label{例图标号} 
\end{figure} 图片结束

9 如何添加参考文献

  1. 在百度学术上面搜索参考文献的名称;
  2. 点击搜索结果相对应的文章旁边的引用;
  3. 点击导入链接中的BibTex,将相关的内容复制下来;
  4. 新建一个txt文件,将复制所得的内容粘贴到该txt文件;
  5. 将该txt文件的文件后缀改为bib;
  6. 将该bib文件放到工作文件夹中;
  7. 在Ctex中点击citation按钮;
  8. 在cite{}括号内填写刚才复制的引文信息第一行 article{ 后面的内容;
  9. 在文章末尾加上
\bibliographystyle{*}
\bibliography{1}
\begin{thebibliography}{60}

\end{thebibliography}

10 用CTex编写论文的步骤

  1. 新建工作文件夹,该文件夹用来存放论文的相关文件以及图表等。
  2. 将相对应的论文或者期刊的排版文件.cla拷贝进工作文件夹中。
  3. 将论文中使用的图片也同样拷贝到工作文件夹中。
  4. 新建.tex文件或者使用已有的.tex文件。
  5. 对.tex文件进行编辑,后编译。
  6. 生成pdf文件。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CTex基础 的相关文章

  • 如何在 Sweave 文档的表格中包含超链接?

    我有一个包含超链接的数据框 我想使用它作为可点击链接呈现Sweave 我知道关于xtable 但不确定如何使用它将数据帧的内容视为 LaTeX 命令 一种策略是使用sanitize text function来自print函数于xtable
  • R:如何从数据框中获取正确的乳胶回归表?

    考虑下面的例子 inds lt c var1 var2 model1 lt c 10 2 0 00 0 02 0 3 model2 lt c 11 2 0 01 0 02 0 023 df df data frame inds model1
  • 带有特定乳胶模板的 bookdown

    我非常相信 Rmarkdown 和 bookdown 是内容出版的未来 但是一些出版商使用特定的 LaTeX 模板 并且为了提交手稿 他们需要在该精确的模板中使用它 例如 请参阅此施普林格手稿模板 http resource cms spr
  • Latex verbatim:如何显示tree命令创建的文件目录?

    我想插入使用逐字环境由树命令创建的文件目录图 但在输出文档中 仅保留文件名 并且连接线消失 documentclass article usepackage fancyvrb begin document begin Verbatim ap
  • OSX 10.8 中 usetex 的问题

    我最近升级到 OSX 10 8 Mountain Lion 如果我尝试在绘图标签中使用乳胶标记 我的 python 安装现在会出现错误 下面的代码可以完美运行 plt figure plt plot rand 51 rand 51 plt
  • 减少knitr块中命令和输出之间的空间

    我在用着knitr with LaTeX并且代码块回显的命令与输出的开头之间似乎有很多空间 LaTeX 代码如下所示 begin knitrout scriptsize definecolor shadecolor rgb 1 1 1 co
  • RMarkdown PDF 输出中未显示某些 Unicode 字符

    我正在尝试将一些课程笔记整理为 PDF 但无法正确显示某些 Unicode 字符 使用xelatex https en wikipedia org wiki XeTeXLatex 引擎对于渲染文档是必需的 使用默认引擎会因无法识别的字符而导
  • 使用 LaTeX,如何在每个部分的末尾提供参考文献列表? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我想为每个部分生成参考书目 并将其放在该部分的末尾 当我现在这样做时 它会生成完整的参考书目并将其放置在每个部分之后 有没有办法可以做到这一点 建议h
  • Knit 无法编译 PDF:“工具中出现错误::file_path_as_absolute(output_file)”

    我已经在 markdown 中创建了一个报告并使用该函数render 将代码编译成 PDF 一个月前它工作得很好 但是当我现在运行代码时 它给了我一个错误 Latexmk 这是 Latexmk 约翰 柯林斯 2016 年 4 月 22 日
  • includepdf 将文档堆栈覆盖在一页上

    我正在尝试使用以下方法在文档中包含 PDF includepdf 问题是 Latex 将 pdf 的所有站点放在文档的一页上 彼此重叠 我对此有点迷失 没有找到任何解决方案 begin figure H includepdf landsca
  • LaTeX:从第二行缩进

    我想从第二行缩进 我想用 LaTeX 写这样的东西 Lorem ipsum dolor sit amet consectetur adipiscing elit Proin eu tempor velit Fusce accumsan ul
  • pybtex 是否支持 .bib 文件中的重音/特殊字符?

    from pybtex database input import bibtex parser bibtex Parser bibdata parser parse file sample bib 上面的代码片段在解析 bib 文件时效果非
  • 幻灯片中并排显示目录和图表

    我想将图形和目录并排放在一张幻灯片中 看起来像 目录图 我尝试将它们分别包含在一个小页面中 然后将它们都放入图形环境中 但结果看起来不太好 因为目录被格式化为段落 而不是逐项列出的外观 那么 有人有更好的解决方案吗 提前致谢 PS 我使用投
  • tikz:为节点设置适当的x值

    这个问题源于这个问题here https stackoverflow com questions 2772972 latex curly braces outside math 我想生成一个跨越一些文本行的大括号 问题是我必须手动对齐 x
  • ^ 和 _ 宏之后出现的数字(是:LaTeX 限制?)

    我在 LaTeX 中遇到了一个恼人的问题 我有一个大约 1000 行的 tex 文件 我已经有了一些数字 但是当我尝试添加另一个数字时 它会吐出 Undefined control sequence
  • Jupyter (iPython) 笔记本中的 Latex 宏未由 github 渲染

    我的 Jupyter 笔记本 ipynb 中有一个 Markdown 单元 其中包含以下内容 newcommand paren 1 left 1 right paren beta 2 该文件位于 Github 存储库中 LaTex 宏应用程
  • 适用于 Droid 手机的数学或 LaTeX 引擎 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 Android 手机有可用的数学或 LaTeX 引擎吗 我最喜欢的抽认卡应用程序 AnyMemo 似乎
  • pdflatex: \includegraphics{} -> 找不到文件

    首先 我知道这个问题已经存在了成百上千次 但我在过去四个小时内找到的给出的答案都没有解决我的具体问题 我在这里变得疯狂 我将非常感谢任何帮助和建议 尝试编译一个非常简单的 tex 文件 其中包括 包括图形命令 我最终收到 文件未找到 错误
  • LaTeX Beamer:改变子弹缩进的方法?

    我已经检查了Beamer Class手册 PDF文件 我不知道如何更改分配给 itemize 的缩进项目符号 这很重要 因为我使用 2 列幻灯片 并且我不希望投影仪占用太多的水平空间 Beamer 只是委托管理布局的责任itemize环境回
  • Sphinx 文档包中 LaTeX 输出的自定义颜色

    我试图在使用 Sphinx 文档包和 html 输出时自定义 LaTeX 内联公式的颜色 细节 我有一个名为func rst 其中包括以下行 Let math x 1 be a binary variable 在我用 Sphinx 创建的文

随机推荐

  • CSS笔记(黑马程序员pink老师前端)浮动,清除浮动

    浮动可以改变标签的默认排列方式 浮动元素常与标准流的父元素搭配使用 网页布局第一准则 多个块级元素纵向排列找标准流 多个块级元素横向排列找浮动 float属性用于创建浮动框 将其移动到一边 直到左边缘或右边缘触及包含块或另一个浮动框的边缘
  • win10的pycharm开发工具使用Jupyter的各种报错:环境问题

    一 问题 在win10系统的pycharm开发工具使用Jupyter的各种报错 却一直解决不了 我一度使用过购买云服务器 重装系统等等各种办法 都没能解决 例如 在speech processing ipynb文件中 import libr
  • FreeIPA 统一身份认证实现

    1 FreeIPA概述 1 FreeIPA简介 FreeIPA是一个用于Linux Unix环境开源的身份管理系统 提供集中式帐户管理和身份验证 与Windows Active Directory或LDAP的作用类似 FreeIPA集成了3
  • 局部均值分解(matlab实现有注释)

    局部均值分解 local mean decomposition LMD 方法同经验模态分解方法 EMD 一样 也是一种自适应信号处理方法 LMD通过改变信号分解过程能有效改进EMD方法存在的包络拟合不准确 边界处发散等问题 代码如下 cle
  • Linux高阶—CPU性能压测spec(十)

    目录 一 基本概念 二 工作原理 三 测试套件 整数和浮点 测试套件 四 工作模式 speed 测量 rate 测量 五 测试场景 六 操作案例 一 基本概念 SPEC基准广泛用于评估计算机CPU性能工具 SPEC官网下载SPEC CPU
  • 小心宏定义出错

    当宏参数在宏定义中出现超过一次 这个宏作用在复杂的表达式里就可能出错 导致不可预料的结果 我还记得我有一次为这个问题导致的出错 查了一个星期 最后整整debug了一个工作日才找到这个问题 所以提醒大家一定要小心 比如 define MAX
  • FastCGI模块

    FastCGI模块 FastCGI 摘要 这个模块允许nginx同FastCGI协同工作 并且控制哪些参数将被安全传递 例 location fastcgi pass localhost 9000 fastcgi index index p
  • MMU的作用及工作过程

    MMU的作用及工作过程 MMU Memory Management Unit 是内存管理单元的简称 读者朋友在学习嵌入式的时候应该听说过 CLinux 这是适合没有MMU的微控制器使用的嵌入式Linux操作系统 比如ARM7 由于没有MMU
  • 对大连律师李振鹏《甲骨作文,应判“零分”》的反驳

    大连律师李振鹏 甲骨作文 应判 零分 请看http hi baidu com B4 F3 C1 AC C2 C9 CA A6 C0 EE D5 F1 C5 F4 blog item d94cb8fb8bb7b66d034f56c3 html
  • JDK8新特性之lambda表达式

    Welcome Huihui s Code World 接下来看看由辉辉所写的关于lambda表达式的相关操作吧 目录 Welcome Huihui s Code World 一 是什么 二 为什么要用 三 底层 四 什么时候用 五 怎么用
  • 2018Global Game Jam成都赛区赛后感

    这次是我第二次参加ggj 感觉这次大家的水平都高了很多 影响最深的还是自己的三度上台 以前我都是用的unity5 X系列来打包游戏的 这次由于想用到unity2017新增的Camera插件 于是这次第一次用unity2017 游戏做后打包成
  • 兆易创新携手合肥产投进军12英寸晶圆存储器

    2018年12月29日北京兆易创新科技股份有限公司董事会发布公告 北京兆易创新科技股份有限公司与合肥市产业投资控股 集团 有限公司于2017年10月26日签署了 关于存储器研发项目之合作协议 约定双方合作开展12英寸晶圆存储器研发项目 经沟
  • JVM内存溢出的几种方式与解决方法

    内存溢出 JVM运行时首先需要类加载器 classLoader 加载所需类的字节码文件 加载完毕交由执行引擎执行 在执行过程中需要一段空间来存储数据 类比CPU与主存 这段内存空间的分配和释放过程正是我们需要关心的运行时数据区 内存溢出的情
  • QT单例类管理信号和槽函数

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 前言 一 创建单例类 二 主界面添加组件 三 组件代码绑定信号和槽 四 效果图 总结 前言 提示 这里可以添加本文要记录的大概内容 在QT当中 遇到主界面和多个组件
  • 华为机试学习——字符串最后一个单词的长度

    问题描述 计算字符串最后一个单词的长度 单词以空格隔开 字符串长度小于5000 注 字符串末尾不以空格为结尾 include
  • QT中各种MessageBox的使用

    MessageBox h ifndef MESSAGEBOX H define MESSAGEBOX H include
  • vue+pg库+openlayer5+geoserver+离线地图瓦片构建gis地图+地图撒点+点击点出现地图弹框(***完整流程***)

    实现效果 ol5的apihttps openlayers org en latest apidoc module ol Feature Feature html getProperties 一 在vue项目中使用gis地图 实现地图的搭建
  • SpringBoot内置Tomcat 配置和切换

    目录 SpringBoot内置Tomcat 配置和切换 基本介绍 内置Tomcat 的配置 application yml配置 对上面代码解释一下方便理解 通过类来配置Tomcat 注销application yml 对tomcat 配置
  • 冈萨雷斯《数字图像处理》学习笔记(3)--频率域滤波(含傅里叶变换推导)

    频率域滤波所有的滤波都是通过傅里叶变换在频率域实现的 所以我们先重点提出傅里叶变换 一 傅里叶变换基础 一维傅里叶变换数学推导 首先 我们知道傅里叶级数 形如 f x a0 n 1 ancos n x bnsin n x 1 f x a 0
  • CTex基础

    CTex基础笔记 1 什么是CTex 2 CTex使用前涉及的文件 3 文档的基本结构 4 LaTex替换 5 LaTex列表与表格环境 5 1 列表环境 5 1 1 itemize环境 5 1 2 enumerate环境 5 2 表格环境