LaTeX简单使用

前言

因为离散要求写一篇算法的小文章,实在无法忍受word的数学公式输入之后,我自(ctrl)学(c)了一下LaTeX的写法,这里简单介绍我写文章时用到的代码,时隔多日,若有偏差欢迎指出


中文LaTeX

百度上输出中文的方法各种各样,在尝试n多种方法无果后(CJK什么的),使用了XeLaTeX,只需使用如下文档类型,中括号内为可选参数,UTF8表示使用utf8编码,花括号内为文档类型,ctexart表示其文档类型为中文article
\documentclass[UTF8]{ctexart}

正文区

形如\begin{环境名}...\end{环境名}称为环境,而\begin{document}...\end{document}则是正文区,里面的内容就是文章的内容,而这之前的部分则是用来导入各种宏包

标题摘要

下面代码较为易懂,\maketitle也即打印标题

\title{Notes On LaTeX Typesetting}
\author{Some One}
\date{November 13, 2011}
\maketitle

当然还可以写摘要

\begin{abstract}
some abstract...
\end{abstract}

章节目录

代码如下,其中\chapter在article中不能使用

\part{部分标题}
\chapter{章标题}这一章我们介绍这些内容。
\section{节标题}这一节我们介绍这些内容。
\subsection{小节标题}这一小节我们介绍这些内容。
\subsubsection{子节标题}这一子节我们介绍这些内容。
\paragraph{段标题}这一段我们介绍这些内容。
\subparagraph{小段标题}这一小段我们介绍这些内容。

使用\tableofcontents 可以生成目录,而输入形如

\renewcommand\thesection{§\arabic{section}}

则可以自定义某一类章节标题的格式,在此不作示范

列表环境

这里列举三种列表,分别为无序列表,有序列表,描述列表

\begin{itemize} %无序列表
\item 无编号的列表
\item 带编号的列表
\item 带标签的列表
\end{itemize}
\begin{enumerate} %有序列表
\item 无编号的列表
\item 带编号的列表
\item 带标签的列表
\end{enumerate}
\begin{description} %描述列表
\item[无序列表] 无编号的列表。%中括号内为描述内容(相当于一种“序号”)
\item[有序列表] 带编号的列表。
\item[描述列表] 带标签的列表。
\end{description}

插入图片

插入已有图片需要导入宏包graphicx,即\usepackage{graphicx},使用如下

\includegraphics[选项]{图形文件} %与文字并行的图片

%将图片单独居中插入
\begin{center}
\includegraphics[选项]{图形文件}
\end{center}

%插入浮动图片
\begin{figure}[htbp!]
\centering
\includegraphics[选项]{图形文件}
\caption{图片} %可以在图片下方加标注并自动编号
\end{figure}

输入数学公式

此处即makedown写法即可,$a=1$行内公式$$a=1$$块级公式,具体写法参考常用数学符号的 LaTeX 表示方法

插入伪代码

这里需要导入宏包

\usepackage{caption}
\usepackage{algorithm}
\usepackage{algorithmicx}  
\usepackage{algpseudocode}

插入时则

\begin{algorithm}  
\caption{算法名字}
\begin{algorithmic}
\Require 输入
\Ensure 输出
\end{algorithmic}
\State ...
\For{...}
	\State ...
\EndFor
\If
...
\EndIf
\While
...
\EndWhile
\end{algorithm}

其中还可以对格式进行定制

\floatname{algorithm}{算法}  
\renewcommand{\algorithmicrequire}{\textbf{输入:}}  
\renewcommand{\algorithmicensure}{\textbf{输出:}}  

插入代码

这里需要导入宏包

\usepackage{listings}

还可以对代码进行定制

\usepackage{xcolor}
\lstset{
    frame=none,                                          % 不显示背景边框
    backgroundcolor=\color[RGB]{245,245,244},            % 设定背景颜色
    keywordstyle=\color[RGB]{116,0,0},                   % 设定关键字颜色
    commentstyle=\it\color[RGB]{0,96,96},                % 设置代码注释的格式
    stringstyle=\rmfamily\slshape\color[RGB]{255,153,18},   % 设置字符串格式
    showstringspaces=false,                              % 不显示字符串中的空格
    language=c++,                                        % 设置语言
}

插入代码时使用lstlisting环境即可

\begin{lstlisting}

#include <iostream>
using namespace std;
int main() {
  cout << "hello" << endl;
  return 0;
}

\end{lstlisting}

参考文献

\begin{thebibliography}{123456}
\bibitem[Knuth1]{DK1} D. Knuth, T.A.O.C.P. , Vol. 1, Addison-Wesley, 1997.
\bibitem[Knuth2]{DK2} D. Knuth, T.A.O.C.P. , Vol. 2, Addison-Wesley, 1997.
\bibitem[Knuth3]{DK3} D. Knuth, T.A.O.C.P. , Vol. 3, Addison-Wesley, 1998.
\end{thebibliography}

中括号内为文献记号,花括号内为引用名称,至于那个123456表示我也看不懂。

字体环境

\textrm{Roman Family}
\textsf{Sans Serif Family}
\texttt{Typewriter Family}

花括号内为字体内容


感谢

本文内容及示例参考LaTeX 排版学习笔记以及 LaTeX实战经验:如何插入程序代码,写文章时也参考诸多博客,感谢这些博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值