今天,迎来LaTeX
系列的第四篇【浮动体篇】,怎么感受发布第三篇是好久以前的事情了呢(笑哭,逃).....算法
关于LaTeX
,今天和你们多唠叨一点。编程
与主流的编程语言(如Java
、Python
、C++
等相比),LaTeX
并无那么多光环,在每一年的编程语言排行版上也是不可能见到它的踪迹的,毕竟LaTeX
只是一门为排版而生的小众语言,所以也不会成为互联网时代你们追逐高薪的编程利器。编程语言
从我学习LaTeX
以来,虽然接触还不深,但却明显感受到她的小而精。当你拿用LaTeX
写学位论文时,你会被她的高效和专业而惊叹;若是你是HR,当你看到一份用LaTeX
写的简历时,你会被其漂亮的排版所吸引,而多看几眼;当你坐在电脑前,敲着代码,便能感受到那种所想即所得的美妙......学习
学习LaTeX
历来就不带有功利的因素,而是纯粹被她的专业和精致所吸引,做为一个业余的兴趣就很好。虽然相比Word
,LaTeX
入门很难,想要作到精通,花个几年时间都不为过。但是,若是真的有兴趣,慢慢享受这种逐步弄懂她的过程,又有啥很差呢?spa
存在的必然是合理的。反过来想一想,既然LaTeX
在排版方面有这么大的优点,那么除了在学术界受欢迎,在其余行业是否可以发挥她的价值呢?code
通过个人初步了解,在国外,有很多专一于提供LaTeX
排版服务的小型公司,在国内,一家叫作LaTeX Studio
(LaTeX工做室)的公司作的挺不错,公司位于杭州萧山。blog
而我最近由于无心发现了个有关LaTeX
的私活,就接了下来。这个兼职是教育公司提供的,具体就是用LaTeX
排版题库,特别是带有不少数学公式的题库(好比高中奥赛题库)。因此可见,LaTeX
以其专业的排版水准在教育行业也能发挥重要做用。教程
作这个兼职的过程当中,除了获得丰富的报酬,更学到了不少知识,使得我对LaTeX
的兴趣更加浓厚了,未来会分配更多的业余时间来学习。图片
废话很少说,进入今天的主题【浮动体篇】。文档
这里的浮动体主要是针对图表而言,好比论文中的插图和表格。图表每每能更加直观地表达信息,在学术论文中最为常见,所以图表的排版显得很是重要。
不过,单单一个图片或表格还算不上浮动体,得放在一个浮动环境中才行。简单地说,就像Word
中的图表,想要排版得当得调整嵌入方式(环绕四周、浮于文字上方 之类的),这个过程当中图表可能会着文字移动。不过相比Word
中常常出现图表牵一发而动全身的使人抓狂的状况相比,LaTeX
中的图表就很是老实了,你可让它在附近位置浮动,也可让它固定在某个位置,这也是LaTeX
在图表排版方面的优点。
LaTeX
中能够用tabular
或array
环境来录入表格,其中tabular
支持文本和数学模式,array
仅仅支持数学模式。除了使用模式有所区别,二者在使用方式上没有明显区别。
tabular
与array
环境的通常格式为:
\begin{tabular}[垂直对齐]{列格式说明}
表项 & 表项 & ... & 表项 \\
......
\end{tabular}\begin{array}[垂直对齐]{列格式说明}
表项 & 表项 & ... & 表项 \\
......
\end{array}
其中,表格每一行后面用\\
换行,不一样列之间用&
分开。垂直对齐能够理解为表格在文档中的对齐方式,通常用的较少。列格式说明指列内容的对齐方式,有左、中、右,分别用l
、c
、r
表示。下面代码包含了文本和数学公式,能够加深理解。
\begin{tabular}{lcr}
$x^{2}$ & 文本 & $y^{2}$ \\
本列公式 & 本列文本 & 本列公式
\end{tabular}
编译后效果如:
编译效果
再看下面的代码:
\begin{tabular}{|c|c|c|}
\hline
1 & 0 & 0 \ \hline
0 & 1 & 0 \ \hline
0 & 0 & 1 \ \hline
\end{tabular}
编译效果
上述代码中,列格式说明中的|
表示画一条竖线,即列表格线。\hline
表示画一条行表格线。
利用下面代码看看垂直对齐的用法。
\begin{tabular}{|c|c|c|}
\hline
1 & 0 & 0 \ \hline
0 & 1 & 0 \ \hline
0 & 0 & 1 \ \hline
\end{tabular}
表格外的文字与表格底部对齐
编译效果
以上就是LaTeX
中表格的最基本用法,更多格式调整如改变列宽、合并单元格等你们能够上网查阅。
LaTeX
中,插入功能由宏包graphicx
中的\includegraphics
命令提供。不一样的编译引擎支持不一样的插图格式,通常来讲采用xelatex
引擎,支持EPS、PDF、PNG、JPEG、BMP
等格式。
\includegraphics
命令的语法格式为\includegrapgics[选项]{文件名}
。其中选项包含width、height、scale
三种,分别表示图形在文档中显示的宽度、高度和缩放比例。此外,为了方便图片的管理,能够将须要插入的图片放在工做目录中的一个文件夹中,如figure
,只须要在导言区添加\graphicspath{{figures/}}
便可。
更多用法这里很少说。
图片或表格一般都占有较大的一块,直接放在文档中经常会形成分页的困难,即在文档中经常会形成分页的困难,即一页放不下,放在后一页又会形成很大的留白,很不美观。除了图表,其余类型的大块内容也有可能出现相似的问题,如程序算法、大型公式等。
LaTeX
中的浮动体即可以解决这个问题。浮动体是一个活动的盒子,它能够把内容放在距离浮动体代码先后不远的地方,一般就是浮动体代码所在地,但也能够放在页面开头、末尾或是单独的一页中。
使用浮动体,就能够在不太费力仔细调整内容的状况下,避免大块图表把整齐的页面弄糟。
此外,浮动体还能够给图表添加标题,这在论文写做中很是重要。
LaTeX
中两种浮动体环境:figure
和table
,一般分别用于图和表的排版。figure
环境的语法格式以下:
\begin{figure}[容许位置]
内容
\end{figure}
table
环境与之相似。可选参数容许位置用来设定浮动环境能够出如今页面中的位置,即h、t、b、p
四个选项的组合。
浮动体最多见的应用就是直接在table
环境中放置tabular
,或者是在figure
环境中放置\includegraphics
命令插入的图形。常常还在前面使用\centering
命令让图表居中放置。看下面代码:
\begin{figure}[htbp]
\centering
\includegraphics{figure_name.jpg}
\end{figure}\begin{table}
\centering
\begin{tabular}{c|c}
\hline
a & b \ \hline
c & d \ \hline
\end{tabular}
\end{table}
须要再次说明的是,不管是figure
仍是table
环境,浮动环境的名称和内容并无必然联系,其内容能够任意放置,如程序算法(后续会介绍)。
浮动体的另外一个重要动能是使用\caption
命令加标题,其语法格式以下为\caption{标题}
。看下面代码。
\begin{figure}[htbp]
\centering
\includegraphics{figure_name.jpg}
\caption{这是图片的标题}
\end{figure}
关于浮动体,提出最多的一个问题是:怎么样让图表不要乱跑?习惯于所见即所得环境下拖拽鼠标放置图形的人尤为不适应浮动环境的“奇怪”效果。浮动图表的目的是用浮动的位置避免糟糕的分页,但若是不在意由于图表太大而产生的分页,而要有肯定的位置,那么这实际上是要求不使用“浮动”环境。
LaTeX
为此提供了float
宏包来解决这个问题,即用一个新的H
位置选项来产生没有浮动效果的图表环境,它的使用很是简单,和通常的浮动环境没有什么区别。看下面代码。
\usepackage{float}
\begin{figure}[H]
\centering
\includegraphics{figure_name.jpg}
\caption{这是图片的标题}
\end{figure}
【浮动体篇】就介绍到这里,更多详细的用法你们可上网查阅,好比简书上不少网友分享的教程。更多内容能够移步个人我的公众号【猫Q学术派】。
参考文献