首页 > 其他分享 >Latex从零开始到写出论文

Latex从零开始到写出论文

时间:2024-06-08 14:34:01浏览次数:11  
标签:Latex begin end usepackage 代码 sep 从零开始 写出 文档

Latex从零开始到写出论文

1.前言

我们都知道写论文的主流方式有word和latex等,鄙人觉得word后期调格式插公式太过繁琐,不如学个latex一劳永逸,而且在投递论文时,支持latex的期刊更多,大多都提供latex模板。

在使用latex之前要大概理解一个概念,latex也分前后台:

Texlive是主流后台,而前台有很多,我这里对比使用后更倾向于Texmaker,原因在于它是以分屏的形式,左右两边分别是编译器和pdf展示,观感上比较适合入门者观察代码改动对pdf结果的影响。(当然也可以使用其他前台,有很多很多,功能上大同小异)

本文的学习流程:下载安装->基本概念的了解->实战学习(***)

2.下载安装

2.1下载

不得不说从官网下载Texlive和Texmaker是真的慢,所以不推荐从官网下载。

镜像下载Texlive:

清华镜像https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/Images/

找到并下载texlive.iso文件即可。

百度网盘下载Texmaker:链接:https://pan.baidu.com/s/1U4bld1mglCIEjsK5PfG9dg?pwd=wfku
提取码:wfku

2.2安装

下载完Texlive点进去,在目录中找到并点击install-tl-windows.bat文件进行安装即可,**注意安装会有配置勾选,在安装Teworks前端一栏取消勾选,还要记一下安装路径,**安装过程大约20分钟。

在这里插入图片描述

Texmaker安装比较简单,一路点下一步即可。

然后打开,在选项中配置我们的后台,只需要找到我们刚安装的Texlive路径中的latex.exe和pdflatex.exe即可,后面的-xxx内容是自动生成的。

在这里插入图片描述

到此就安装好了,下面进行简单的使用了解流程:

  • 菜单栏, 文件 ---> 新建,创建一个新的tex文件,内容如下:

  • \documentclass{article}
    \title{Title}
    \author{Your Name} 
    \begin{document}  
    \maketitle{}
    \section{Introduction}
    This is where you will write your content. 
    \end{document}
    
  • 点击运行按钮即可生成pdf并展示在右侧。

3.使用教程

下面正式进入Latex的学习阶段。

3.1基础概念

导言区与正文区

begin{document}end{document}之间的就是正文区,而在这之前的就是导言区。

文档类型

\documentclass{article}是确定了文档类型为article,一般LaTeX提供三种基本文档,此外两种是reportbook。三者分别用来写小篇幅的文章、中篇幅的报告和长篇幅的书籍。

(这一部分一般下载某期刊的模板后,模板都指定好了)

宏包

LaTeX导言区可以导入各种宏包,以使用相应宏包的功能,一条语句中可以导入多个宏包,语法如下:

\usepackage{宏包1, 宏包2}
注释

单行注释

% 注释内容

多行注释

\iffalse
注释内容
\fi
转义字符

写法:\+字符

用途:当某些特殊字符与LaTeX语法冲突时,使用转义字符可以使字符强制显示。

示例:\%,可以显示出百分号,而不是注释的含义;\_,显示下划线,而不是下标;\^显示符号本身,而不是上标。

可选参数[htbp]

LaTeX插入图片、表格等元素时,第一行后面有一个可选参数[htbp],例如,\begin{figure}[htbp]

[htbp]是个可选参数项,允许用户指定图片、表格等元素被放置的位置。这一可选参数项可以是下列字母的任意组合。

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

注意:在使用这些参数时:

  1. 如果在图形环境中没有给出上述任一参数,则缺省为 [tbp]
  2. 给出参数的顺序不会影响到最后的结果。因为在考虑这些参数时LaTeX总是尝试以 h-t-b-p 的顺序来确定图形的位置。所以 [hb][bh] 都以h-b 的顺序来排版。
  3. 给出的参数越多,LaTeX的排版结果就会越好。[htbp], [tbp], [htp], [tp] 这些组合得到的效果不错,[h]也是常用的选择。
常见的指令
  1. 节指令:\section{}\subsection{}
  2. 图指令:\begin{figure} ... \end{figure}
  3. 表指令:\begin{table} ... \end{table}
  4. 公式指令:\begin{equation} ... \end{equation}
  5. 参考文献指令:\bibliography{}
  6. 引用指令:\cite{}\ref{}\eqref{}
节指令

\section{}\subsection{}是用来生成论文中的“节”。

\section{} 生成的是论文中的某节,比如第1节,第2节,第3节,等等。

\subsection{} 生成的是论文中的某子节,比如第1.1节,第1.2节,第1.3节,等等。

或许还有机会用到 \subsubsection{},生成的是第三级的子节,比如第1.1.1节,第1.1.2节,第1.1.3节,等等。

图指令

通常写法是这样子的:

\begin{figure}[htbp]
	\centering
    \includegraphics[width=0.5\textwidth]{fig.pdf}
    \caption{Some caption}
    \label{fig:your_label}
\end{figrue}
123456

从上往下讲解。

  • \begin{figure} ... \end{figure}代表插入图的框架。
  • [htbp] 表示插入图的位置。
  • \centering表示插入的图为居中格式。
  • \includegraphics[width=0.5\textwidth]{fig.pdf}表示插入图片。
    • [width=0.5\textwidth]:图宽度是页面宽度的1/2。
    • {fig.pdf}:要插入的图文件,一般与.tex文件放在同一路径。
  • \caption{Some caption}表示图例说明,一定要放在\includegraphics[width=\textwidth]{fig.pdf}的下面
  • \label{fig:your_label}表示图引用标签,为后面引用作准备。

插入图的话,记得在文档最开始插入宏包 \usepackage{graphicx}

表指令(推荐在线生成)

推荐:https://tableconvert.com/zh-cn/latex-generator

通常写法是这样子的:

\begin{table}[htbp]
	\centering
	\caption{your_caption}
	\label{tab:your_label}
	\begin{tabular}{ccc}
		\toprule
		xxx	& xxx & xxx	\\
		\midrule
		xxx	& xxx & xxx	\\
		\bottomrule
	\end{tabular}
\end{table}
123456789101112

从上往下讲解。

  • \begin{table} ... \end{table}代表插入表的框架。
  • [htbp] 表示插入表的位置,含义已在前面解释过。
  • \centering表示表格居中。
  • \caption{your_caption}\label{tab:your_label}的含义在前面已经解释过,但需要注意的是,这两行代码一定要放在\begin{tabular}{ccc} ... \end{tabular}的前面
  • \begin{tabular}{ccc} ... \end{tabular}表示创建表格环境,表的内容全部写在这里面。
    • {ccc}表示表格有3列,居中格式。
    • \toprule\midrule\bottomrule分别为三线表的上、中、下线。
    • &连接一行之中的各元素,\\表示表格换行。

插入表的话,记得在文档最开始插入宏包 \usepackage{booktabs}

公式指令(推荐在线生成)

推荐:https://www.latexlive.com/(支持图片识别)

通常写法是这样子的:

\begin{equation}
	\label{eq:your_label}
	r=a(1-sinθ)
\end{equation}
1234
从上往下讲解。
  • \begin{equation} ... \end{equation}代表插入公式的框架。
  • \label{eq:your_label} 为数学公式的标签。
  • r=a(1-sinθ)为想要编写的公式。

插入公式的话,记得在文档最开始插入宏包 \usepackage{amsmath}

参考文献指令

只有一行,很简单,\bibliography{reference}reference代表文件reference.bib,文件名可以随便取。

reference.bib为要引用的参考文献,各期刊网站都会给出论文的bibtex格式,导出的时候选择bibtex即可。

引用指令

常用的引用指令有 3 种,\cite{}\ref{}\eqref{}

  • \cite{} 为参考文献的引用方式,输入代码 \cite{xxx} 即可,xxx为参考文献关键字。
  • \ref{} 通常用于引用打了标签(\label{})的地方,比如说章节号、图号、表号等等。
  • \eqref{} 用于引用公式编号。

3.2实战学习

latex内容其实是很多的,想系统学习短时间内是做不到的(大佬除外),最快的学习方法还是直接上手模板,遇到不懂的直接搜。

要找到一个模板,除了在期刊官网,这个网站一定要知道的:

https://template-selector.ieee.org/secure/templateSelector/publicationType

找到一个模板后,你会发现模板本身是对格式的提示,模板的内容是对论文写作的提示,一般是对摘要字数限制,关键字等内容的约数。

下面以我下载的一个模板进行学习(其他模板大同小异)

在这里插入图片描述

1.模板的第一部分一般是注释,图中上红框中,是对作者遇到某些情况时的提示(比如摘要超过当前页)。图中下红框部分即为该模板的第一条有用指令:

\documentclass[times,twocolumn,final]{elsarticle}

定义了文档类为elsarticle,并设置了几个选项。times表示使用Times字体,twocolumn设置文档为两栏格式,final指定这是最终版本,不显示草稿标记。

在这里插入图片描述

继续往下看

%% Stylefile to load CAG template
\usepackage{cag}
\usepackage{framed,multirow}
  • %% Stylefile to load CAG template: 说明接下来的操作是加载一个用于CAG模板的样式文件。
  • \usepackage{cag}: 这行代码实际上尝试加载名为cag.sty的样式文件。这个文件应当包含了定义CAG模板所需的所有格式设置、宏定义等。该文件和模板在一个文件夹内。
  • \usepackage{framed,multirow}: 这行代码同时加载了两个LaTeX包:
    • framed包:提供了框架或阴影效果的环境,常用于突出显示文本块,比如警告、注意事项或者创建带有边框的盒子。
    • multirow包:用于在表格(tabular环境)中创建跨越多行的单元格。这对于制作复杂表格非常有用,尤其是当某个单元格内容需要覆盖多行时。
%% The amssymb package provides various useful mathematical symbols
\usepackage{amssymb}
\usepackage{latexsym}
  • %% The amssymb package provides various useful mathematical symbols: 说明接下来的包 (\usepackage{amssymb}) 用于加载一系列的数学符号。amssymb 包含了大量的数学符号,如各种集合符号、关系符号、算子等,对于撰写含有大量数学公式的文档非常有用。
  • \usepackage{amssymb}: 正如上面的注释所说,这一行代码实际上加载了 amssymb 包。
  • \usepackage{latexsym}: 而这一行则是加载 latexsym 包。latexsym 包提供了一些在老版本的 LaTeX 核心中定义的基本符号命令,这些符号在使用 amsmathamssymb 等更现代的包时可能已经被覆盖,但加载 latexsym 可以确保兼容性,特别是对于一些特定的、非AMS的符号。尽管如此,随着 LaTeX 发展,直接使用 amssymb 通常已足够满足大部分数学符号需求,latexsym 的需求相对减少。
% Following three lines are needed for this document.
% If you are not loading colors or url, then these are
% not required.
\usepackage{url}
\usepackage{xcolor}
\definecolor{newcolor}{rgb}{.8,.349,.1}
  • % Following three lines are needed for this document.:说明接下来的三行代码对于当前文档是必要的。
  • % If you are not loading colors or url, then these are not required.:指出如果你的文档不需要颜色设置或网址链接样式调整,那么下面的包和定义就可以省略。
  • \usepackage{url}:这一行代码加载了 url 包,它允许你在文档中以更美观的方式显示长网址。url 包可以自动处理网址中的特殊字符,并且可以根据设置的选项调整网址的样式。
  • \usepackage{xcolor}:这一行加载了 xcolor 包,它扩展了LaTeX的颜色功能,提供了更多的颜色模型、混色能力以及颜色命名,使得在文档中使用颜色更为灵活和方便。
  • \definecolor{newcolor}{rgb}{.8,.349,.1}:这一行定义了一个名为 newcolor 的自定义颜色,使用RGB模型,其红、绿、蓝分量分别为0.8、0.349、0.1。这意味着你可以之后在文档中通过 \textcolor{newcolor}{your text} 来使用这个自定义颜色,或者应用于其他元素的着色。

在这里插入图片描述

接下来,就正式开始撰写论文了

\usepackage{hyperref}

\usepackage[switch,pagewise]{lineno} %Required by command \linenumbers below

\journal{Computers \& Graphics}
  • \usepackage{hyperref}:这一行加载了 hyperref 包。它为PDF文档添加超链接功能,比如让目录条目、参考文献引用、URLs等变成可点击的链接。使用这个包后,交叉引用会自动链接到相应的目标位置。
  • \usepackage[switch,pagewise]{lineno}:这一行加载了 lineno 包,并设置了两个选项。lineno 包用于给文档中的每一行添加行号,这对于审阅文档、标注错误或在学术交流中引用具体行非常有用。switch 选项意味着行号只在 \linenumbers\nolinenumbers 命令之间出现的部分启用,而 pagewise 则指示行号应按页重新编号。如果你在文档中某处使用了 \linenumbers,文档就会开始显示行号。
  • \journal{Computers \& Graphics}:声明目标投稿。
\begin{document}

\verso{Preprint Submitted for review}

\begin{frontmatter}
  • \begin{document}:这标志着文档正文内容的开始。所有将被编译成可见文本的部分都应该放在这个命令与对应的 \end{document} 之间。
  • \verso{Preprint Submitted for review}:这条命令表明这份文档是一个提交审核的预印本。
  • \begin{frontmatter}:这标志着文档前言部分(front matter)的开始,通常包括标题、作者信息、摘要、关键词、作者声明等内容。

注意,\verso{...} 和具体的前言环境\begin{frontmatter}不是标准LaTeX命令,而是特定模板或自定义宏包的一部分。

\title{Computers and Graphics submission formatting guidelines\tnoteref{tnote1}}%
\tnotetext[tnote1]{Only capitalize first word and proper nouns in the title.}
  • \title{Computers and Graphics submission formatting guidelines\tnoteref{tnote1}}%:这一行代码用于设置文章的主标题。\tnoteref{tnote1} 是用来插入一个脚注引用标记,这里标记为 tnote1,表示标题下方会有一个对应编号的脚注。末尾的 % 符号用来避免在标题行末产生不必要的空格或换行。
  • \tnotetext[tnote1]{Only capitalize first word and proper nouns in the title.}:这一行定义了刚才在标题中引用的脚注内容。[tnote1] 指定了这个脚注与之前在标题中通过 \tnoteref{tnote1} 引用的标记相匹配。在提醒作者在处理标题时应遵循的大小写规则,即只有首字母和专有名词需要大写。
\author[1]{First Author Given Name \snm{Surname}\corref{cor1}}
\cortext[cor1]{Corresponding author: 
  Tel.: +0-000-000-0000;  
  fax: +0-000-000-0000;}
\emailauthor{[email protected]}{Corresponding Author Name}
%\ead{[email protected]}
    
\author[2]{Second Author Given Name \snm{Surname}\fnref{fn1}}
\fntext[fn1]{Footnote 1.}  

\address[1]{Address, City, Postcode, Country}
\address[2]{Address, City, Postcode, Country}
  • \author[1]{First Author Given Name \snm{Surname}\corref{cor1}}:这一行定义了第一位作者。方括号 [1] 指定了该作者与地址 [1] 对应(稍后定义)。\snm{Surname} 用于指定作者的姓氏,\corref{cor1} 表示这位作者是通讯作者(Corresponding Author),与后续的 \cortext[cor1] 配对。
  • \cortext[cor1]{Corresponding author: Tel.: +0-000-000-0000; fax: +0-000-000-0000;}:定义了通讯作者的联系信息,包括电话和传真号码。[cor1] 与前面 \corref{cor1} 对应,建立了联系。
  • \emailauthor{[email protected]}{Corresponding Author Name}:这个命令用于指定通讯作者的电子邮件地址和名称。 \emailauthor 不是标准命令,是特定模板中的自定义命令。
  • \author[2]{Second Author Given Name \snm{Surname}\fnref{fn1}}:定义第二位作者,同样方括号 [2] 指向其对应的地址信息。\fnref{fn1} 表明该作者有一个脚注,通过 \fntext[fn1]{Footnote 1.} 来定义这个脚注的内容。
  • \fntext[fn1]{Footnote 1.}:定义了之前通过 \fnref{fn1} 引用的脚注文本,这里简单地标记为“Footnote 1”。
  • \address[1]{...}\address[2]{...}:分别定义了两个地址,与作者信息中的索引相对应。例如,[1] 对应第一位作者的地址,[2] 对应第二位作者的地址。

在这里插入图片描述

%\received{1 February 2017}
\received{\today}
%%%% Do not use the below for submitted manuscripts
%\finalform{28 March 2017}
%\accepted{2 April 2017}
%\availableonline{15 May 2017}
%\communicated{S. Sarkar}
  • \received{1 February 2017}:这个命令用于指定文章首次接收的日期。被注释掉的原始日期是2017年2月1日,而实际使用的命令是 \received{\today},这意味着它会自动插入文档编译当天的日期,这对于跟踪稿件处理进度有用,尤其是在草稿阶段。
  • %\finalform{28 March 2017}:这个注释掉的命令用于标注文章最终形式确定的日期,这里给出的是2017年3月28日。在提交最终版本之前,这一信息通常不会被需要。
  • %\accepted{2 April 2017}:标记文章被接受的日期,此例中为2017年4月2日。这也是在文章被正式接受发表之后才需要填写的信息。
  • %\availableonline{15 May 2017}:指文章在线发布或可供公众查看的日期,此处为2017年5月15日。这同样是文章正式出版流程的一部分。
  • %\communicated{S. Sarkar}:用于标注负责处理这篇稿件的编辑或通信作者的名字,在这个例子中是"S. Sarkar"。这通常在文章发表时列出,以示感谢和责任归属。

在实际操作中,这些命令的具体使用和是否需要,会根据期刊或会议的投稿要求而有所不同。在提交稿件时,除非被特别要求,否则通常不需要提供像“final form”、“accepted”或“available online”这样的日期,这些信息会在审稿和出版过程中由出版社或会议组织者添加。

在这里插入图片描述

\begin{abstract}

\end{abstract}

容易理解,摘要内容

\begin{keyword}
%% MSC codes here, in the form: \MSC code \sep code
%% or \MSC[2008] code \sep code (2000 is the default)
%\MSC 41A05\sep 41A10\sep 65D05\sep 65D17
%% Keywords
\KWD Computers and Graphics\sep Formatting\sep Guidelines
\end{keyword}
  • \begin{keyword}\end{keyword}:这对环境用于包围关键词列表.
  • % MSC codes here, in the form: \MSC code \sep code:指导如何在文档中加入数学主题分类代码。MSC代码用于归类数学及相关领域的文献,每个代码代表一个特定的主题领域。通常,这些代码会以\MSC命令后跟代码数字和\sep分隔不同代码的方式列出。这里的示例被注释掉了,意味着实际没有添加MSC代码。
  • %\MSC 41A05\sep 41A10\sep 65D05\sep 65D17:展示如果要包含MSC代码,应该如何编写。每个代码(如41A05)代表一个数学主题分类,\sep用于分隔不同的代码。
  • \KWD Computers and Graphics\sep Formatting\sep Guidelines:这部分是实际的关键词定义。\KWD(特定于模板,标准LaTeX中通常使用 \keywords{...})后面跟随以\sep分隔的关键词。
\end{frontmatter}

\end{frontmatter} 这个命令标志着文档前言部分(front matter)的结束。与前文的 \begin{frontmatter} 命令相对应。

在这里插入图片描述

\linenumbers

上文讲过,用于启动行号显示功能。

%% main text
\section{Note}
\label{sec1}
Please use \verb+elsarticle.cls+ for typesetting your paper.
Additionally load the package \verb+cag.sty+ in the preamble using
the following command: 
\begin{verbatim} 
  \usepackage{cag}
\end{verbatim}
  • %% main text:用来标记文档主体内容的起始。
  • \section{Note}:创建了一个新的小节标题,标题名为 “Note”。
  • \label{sec1}:为当前小节分配了一个标签 sec1。这使得可以通过 \ref{sec1} 在文档其他地方引用这个小节,自动插入对应的编号。
  • 接下来的文本是一个普通的段落,内容是指导用户如何使用 \verb+elsarticle.cls+ 类文件来排版他们的论文。\verb+...+ 命令用于在文本中插入代码片段,保持其原有的格式,不进行文本排版,这里用来展示类文件名 elsarticle.cls
  • 文本中还提到了加载额外的样式文件 \verb+cag.sty+。为了演示如何在文档前言(preamble)中正确加载这个包,它提供了一个代码块(通过 \begin{verbatim} ... \end{verbatim} 环境包裹),展示实际的LaTeX命令 \usepackage{cag}verbatim 环境使得文本内容按原样输出,不进行任何形式的格式化,适用于展示代码或需要保留特殊字符和空格的文本。
Following commands are defined for this journal which are not in
\verb+elsarticle.cls+. 
\begin{verbatim}
  \received{}
  \finalform{}
  \accepted{}
  \availableonline{}
  \communicated{}
\end{verbatim}

这段LaTeX代码通过verbatim环境列出了几个特定于期刊的命令,这些命令并未包含在标准的elsarticle.cls文档类中。下面是每个命令的简要说明:

  • \received{}:用于记录文章首次被期刊接收的日期。
  • \finalform{}:标记文章最终版本完成的日期。
  • \accepted{}:指示文章被正式接受的日期。
  • \availableonline{}:记录文章在线发布或可获取的日期。
  • \communicated{}:用于指明与作者沟通的编辑或审稿人的名字,通常用于表示谁负责处理该稿件。

这一块上文讲过,对于作者来说没什么用。

Any instructions relevant to \verb+elsarticle.cls+ are applicable
here as well. See the online instruction available on:
\makeatletter
\if@twocolumn
\begin{verbatim}
 http://support.stmdocs.in/wiki/
 index.php?title=Elsarticle.cls
\end{verbatim}
\else
\begin{verbatim}
 http://support.stmdocs.in/wiki/index.php?title=Elsarticle.cls
\end{verbatim}
\fi
  • \makeatletter\makeatother:这两个命令用于允许在宏定义中使用@符号,这是LaTeX内部命令的一部分,通常对外部文档是不可见的。在这个上下文中,它们包裹了条件判断代码,确保内部命令的正确处理。

  • \if@twocolumn:这是一个条件测试,检查文档是否设置了双栏模式。如果是双栏模式,则执行接下来的代码直到遇到对应的\else\fi

  • 在双栏模式下,网址被格式化为两行显示,以适应双栏排版的宽度限制:

    http://support.stmdocs.in/wiki/
    index.php?title=Elsarticle.cls
    
  • 如果文档不是双栏模式(即单栏模式),则网址作为一个整体显示在一行中:

    http://support.stmdocs.in/wiki/index.php?title=Elsarticle.cls
    
  • 两种情况下提供的网址都是相同的,指向STMDocs上的一个页面,该页面包含了关于如何使用elsarticle.cls类文件的在线指南。这个页面对于使用elsarticle文档类撰写和排版文章的作者来说,是一个重要的参考资料,提供了详细的使用说明和常见问题解答。

命令的一部分,通常对外部文档是不可见的。在这个上下文中,它们包裹了条件判断代码,确保内部命令的正确处理。

  • \if@twocolumn:这是一个条件测试,检查文档是否设置了双栏模式。如果是双栏模式,则执行接下来的代码直到遇到对应的\else\fi

  • 在双栏模式下,网址被格式化为两行显示,以适应双栏排版的宽度限制:

    http://support.stmdocs.in/wiki/
    index.php?title=Elsarticle.cls
    
  • 如果文档不是双栏模式(即单栏模式),则网址作为一个整体显示在一行中:

    http://support.stmdocs.in/wiki/index.php?title=Elsarticle.cls
    
  • 两种情况下提供的网址都是相同的,指向STMDocs上的一个页面,该页面包含了关于如何使用elsarticle.cls类文件的在线指南。这个页面对于使用elsarticle文档类撰写和排版文章的作者来说,是一个重要的参考资料,提供了详细的使用说明和常见问题解答。

未完待续。。。。。

标签:Latex,begin,end,usepackage,代码,sep,从零开始,写出,文档
From: https://blog.csdn.net/qq_45477639/article/details/139509786

相关文章

  • 导出 LaTeX 为 SVG
    LaTeX本身并不直接支持导出SVG格式的文档或图片,但可以通过一些工具和插件实现将LaTeX文档或图形转换为SVG格式。使用dvisvgm我们可以先将LaTeX文档编译为DVI格式,再通过dvisvgm工具将DVI文件转换为SVG格式。这个工具是TeXLive发行版的一部分。编译为DVI......
  • VSCode中使用LaTeX编辑文章
    工欲善其事必先利其器,成功在VSCode中使用LaTeX,遂做记录。1.先准备VScode的安装下载地址:VScode地址正常安装即可,一路next安装下去即可。2.准备安装latex国内使用清华源,下载地址:https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/Images/window用户选择ISO......
  • 从零开始的.NET项目(一)仓储模式与配置AutoMapper
    目标框架:.net6.0操作系统:macos编译器:Rider内容:创建第一个Controller,使用仓储(Respository)模式实现,并使用AutoMapper进行数据对象关系映射非常简单的实现,Automapper也只介绍了最基础也最常用的其他用法后续再补,目的就是稳准狠......
  • 合工大毕业论文LaTeX模板使用指南
    本文是在笔者为班级同学编写的指南的基础上修改而来的。前言LaTeX是目前主流的计算机排版系统之一。目前社区维护了一份合工大毕业论文的LaTeX模板(以下简称“模板”):https://github.com/HFUTTUG/HFUT_Thesis考虑到大部分同学对Word都谈不上精通,使用LaTeX排版毕设论文,可以......
  • 如何从零开始创建一个完整的SpringBoot项目,逐步构建自己的技术栈。
     有的小伙伴虽然开发很多年,但是有很多连自己都没有动手去创建一个SpringBoot。原因各不相同,有的是开发项目比较忙,没有时间,刚去公司的时候项目的框架就是现成的,就一直用。还有就是自己没有闲下学习的习惯。我其实就是,最起码工作1-2的时候还没有自己创建过,当时自我学习的时间......
  • 从零开始的.NET项目(一)配置EFCore
    目标框架:.net6.0操作系统:macos编译器:Rider内容:配置EFCore,使用CodeFrist创建mssql数据库,并存入种子数据数据库准备如果使用的是vs编译器的话,其实就不用准备数据库了,直接用vs自带的数据库,嘎嘎好使......
  • 从零开始:腾讯云轻量应用服务器上部署MaxKB项目(基于LLM大语言模型的知识库问答系统)
    使用腾讯云轻量应用服务器部署和使用MaxKB项目前言一,MaxKB介绍MaxKB是基于LLM大语言模型的知识库问答系统,旨在成为企业的最强大脑。它支持开箱即用,无缝嵌入到第三方业务系统,并提供多模型支持,包括主流大模型和本地私有大模型,为用户提供智能问答交互体验和灵活性。二,效果展示 ......
  • Re0:从零开始的C++游戏开发 【下】
    Re0:从零开始的C++游戏开发(下)这是蒟蒻观看B站upVoidmatrix的课程从零开始的提瓦特幸存者的个人笔记【自用】前言:采用适用于小白的easyx图形库。第三集提瓦特の幸存者(下)3.1用户界面实现和设计模式基础3.1.1导言假设这样一个场景:在一个游戏中,出现在你的视野中的树木......
  • Re0:从零开始的C++游戏开发【中】
    Re0:从零开始的C++游戏开发(中)这是蒟蒻观看B站upVoidmatrix的课程从零开始的提瓦特幸存者的个人笔记【自用】前言:采用适用于小白的easyx图形库。第三集提瓦特の幸存者3.1程序动画实现及角色移动在开始之前,我们应该认识到,尽管我们可以通过点线面绘制简单的画面,但是想......
  • 从零开始学习Frida Hook
    参考文章:https://www.jianshu.com/p/c349471bdef71、概述:Frida是个轻量级别的hook框架(没咋看懂)是PythonAPI,但JavaScript调试逻辑Frida的核心是用C编写的,并将Google的V8引擎注入到目标进程中,在这些进程中,JS可以完全访问内存,挂钩函数甚至调用进程内的本机函数来执行。使用Pytho......