LaTeX中的浮动体

简介: LaTeX中的浮动体

LaTeX中的浮动体

浮动体

1、实现灵活分页(避免无法分割的内容产生的页面留白)。

2、给图表添加标题。

3、交叉引用。

浮动体是为了排版更紧密,有的图片直接放文字下面会另起一页,浮动体就避免了这个问题。

前言

前几节我们讲了,在LaTeX中,可以用graphicx宏包的includegraphics命令来插入图像

image-20220204183815373

image-20220204184826340

使用tabular环境来创建表格

image-20220204184909615

效果:

image-20220204184932523

但是要灵活实现图像和表格的管理,还需要使用浮动体环境。

figure浮动体环境

在LaTeX中,有figure浮动体环境。

image-20220204185226502

可以将includegraphics代码放入figure浮动体环境中。

image-20220204185325067

table浮动体环境

在LaTeX中,还有table浮动体环境。

image-20220204185410657

可以将用于生成表格的tabular环境放在table环境中。

image-20220204185550375

编译并查看结果:

image-20220204185807461

可以看到,图像与表格的位置都发生了浮动。

居中排版

可以使用centering命令让环境中的内容居中排版。

image-20220204190212806

编译运行,查看结果:

image-20220204190409477

由于centering是在figuretable环境中,所以,只影响环境中的内容

指定排版位置

还可以通过可选参数指定浮动体的排版位置。

image-20220204190831401

编译查看结果:

image-20220204191005466

同样,对于table环境,也可以设置排版位置参数。

image-20220204192329736

编译运行查看结果:

image-20220204192503463

注意

figure环境(table环境与之类似)

\begin{figure}[ <允许位置> ] > > <任意内容> > >\end{figure}

<允许位置>参数(默认tbp)

h,此处(here)--- 代码所在的上下文位置

b,页底(bottom)--- 代码所在的页面或之后页面的底部

p,独立一页(page) --- 浮动页面

t,页顶(top)--- 代码所在的页面或之后页面的顶部

htbp --- 允许各个位置

设置插图标题

通过caption命令设置插图的标题。

image-20220204191207471

编译运行查看结果:

image-20220204191430995

由排版结果可以看到,该插图被自动进行了编号。

table环境,我们也可以做类似的处理。

image-20220204191823906

编译查看结果:

image-20220204192041955

可以看到,表格也被自动编号了。

并且与插图的编号是相互独立的。

为浮动体设置标签

label命令为浮动体设置标签。

image-20220204193037054

利用ref命令可以引用这一个标签。

image-20220204193406489

这样就可以实现交叉引用

编译查看结果:

image-20220204193721529

一定要先设置好标签label然后才能用ref引用!!!

同样,我们也可以设置表格浮动体的标签。

先用label设置标签。

image-20220204194057863

然后利用ref引用标签。

image-20220204194227384

编译运行结果:

image-20220204194455008

从而实现了表格的交叉引用。

我们再插入两个图片。

image-20220204200027970

编译运行查看结果:

image-20220204232639984

image-20220204232707120

:question: 为啥图片不在指定文字下方???

我们用这样的命令来限制它。

解决办法
首先:在 .tex 文件头部加入宏包: \usepackage{float}

image-20220204233006361

其次:在插入图片的语句后面加个 [H] 即可.

image-20220205002102638

我们可以看到,每张图都进行了正确的编号并且实现了正确的交叉引用。

image-20220205002130805

image-20220205002250699

:question: LaTeX 编译慢?

是因为每次都要重新加载这些东西,它需要重新寻找字体。寻找过程很漫长。

所以推荐,在执行相应代码的时候,将其他代码注释掉。

image-20220204235541741

我们现在来注释一段。

:question: VScode如何注释?

选中一段,然后按住“Ctrl+/”可以完成块注释。

image-20220205104732553

我们来注释这一段。

image-20220205105242450

然后再次编译运行。

image-20220205105624973
可以看到,刚才的 “图3:城市”变成了“图2:城市”。
这里就体现了交叉引用的灵活性。

在这里,附上代码,供大家学习使用:

%导言区
\documentclass{ctexart}

%usepackage{ctex}
\usepackage{graphicx}
\graphicspath{{figures/}} %图片在当前目录下的figures目录
\usepackage{float}

%正文区
\begin{document}
    \LaTeX{} \TeX 天空之城 \ref{fig-sky} 。
    \begin{figure}[htbp]
        \centering
        \includegraphics[scale=0.3]{two.png}
        \caption{\TeX 天空之城} \label{fig-sky}
    \end{figure}
   


    % 遥望天空之城,那一座座灯塔(图\ref{fig-light})。

    % \begin{figure}[H]
    %     \centering
    %     \includegraphics[scale=0.3]{three.png}
    %     \caption{灯塔} \label{fig-light}
    % \end{figure}
    


    在遥远的天边,一座座城市屹立在那里(图\ref{fig-country})。

    \begin{figure}[H]
        \centering
        \includegraphics[scale=0.3]{four.png}
        \caption{城市} \label{fig-country}
    \end{figure}


在 \LaTeX{} 中的表格 \ref{tab-score} 。
    \begin{table}[h]
        \centering
        \caption{考试成绩单} \label{tab-score}
        \begin{tabular}{|l|c|c|c|r|}
            \hline
            姓名 & 语文 & 数学 & 外语 & 备注 \\
            \hline
            张三 & 87 & 100 & 93 & 优秀 \\
            \hline
            李四 & 67 & 87 & 75 & 良好 \\
            \hline
        \end{tabular}
    \end{table}
    
 
\end{document}

其他

标题控制:captionbicaption等宏包。

并排与子图表:subcaptionsubfigfloatrow等宏包。

绕排:picinparwrapfig等宏包。

详情请查阅相关宏包手册。

相关文章
|
6月前
|
搜索推荐
VBA实现文本对比着色
VBA实现文本对比着色
59 0
|
4月前
|
前端开发
css 实用技巧 —— 文字和图标垂直居中对齐(四种方法)
css 实用技巧 —— 文字和图标垂直居中对齐(四种方法)
2222 1
|
4月前
|
JavaScript
文本,最简单的文本样式设计风格样式,让Element-UI盒子居中的写法
文本,最简单的文本样式设计风格样式,让Element-UI盒子居中的写法
|
6月前
|
前端开发
CSS属性涵盖了从文本样式到布局控制、从颜色处理到动画效果的各个方面
【5月更文挑战第31天】CSS属性涵盖了从文本样式到布局控制、从颜色处理到动画效果的各个方面
46 1
|
6月前
|
SEO
如何像人类一样写HTML之标题、段落、换行、水平线与文本格式化标签
如何像人类一样写HTML之标题、段落、换行、水平线与文本格式化标签
如何像人类一样写HTML之标题、段落、换行、水平线与文本格式化标签
|
安全 Java Unix
不同语言输出hello的样式
不同语言输出hello的样式
78 0
|
前端开发
Web前端学习:CSS基础-小终结【布局和文本常用样式、常用属性、外边距和内边距】
Web前端学习:CSS基础-小终结【布局和文本常用样式、常用属性、外边距和内边距】
138 0
Web前端学习:CSS基础-小终结【布局和文本常用样式、常用属性、外边距和内边距】
|
前端开发
【CSS】设置文本样式,包括文本颜色、对齐、缩进、行高等
CSS如何设置文本样式?常见的文本样式有哪些?
285 0
【CSS】设置文本样式,包括文本颜色、对齐、缩进、行高等
|
前端开发 安全 开发工具
CSS 属性_字体文本文本装饰 | 学习笔记
快速学习 CSS 属性_字体文本文本装饰
|
前端开发 容器
CSS 奇技淫巧 | 妙用混合模式实现文字镂空波浪效果
CSS 奇技淫巧 | 妙用混合模式实现文字镂空波浪效果
267 0
CSS 奇技淫巧 | 妙用混合模式实现文字镂空波浪效果