【科普向】LaTeX简介(一篇极简的 LaTeX 介绍文章)

article/2025/8/21 19:46:21

文章目录

  • LaTeX诞生背景
  • TeX和LaTeX
  • LaTeX主要功能
    • 文档结构
    • 数学公式
    • 公式块

我们平时在word里新建一个doc(x)文件后,输入内容,调整页边距、字体大小、行间距等待,然后交给打印机打印就可以了。

如果你写了一篇关于新疆棉花的文章,2000字,在word里调整很快就可以得到你想要的效果。

但如果你想把自己记下的关于矩阵乘法的笔记打印下来,因为你的字太丑了,你就会发现遇到了困难:那些数学符号应该怎么排版才好看,尤其是矩阵这样的大块内容。

image-20210331154208560

于是你通过找资料知道了怎么在word里插入公式,但每次都要点击插入-公式(或 Alt + =),才能在当前位置插入公式块。

image-20210327134551400

想要加一个下标还要点击上下标-下标。

image-20210327134643470

可能你注意到了word有一个墨迹公式的功能,于是你迫不及待地打开,发现,这玩意儿也是个垃圾,手写不适合鼠标,或许对触摸屏好一点。

image-20210327135013736

image-20210331154254678

最终你通过万能的互联网,发现了LaTeX这个好东西。
在这里插入图片描述

LaTeX诞生背景

高德纳,图中的老爷子出生于美国,是著名计算机科学家,斯坦福大学计算机系荣誉退休教授。高德纳教授为现代计算机科学的先驱人物,创造了算法分析的领域,在数个理论计算机科学的分支做出基石一般的贡献。在计算机科学及数学领域发表了多部具广泛影响的论文和著作。1974年图灵奖得主。

1966年,高德纳的著作达到3000多页,它与出版社商定,编纂一部计算机程序设计巨著《计算机程序设计艺术》,到2018年这本书已经出版了4卷,对计算机领域产生了深远影响。

KnuthAtOpenContentAlliance

但在当时,电脑排版技术十分粗糙,已经影响到他的著作的印刷质量。他以典型的黑客思维模式,决定自行编写一个排版软件:TeX。他计划在1978年的学术休假时完成这项工作,但事实上,直到十多年之后的1989年,TeX语言才可以使用。

TeX和LaTeX

image-20210331154347835

TeX(音译“泰赫”,“泰克”,写作“TeX”),是一个由美国计算机教授高德纳(Donald Ervin Knuth)编写的排版软件。它在学术界特别是数学、物理学和计算机科学界十分流行。TeX被普遍认为是一个优秀的排版工具,尤其是对于复杂数学公式的处理。利用LaTeX等终端软件,TeX就能够排版出精美的文本以帮助人们辨认和查找。

image-20210331154356881

LaTeX(拉泰克,写作“LATEX”),是一种基于TEX的排版系统,由美国计算机科学家莱斯利·兰伯特在20世纪80年代初期开发,利用这种格式系统的处理,即使用户没有排版和程序设计的知识也可以充分发挥由TEX所提供的强大功能,不必一一亲自去设计或校对,能在几天,甚至几小时内生成很多具有书籍质量的印刷品。对于生成复杂表格和数学公式,这一点表现得尤为突出。

LaTeX主要功能

TeX本质上是一门宏语言。而LaTeX是基于这门宏语言,经过后人不断的完善形成的一种排版格式。

LaTex文件扩展名为.tex。创建文件后,输入代码,保存文件,通过编辑器提供的工具编译为LaTeX,如果运行正常则可看到导出的PDF文件。

在这里插入图片描述

文档结构

以article(文章)模板为例:

\documentclass[UTF8]{ctexart} %模板类型为中文article
\title{title} %标题
\author{author} %作者
\date{} %时间
\begin{document} %开始正文
\maketitle
\tableofcontents\section{section1}
\subsection{subsection1}
这是文章第一节第一小节
\subsection{subsection2}
这是文章第一节第二小节\section{section2}
\subsection{subsection1}
这是文章第二节第一小节
\subsection{subsection2}
这是文章第二节第二小节\end{document}

image-20210327145536868

数学公式

latex编辑公式相对于word而言,可以调整公式字母的大小选择合适的行距,使排版看上去更加整洁。而且虽然是输代码,但效率却是远高于鼠标点击的。

latex公式有两种,分别为行内公式和行间公式(行间公式有两种插入方式):

一元二次方程 $ax^2+bx+c=0 (b^2-4ac \geqslant 0) $ 的解为:
\[x=\dfrac{-b\pm \sqrt{b^2-4ac}}{2a}\] 

输出结果:

image-20210327150500862

公式块

输入数学公式一般都需要两个宏包:mathtools和amsmath。

通过查找官方文档或者借助编辑器插件,只需要鼠标点击就可以得到符号对应的代码。

定义:设 $A$ 是一个 $m \times n$ 矩阵,$B$ 是一个 $n \times s$ 矩阵,即
\[
A = \begin{pmatrix}a_{11} & a_{12} & \dots & a_{1n} \\a_{21} & a_{22} & \dots & a_{2n} \\\vdots & \vdots & \ddots & \vdots \\a_{m1} & a_{m2} & \dots & a_{mn} \\
\end{pmatrix}
,
B = \begin{pmatrix}b_{11} & b_{12} & \dots & b_{1s} \\b_{21} & b_{22} & \dots & b_{2s} \\\vdots & \vdots & \ddots & \vdots \\b_{n1} & b_{n2} & \dots & b_{ns} \\
\end{pmatrix}
.
\]
则 $A$ 与 $B$ 之乘积 $AB$ (记作 $C=(c_{ij})$ )是一个 $m \times n$ 矩阵,且
\[c_{ij} = a_{i1}b_{1j} + a_{i2}b_{2j} + \dots + a_{im}b_{nj} = \sum_{k = 1}^{n} a_{ik}b_{kj}
\]
即矩阵 $C=AB$ 的第 $i$ 行第 $j$ 列元素 $c_{ij}$ ,是 $A$ 的第 $i$ 行 $n$ 个元素与 $B$ 的第 $j$ 列相应的 $n$ 个元素分别相乘的乘积之和。

image-20210331154521069

可以对比一下,第一个是word插入公式,第二个是LaTeX生成的。

image-20210331154535316

image-20210331154542310

看到这里,应该感受到了LaTeX的强大之处了吧?

word入门及其简单,但学习更高级的功能很难;LaTeX入门阶段的学习曲线就及其陡峭,可一旦熟练就很得心应手,能排版出自己想要的格式。

image-20210331203203852

日常还是markdown用得多一点,比较公式的需求不大,而且便于互联网传播。

本篇文章只是做了一个很简单的介绍,想要了解更多内容,请自行查找资料。

最后还是要来一句:LaTeX牛逼!!!


http://chatgpt.dhexx.cn/article/y2NIeQ4s.shtml

相关文章

用LaTex代码写数学公式

文章目录 公式符号1.上下标 ^ _2.分子分母 \frac{}{}3.根号 \sqrt4.极限 \lim\limits极限换行:\atop 5.积分 \int_下限^上限一重积分号 \int二重积分号 \iint三重积分号 \iiint封闭积分 \oint积分号变大 6.累加、累乘累加 \sum累乘 \prod\limits 7.戴帽符号 \hat{}、…

LaTeX新手半小时速成手册(不速成你打我

期末大作业LaTeX排版,一个学期没听课,学了b站半小时完成大作业。写此速成手册以作备忘。 b站链接:小风寒呐 1. primary 一篇论文最主要的构成,以中文为例 1.1 整体框架 1.1.1 声明类 相当于在说:“我想写一篇文章…

简述c语言中break的作用,c语言break什么意思?

break在一些计算机语言中是保留字,其作用大多情况下是终止上一层的循环,以C语言来说,break在switch(开关语句)中在执行一条case后跳出语句的作用。 1、 C语言中的break : break语句通常用在循环语句和开关语句中。当break用于开关…

c语言break能与if用吗,break可以用于if吗

break语句也可以用于if体内,它可退出if语句 可 对?reak 看似在if 语句中执行,如: for(s1;s2;s3) { if(b1)break; else s4; } 但事实上这里的break;是执行在for语句中的,跳出的是for语句。 即使输入 if(b1) 这也是跳出外层的for语句或switch语句而已。 此解答仅供参考。 b…

C++中break与continue的用法

根据break的用法,是在循环体内,强行结束循环的执行,也就是结束整个循环的过程,不再执行循环的条件是否成立,直接转向循环语句下面的语句。 continue的作用:在循环语句中,跳出本次循环中余下尚未…

UART的break信号

目录 1.TTL电平和RS232电平 2.UART的时序 3.break信号 4.如何检测break信号? 最近的一个项目用到了UART的break信号,在查资料的过程中,发现很多文章对break信号有介绍,但是都很简单,看了让人摸不着头脑&#xff0c…

c++ break语句

break语句 brea语句是用来跳出switch或者循环体结构的语句。循环语句中的break用法与switch类似&#xff0c;可以直接忽视条件判断而直接跳出循环。 break在for循环中的用法 #include<iostream> using namespace std;//break语句int main() {for ( int i0;i<10;i){…

break和continue

break和continue的作用和区别是什么&#xff1f; 一、break和continue的作用 二、break和continue的区别 三、案例分析 一、break和continue的作用 break和continue都是用来控制循环结构的&#xff0c;主要作用是停止循环。 二、break和continue的区别 1、break用于跳出一…

break关键字

1、break关键字用于 while、for 循环时&#xff0c;会终止循环而执行整个循环语句后面的代码。break 关键字通常和 if 语句一起使用&#xff0c;即满足条件时便跳出循环。这里强调一下&#xff0c;如果存在多层循环的时候&#xff0c;break只会跳出当前循环&#xff1b;下面是测…

break用法

参考例程 1 -> 用于for循环 for(;;){// Afor(;;) {// Bbreak; // 只跳出B的for循环}}参考例程 2 -> 用于switch int i;switch&#xff08;i&#xff09;{case 1:break; // 跳出Switchcase 2:break; // 跳出Switchdefault:break; // 跳出Switch}总结 1、break 在一些…

break 通过自定义标签跳到指定位置

实现比较简单&#xff0c;但是不常用&#xff0c;所以本篇博客作为一个笔记使用&#xff0c;因代码简单&#xff0c;直接粘贴代码和运行结果 public class Tets {public static void main(String[] args) {b:for(;;){System.out.println("bbbbbbbbbbbbbbbbbbbbbb");…

c#语言break语句用法,C# break语句

C# 中的break语句主要有两个用法&#xff1a; 在循环中使用&#xff0c;当循环中遇到break语句时&#xff0c;循环将立即终止&#xff0c;程序控制在循环之后的下一个语句中恢复。 它可以用于终止switch语句中的case语句。 如果使用嵌套循环(即在一个循环中使用另一个循环)&…

matlab中break语句,MATLAB break语句

本文概述 break语句终止for循环或while循环的执行。当遇到break语句时, 执行将继续循环外的下一条语句。在嵌套循环中, break仅存在于最内部的循环中。 句法 break 以下是在MATLAB中使用break语句时的要点 break关键字用于定义break语句。 break语句终止或停止for或while循环的…

break语句

break语句 break译为&#xff1a;中断 定理&#xff1a; 1、break语句可以结束当前循环的执行 2、执行完break语句后&#xff0c;循环体中位于break语句后面的语句就不会被执行 3、在多重循环中&#xff0c;break语句只向外跳一层 只能在循环体内或switch语句中使用break语句…

break的相关知识

break&#xff0c;continue的相关知识 &#xff08;1&#xff09;只能在循环体内和switch语句体内使用break&#xff0c;注意在循环体内即可&#xff0c;比如循环体内的if语句中也可用break&#xff0c;其实通常break语句与if语句联用&#xff0c;用于满足某种条件直接退出循环…

break语句的作用

关于break语句的适用范围 1.情形&#xff1a;在循环体中&#xff0c;常常会有许多if语句&#xff0c;if语句内部往往会出现break或continue语句&#xff0c;那么此时跳出的究竟是if语句还是循环语句呢&#xff1f; 2.break语句的作用&#xff1a;跳出当前循环体&#xff0c;也…

不加群提取群成员_QQ群引流推广怎么做

日引粉200秘籍 一&#xff1a;如何做网络推广 百度推广 (点击上方视频观看) 二&#xff1a;正文 QQ群引流怎么做&#xff1f; 很多人在做引流的时候&#xff0c;都是同时去尝试了N种渠道和方法&#xff0c;却没有一种能带来好的效果&#xff0c;究其原因&#xff0c;并不是渠道…

不加群提取群成员深度体会,少走点儿弯路吧

QQ现在越来越有被微信取代日常使用的趋势&#xff0c;但QQ还是有很多不错的地方&#xff0c;比如QQ群&#xff0c;上面沉淀了很多有用的资源&#xff0c;特别适合我这种搞市场推广的苦逼销售&#xff0c;虽然不用像传统销售那样成天外头跑&#xff0c;不用发名片&#xff0c;不…

小技巧 - 怎样屏蔽群消息(包括 @全体成员)?

加的群太多后经常会弹出一些消息&#xff0c;我们该如何屏蔽这些群消息呢&#xff1f;有时候屏蔽了群消息还能收到全体成员的消息我们怎么把这种消息屏蔽掉呢&#xff1f; 方法 / 步骤 打开QQ&#xff0c;在联系人界面选择群。 打开群列表&#xff0c;找到你想屏蔽的群。进入群…