LaTeX 插图总结

LaTeX 插图总结

includegraphics 命令

用法

1
\includegraphics[选项]{文件}

最简单的例子,下面的命令将 a.png 插入文档中 (为了演示方便,本文所有的图片都和tex文件同目录)

1
2
3
4
5
6
7
8
9
\documentclass{article}

\usepackage{graphicx}

\begin{document}

\includegraphics[scale=1]{a.png}

\end{document}

参数详解

指定大小

将 a.jpg 插入文档并且它的宽度被缩放到 3 英寸,高度也会 按相应的比例缩放

1
\includegraphics[width=3in]{a.jpg}

用 \textwidth 或 \em 等的函数来 指定宽度,而不是用像 3 英寸这样的固定尺寸,将会使你的 LATEX 文 档更具通用性。例如:

1
\includegraphics[width=\textwidth]{a.jpg}

使得插入图形的宽度为文本行宽的 80%

1
\includegraphics[width=0.80\textwidth]{a.jpg}

浮动图形环境

一般情况下我们很少会把图片直接插入到我们的文本当中,而是会给它放置在一个叫做浮动体的东西中。这样图片可以有一些相对位置的变换,不会造成分页困难等问题。

有效的利用浮动图形机制 需要注意以下几点:

  • 不要使用依赖于图形放置位置的文本。 使用如 这幅图...​ 或 下面的图形...​ 等短语要求所指的图形需在固定位置。 而像 图 5...​ 这样的短语则允许 图形出现在任意位置。
  • 放松。一些使用者在发现图形没有十分 准确的出现在他们所想要的位置时,往往非常着急。这没有 必要,图形的放置是 LATEX 的工作,最好放松一些。

创建浮动体

1
2
3
4
5
\begin{figure}
\centering
\includegraphics[totalheight=2in]{a.jpg}
\caption{Jay} \label{fig:graph}
\end{figure}

效果:

图形的放置

图形(figure)环境有一个可选参数项允许用户来指示图形有可能 被放置的位置。

这一可选参数项可以是下列字母的任意组合。

  • h 当前位置。 将图形放置在 正文文本中给出该图形环境的地方。如果本页所剩的页面不够, 这一参数将不起作用
  • t 顶部。 将图形放置在页面的顶部。
  • b 底部。 将图形放置在页面的底部 。
  • p 浮动页。 将图形放置在一只允许 有浮动对象的页面上。

注:

  • 如果在图形环境中没有给出上述任一参数,则缺省为 [tbp]。
  • 给出参数的顺序不会影响到最后的结果。因为在考虑这些参数时 LaTeX 总是尝试以 h-t-b-p 的顺序来确定图形的位置。所以 [hb] 和 [bh] 都使 LATEX 以 h-b 的顺序来排版。
  • 给出的参数越多, LaTeX 的排版结果就会越好。 [htbp], [tbp], [htp], [tp] 这些组合得到的效果不错。

定制插图标题

对于标题的其它属性的 自由控制,利用caption2 宏来完成。caption2宏包可以和很多与浮动对象有关的宏包一起使用

标题样式

用法

1
\usepackage[选项]{caption2}

选项参数如下图

将整个 整个文档中的标题都为 centerlast 式样。

1
\usepackage[centerlast]{caption}

caption 宏包的标题样式参数如下:

  • normal 标题文本两边对齐,其中最后一行为左对齐。
  • center 标题文本居中。
  • flushleft 标题文本左对齐。
  • flushright 标题文本右对齐。
  • centerlast 标题文本两边对齐,其中最后一行居中。
  • indent 与 normal 式样相似,只是标题文本从第二行开始, 每行行首缩进由命令 \captionindent​ 给出的长度。因为 \captionindent​ 的缺省值为零,通常用像 \setlength{\captionindent}{1cm}​ 这样的命令 来设置缩进值。
  • hang 与 normal 式样相似,只是标题文本从第二行开始, 每行行首缩进与标题标记宽度相等的长度。

并列图形

使图形并列所需的命令依赖于用户到底想怎样来组织图形。这里介绍两种常见的并列图形。

  • 多个图形并列于一个图形环境中。
  • 多个并列的浮动图形

多个图形并列于一个图形环境中

1
2
3
4
5
6
7
\begin{figure}
\centering
\includegraphics[scale=0.5]{d.jpg}
\hspace{1in}
\includegraphics[scale=0.5]{c.jpg}
\caption{两张图片并排在一个浮动体}
\end{figure}

多个并列的浮动图形

若将 \caption​ 命令放到每个小页环境 中,则每个小页环境就生成一浮动图形

1
2
3
4
5
6
7
8
9
10
11
12
13
14
\begin{figure}
\begin{minipage}[t]{0.5\linewidth}
\centering
\includegraphics[scale=0.5]{d.jpg}
\caption{Jay}
\label{fig:side:a}
\end{minipage}%
\begin{minipage}[t]{0.5\linewidth}
\centering
\includegraphics[scale=0.5]{c.jpg}
\caption{叶惠美}
\label{fig:side:b}
\end{minipage}
\end{figure}

效果如下图

图编号如何关联章节

通过引入\usepackage{amsmath}​包中的\numberwithin{figure}{section}​命令,我们可以将Latex中Figure的编号和所在的章节关联起来 (​此方法已经过时​)

自 2018年起LaTeX自带了 \counterwithin 命令。

此命令的解释为:

将另一个计数器添加到现有计数器,当计数器增加时会导致重置

参考:LaTeX/Counters

还可以参考 Overleaf, Online LaTeX Editor 的解释

This macro is included in the LATEX format since April 2018, if you’re using an older version, you’ll have to use thechngctr​package

完整例子代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
\documentclass{ctexart}

\usepackage{graphicx}
\counterwithin{figure}{section}

\begin{document}


\section{Jay}

一直以音乐制作人身份从事作词、作曲、编曲等工作的周杰伦,18岁时因创作吴宗宪的“屋顶”、“三暝三日”、“你比从前快乐”;许茹芸的“蜗牛”;王力宏的“打开爱”以及徐若宣的“姐你睡了吗?”等歌曲打开了知名度。害羞、内向似邻家大男孩的他凭着新作“可爱女人”的强力宣传,从幕后走到幕前成为歌坛耀眼的新人,首张同名专辑《周杰伦》于2000年11月3日在台湾正式发行。

\begin{figure}[htbp]
\begin{center}
\includegraphics{a.jpg}
\end{center}
\caption{Jay}
\end{figure}

\section{范特西}

周杰伦的出现,让人们相信台湾创造本土R\&B的可能性;周杰伦的走红,彻底地宣布音乐新声代的来临。作曲、填词、编曲、演唱样样俱精的周杰伦,首张同名专辑《Jay杰伦》推出后,销售势如破竹,不单有“音乐新人王”称号,他自成一格的R\&B演绎方法,更被誉为陶吉吉的劲敌。


\begin{figure}[htbp]
\begin{center}
\includegraphics{b.jpg}
\end{center}
\caption{范特西}
\end{figure}

\begin{figure}[htbp]
\begin{center}
\includegraphics{b-2.jpg}
\end{center}
\caption{范特西}
\end{figure}


\end{document}

效果:

参考资料

添加图标题、轴标签、图例、更改字体大小

本文介绍了在MATLAB中向图形添加标题、轴标签和图例的基本方法。首先,通过`title`函数可以为绘制的图形添加标题;使用`xlabel`和`ylabel`函数分别设置x轴和y轴的标签。此外,`legend`函数用于根据绘图顺序添加图例,以便更清晰地标识不同的数据线。最后,使用`'FontSize'`属性可以调整标题、标签及图例的字体大小,以提高可读性。文章通过多个示例展示了这些功能的具体用法与效果,并提供了相关链接以获取更多信息。
阅读更多

sum函数对矩阵的求和

1
2
  A= [12345
12345];
1
2
3
a=sum(A)   %对整个矩阵按列求和

>> a= [2 4 6 8 10]
1
sum(A(1:t,:),1)    %对矩阵前1到t行按列求和
1
2
3
b=sum(A,2) %对整个矩阵按行求和

>>b=[15;15];
1
2
3
d=sum(A(:,1:3),2)  %对矩阵前1到3列按行求和

>>d = [6;6]
1
2
3
c=sum(A(:)) %整个矩阵整体求和

>>c =30

A(:,1)是求矩阵的第一列

A(1,:)是求矩阵的第一 行

使用PX4搭建并运行第一个应用程序

本文介绍了如何在PX4飞控上搭建并运行一个简单的板载应用程序。主要内容包括: 1. **编写px4_simple_app应用程序文件**: - 创建C文件和CMake定义文件。 - 在`px4_simple_app.c`文件中,编写一个最小应用程序示例,仅打印 `"Hello Sky!"` 。主函数必须命名为“应用程序名称_main”的形式,并从模块中导出 `__EXPORT` 。 - 使用宏 `PX4_INFO` 将输出信息显示到PX4壳。 2. **创建CMakeLists.txt文件**: - 使用 `px4_add_module()` 方法生成静态库,指定模块的主入口点及其相关源文件。 3. **定义Kconfig文件**: - 定义该应用程序的名称,使其能够被内核配置器识别和启用。 4. **编译并烧录应用程序到飞控固件中**: - 修改目标板级 CMake 文件(例如 `default.px4board`),添加对新应用程序的支持。 - 在终端中使用 `make px4_fmu-v2_default` 命令编译固件。 通过上述步骤,可以成功在PX4飞控中添加并运行一个自定义的简单应用程序。
阅读更多

构建 PX4 软件

本文介绍了如何构建 PX4 软件,包括在控制台或集成开发环境中从源代码构建固件的步骤。用户首先需要下载 PX4 源代码,确保开发工具链已安装。进行首次构建时,可以通过启动 Gazebo SITL 模拟无人机飞行,验证系统设置。在为 Pixhawk 硬件构建时,进入 PX4-Autopilot 目录并执行相应的 make 命令。成功后,可将编译好的固件上传到硬件。此外,提供了 VSCode 集成开发环境的使用指南,以及针对构建问题的故障排除建议,例如更新子模块和清理构建环境。最后,概述了调用 make 的完整语法及可用的构建目标。
阅读更多

PX4的Ubuntu开发环境配置

本文介绍了如何在支持的 Ubuntu Linux LTS 版本上设置 PX4 开发环境,涵盖了 Ubuntu 22.04、20.04 和 18.04。环境包括 Gazebo 模拟器和为 Pixhawk/NuttX 硬件构建的工具链。用户可以通过运行 `ubuntu.sh` 脚本来进行安装,此脚本适用于干净的 Ubuntu 安装。在安装流程中,用户应根据提示进行确认,若需省略 NuttX 或仿真工具可使用特定选项。完成之后,建议重新启动计算机。如果只想设置开发环境而不下载完整源代码,可以直接下载 `ubuntu.sh` 和 `requirements.txt` 并执行。安装完命令行工具链后,用户可选择安装 VSCode 和 QGroundControl 的每日构建版,并开始构建 PX4 软件。
阅读更多

Docker部署思源笔记

本文介绍了如何使用 Docker 部署思源笔记的步骤。首先,需要在服务器上安装 Docker,并创建数据目录设置权限。接着,通过 Docker 命令运行思源笔记的容器,其中重要项为 `--accessAuthCode`,用于设置授权码,这个授权码类似于密码。部署后,通过访问服务器的 IP 加端口(6806)即可访问思源笔记的 Web 界面。不过,这种部署方式有几个限制:不支持桌面端和移动端应用连接、不能导出特定格式文件以及无法导入 Markdown 文件。文中还建议通过域名来访问部署的服务,可以参考另外两篇文章进行 Nginx Proxy Manager 的反向代理配置,并确保开启 WebSocket 的反代 `/ws`。最后,在进入 Web 界面时需输入之前设置的授权码以获得权限。
阅读更多

服务需求列表

image

一、文件存储与共享

  1. 文件管理
  2. SFTP协议
  3. SMB服务与内网穿透
  4. WebDEV协议

二、下载服务

  1. 各类下载器
  2. 各类网盘

三、影音娱乐

  1. IPTV
  2. Navidrome + Music Tag Web 刮削器
  3. YesPlayMusic 网易云音乐网页客户端
  4. Jellyfin及刮削
  5. 播客平台
  6. calibre-web 电子书管理器
  7. 怀旧游戏平台

四、办公平台

  1. 思维导图
  2. draw.io
  3. 思源笔记
  4. WPS OFFICE
  5. IT工具箱
  6. Anacoda
  7. VS Code
  8. vaultwarden 密码管理器

五、大模型服务

  1. Ollama
  2. MaxKB

六、远程桌面主机服务

  1. KASM
  2. Windows/Ubuntu+xdrp

七、个人网站

  1. Halo快速建站
  2. 自己打造网站