注:
个人备份,这是刘海洋《LaTeX 入门》配套的 TeX 源码
% !Mode:: "TeX:UTF-8"
% !TEX program = xelatex
$\Delta = b^2 - 4ac$
\[
x_{1,2} = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}
\]
\documentclass{article}
\begin{document}
This is my first document.
Happy \TeX ing!
\end{document}
\documentclass[UTF8]{ctexart}
\begin{document}
\section{文字}
特可爱排版。
\section{数学}
\[
a^2 + b^2 = c^2
\]
\end{document}
\begin{equation}
a(b+c) = ab + ac
\end{equation}
$\angle ACB = \pi / 2$
\begin{equation}
AB^2 = BC^2 + AC^2.
\end{equation}
\includegraphics[width=3cm]{xiantu.pdf}
\begin{table}[H]
\begin{tabular}{|rrr|}
\hline
直角边 $a$ & 直角边 $b$ & 斜边 $c$\\
\hline
3 & 4 & 5 \\
5 & 12 & 13 \\
\hline
\end{tabular}%
\qquad
($a^2 + b^2 = c^2$)
\end{table}
% UTF-8 编码
café\quad Gödel\quad Antonín Dvořák
χαϊδεύης\qquad Крюкова
\usepackage[greek,english]{babel}
% 导言区 \usepackage[OT2,OT1]{fontenc}
{\fontencoding{OT2}\selectfont ABCabc}
% coding: utf-8
% pdflatex 命令编译
\documentclass{article}
\usepackage[OT2,T1]{fontenc}
\usepackage[utf8]{inputenc}
\begin{document}
café \qquad Gödel
{\fontencoding{OT2}\selectfont Крюкова}
\end{document}
differ find flight difficlut ruffle
shelfful shelf{}ful shelf\/ful
``\,`A' or `B?'\,'' he asked.
An inter-word dash or, hyphen, as in X-ray.
A medium dash for number ranges, like 1--2.
A punctuation dash---like this.
Good: One, two, three\ldots
Bad: One, two, three...
She $\ldots$ she got it.
I've no idea\ldots.
\# \quad \$ \quad \% \quad \& \quad
\{ \quad \} \quad \_ \quad
\textbackslash
This is a short
sentence. This is
another.
Happy \TeX ing. Happy \TeX\ ing.
Happy \TeX{} ing. Happy {\TeX} ing.
Question~1 % 名称与编号间
Donald~E. Knuth % 教名之间,但姓可以断行
Mr.~Knuth % 称谓缩写与名字间
function~$f(x)$ % 名字后的短公式
1,~2, and~3 % 序列的部分符号间
A sentence. And another.
U.S.A. means United States Army?
Tinker et al.\ made the double play.
Roman number XII\@. Yes.
中文和English的混排效果
并不依赖于 space 的有无。
\mbox{条目}-a 不同于条目-b
\CJKsetecglue{}
汉字word
幻影\phantom{参数}速速隐形
幻影参数速速显形
这是一行文字\\另一行
这是一行文字\linebreak 另一行
\begin{align*}
[2 - (3+5)]\times 7 &= 42 \\{}
[2 + (3-5)]\times 7 &= 0
\end{align*}
® © £ § ¶ † ‡ • ™ € ‰
\usefont{T1}{t1xr}{m}{n}
\symbol{"DE}\symbol{"FE}
\symbol{28450}\symbol{35486}
\textit{Italic font test}
{\bfseries Bold font test}
\sffamily
\textbf{This is a paragraph of bold and
\textit{italic font, sometimes returning
to \textnormal{normal font} is necessary.}}
{\itshape M}M
\textit{M}M
{\itshape M\/}M
Bold `{\bfseries leaf}'
Bold `{\bfseries leaf\/}'
Bold `\textbf{leaf}'
\textit{M}M
\textit{M\nocorr}M
{\CJKfamily{hei}这是黑体}
{\CJKfamily{kai}这是楷书}
{\songti 宋体} \quad {\heiti 黑体} \quad
{\fangsong 仿宋} \quad {\kaishu 楷书}
% ctex 宏包下默认相当于 \CJKfamily{rm}
% \rmfamily 或 \textrm 也会同时设置此字体
中文字体的\textbf{粗体}与\textit{斜体}
\fontencoding{OT1}\fontfamily{pzc}
\fontseries{mb}\fontshape{it}
\fontsize{14}{17}\selectfont
PostScript New Century Schoolbook
\usefont{T1}{pbk}{db}{n}
PostScript Bookman Demibold Normal
\documentclass{article}
\usepackage{txfonts}
\begin{document}
Test text
\end{document}
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{ccfonts,eulervm}
\begin{document}
Test text
\end{document}
% 在导言区设置全文字体为 Windows 提供的
% Times New Roman, Verdana, Courier New 字体
\usepackage{fontspec}
\setmainfont{Times New Roman}
\setsansfont{Verdana}
\setmonofont{Courier New}
% 导言区使用
\newfontfamily\lucidasans{Lucida Sans}
% 正文使用
{\lucidasans This is Lucida Sans.}
\newfontfamily\minion[Numbers=SlashedZero]{Minion Pro}
\minion 100, OK.
\documentclass{article}
\usepackage{ccfonts}% 公式使用 Concrete 系列字体
\usepackage[no-math]{fontspec}% \mathrm 等也使用 Concrete 系列字体
\setmainfont{Latin Modern Mono Prop}% 正文使用 Ladin Modern Mono 字体
\documentclass[no-math]{ctexart}
\usepackage[utopia]{mathdesign}% 数字字体使用 mathdesign 与 Utopia
\usepackage[EU1]{fontenc}% 恢复正文字体的 Unicode 编码
\setmainfont{Utopia Std}% 正文字体使用 OpenType 格式的 Adobe Utopia
\documentclass[UTF8]{ctexart}
% 西文正文和数学字体
\let\hbar\relax % 解决 xunicode 与 fourier 的符号冲突
\usepackage{fourier}
% 设置默认编码为 T1,以支持 fourier 宏包
\usepackage[T1]{fontenc}
% 定义新的西文 Times 字体族
\newfontfamily\times{Times New Roman}
% 设置西文等宽字体,并重定义 \ttfamily 来切换到 EU1 编码
\setmonofont{Consolas}
\let\oldttfamily\ttfamily
\def\ttfamily{\oldttfamily\fontencoding{EU1}\selectfont}
% 设置中文字体
\setCJKmainfont{Adobe Kaiti Std}
\begin{document}
Utopia text and $\sum math$ fonts.
汉字楷书与 {\times Times New Roman} 字体。
\texttt{Consolas 0123}
\end{document}
% XeLaTeX 编译
\documentclass[UTF8]{ctexart}
% 不需要 tipa 宏包,xunicode 已经实现其功能
\setmainfont{CMU Serif} % Computer Modern Roman 的 Unicode 版本
\begin{document}
\LaTeX{} 读音为 \textipa{["lA:tEx]}。
\end{document}
% XeLaTeX 编译
\documentclass[UTF8]{ctexart}
\usepackage{tipa}% 宏包已经正确加载 fontenc
% \mytipa 的定义参考原来的 \textipa 的旧定义,手工切换编码
\newcommand\mytipa[1]{{\fontencoding{T3}\selectfont#1}}
\begin{document}
\LaTeX{} 读音为 \mytipa{["lA:tEx]}。
\end{document}
\fontfamily{cmfib}\selectfont
Computer Modern Fibonacci Roman
% 导言区修改全文默认字体 Computer Modern Fibonacci 字体族
\renewcommand\rmdefault{cmfib}
% 导言区修改全文默认字体为无衬线字体族 phv(Helvetica)
\renewcommand\familydefault{\sfdefault}
\renewcommand\sfdefault{phv}
\renewcommand\CJKfamilydefault{\CJKsfdefault}
\xfonttable{OT1}{lmr}{m}{n}
You \emph{should} use fonts carefully.
\textit{%
You \emph{should} use fonts carefully.}
This is {\em emphasized\/} text.
\newcommand\Emph{\textbf}
This is \Emph{emphasized} text.
\underline{Emphasized} text and
\underline{another}.
% 导言区用 \usepackage{ulem}
\uline{Emphasized} text and \uline{another}.
A \emph{very very very very very very very
very very very very very} long sentence.
\uuline{urgent}\qquad \uwave{boat}\qquad
\sout{wrong}\qquad \xout{removed}\qquad
\dashuline{dashing}\qquad \dotuline{dotty}
\CJKunderdot{汉字,下加点}\\
\CJKunderline{汉字,下划线} \\
\CJKunderdblline{汉字,下划线} \\
\CJKunderwave{汉字,下划线} \\
\CJKsout{汉字,删除线}\\
\CJKxout{汉字,删除线}
\begin{CJKfilltwosides}{5cm}
汉字,分散对齐
\end{CJKfilltwosides}
\emph{汉字,强调}\\
\CTEXunderdot{汉字,加点}
The text can be {\Large larger}.
\setlength{\lineskiplimit}{2.625bp} % 五号字 1/4 字高
\setlength{\lineskip}{2.625bp}
1\,234\,567\,890
\newcommand\dbldag{\dag\!\dag}
\dbldag\ versus \dag\dag
Space\hspace{1cm}1\,cm
text\\
\hspace{1cm}text\\
\hspace*{1cm}text
\newcommand\test{longggggggg%
\hspace{2em plus 1em minus 0.25em}}
\test\test\test\test\test\test\test\test
left\hspace{\fill}middle%
\hfill right
left\hspace{\stretch{2}}$2/3$%
\hspace{\fill}right
left\hrulefill middle\dotfill right
\setlength{\parindent}{8em}
Paragraph indent can be very wide in \LaTeX.
Para\par
\addtolength{\parindent}{2em}Para\par
\addtolength{\parindent}{2em}Para\par
\mbox{cannot be broken}
\makebox[1em]{\textbullet}text \\
\makebox[5cm][s]{some stretched text}
语言文字\llap{word}\\
\rlap{word}语言文字
\fbox{framed} \\
\framebox[3cm][s]{framed box}
\setlength{\fboxsep}{0pt} \fbox{tight}
\setlength{\fboxsep}{1em} \fbox{loose}
\newsavebox{\mybox} % 通常在导言区定义
\sbox{\mybox}{test text}
\usebox{\mybox} \fbox{\usebox{\mybox}}
\newsavebox{\verbbox} % 通常在导言区定义
\begin{lrbox}{\verbbox}
\verb|#$%^&{}|
\end{lrbox}
\usebox{\verbbox} \fbox{\usebox{\verbbox}}
\framebox[2\width]{带边框}
\setlength{\parskip}{0pt}
\raggedright
English words like `technology' stem from a
Greek root beginning with the letters τεχ\dots
\begin{center}
居中
\end{center}
\hyphenation{man-u-script com-pu-ter gym-na-sium}
% 导言区 \usepackage{ragged2e}
\RaggedRight
English words like `technology' stem from a
Greek root beginning with the letters τεχ\dots
\setlength{\leftskip}{4em}
\setlength{\rightskip}{1em}
These parameters tell \TeX{} how much glue
to place at the left and at the right end
of each line of the current paragraph.
\hangindent=5pc \hangafter=-2
These two parameters jointly specify
``hanging indentation'' for a paragraph.
The hanging indentation indicates to \TeX{}
that certain lines of the paragraph should
be indented and the remaining lines should
have their normal width.
% 导言区 \usepackage{lettrine}
\lettrine{T}{he} \TeX{} in \LaTeX{} refers
to Donald Knuth's \TeX{} typesetting system.
The \LaTeX{} program is a special version of
\TeX{} that understands \LaTeX{} commands.
% 导言区 \usepackage{shapepar}
\heartpar{%
绿草苍苍,白雾茫茫,有位佳人,在水一方。
绿草萋萋,白雾迷离,有位佳人,靠水而居。
我愿逆流而上,依偎在她身旁。无奈前有险滩,道路又远又长。
我愿顺流而下,找寻她的方向。却见依稀仿佛,她在水的中央。
我愿逆流而上,与她轻言细语。无奈前有险滩,道路曲折无已。
我愿顺流而下,找寻她的足迹。却见仿佛依稀,她在水中伫立。}
前文……
\begin{quote}
学而时习之,不亦说乎?
有朋自远方来,不亦乐乎?
\end{quote}
后文……
前文……
\begin{quotation}
学而时习之,不亦说乎?
有朋自远方来,不亦乐乎?
默而识之,学而不厌,诲人不倦,何有于我哉?
\end{quotation}
后文……
\begin{verse}
在一段内使用 \verb=\\= 换行,\\
分段仍用空行。
过长的长会在折行时悬挂缩进,
就像现在这一句。
\end{verse}
\begin{abstract}
本书讲解 \LaTeX{} 的使用。
\end{abstract}
\CTEXoptions[abstractname={摘\quad 要}]
\begin{enumerate}
\item 中文
\item English
\item Français
\end{enumerate}
\begin{itemize}
\item 中文
\item English
\item Français
\end{itemize}
\begin{description}
\item[中文] 中国的语言文字
\item[English] The language of England
\item[Français] La langue de France
\end{description}
\begin{enumerate}
\item 中文
\begin{enumerate}
\item 古代汉语
\item 现代汉语
\begin{enumerate}
\item 口语
\begin{enumerate}
\item 普通话
\item 方言
\end{enumerate}
\item 书面语
\end{enumerate}
\end{enumerate}
\item English
\item Français
\end{enumerate}
\begin{enumerate}
\item 中文
\item[1a.] 汉语
\item English
\end{enumerate}
\begin{itemize}
\item[\dag] 中文
\item English
\item Français
\end{itemize}
\begin{enumerate}
\item 这是编号 \theenumi
\item 这是编号 \theenumi
\end{enumerate}
\begin{enumerate}
\item 编号
\arabic{enumi}, \roman{enumi}, \Roman{enumi},
\alph{enumi}, \Alph{enumi}, \fnsymbol{enumi}
\item 编号
\arabic{enumi}, \roman{enumi}, \Roman{enumi},
\alph{enumi}, \Alph{enumi}, \fnsymbol{enumi}
\item 编号
\arabic{enumi}, \roman{enumi}, \Roman{enumi},
\alph{enumi}, \Alph{enumi}, \fnsymbol{enumi}
\end{enumerate}
\renewcommand\theenumi{\roman{enumi}}
\renewcommand\labelenumi{(\theenumi)}
\begin{enumerate}
\item 使用中文
\item Using English
\end{enumerate}
% 计数器设置,通常在导言区
\newcounter{mycnt}
\setcounter{mycnt}{0} % 默认值就是 0
\renewcommand\themycnt{\arabic{mycnt}} % 默认值就是阿拉伯数字
% 计数器使用,通常做成自定义命令的一部分
\stepcounter{mycnt}\themycnt 输出计数器值为 1;
\stepcounter{mycnt}\themycnt 输出计数器值为 2;
\addtocounter{mycnt}{1}\themycnt 输出计数器值为 3;
\addtocounter{mycnt}{-1}\themycnt 输出计数器值为 2;
\addtocounter{mycnt}{-1}\themycnt 输出计数器值为 1。
\usepackage{amsmath}
\numberwithin{equation}{section}
{% 使用分组让 \descriptionlabel 的修改局部化
\renewcommand\descriptionlabel[1]{\normalfont\Large\itshape
\textbullet\ #1}
\begin{description}
\item[标签] 可以修改 \verb=\descriptionlabel= 改变标签的格式。
\item[其他] 其他格式的也可以参考后面的列表环境修改。
\end{description}
}
\newcounter{mylist}
\begin{list}{\#\themylist}%
{\usecounter{mylist}}
\item 中文
\item English
\end{list}
\begin{list}{\textbullet}{%
\setlength{\topsep}{0pt} \setlength{\partopsep}{0pt}
\setlength{\parsep}{0pt} \setlength{\itemsep}{0pt}}
\item 中文
又一段中文
\item English
\item Français
\end{list}
\newenvironment{myitemize}{%
\begin{list}{\textbullet}{%
\setlength{\topsep}{0pt} \setlength{\partopsep}{0pt}
\setlength{\parsep}{0pt} \setlength{\itemsep}{0pt}}}
{\end{list}}
\newenvironment{mycenter}
{\begin{trivlist}
\centering
\item[]}
{\end{trivlist}}
% \usepackage{enumitem}
\begin{enumerate}[itemsep=0pt,parsep=0pt,
label=(\arabic*)]
\item 中文
\item English
\item Français
\end{enumerate}
\usepackage{enumitem}
% 仿照 enumerate 环境定义可二级嵌套的 mylist
\newlist{mylist}{enumerate}{2}
% 分别定义每级的格式
\setlist[mylist,1]{itemsep=0pt,parsep=0pt,label=(\arabic*)}
\setlist[mylist,2]{itemsep=0pt,parsep=0pt,label=(\alph*)}
% \usepackage{enumitem}
\AddEnumerateCounter{\chinese}{\chinese}{}
\begin{enumerate}[label={\chinese*、},labelsep=0pt]
\item 内容清晰
\item 格式美观
\end{enumerate}
\newtheorem{thm}{定理} % 一般在导言区
\begin{thm}
直角三角形斜边的平方等于两腰的平方和。
\end{thm}
\begin{thm}[勾股定理]
直角三角形斜边的平方等于两腰的平方和。
\end{thm}
\newtheorem{lemma}{引理}[chapter]% 按章
\begin{lemma} 偏序集可良序化。 \end{lemma}
\begin{lemma} 实数集不可数。 \end{lemma}
\newtheorem{prop}[thm]{命题}
\begin{prop}
直角三角形的斜边大于直角边。
\end{prop}
% 导言区
\usepackage{theorem}
\theoremstyle{changebreak}
\theoremheaderfont{\sffamily\bfseries}
\theorembodyfont{\normalfont}
\newtheorem{definition}{定义}[chapter]
\begin{definition}
有一个角是直角的三角形是\emph{直角三角形}。
\end{definition}
% 导言区
\usepackage[thmmarks]{ntheorem}
{ % 利用分组,格式设置只作用于证明环境
\theoremstyle{nonumberplain}
\theoremheaderfont{\bfseries}
\theorembodyfont{\normalfont}
\theoremsymbol{\mbox{$\Box$}} % 放进盒子,或用 \ensuremath
\newtheorem{proof}{证明}
}
\begin{proof}
证明是显然的。
\end{proof}
\usepackage{amsthm}
\renewcommand\proofname{证明}
\renewcommand\qedsymbol{\ensuremath{\Box}}
% \usepackage{amsthm}
\begin{proof}
最后我们有
\[
f(x) = 0. \qedhere
\]
\end{proof}
\verb"\LaTeX \& \TeX" \qquad
\verb!\/}{#$%&~!
显示空格 \verb*!1 2 3 4!
\begin{verbatim}
#!usr/bin/env perl
$name = "guy";
print "Hello, $name!\n";
\end{verbatim}
\begin{verbatim*}
#include <stdio.h>
main() {
printf("Hello, world.\n");
}
\end{verbatim*}
% \usepackage{fancyvrb}
\SaveVerb{myverb}|#$%^&|
\fbox{套中 \UseVerb{myverb}}
% \usepackage{cprotect}
\cprotect\fbox{套中 \verb|#$%^&|}
verbatim |\LaTeX|
\begin{lstlisting}[language=C]
/* hello.c */
#include <stdio.h>
main() {
printf("Hello.\n");
}
\end{lstlisting}
\lstset{ % 整体设置
basicstyle=\sffamily,
keywordstyle=\bfseries,
commentstyle=\rmfamily\itshape,
stringstyle=\ttfamily}
\begin{lstlisting}[language=C]
/* hello.c */
#include <stdio.h>
main() {
printf("Hello.\n");
}
\end{lstlisting}
\lstset{flexiblecolumns}% column=flexible
\begin{lstlisting}[language=C]
/* hello.c */
#include <stdio.h>
main() {
printf("Hello.\n");
}
\end{lstlisting}
\lstset{columns=flexible,
numbers=left,numberstyle=\footnotesize}
\begin{lstlisting}[language=C]
/* hello.c */
#include <stdio.h>
main() {
printf("Hello.\n");
}
\end{lstlisting}
\lstset{language=C,flexiblecolumns}
语句 \lstinline!typedef char byte!
\lstset{language=C,flexiblecolumns,
escapechar=`} % 设置 ` 为逃逸字符
\begin{lstlisting}
int n; // `一个整数`
\end{lstlisting}
\lstset{language=C,flexiblecolumns,
escapechar=`}
\begin{lstlisting}
double x = 1/sin(x); // `$\frac1{\sin x}$`
\end{lstlisting}
\begin{tabbing}
格式\hspace{3em} \= 作者 \\
Plain \TeX \> 高德纳 \\
\LaTeX \> Leslie Lamport
\end{tabbing}
\begin{tabbing}
格式\hspace{3em} \= 作者 \kill
Plain \TeX \> 高德纳 \\
\LaTeX \> Leslie Lamport
\end{tabbing}
\newcommand\kw{\textbf} % 表示描述算法的关键字
\begin{tabbing}
\pushtabs
算法:在序列 $A$ 中对 $x$ 做二分检索 \\
输入:$A$, $x$ 及下标上下界 $L$, $H$ \\
\qquad\=\+\kw{integer} $L, H, M, j$ \\
\kw{while} \=\+ $L \leq H$ \kw{do} \` $L$ 与 $H$ 是左右分点 \\
$M \gets \lfloor(L+H)/2\rfloor$ \` $M$ 是中间分点 \\
\kw{case} \=\+\\
condition \= foo \+\kill
$x > A[M]$:\' $H \gets M-1$ \\
$x < A[M]$:\' $H \gets M+1$ \\
\kw{else}:\' \= $j \gets M$ \` 找到 $x$,返回位置\\
\> \kw{return}$(j)$ \\
\<\< \kw{endcase} \-\-\-\\
$j \gets 0$ \\
\kw{return}$(j)$ \-\\
\poptabs
算法示例:\\
$A = \{2, 3, 5, 7, 11\}$, $x=3$\\
\qquad\=\+ $M$\qquad \= $L$\qquad \= $H$\qquad \= \\
无 \> 1 \> 5 \> 初始值,进入循环 \\
3 \> 1 \> 2 \> $H$ 变化 \\
2 \> 无 \> 无 \> 找到 $x$,输出位置 2
\end{tabbing}
例如\footnote{这是一个脚注。}。
\begin{minipage}{8em}
这是小页环境\footnote{脚注。}中的脚注。
\end{minipage}
\renewcommand\thefootnote{\fnsymbol{footnote}}
\usepackage{pifont}
\renewcommand\thefootnote{\ding{\numexpr171+\value{footnote}}}
\begin{tabular}{r|r}
自变量 & 因变量\footnotemark \\ \hline
$x$ & $y$
\end{tabular}
\footnotetext{$y=x^2$。}
\section[节标题]{节标题\protect\footnote{标题中的脚注}}
\usepackage[perpage]{footmisc}
有边注的文字\marginpar[\hfill 左 $\rightarrow$]{$\leftarrow$ 右}
前言\parbox{2em}{不搭后语}。
前言\parbox[t]{2em}{不搭后语}。
后语\parbox[b]{2em}{不搭前言}。
\begin{minipage}[c][2.5cm][t]{2em} 两个 \end{minipage}\quad
\begin{minipage}[c][2.5cm][c]{3em} 黄鹂鸣翠柳, \end{minipage}\quad
\begin{minipage}[c][2.5cm][b]{3em} 一行白鹭上青天。 \end{minipage}\quad
\begin{minipage}[c][2.5cm][s]{4em}
\setlength{\parskip}{0pt plus 1pt}% 恢复正文默认段间距
窗含西岭千秋雪,\par
门泊东吴万里船。
\end{minipage}
\newsavebox{\verbatimbox} % 通常在导言区定义
\begin{lrbox}{\verbatimbox}
\begin{minipage}{10em}
\begin{verbatim}
#!/bin/sh
cat ~/${file}
\end{verbatim}
\end{minipage}
\end{lrbox}
\fbox{\usebox{\verbatimbox}}\quad\fbox{\usebox{\verbatimbox}}
\rule{1pt}{1em}Middle\rule{1pt}{1em} \\
Left\rule[0.5ex]{2cm}{0.6pt}Right \\
\rule[-0.1em]{1em}{1em} 也可以用作证毕符号
\fbox{---}\qquad
\fbox{\strut---}\qquad
\fbox{\rule{0pt}{2em}---}
% 这与实际 \TeX 的定义基本等价
\mbox{T\hspace{-0.1667em}%
\raisebox{-0.5ex}{E}%
\hspace{-0.125em}X}
\fbox{\begin{varwidth}{10cm}
自然\\宽度
\end{varwidth}}
\title{杂谈勾股定理\\——勾股定理的历史与现状}
\author{张三\\九章学堂}
\date{庚寅盛夏}
\author{张三\\九章学堂 \and 李四\\天元研究所}
\title{杂谈勾股定理\thanks{本文由九章基金会赞助。}}
\author{张三\thanks{九章学堂讲师。}\\九章学堂}
% 手工排版的标题页
\begin{titlepage}
\vspace*{\fill}
\begin{center}
\normalfont
{\Huge\bfseries 杂谈勾股定理}
\bigskip
{\Large\itshape 张三}
\medskip
\today
\end{center}
\vspace{\stretch{3}}
\end{titlepage}
\documentclass{book}
\title{Languages}\author{someone}
\begin{document}
\maketitle
\tableofcontents
% 这里用缩进显示层次
\part{Introduction} % Part I
\chapter{Background} % Chapter 1
\part{Classification} % Part II
\chapter{Natural Language} % Chapter 2
\chapter{Computer Languages} % Chapter 3
\section{Machine Languages} % 3.1
\section{High Level Languages} % 3.2
\subsection{Compiled Language} % 3.2.1
\subsection{Interpretative Language} % 3.2.2
\subsubsection{Lisp}
\paragraph{Common Lisp}
\paragraph{Scheme}
\subsubsection{Perl}
\end{document}
% languages.tex
% 整个文档的主文件
\documentclass{ctexbook}
\usepackage{syntonly}
\syntaxonly % 只检查语法,不输出 DVI/PDF 文件
\begin{document}
……
\end{document}
\usepackage[sf,bf,it,centering]{titlesec}
\titlelabel{\S~\thetitle\quad}
\titleformat*{\section}{\Large\itshape\centering}
\documentclass[a4paper,titlepage]{article}
\documentclass{moderncv}
\usepackage{ctex}
\zihao{-4}
\begin{document}
…………
\end{document}
\XeTeXinputencoding "GBK"
\documentclass{ctexart}
\begin{document}
GBK 编码的中文文档。
\end{document}
\usepackage[a4paper,left=3cm,right=3cm]{geometry}
\usepackage{geometry}
\geometry{a4paper,left=3cm,right=3cm}
\pagenumbering{roman}
\documentclass{article}
\pagestyle{headings}
\begin{figure}[p]
\thispagestyle{plain}
…………
\end{figure}
\documentclass{ctexart}
\pagestyle{headings}
\markright{张三}
\documentclass[twoside]{ctexrep}
\usepackage{fancyhdr}
\pagestyle{fancy} % 使用 fancy 风格
\fancyhf{} % 清除所有页眉页脚
\cfoot{\thepage} % 页脚居中页码
\fancyhead[CO]{张三} % 奇数页居中页眉作者名
\fancyhead[CE]{论语言} % 偶数页居中页眉文章题目
\fancyfoot[RO,LE]{$\heartsuit$}
% 奇数页脚右,偶数页脚左(即外侧)装饰符号
\documentclass[twoside,fancyhdr]{ctexrep}
\fancyhf{}
% ……
\renewcommand\headrulewidth{0.6pt} % 默认为 0.4pt
\renewcommand\footrulewidth{0.6pt} % 默认为 0pt
\fancypagestyle{plain}{%
\fancyhf{}
\cfoot{--\textit{\thepage}--} % 改变页码形状
\renewcommand\headrulewidth{0pt} % 无页眉线
\renewcommand\footrulewidth{0pt} % 无页脚线
}
\newcommand\PRC{People's Republic of \emph{China}}
\newcommand\loves[2]{#1喜欢#2}
\newcommand\hatedby[2]{#2不受#1喜欢}
\newcommand\loves[3][喜欢]{{#2#1#3}}
\newcommand\Emph[1]{\emph{#1}}
\newcommand\setEmph[1]{%
\renewcommand\Emph[1]{%
#1{##1}}}
\newenvironment{myabstract}[1][摘要]%
{\small
\begin{center}\bfseries #1\end{center}%
\begin{quotation}}%
{\end{quotation}}
\newenvironment{Quotation}[1]%
{\newcommand\quotesource{#1}%
\begin{quotation}}%
{\par\hfill ——《\textit{\quotesource}》%
\end{quotation}}
\begin{Quotation}{易·乾}
初九,潜龙勿用。
\end{Quotation}
\documentclass{article}
\begin{document}
\tableofcontents
\section{Foo}
\subsection{blah}
\section{Bar}
\end{document}
\setcounter{secnumdepth}{4} % 增加编号深度
\setcounter{tocdepth}{4} % 增加目录深度
\addcontentsline{toc}{section}{Title}
\maketitle
\tableofcontents
\usepackage{tocbibind}
\addtocontents{toc}{\newpage}
\part{Foo}
% \usepackage{tocloft}
\renewcommand\cfttoctitlefont{\hfill\Large\sffamily\bfseries}
\renewcommand\cftaftertoctitle{\hfill}
\setlength\cftbeforetoctitleskip{2ex}
\setlength\cftaftertoctitleskip{2ex}
% \usepackage{tocloft}
\renewcommand\cftdot{…}
\renewcommand{\cftdotsep}{0}
\settowidth{\cftchapternumwidth}{第几十几章} % 最宽的可能编号
\renewcommand\cftchapteraftersnumb{\hspace{0.5em}} % 额外间距
\documentclass{ctexbook} % 或 ctexrep, ctexart
\usepackage{tocloft}
\makeatletter
\renewcommand{\numberline}[1]{%
\settowidth\@tempdimb{#1\hspace{0.5em}}%
\ifdim\@tempdima<\@tempdimb%
\@tempdima=\@tempdimb%
\fi%
\hb@xt@\@tempdima{\@cftbsnum #1\@cftasnum\hfil}\@cftasnumb}
\makeatother
\section{Lanuages}
\label{sec:lang}
\begin{align}
c^2 &= a^2 + b^2
\label{eq:gougu-formula} \\
5^2 &= 3^2 + 4^2
\label{eq:gougu-example}
\end{align}
勾股定理公式 (\ref{eq:gougu-formula})
出现在 \pageref{eq:gougu-formula}~页。
\newcommand\thmref[1]{定理~\ref{#1}}
See \autoref{fig:xref}.
\renewcommand\figureautorefname{图}
参见\autoref{fig:xref}。
% 导言区 \usepackage{nameref}
见“\nameref{fig:xref}”。
page \thepage\ of \pageref{LastPage}
% languages.tex 导言区
\usepackage{xr}
\externaldocument[ch:]{chinese}
\documentclass[hyperref,UTF8]{ctexart}
\documentclass[hyperref,UTF8]{ctexbook}
\usepackage{geometry}
\geometry{screen}
\hypersetup{
colorlinks=true,
bookmarks=true,
bookmarksopen=false,
pdfpagemode=FullScreen,
pdfstartview=Fit,
pdftitle={初等几何教程(电子版)},
pdfauthor={张三}
}
\url{http://bbs.ctex.org/forum.php?mod=viewthread&tid=48244#pid337079}
\href{http://bbs.ctex.org/}{CTeX 论坛}
\hyperref[eq:gougu-formula]{点击查看勾股定理公式}
\phantomsection
\addcontentsline{toc}{section}{习题}
\section*{本章习题}
\pdfbookmark[2]{勾股定理证明}{gouguproof}
\begin{proof} …… \end{proof}
\section{\texorpdfstring{$\frac{1}{\pi}$}{1/π} 的计算}
% tex.bib 中的一条
@BOOK{mittelbach2004,
title = {The {{\LaTeX}} Companion},
publisher = {Addison-Wesley},
year = {2004},
author = {Frank Mittelbach and Michel Goossens},
series = {Tools and Techniques for Computer Typesetting},
address = {Boston},
edition = {Second}
}
@String{ j-CJ = "The Computer Journal" }
@Article{Knuth:CJ-2-27-97,
author = "Donald E. Knuth",
title = "Literate Programming",
journal = j-CJ,
year = "1984",
number = "2",
volume = "27",
pages = "97--111",
month = may,
}
% 导言区
% \usepackage{natbib}
% \bibliographystyle{plainnat}
% 正文
在 \citet{lamport1994} 中提到了利用 \BibTeX{} 自动处理文献的方式,
在另一本书 \citep{mittelbach2004} 中则有进一步的格式与工具的说明。
\citet{Abrahams1990} \\
\citet*{Abrahams1990}
\citep[\S~4.3~节]{lamport1994} \\
\cite[又见][第~13~章]{mittelbach2004}
\citeauthor{Abrahams1990} \\
\citefullauthor{Abrahams1990} \\ % 或加 *
\citeyear{Abrahams1990} \\
\citeyearpar{Abrahams1990} \\
\citenum{Abrahams1990}
\citealt{Patashnik1988:btxdoc}\\
\citealp{Patashnik1988:btxdoc}\\% 有逗号
\citetext{同前} \\
\citetext{参见 \citealp{Shell2007},
以及 \citealp{Markey2009}}
\usepackage[numbers,square]{natbib}
\CTEXoptions[bibname={本书引用的文献}]
% 或 \renewcommand\bibname{本书引用的文献}
\renewcommand\bibpreamble{下面给出本文参考的几篇文章。}
\renewcommand\bibfont{\small}
\renewcommand\citenumfont{\itshape}
\renewcommand\bibnumfmt[1]{\textbf{#1.}}
\setlength{\bibsep}{0pt}
% main.tex
% 主文档
\documentclass{book}
\usepackage{chapterbib}
\usepackage[sectionbib]{natbib}
\begin{document}
% ...
\include{chap-intro}
\include{chap-research}
\include{chap-conclusion}
\end{document}
% chap-intro.tex
% 其中一章
\chapter{Introduction}
% ...
\bibliographystyle{plainnat}
\bibliography{foo}
% chap-research.tex
% ...
\usepackage[numbers,sort&compress]{natbib}
% 导言 \usepackage[merge]{natbib}
\citep*{knuthtex1986, *lamport1994, *mittelbach2004}
\documentclass[openbib]{article}
\bibliographystyle{plain}
\begin{document}
\TeX{} and \LaTeX{} see \cite{knuthtex1986}, \cite{Lamport1994}.
\nocite{mittelbach2004}
\bibliography{tex}
\end{document}
% foo.tex
\documentclass{ctexart}
\usepackage{makeidx}
\makeindex
% ...
\begin{document}
\section{勾股定理}
% 第 1 页
勾股定理在西方称为毕达哥拉斯定理(Pythagoras' theorem)。
\index{Pythagoras}
% ...
% 第 2 页
在中国常称勾股定理为商高定理。\index{商高}
\printindex
\end{document}
\renewcommand\seename{参见}
\renewcommand\alsoname{又见}
\newcommand*\numsee[2]{#2(\emph{参见} #1)}
\documentclass[UTF8]{ctexart}
\usepackage{imakeidx}
\makeindex[title={名词索引}]
\makeindex[name=persons,title={人名索引}]
\begin{document}
... \index{名词}
... \index[persons]{人名}
...
\printindex % 输出名词索引
\printindex[persons] % 输出人名索引
\end{document}
\newcommand*\keyword[1]{\texttt{#1}\index{#1@\texttt{#1}}}
\documentclass[UTF8]{ctexbook}
\usepackage{imakeidx}
\makeindex[%
name=persons, % 索引文件名(默认为 \jobname,即主文件名)
title={人名索引}, % 索引表标题(默认为 \indexname)
intoc=true, % 加入目录(默认为 false,不加入目录)
columns=2, % 分栏(默认为 1)
columnsep=1cm, % 栏间距(默认为 35pt)
columnseprule=true, % 分栏线(默认为 false)
program=makeindex, % 调用的索引程序(或用 xindy、texindy)
options={-s mkind.ist}, % 索引程序的选项(默认为空)
noautomatic=false % 不自动调用索引程序(默认为 false)
]
\indexsetup{%
level=\section*, % 标题级别(默认 \chapter* 即不编号的章)
toclevel=section, % 目录级别(不带反斜线,又如 chapter)
firstpagestyle=empty, % 索引第一页的页面风格(默认为 plain)
headers={人名}{人名}, % 索引的奇偶页眉
othercode={ % 将在索引条目之前生效的任意代码
\renewcommand{\indexspace}{\smallskip}}
}
\begin{document}
张三\index[persons]{张三} \newpage
李四\index[persons]{李四} \newpage
王五\index[persons]{王五}
\indexprologue{这里列出本文涉及的所有人名。}
\printindex[persons]
\end{document}
\documentclass[UTF8]{ctexart}
\usepackage{glossaries}
\makeglossaries
\begin{document}
\newglossaryentry{gloss}{
name=glossary,
description={A vocabulary with annotations for a particular subject},
plural=glossaries}
\Glspl{gloss} are important for technical documents.
\newglossaryentry{sec}{
name=分节,
description={把文章分成章节}}
\gls{sec}对于长文档非常重要。
\printglossaries
\end{document}
交换律是 $a+b=b+a$,如 $1+2=2+1=3$。
% 用于 ntheorem 宏包
\renewcommand\qedsymbol{\ensuremath{\Box}}
证毕符号:\qedsymbol 或 $\qedsymbol$。
交换律是
\[ a+b=b+a, \]
如
\[
1+2=2+1=3.
\]
\begin{equation}
a+b=b+a \label{eq:commutative}
\end{equation}
$\text{被减数} - \text{减数} = \text{差}$
已知的变量有 $a$, $b$, $c$, $d$, $S$, $R$ 和 $T$。
$A_{ij} = 2^{i+j}$
$A_i^k = B^k_i$ \qquad
$K_{n_i} = K_{2^i} = 2^{n_i}
= 2^{2^i}$ \qquad
$3^{3^{3^{\cdot^{\cdot^{\cdot^3}}}}}$
$a = a'$, $b_0' = b_0''$,
${c'}^2 = (c')^2$
$A = 90^\circ$
\newcommand\degree{^\circ}
\[
\max_n f(n) = \sum_{i=0}^n A_i
\]
% 导言区 \DeclareMathOperator\dif{d\!}
\[ \int_0^1 f(t) \dif t
= \iint_D g(x,y) \dif x \dif y \]
\[
\iiint\limits_D \mathrm{d}f
= \max\nolimits_D g
\]
% \usepackage{mathtools}
$\prescript{n}{m}{H}_i^j < L$
\[ \sideset{_a^b}{_c^d} \sum_{i=0}^n A_i
= \sideset{}{'} \prod_k f_i \]
$\overset{*}{X}$ \qquad
$\underset{*}{X}$ \qquad
$\overset{*}{\underset{\dag}{X}}$
$A_m{}^n$ 或 $A_m^{\phantom{m}n}$
% 导言区 \usepackage{tensor}
$M\indices{^a_b^{cd}_e}$ \qquad
$\tensor[^a_b^c_d]{M}{^a_b^c_d}$
% 导言区 \usepackage{mhchem}
醋中主要是 \ce{H2O},含有 \ce{CH3COO-}。
\ce{^{227}_{90}Th} 元素具有强放射性。
\begin{equation}
\ce{2H2 + O2 ->[\text{燃烧}] 2H2O}
\end{equation}
$\overline{a+b} =
\overline a + \overline b$ \\
$\underline a = (a_0, a_1, a_2, \dots)$
$ \overline{\underline{\underline a}
+ \overline{b}^2} - c^{\underline n} $
$\overleftarrow{a+b}$\\
$\overrightarrow{a+b}$\\
$\overleftrightarrow{a+b}$\\
$\underleftarrow{a-b}$\\
$\underrightarrow{a-b}$\\
$\underleftrightarrow{a-b}$
$\vec x = \overrightarrow{AB}$
$\overbrace{a+b+c} = \underbrace{1+2+3}$
\[ ( \overbrace{a_0,a_1,\dots,a_n}
^{\text{共 $n+1$ 项}} ) =
( \underbrace{0,0,\dots,0}_{n} , 1 ) \]
\[ \underbracket{\overbracket{1+2}+3}_3 \]
\[
\frac 12 + \frac 1a = \frac{2+a}{2a}
\]
\[ \frac{1}{\frac 12 (a+b)}
= \frac{2}{a+b} \]
\[
\tfrac 12 f(x) =
\frac{1}{\dfrac 1a + \dfrac 1b + c}
\]
\[ \cfrac{1}{1+\cfrac{2}{%
1+\cfrac{3}{1+x}}} =
\cfrac[r]{1}{1+\cfrac{2}{%
1+\cfrac[l]{3}{1+x}}} \]
% \usepackage{xfrac}
区别 $\sfrac 1a + b$ 和 $1/(a+b)$
\[
(a+b)^2 = \binom 20 a^2
+ \binom 21 ab + \binom 22 b^2
\]
\newcommand\stiring[2]{\genfrac{[}{]}{0pt}{}{#1}{#2}}
\newcommand\dstiring[2]{\genfrac{[}{]}{0pt}{0}{#1}{#2}}
\newcommand\tstiring[2]{\genfrac{[}{]}{0pt}{1}{#1}{#2}}
\[ \stiring{n}{1} = (n-1)!, \qquad n > 0. \]
$\sqrt 4 = \sqrt[3]{8} = 2$
\[
\sqrt[n]{\frac{x^2 + \sqrt 2}{x+y}}
\]
\[
(x^p+y^q)^{\frac{1}{1/p+1/q}}
\]
\[
\sqrt[\uproot{16}\leftroot{-2}n]
{\frac{x^2 + \sqrt 2}{x+y}}
\]
$\sqrt{\frac 12} <
\sqrt{\vphantom{\frac12}2}$
$\sqrt b \sqrt y$ \qquad
$\sqrt{\mathstrut b} \sqrt{\mathstrut y}$
\[ A = \begin{pmatrix}
a_{11} & a_{12} & a_{13} \\
0 & a_{22} & a_{23} \\
0 & 0 & a_{33}
\end{pmatrix} \]
\[ A = \begin{bmatrix}
a_{11} & \dots & a_{1n} \\
& \ddots & \vdots \\
0 & & a_{nn}
\end{bmatrix}_{n\times n} \]
\[ \begin{pmatrix}
1 & \frac 12 & \dots & \frac 1n \\
\hdotsfor{4} \\
m & \frac m2 & \dots & \frac mn
\end{pmatrix} \]
\[ \begin{pmatrix}
\begin{matrix} 1&0\\0&1 \end{matrix}
& \text{\Large 0} \\
\text{\Large 0} &
\begin{matrix} 1&0\\0&-1 \end{matrix}
\end{pmatrix} \]
复数 $z = (x,y)$ 也可用矩阵 \begin{math}
\left( \begin{smallmatrix}
x & -y \\ y & x
\end{smallmatrix} \right)
\end{math} 来表示。
\[
\sum_{\substack{0<i<n \\ 0<j<i}} A_{ij}
\]
\[ \sum_{\begin{subarray}{l}
i<10 \\ j<100 \\ k<1000
\end{subarray}} X(i,j,k) \]
\[ \setcounter{MaxMatrixCols}{15}
\begin{Bmatrix}
0 & 0 & 0 & 0 & 0 & 1 & 0 & 1 & 0 & 0 & 1 & 1 & 1 & 0 & 1\\
1 & 1 & 1 & 1 & 1 & 0 & 1 & 0 & 1 & 1 & 0 & 0 & 0 & 1 & 0
\end{Bmatrix} \]
% \usepackage{mathtools}
\[ \begin{pmatrix*}[r]
10 & -10 \\ -20 & 3
\end{pmatrix*} \]
\[ \bordermatrix{
& 1 & 2 & 3 \cr
1 & A & B & C \cr
2 & D & E & F \cr} \]
\newcommand\mi{\mathrm{i}}
\newcommand\me{\mathrm{e}}
% \usepackage{accents}
$\accentset{*}{A}$, $\accentset{@}{X}$,
$\underaccent{\check}{a}$,
$\underaccent{\hat}{b}$,
$\undertilde{abc}$
% \usepackage{bm}
% \hm 的效果需要实际字体支持
\textbf{勾股定理 $\bm{a^2+b^2=c^2}$}
\[ \bm u + \bm v = (1,0) + (0,1) \]
\[ \hm\int > \bm\int > \int \]
\[
\mathcal{F}(x) = \sum_{k=0}^\infty
\oint_0^1 f_k(x,t) \,\mathrm{d}t
\]
\[ \int f(x) \,\mathrm{d} x \]
\newcommand\diff{\,\mathrm{d}}
\[ \iiint\limits_{0<x,y,z<1} f(x,y,z)
\diff x \diff y \diff z \]
$ \cos 2x = \cos(x+x)
= \cos^2 x - \sin^2 x $
\begin{equation}
\varlimsup_{k\to\infty} A_k = \lim_{J\to\infty} \lim_{K\to\infty}
\bigcap_{j=1}^J \bigcup_{k=j}^K A_k
\end{equation}
% 导言区 \usepackage{amsmath}
\DeclareMathOperator{\card}{card} % 集合基数
\DeclareMathOperator*{\esssup}{ess\,sup} % 本性上确界
\[ \operatorname*{Prob}_{\{1,\ldots,n\}}
(\bar X) =
\operatorname{card}(\varnothing)/n = 0. \]
% 导言区 \DeclareMathOperator\dif{d\!}
\[
\int_0^1 \int_0^1 f(x,y) \int_0^1 \frac{\dif z}{g(x,y,z)} \dif x\dif y
\]
群 $G$ 的 $(H,K)$-双陪集为
$H\backslash G/K$。
$S\cup T = (S\cap T)\cup (S\setminus T)$
\newcommand\defeq{\stackrel{\text{d}}{=}}
$f(x) \defeq ax^2+bx+c$
\[ A \xleftarrow{0<x<1} B
\xrightarrow[x\leq 0]{x\geq 1} C \]
$x=y \implies x+a=y+a$ \\
$x=y \impliedby x+a=y+a$ \\
$x=y \iff x\le y \And x\ge y$
运算 $\heartsuit$ 的交换律:
\[ a \mathbin{\heartsuit} b =
b \mathbin{\heartsuit} a \]
\newcommand\varnotin{%
\mathrel{\overline{\in}}}
$\forall x$, $\forall S$, $x\varnotin S$.
\newcommand*\abs[1]{\lvert#1\rvert}
$\abs{x+y} \le \abs{x} + \abs{y}$
\[
\partial_x \partial_y \left[
\frac12 \left( x^2+y^2 \right)^2 + xy
\right]
\]
\[ \left.
\int_0^x f(t,\lambda) \,\mathrm{d}t
\right|_{x=1}, \qquad
\lambda \in
\left[\frac12,\infty\right). \]
\[
\Pr \left( X>\frac12
\middle\vert Y=0 \right)
= \left.
\int_0^1 p(t)\,\mathrm{d}t
\middle/ ( N^2+1 ) \right.
\]
\[
\biggl( \sum_{i=1}^n A_i \biggr) \cdot
\biggl( \sum_{i=1}^n B_i \biggr) > 0
\]
$ 1 + \Bigl(2 - \bigl(3 \times
(4 \div 5) \bigr) \Bigr) $
\[ P = \biggl< \frac12 \biggr>, \qquad
M = \left< \begin{matrix}
a & b \\ c & d \\
\end{matrix}\right> \]
$a:b = ac:bc$
\[ \Pr(x\colon g(x)>5) = 0.25,
\qquad g\colon x \mapsto x^2 \]
\[ (1,\dots,n) \qquad 1+\dots+n
\qquad a=\dots=z \]
\[ \prod_{i=1}^n a_i = a_1 \dotsm a_n
\qquad \int_0^1\dotsi\int_0^1 \]
\begin{gather}
a+b = b+a \\
ab = ba
\end{gather}
\begin{gather*}
3+5 = 5+3 = 8 \\
3\times 5 = 5\times 3
\end{gather*}
\begin{gather}
3^2 + 4^2 = 5^2 \notag \\
5^2 + 12^2 = 13^2 \notag \\
a^2 + b^2 = c^2
\end{gather}
\begin{align}
x &= t + \cos t + 1 \\
y &= 2\sin t
\end{align}
\begin{align*}
x &= t & x &= \cos t & x &= t \\
y &= 2t & y &= \sin(t+1) & y &= \sin t
\end{align*}
% 关系符后对齐,需要使用空的分组
% 代替关系符右侧符号,保证间距
\begin{align*}
& (a+b)(a^2-ab+b^2) \notag \\
={} & a^3 - a^2b + ab^2 + a^2b
- ab^2 + b^2 \notag \\
={} & a^3 + b^3 \label{eq:cubesum}
\end{align*}
% 缺少关系符,需要使用幻影给关系符
% 占位,并利用 \mathrel 保证间距
\begin{align*}
&\mathrel{\phantom{=}}
(a+b)(a^2-ab+b^2) \notag \\
&= a^3 - a^2b + ab^2 + a^2b
- ab^2 + b^2 \notag \\
&= a^3 + b^3 \label{eq:cubesum}
\end{align*}
\begin{flalign}
x &= t & x &= 2 \\
y &= 2t & y &= 4
\end{flalign}
\begin{alignat}{2}
x &= \sin t &\quad&\text{水平方向} \\
y &= \cos t &&\text{垂直方向}
\end{alignat}
\begin{alignat*}{6}
&1 & &+2 & &+3 & &+4 & &+5 & &=15 \\
&1 & & & &+3 & & & &+5 & &=9 \\
& & &+2 & & & &+4 & & & &=6
\end{alignat*}
\begin{align*}
x^2 + 2x &= -1
\intertext{移项得}
x^2 + 2x + 1 &= 0
\end{align*}
设 $G$ 是一个带有运算 $*$ 的集合,则 $G$ 是\emph{群},当且仅当:
\begin{subequations}\label{eq:group}
\begin{alignat}{2}
\forall a,b,c &\in G, &\qquad (a*b)*c &= a*(b*c);\label{subeq:assoc}\\
\exists e, \forall a &\in G, & e*a &= a; \\
\forall a, \exists b &\in G, & b*a &= e.
\end{alignat}
\end{subequations}
式~\eqref{eq:group} 的三个条件中,\eqref{subeq:assoc}~又称为结合律。
\begin{multline}
a+b+c+d+e \\
+f+g+h+i+j \\
+k+l+m+n+o \\
+p+q+r+s+t
\end{multline}
\setlength{\multlinegap}{3em}
\setlength{\multlinetaggap}{3em}
\begin{multline*}
1+2+3 \\ \shoveleft{+4+5+6} \\
+7+8+9 \\
\shoveright{+10+11+12} \\ +13+14+15
\end{multline*}
\begin{equation} \begin{split}
\cos 2x &= \cos^2 x - \sin^2 x \\
&= 2\cos^2 x - 1
\end{split} \end{equation}
\begin{equation}\label{eq:trigonometric}
\begin{split}
\frac12 (\sin(x+y) + \sin(x-y))
&= \frac12(\sin x\cos y + \cos x\sin y) \\
&\quad + \frac12(\sin x\cos y - \cos x\sin y) \\
&= \sin x\cos y
\end{split}
\end{equation}
% \usepackage{breqn}
\begin{dmath}\label{eq:trigonometric}
\frac12 (\sin(x+y) + \sin(x-y)) = \frac12(\sin x\cos y + \cos x\sin y)
+ \frac12(\sin x\cos y - \cos x\sin y) = \sin x\cos y
\end{dmath}
\begin{equation}\label{eq:dirichlet}
D(x) = \begin{cases}
1, & \text{if } x \in \mathbb{Q}; \\
0, & \text{if } x \in
\mathbb{R}\setminus\mathbb{Q}.
\end{cases}
\end{equation}
% \usepackage{mathtools}
\[ \left\lvert x - \frac12 \right\rvert
= \begin{dcases}
x-\frac12, & x \geq \frac12;\\
\frac12-x, & x < \frac12.
\end{dcases} \]
% \usepackage{cases}
\begin{numcases}{f(x)=}
1/q, & if $x = p/q \in \mathbb{Q}$; \\
0, & else.
\end{numcases}
\[ \left. \begin{gathered}
S \subseteq T \\
S \supseteq T
\end{gathered} \right\}
\implies S = T \]
% \usepackage{mathtools}
\[ \text{比较曲线}
\left\{ \begin{lgathered}
x = \sin t, y = \cos t \\
x = t + \sin t, y = \cos t
\end{lgathered} \right. \]
\begin{equation}\label{eq:trinary}
\begin{aligned} x+y &= -1 \\ x+y+z &= 2 \\ xyz &= -6 \end{aligned}
\implies
\begin{aligned} x+y &= -1 \\ xy &= -2 \\ z &= 3 \end{aligned}
\implies
\begin{alignedat}{3}
x &= 1, &\quad y &= -2, &\quad z &= 3 \\
\text{或\ } x &= -2, & y &= 1, & z &= 3
\end{alignedat}
\end{equation}
% \usepackage{mathtools}
\newcommand\Set[2]{%
\left\{#1\ \middle\vert\ #2 \right\}}
\[ \Omega = \Set{x}{\begin{multlined}
x^7+x^6+x^5 \\ +x^4+x^3+x^2 \\ +x+1=0
\end{multlined}} \]
\begin{align*}
2^5 &= (1+1)^5 \\
&= \begin{multlined}[t]
\binom50\cdot 1^5 + \binom51\cdot 1^4 \cdot 1
+ \binom52\cdot 1^3 \cdot 1^2 \\
+ \binom53\cdot 1^2 \cdot 1^3 + \binom54\cdot 1 \cdot 1^4
+ \binom55\cdot 1^5
\end{multlined} \\
&= \binom50 + \binom51 + \binom52 + \binom53 + \binom54 + \binom55
\end{align*}
\documentclass[fleqn,leqno]{article}
\usepackage[tbtags]{amsmath}
\begin{equation*}
a^2 + b^2 = c^2 \tag{$\star$}
\end{equation*}
\begin{equation*}
\sum_{k=1}^n \frac1k
= \ln n + \mathrm{C} \tag*{[Euler]}
\end{equation*}
\newtagform{bracket}[\textit]{[}{]}
\usetagform{bracket}
\begin{equation}
\sum_{k=1}^n \frac1k = \ln n + \mathrm{C}
\end{equation}
\renewcommand\theequation{%
\thechapter.\roman{equation}}
\begin{equation}\label{eq:euler}
\chi = V + F - E = 2
\end{equation}
\newenvironment{mysubeqn}%
{\begin{subequations}
\renewcommand\theequation{\theparentequation-\roman{equation}}}%
{\end{subequations}}
\begin{mysubeqn}
\begin{gather}
\zeta(2) = \frac{\uppi^2}{6} \\
\zeta(s) = \prod_{p\text{ prime}} \frac{1}{1 - p^{-s}}
\end{gather}
\end{mysubeqn}
\documentclass{book}
\usepackage{chngcntr}
\counterwithout{equation}{chapter}
{\Large\[F(x) \equiv 0\]}
\newcommand\D{\displaystyle}
\[ \mathop{\text{\Large$\D\sum_i$}}
\dfrac{\D\int f_i(x)\,\mathrm{d}x}
{\D\oint g_i(x)\,\mathrm{d}x} \]
% 单位 pt,中文五号字(10.5 bp)
\DeclareMathSizes{10.54}{10.54}{6.32}{4.22}
% 默认标号尺寸是正文 0.6 倍
\renewcommand\defaultscriptratio{0.6}
% 默认小标号尺寸是正文 0.4 倍
\renewcommand\defaultscriptscriptratio{0.4}
\fbox{\parbox{17em}{%
$F(x,y,z)\* G(x,y,z)$ 不同于 $F(x,y,z)\* G(x,y,z)$ 吗?}}
\[ \left\{
0, 1, -1, 2, -2, \frac12, -\frac12, \frac13, -\frac13, \dotsc
\right\} \]
\renewcommand\*{%
\discretionary{\,\mbox{$\cdot$}}{}{}}
\fbox{\parbox{17em}{%
$F(x,y,z)\* G(x,y,z)$ 不同于 $F(x,y,z)\* G(x,y,z)$}}
\begin{align*}
& \int f(x)\,\mathrm{d}x\,\mathrm{d}y \\
& \sqrt2 \, x && \sqrt{\,\log x} \\
& x^2 \! / 2 && |\!{\gets} 5 {\to}\!|
\end{align*}
\[
f(x) \equiv 0, \qquad x > 0
\]
\newcommand\lowint{%
\mspace{2mu}\underline{\vphantom{\int}\mspace{7mu}}\mspace{-9mu}\int}
\[
\lowint_a^b f(x)\,\mathrm{d}x = \inf_P s(P).
\]
\zihao{7}% 5.5bp
\setlength{\abovedisplayskip}%
{2pt plus 1pt minus 3pt}
当文字非常小时也应该同时减小
显示公式与文字的间距:
\[ 1+2+3+4+5 = 15 \]
\setlength\jot{9pt}% 用来分开分式
\begin{gather}
a = \frac12 \\ b = \frac34
\end{gather}
\setlength{\mathsurround}{3pt}
公式 $a+b$ 与文字比较松散。
$\ddot{h} \iff \skew{-2}{\ddot}{h}$
\begin{equation*}
\begin{split}
f(x) &= \left(\vphantom{\frac1x}
x+2+3+4\right. \\
& \left.\phantom{=\biggl(x+{}}
5+6+7+\frac1x \right)^2 \\
&= g(x)
\end{split}
\end{equation*}
\[ \underline{
\smash{\int f(x)\,\mathrm{d}x}
} \]
$\sqrt{A_{n_k}} \qquad
\sqrt{\smash[b]{A_{n_k}}}$
\vspace{\baselineskip}% 被忽略的高度
\[
\text{实数} \begin{cases}
\text{有理数}\smash[t]{\begin{cases}
\text{整数}\smash{\begin{cases}
\text{奇数} \\ \text{偶数}
\end{cases}}\\
\text{分数}
\end{cases}} \\[4ex]
\text{无理数}\smash[b]{\begin{cases}
\text{代数无理数} \\ \text{超越数}
\end{cases}}
\end{cases}
\]
\begin{tabular}{lcr}
left & center & right \\
本列左对齐 & 本列居中
& 本列右对齐 \\
\end{tabular}
\begin{tabular}{ll}
\bfseries 功能 & \bfseries 环境 \\
表格 & \ttfamily tabular \\
对齐 & \ttfamily tabbing \\
\end{tabular}
\[
\begin{array}{r|r}
\frac12 & 0 \\
\hline
0 & -\frac12 \\
\end{array}
\]
\begin{tabular}[b]{c}
上 \\ 中间 \\ 下
\end{tabular}
与底部对齐。
\begin{tabular}{|rr|}
\hline
输入 & 输出 \\ \hline
$-2$ & 4 \\
0 & 0 \\
2 & 4 \\
\hline
\end{tabular}
\qquad
输入与输出有关系 $y = x^2$。
\begin{tabular}{|c|rrr|p{4em}|}
\hline
姓名 & 语文 & 数学 & 外语 & 备注 \\
\hline
张三 & 87 & 100 & 93 & 优秀 \\
李四 & 75 & 63 & \emph{52} & 补考另行通知 \\
王小二 & 80 & 82 & 78 & \\
\hline
\end{tabular}
\begin{tabular}{|c|r@{.}l|}
\hline
收入 & 12345&6 \\ \hline
支出 & 765&43 \\ \hline
节余 & 11580&17 \\ \hline
\end{tabular}
\[
\begin{array}{|c|*{3}{r@{.}l|}} % 相当于 |c|r@{.}l|r@{.}l|r@{.}l|
\hline
\text{收入} & 12345&6 & 5000&0 & 1020&55 \\ \hline
\text{支出} & 765&43 & 5120&5 & 98760&0 \\ \hline
\text{节余} & 11580&17 & -120&5 & -97739&45 \\ \hline
\end{array}
\]
% 导言区 \usepackage{dcolumn}
\newcolumntype{d}{D{.}{.}{2}}
\begin{tabular}{|c|*{3}{d|}} % 相当于 |c|d|d|d|
\hline
姓名 & \multicolumn{1}{c|}{张三} & \multicolumn{1}{c|}{李四}
& \multicolumn{1}{c|}{王五} \\ \hline
收入 & 12345.6 & 5000 & 1020.55 \\ \hline
支出 & 765.43 & 5120.5 & 98760 \\ \hline
节余 & 11580.17 & -120.5 & -97739.45 \\ \hline
\end{tabular}
\verb=tabular= 环境可以在
$\left(\begin{tabular}{@{}c@{}}
文本 \\ 数学
\end{tabular}\right)$
模式下通用。
% 第 1 列前是原始间距,第 2 列前只有 1em 间距
% 第 3、4 列前则是原始间距加 1em
\begin{tabular}{|c|@{\extracolsep{1em}}c|c|c|}
\hline
1 & 2 & 3 & 4 \\
1 & 2 & 3 & 4 \\
\hline
\end{tabular}
\renewcommand\arraystretch{2}
\begin{tabular}{|l|r|}
\hline
这是一个 & 宽松的表格 \\ \hline
loose & table \\ \hline
\end{tabular}
% 导言区 \usepackage{array}
\begin{tabular}[b]{|c|}
\firsthline
上 \\ 中间 \\ 下 \\
\lasthline
\end{tabular}
与底部对齐。
\begin{tabular}{|r|r|}
\hline
\multicolumn{2}{|c|}{成绩} \\ \hline
语文 & 数学 \\ \hline
87 & 100 \\ \hline
\end{tabular}
\begin{tabular}{|r|r|}
\hline
\multicolumn{1}{|c|}{输入} &
\multicolumn{1}{c|}{输出} \\ \hline
1 & 1 \\ 5 & 25 \\ 15 & 225 \\ \hline
\end{tabular}
\begin{tabular}{|c|r|r|}
\hline
& \multicolumn{2}{c|}{成绩} \\ \cline{2-3}
姓名 & 语文 & 数学 \\ \hline
张三 & 87 & 100 \\ \hline
\end{tabular}
\begin{tabular}{|c|}
\hline
1 \\ \hline
\begin{tabular}{@{}c|c@{}} 1 & 2 \end{tabular} \\ \hline
\begin{tabular}{@{}c|c|c@{}} 1 & 2 & 3\end{tabular} \\ \hline
\end{tabular}
% 导言区 \usepackage{multirow}
\begin{tabular}{|c|r|r|}
\hline
\multirow{2}*{姓名} &
\multicolumn{2}{c|}{成绩} \\ \cline{2-3}
& 语文 & 数学 \\ \hline
张三 & 87 & 100 \\ \hline
\end{tabular}
% 导言区 \usepackage{makecell}
\begin{tabular}{|r|r|}
\hline
\makecell{处理前\\数据} &
\makecell{处理后\\数据} \\ \hline
4934 & 8945 \\
\hline
\end{tabular}
% 导言区 \usepackage{makecell}
\begin{tabular}{|r|r|}
\hline
\thead{处理前\\数据} &
\thead{处理后\\数据} \\ \hline
4934 & 8945 \\
\hline
\end{tabular}
% 导言区 \usepackage{rotating,makecell}
\settowidth\rotheadsize{\theadfont 数学课}
\begin{tabular}{|c|c|}
\hline
\thead{姓名} & \rothead{数学课\\成绩} \\\hline
张三 & 100 \\\hline
\end{tabular}
% 导言区 \usepackage{multirow,makecell}
\begin{tabular}{|c|r|}
\hline
\multirowcell{3}{各科\\成绩} & 78 \\
\cline{2-2} & 82 \\ \cline{2-2}
& 86 \\ \hline
\end{tabular}
% 导言区 \usepackage{diagbox}
\begin{tabular}{|c|*{4}{c}|}
\hline
\diagbox{天干}{地支} & 子 & 丑 & 寅 & 卯 \\
\hline
甲 & 1 && 51 & \\
乙 && 2 && 52 \\
丙 & 13 && 3 & \\
丁 && 14 && 4\\
\hline
\end{tabular}
% 导言区 \usepackage{diagbox}
\begin{tabular}{|c|*{4}{c}|}
\hline
\diagbox{天干}{序号}{地支} & 子 & 丑 & 寅 & 卯 \\
\hline
甲 & 1 && 51 & \\
乙 && 2 && 52 \\
丙 & 13 && 3 & \\
丁 && 14 && 4\\
\hline
\end{tabular}
\begin{tabular*}{\textwidth}{|c@{\extracolsep{\fill}}ccccc|}
\hline
数字 & 1 & 2 & 3 & 4 & 5 \\
字母 & A & B & C & D & E \\
天干 & 甲 & 乙 & 丙 & 丁 & 戊 \\
\hline
\end{tabular*}
% 导言区 \usepackage{tabularx}
\begin{tabularx}{\textwidth}{|c|X|X|X|X|X|}
\hline
数字 & 1 & 2 & 3 & 4 & 5 \\ \hline
字母 & A & B & C & D & E \\ \hline
天干 & 甲 & 乙 & 丙 & 丁 & 戊 \\
\hline
\end{tabularx}
% 导言区 \usepackage{tabularx}
\newcolumntype{Y}{>{\centering\arraybackslash}X}
\begin{tabularx}{\textwidth}{|c|Y|Y|Y|Y|Y|}
\hline
数字 & 1 & 2 & 3 & 4 & 5 \\ \hline
字母 & A & B & C & D & E \\ \hline
天干 & 甲 & 乙 & 丙 & 丁 & 戊 \\
\hline
\end{tabularx}
% 导言区使用 \usepackage{longtable}
\newcommand\meta[1]{\emph{$\langle$#1$\rangle$}}
\begin{longtable}{|l|l|}
\caption{\texttt{longtable} 环境中的命令汇总} \\
\hline
\endfirsthead
\caption{\texttt{longtable} 环境中的命令汇总(续表)} \\
\hline
\endhead
\hline
\multicolumn{2}{c}{\itshape 接下一页表格……} \\[2ex]
\endfoot
\hline
\endlastfoot
\multicolumn{2}{|c|}{环境的水平对齐可选项} \\ \hline
留空 & 表格居中%
\footnote{实际上,留空的对齐方式是由一组命令控制的,参见宏包文档。} \\
\verb=[c]= & 表格居中 \\
\verb=[l]= & 表格左对齐 \\
\verb=[r]= & 表格右对齐 \\
\hline \multicolumn{2}{|c|}{结束表格一行的命令} \\ \hline
\verb=\\= & 普通的结束一行表格 \\
\verb=\\[=\meta{距离}\verb=]= & 结束一行,并增加额外间距 \\
\verb=\\*= & 结束一行,禁止在此分页 \\
\verb=\kill= & 当前行不输出,只参与宽度计算 \\
\verb=\endhead= & 此命令以上部分是每页的表头 \\
\verb=\endfirsthead= & 此命令以上部分是表格第一页的表头 \\
\verb=\endfoot= & 此命令以上部分是每页的表尾 \\
\verb=\endlastfoot= & 此命令以上部分是表格最后一页的表尾 \\
\hline \multicolumn{2}{|c|}{标题命令} \\ \hline
\verb=\caption{=\meta{标题}\verb=}= & 生成带编号的表格标题 \\
\verb=\caption*{=\meta{标题}\verb=}= & 生成不带编号的表格标题 \\
\hline \multicolumn{2}{|c|}{分页控制} \\ \hline
\verb=\newpage= & 强制分页 \\
\verb=\pagebreak[=\meta{程度}\verb=]= & 允许分页的程度(0--4) \\
\verb=\nopagebreak[=\meta{程度}\verb=]= & 禁止分页的程度(0--4) \\
\hline \multicolumn{2}{|c|}{脚注控制} \\ \hline
\verb=\footnote= & 使用脚注\footnote{普通表格中不能用。},
注意不能用在表格头尾 \\
\verb=\footnotemark= & 单独产生脚注编号,不能用在表格头尾 \\
\verb=\footnotetext= & 单独产生脚注文字 \\
\hline \multicolumn{2}{|c|}{长度参数} \\ \hline
\verb=\LTleft= & 对齐方式留空时,表格左边的间距,默认为 \verb=\fill= \\
\verb=\LTright= & 对齐方式留空时,表格右边的间距,默认为 \verb=\fill= \\
\verb=\LTpre= & 表格上方间距,默认为 \verb=\bigskipamount= \\
\verb=\LTpost= & 表格下方间距,默认为 \verb=\bigskipamount= \\
\verb=\LTcapwidth= & 表格标题的宽度,默认为 4\,in \\
\end{longtable}
% foo.tex
% 导言区用:
\usepackage{ltxtable}
% 正文使用:
\LTXtable{\textwidth}{mytable}
% mytable.tex
\begin{longtable}{|X|X|X|}
...
\end{longtable}
% 导言区使用
% \usepackage{ltxtable}
% \usepackage{fancyvrb}
\begin{VerbatimOut}{\jobname.vrb}
\begin{longtable}{|c|X|X|X|X|X|}
\caption{各种序号} \\ \hline
\endfirsthead
\hline
\endhead
\hline
\endfoot
数字 & 1 & 2 & 3 & 4 & 5 \\ \hline
字母 & A & B & C & D & E \\ \hline
天干 & 甲 & 乙 & 丙 & 丁 & 戊 \\
\end{longtable}
\end{VerbatimOut}
\LTXtable{0.5\textwidth}{\jobname.vrb}
% \usepackage{tabu}
% \usepackage{longtable} % 仍然需要载入 longtable
\begin{longtabu}to 0.5\textwidth{|c|X|X|X|X|X|}
\hline
\endhead
\hline
\endfoot
\caption{各种序号} \\ \hline
\endfirsthead
数字 & 1 & 2 & 3 & 4 & 5 \\ \hline
字母 & A & B & C & D & E \\ \hline
天干 & 甲 & 乙 & 丙 & 丁 & 戊 \\
\end{longtabu}
% \usepackage{xtab}
\begin{center}
\tablecaption{各种序号}
\tablefirsthead{\hline}
\tabletail{\hline \multicolumn{6}{r}{\small 接下页}\\}
\tablelasttail{\hline}
\begin{xtabular}{|*{6}{c|}}
数字 & 1 & 2 & 3 & 4 & 5 \\ \hline
字母 & A & B & C & D & E \\ \hline
天干 & 甲 & 乙 & 丙 & 丁 & 戊 \\ \hline
\end{xtabular}
\end{center}
\begin{tabular}{ccccc}
\toprule
序号 & 性别 & 年龄 & 身高/cm & 体重/kg \\
\midrule
1 & F & 14 & 156 & 42 \\
2 & F & 16 & 158 & 45 \\
3 & M & 14 & 162 & 48 \\
4 & M & 15 & 163 & 50 \\
\bottomrule
\end{tabular}
% 导言区 \usepackage{multirow,booktabs}
\begin{tabular}{*{6}{c}}
\bottomrule
\multirow{2}*{姓名} & \multicolumn{2}{c}{文科} &
\multicolumn{2}{c}{理科} & \\
\cmidrule(lr){2-3}\cmidrule(lr){4-5}\cmidrule(lr){6-6}
\morecmidrules\cmidrule(lr){6-6}
& 历史 & 文学 & 物理 & 化学 & 总评 \\
\midrule
张三 & A & A & B & A & A \\
\bottomrule
\end{tabular}
% 导言区 \usepackage{makecell}
\begin{tabular}{c|cc}
\Xhline{2pt}
自变量 & \multicolumn{2}{c}{因变量} \\
\Xcline{2-3}{0.4pt}
半径 & 周长 & 面积 \\
\Xhline{1pt}
1.00 & 6.28 & 6.28 \\
2.00 & 12.57 & 12.57 \\
3.00 & 18.85 & 28.27 \\
\Xhline{2pt}
\end{tabular}
% \usepackage{makecell}
\newcolumntype{V}{!{\vrule width 2pt}}
\begin{tabular}{Vc|ccV}
\Xhline{2pt}
自变量 & \multicolumn{2}{cV}{因变量} \\
\Xcline{2-3}{0.4pt}
半径 & 周长 & 面积 \\
\Xhline{1pt}
1.00 & 6.28 & 6.28 \\
2.00 & 12.57 & 12.57 \\
3.00 & 18.85 & 28.27 \\
\Xhline{2pt}
\end{tabular}
\begin{tabular}{|c||cc|}
\hline\hline
自变量 & \multicolumn{2}{c|}{因变量} \\
\cline{2-3}
半径 & 周长 & 面积 \\
\hline\hline
1.00 & 6.28 & 6.28 \\
2.00 & 12.57 & 12.57 \\
3.00 & 18.85 & 28.27 \\
\hline\hline
\end{tabular}
% \usepackage{hhline}
\begin{tabular}{|c||cc|}
\hhline{|=:t:==|}
半径 & 周长 & 面积 \\
\hhline{|=::==|}
1.00 & 6.28 & 6.28 \\
\hhline{|=:b:==|}
\end{tabular}
% \usepackage{arydshln}
\[
\left(
\begin{array}{@{}ccc:c@{}}
a_{11} & a_{12} & a_{13} & b_1 \\
a_{21} & a_{22} & a_{23} & b_2 \\
a_{31} & a_{32} & a_{33} & b_3 \\
\cdashline{1-3}
0 & 0 & 0 & b_4 \\
\end{array}
\right)
\]
% \usepackage{arydshln}
\setlength\dashlinedash{1pt}
\setlength\dashlinegap{2pt}
\begin{tabular}{:cc:cc:}
\hdashline
上 & 上 & 上 & 上 \\
\cdashline{1-2}
下 & 下 & 下 & 下 \\
\hdashline
\end{tabular}
% \usepackage{arydshln}
\begin{tabular}{;{8pt/2pt}cc;{2pt/2pt}cc;{8pt/2pt}}
\hdashline[8pt/2pt]
上 & 上 & 上 & 上 \\
\cdashline{1-2}[2pt/2pt]
下 & 下 & 下 & 下 \\
\hdashline[8pt/2pt]
\end{tabular}
% 解决 arydshln 与 hhline, makecell 的冲突
\usepackage{array}
\newcolumntype{|}{!{\vline}}
% \usepackage{array} 或调用其他依赖 array 的宏包
\begin{tabular}{>{\bfseries}c|>{\itshape}c>{$}c<{$}}
\hline
姓名 & \textnormal{得分} & \multicolumn{1}{c}{额外加分} \\
\hline
张三 & 85 & +7 \\
李四 & 82 & 0 \\
王五 & 70 & -2 \\
\hline
\end{tabular}
% \usepackage{array}
\begin{tabular}{|>{$}r<{$}|>{\setlength\parindent{2em}}m{15em}|%
>{\centering\arraybackslash}m{4em}|}
\hline
\pi & 希腊字母,多用于表示圆周率,也常用作变量。表示圆周率时多使用
直立体。 & 常用 \\
\hline
\aleph & 希伯来字母的第一个,在数学中通常用于表示特殊集合的基数。
& 不常用 \\
\hline
\end{tabular}
% \usepackage{array}
\begin{tabular}{c!{$\Rightarrow$}c}
张三 & 85 \\
李四 & 82 \\
王五 & 70 \\
\end{tabular}
% \usepackage{array}
\newcolumntype{M}{>{$}c<{$}}
\newcolumntype{P}[1]{>{\setlength\parindent{2em}}p{#1}}
\newcolumntype{C}[1]{>{\centering\arraybackslash}m{#1}}
% 使用新的列格式:
\begin{tabular}{|M|P{15em}|C{4em}|}
...
\end{tabular}
% \usepackage{tabu}
\begin{tabu}{ccc}
\hline
\rowfont{\bfseries}
姓名 & 得分 & 额外加分 \\
\hline
张三 & 85 & $+7$ \\
\rowfont{\itshape}
李四 & 82 & 0 \\
王五 & 70 & $-2$ \\
\hline
\end{tabu}
\[ \left\{ \begin{matrix}
1 & 2 \\ 3 & 4
\end{matrix} \right. \]
% \usepackage{delarray}
\[
\begin{array}({cc}] % 左边圆括号,右边方括号
1 & 2 \\
3 & 4
\end{array}
\]
% \usepackage[delarray]{tabu}
\[ \begin{tabu}({cc})
1 & 2 \\
3 & 4
\end{tabu} \]
% \usepackage{blkarray}
% 如果不用 &| 说明,则竖线 | 将会被看成是中间一列的内容
\begin{blockarray}{|l|c&|r|}
张三 & Zhang & 80 \\
% 不用在 r 后面用 |,也不影响表格线
李四 & \BAmulticolumn{1}{r}{Li} & 78 \\
王五 & Wang & 100 \\
\end{blockarray}
% \usepackage{blkarray}
\[ \begin{blockarray}{(cc]}
1 & 2 \\
3 & 4
\end{blockarray} \]
% \usepackage{blkarray}
\[ \left[
\begin{blockarray}{*4r}
\begin{block}{(rr)rr}
a & -b & 0 & 0 \\
-c & d & 0 & 0 \\
\end{block}
\begin{block}{rr(rr)}
0 & 0 & -a & b \\
0 & 0 & c & -d \\
\end{block}
\end{blockarray}
\right] \]
\[
\begin{blockarray}{ccc}
\begin{block}{cc\}\BAmultirow{4em}}
1 & 2 & 自然数 \\
3 & 4 & {} \\ % 空白 {} 占位
\end{block}
\begin{block}{cc\}l}
-1.5 & \frac12 & \BAmultirow{4em}{实数} \\
3.5 & 40 & \\
\end{block}
\end{blockarray}
\]
\usepackage{blkarray}
\makeatletter
\newbox\BA@first@box
\makeatother
% 导言区 \usepackage{graphics}
% 或 \usepackage{graphicx}
狮子:\includegraphics{lion}
\includegraphics[width=2em]{lion}
\includegraphics[height=1cm]{lion}
\includegraphics[scale=0.5]{lion}
旋转的狮子:
\includegraphics[angle=90]
{lion.eps}
\includegraphics[angle=-45,origin=c]
{lion.eps}
基线\rule{2cm}{0.4pt}%
\includegraphics[angle=90,origin=b,
totalheight=1.5cm]{lion.eps}
% 导言区 \usepackage[draft]{graphicx}
\includegraphics{lion}
\graphicspath{{figures/}} % 本书的设置,图片在当前目录下的 figures 目录
\graphicspath{{pdf/}{png/}{jpg/}} % 按图片类型管理的
\scalebox{2}{大字}
\scalebox{2}[1]{扁字}
\scalebox{1}[2]{长字}
\LARGE 汉字\reflectbox{汉字}
\resizebox{2cm}{1cm}{扁}
\resizebox{!}{1cm}{\fbox{高 1cm}}
\rotatebox[origin=c]{90}{旋}%
\rotatebox[origin=c]{90}{转}%
的汉字
% 导言区 \usepackage{lscape}
\begin{landscape}
\subsection{页面旋转}
……
\end{landscape}
\begin{sidewaysfigure}[p]
\centering
\includegraphics[width=7in]{photo.jpg}
\caption{贵州少数民族地区剪影}
\end{sidewaysfigure}
\begin{figure}[htbp] % 允许各个位置
\centering
\includegraphics{lion.eps}
\end{figure}
\begin{table} % 默认在页面顶部或单独一页
\centering
\begin{tabular}{|c|c|}
\hline
图形 & \verb=figure= 环境 \\
\hline
表格 & \verb=table= 环境 \\
\hline
\end{tabular}
\end{table}
\begin{figure}[htp]
\centering
\includegraphics{lion.eps}
\caption[小狮子]{\TeX{} 系统的吉祥物——小狮子}\label{fig-lion}
% 或作 \caption[小狮子]{\label{fig-lion}\TeX{} 系统的吉祥物——小狮子}
\end{figure}
% 放宽浮动体的一些参数
\setcounter{topnumber}{3}
\setcounter{bottomnumber}{2}
\setcounter{totalnumber}{7}
\renewcommand\bottomcaption{0.7}
\renewcommand\textfraction{0.1}
% 严格浮动页的要求
\renewcommand\floatpagefraction{0.7}
\usepackage{fixltx2e}
\usepackage[font=small,labelfont=bf]{caption}
\usepackage{caption}
\captionsetup{font=small,labelfont=bf}
\usepackage{caption}
\captionsetup[figure]{font=small,labelfont=bf}
\usepackage{caption}
\captionsetup[figure]{font=small,labelfont=bf}
\caption{默认居中的短标题}
\caption[plain 格式]{plian 格式下,
如果标题很长,折成几行,就会像普通的
正文段落一样显示。
只要设置好前面的短标题,可以把浮动
标题分成好几段。}
\captionsetup{format=hang}
\caption[hang 格式]{hang 格式的效果
是,对于很长的标题,前面的数字标签会
进行悬挂缩进,就好像 \LaTeX{} 的列表
环境一样。}
% \captionsetup{labelformat=default}
\caption{默认格式,同 simple}
\captionsetup{labelformat=empty}
\caption{空格式}
\captionsetup{labelformat=simple}
\caption{简单格式,直接输出}
\captionsetup{labelformat=brace}
\caption{数字右括号,无文字}
\captionsetup{labelformat=parens}
\caption{带括号数字,无文字}
\captionsetup{labelsep=none}
\caption{没间隔}
% \captionsetup{labelsep=colon}
\caption{英文分号(默认)}
\captionsetup{labelsep=period}
\caption{英文句点}
\captionsetup{labelsep=space}
\caption{空格}
\captionsetup{labelsep=quad}
\caption{一个 em 的间隔}
\captionsetup{labelsep=newline}
\caption{标题会另起一行}
\captionsetup{labelsep=endash}
\caption{en dash 连接符}
\captionsetup{
justification=raggedleft,
singlelinecheck=false}
\caption{右对齐的标题}
\captionsetup{font={small,sf},
labelfont=bf}
\caption{小号加粗无衬线体 Caption}
\captionsetup{font=small}
\captionsetup{font+=bf}
\caption{小号加粗字体 Caption}
\captionsetup{margin=4em}
\caption{标题距离左右各 4\,em
的距离。}
\captionsetup{width=6em}
\caption{标题最多只有 8\,em 宽。}
\captionsetup{skip=0pt}
浮动体的内容。
\caption{与前面无额外间距。}
\begin{figure}
\begin{minipage}[b]{.5\textwidth}
\centering
\includegraphics[width=.4\textwidth]{texlive-lion.pdf}
\caption{\TeX\ Live 吉祥物狮子}
\end{minipage}%
\begin{minipage}[b]{.5\textwidth}
\centering
\begin{tabular}{|*{5}{c|}}
\hline
1996 & 1998 & 1999 & 2000 & 2001 \\ \hline
2002 & 2003 & 2004 & 2005 & 2007 \\ \hline
2008 & 2009 & 2010 & \dots & \\
\hline
\end{tabular}
\captionsetup{type=table}
\caption{\TeX\ Live 的版本}
\end{minipage}
\end{figure}
% 导言区
\usepackage{caption}
\captionsetup{figurename=图片}
\captionsetup{
type=figure,name=空图片}
\caption{标签名称可以修改}
\captionof{figure}{空图片标题}
\captionsetup{font=sf}
\caption*{没有编号的标题,只保留格式}
\begin{figure}
\ContinuedFloat
……
\caption{某图形}
\end{figure}
\begin{figure}
\ContinuedFloat
……
\caption{某图形(续)}
\end{figure}
% 一般在导言区使用
\DeclareCaptionLabelSeparator{fullcolon}{:} % 声明中文的全角冒号分隔符
\captionsetup{labelsep=fullcolon} % 为中文的标题设置全角冒号分隔符
% 中文文档类会设定好标题的第一种语言
\documentclass{ctexart}
\usepackage{bicaption}
% 声明 english 选项重定义第二种语言的标签名,选项没有参数
\DeclareCaptionOption{english}[]{%
\renewcommand\figurename{Figure}%
\renewcommand\tablename{Table}}
\captionsetup[bi-second]{english}
\begin{figure}
\centering FIGURE
\bicaption{中文标题}{English Title}
\end{figure}
\begin{table}
\centering
\caption{并排的表格}
\begin{tabular}{|c|c|}
\hline 图 & 表 \\ \hline
\end{tabular}%
\qquad
\begin{tabular}{|c|c|}
\hline Figure & Table \\ \hline A & B \\ \hline
\end{tabular}
\end{table}
\begin{figure}
\centering
\includegraphics[width=0.4\textwidth]{texlive-lion.pdf}%
\qquad
\parbox[b]{0.4\textwidth}{这只狮子是由画师 Duane Bibby 专门为著名的
\TeX{} 发行版 \TeXLive{} 绘制的作品。狮子是 \TeX{} 系统的吉祥物,
Duane Bibby 创作了大量有关 \TeX{} 狮子的插图,如高德纳的 \textit{The
\TeX{}book} 与 Lamport 的 \textit{\LaTeX: A Document Preparation
System} 两书中的狮子插图,就是由 Duane Bibby 创作的。}
\caption{\TeX{} 狮子}\label{fig:texlivelion}
\end{figure}
\begin{figure}
\centering
\begin{varwidth}[t]{\textwidth}
\vspace{0pt}
\includegraphics{lion.eps}
\end{varwidth}%
\qquad
\begin{varwidth}[t]{\textwidth}
\vspace{0pt}
\includegraphics[height=4cm]{texlive-lion.pdf}
\end{varwidth}
\caption{两幅狮子图形的按顶部对齐}
\end{figure}
\begin{table}
\parbox[b]{.5\textwidth}{\centering
\caption{文字表格}
\begin{tabular}{|c|c|}
\hline 图 & 表 \\ \hline
\end{tabular}}%
\parbox[b]{.5\textwidth}{\centering
\caption{数学表格}
$\begin{array}{|c|c|}
\hline \sqrt{2} & 1.414\dots \\ \hline
\sqrt{3} & 1.732\dots \\ \hline
\end{array}$}
\end{table}
% \usepackage{caption,subcaption}
\begin{table}
\caption{图表的子标题}
\parbox[b]{.5\textwidth}{\centering
\begin{tabular}{|c|c|}
\hline 图 & 表 \\ \hline
\end{tabular}
\subcaption{文字表格}}%
\parbox[b]{.5\textwidth}{\centering
$\begin{array}{|c|c|}
\hline \sqrt{2} & 1.414\dots \\ \hline
\sqrt{3} & 1.732\dots \\ \hline
\end{array}$
\subcaption{数学表格}}
\end{table}
% \usepackage{caption,subcaption}
\begin{table}
\caption{子图表环境}
\begin{subtable}[b]{.5\textwidth}
\centering
\begin{tabular}{|c|c|} \hline 图 & 表 \\ \hline \end{tabular}
\caption{文字表格}
\end{subtable}%
\begin{subtable}[b]{.5\textwidth}
\centering
$\begin{array}{|c|c|}
\hline \sqrt{2} & 1.414\dots \\ \hline
\sqrt{3} & 1.732\dots \\ \hline
\end{array}$
\caption{数学表格}
\end{subtable}
\end{table}
% \usepackage{caption,subcaption}
\begin{table}
\caption{子图表盒子}
\centering
\subcaptionbox{文字表格\label{subtab:test}}[6em]{%
\begin{tabular}{|c|c|} \hline 图 & 表 \\ \hline \end{tabular}}\qquad
\subcaptionbox{数学表格}{%
$\begin{array}{|c|c|}
\hline \sqrt{2} & 1.414\dots \\ \hline
\sqrt{3} & 1.732\dots \\ \hline
\end{array}$}
\end{table}
\usepackage{caption}
\usepackage{subcaption}
\captionsetup[sub]{font={small,it}} % 设置所有子标题
\captionsetup[subtable]{labelformat=simple,labelsep=colon} % 设置子表格
% \usepackage{float}
\begin{figure}[H]
\centering
\includegraphics[height=1cm]{lion.eps}
\caption{不浮动的图表}
\end{figure}
% 导言区
% \usepackage{float}
\newfloat{flowchart}{htbp}{loflow}[chapter]
\floatname{flowchart}{流程图}
% 正文
\begin{flowchart}
\centering
\includegraphics{turing-reverse.pdf}
\caption{求逆字符串的图灵机}
\end{flowchart}
\floatstyle{ruled}
\restylefloat{flowchart}
% 正文
\begin{flowchart}
\fbox{A} $\longrightarrow$ \fbox{B} \\
\fbox{C} $\longrightarrow$ \fbox{D}
\caption{基本流程图}
\end{flowchart}
\floatplacement{figure}{htbp}
\floatplacement{table}{htbp}
\listof{flowchart}{流程图目录}
% \usepackage{afterpage}
\afterpage{\begin{figure}[H]
...
\end{figure}}
% \usepackage{afterpage}
\afterpage{\clearpge}
% \usepackage{picinpar}
\begin{figwindow}[2,c,% 跨过段落的前两行,中间位置
\includegraphics{lion.eps},Lion\label{fig:wraplion}]
\lipsum*[1] % 足够长的文本段落
\end{figwindow}
% \usepackage{wrapfig}
\begin{wraptable}[4]{r}[1.5cm]{4.5cm}
\centering
\begin{tabular}{|c|c|c|c|}
\hline 甲 & 乙 & 丙 & 丁 \\ \hline
\end{tabular}
\caption{向右伸出的绕排表格}\label{tag:wraptable}
\end{wraptable}
% \usepackage{shapepar}
% \usepackage{tikz,lipsum}
\cutout{r}(-1cm,1cm)\shapepar[2cm]{\circleshape}%
\begin{tikzpicture}[overlay]
\filldraw[fill=lightgray] (0.5,-0.5) circle (1);
\end{tikzpicture}\par
\small\lipsum[1]
% \usepackage{color}
\color{red}红色文字夹杂%
\textcolor{blue}{蓝色}文字
\colorbox{yellow}{黄色盒子} \\
\fcolorbox{black}{green}{黑框绿盒子}
\textcolor[gray]{0.5}{50\% 灰色} \\
\color[rgb]{0.6,0.6,0}暗黄色
% \usepackage[dvipsnames]{color}
\textcolor{Purple}{紫色文字}
\definecolor{Purple}{cmyk}{0.45,0.86,0,0}
% 将所有色彩转换为 CMYK 模型
\usepackage[cmyk]{xcolor}
\textcolor{purple!70}{淡紫色}
{\color{blue!60!black}60\% 蓝与 40\% 黑混合的深蓝色}
\colorbox{-red}{青色与红色互补}
\colorlet{darkred}{red!50!black}
\textcolor{darkred}{定义暗红色}
% \usepackage{colortbl}
% \usepackage{xcolor}
\begin{tabular}{>{\columncolor{gray}}c >{\columncolor{lightgray}}c}
深 & 浅 \\
darker & lighter \\
\end{tabular}
\begin{tabular}{|c|@{}>{\columncolor{lightgray}[0pt][\tabcolsep]}c|}
表列 & 左紧右松 \\
\end{tabular}
\begin{tabular}{|ccc|}
\hline \rowcolor{lightgray} A & B & C \\
一 & 二 & 三 \\\hline % 保持白色
\end{tabular}
\begin{tabular}{cccc}
No & No & \cellcolor{lightgray}Yes & No \\
\cellcolor{lightgray}Yes & No & No & No \\
\end{tabular}
% \usepackage{xcolor, colortbl}
\arrayrulecolor{gray}
\doublerulesepcolor{lightgray}
\begin{tabular}{|c|c|}
\hline\hline 灰色表线 & 浅灰色间隙 \\
\arrayrulecolor{black}\hline
以下为原色 & 表线 \\
\doublerulesepcolor{white}\hline\hline
\end{tabular}
\arrayrulecolor{black} % 恢复默认值
% \usepackage[table]{xcolor}
\begin{table}[htbp]
\centering
\rowcolors{2}{black!20}{black!10} % 交错的表行
\begin{tabular}{crrr}
\rowcolor{black!30} % 第一行的表头单独设置背景色
项目 & 数值 & 数值 & 数值 \\
A & 10 & 20 & 30 \\
B & 20 & 15 & 40 \\
C & 15 & 25 & 37
\end{tabular}
\end{table}
% \usepackage[table]{xcolor} % 将调入 colortbl
% \usepackage{arydshln} % 在 colortbl 后面使用
\rowcolors*[\hline]{1}{black!20}{black!10}
\begin{tabular}{|c:r|}
A & 10 \\
B & 20 \\
\hiderowcolors
\end{tabular}
\begin{tabular}{|cc|} \hline
& foo \\
\rowcolor{lightgray}
\multirow{-2}*{Test} & bar \\\hline
\end{tabular}
\xymatrix{
a & b & a+b \\
1 & 2 & 3 \\
}
\xymatrix{
a & b\ar[rd] & a+b \\ % 指向右下方
1 & 2 & 3\ar"1,1" % 指向 (1,1)
\ar"1,1";"2,2" % 直接从 (1,1) 到 (2,2)
}
\xymatrix{
A\ar[r]^{\alpha} & B\ar[d]_{\beta} \\
C\ar[ur]|{\Sigma} & D \\
}
\xymatrix{
A\ar[rd]|\hole & B \\
C\ar[ru] & D
}
\xymatrix{
A \ar[r]^>{f} & B \\
C \ar[r]^>>{g} & D \\
E \ar[r]^(0.6){h} & F
}
\xymatrix{
A \ar[drr]|!{[d];[r]}\hole & B & \\
C \ar[ur] & & D
}
\begin{equation}
\begin{gathered} \xymatrix{
S\ar[r]^{f_s} \ar[d]_{\lambda}
& T\ar[d]^{\bar\lambda} \\
S' \ar[r]_{f_{s'}} & T' \\
} \end{gathered}
\end{equation}
映射 $\xymatrix@1{A\ar[r]^{f} & B}$
是同态。
\[ \xymatrix{
A \ar@/^/[r]^{\phi} & B \ar@/^/[l]^{\psi}
} \]
\[ \xymatrix{
A \ar[r] & B \ar@(ur,dr)
} \]
\[ \xymatrix{
A \ar@<.5ex>[r]^f &
\ar@<.5ex>[l]^g B
} \]
\[ \xymatrix@=2cm{
*[F]{A} \ar[r]^*+[F=]{k} & *+[o][F]{B}
} \]
\xymatrix{
*++=[o][F]\txt{猫猫} \ar@{<->}[r] &
*+[F]\txt{狗\\狗}
}
\xymatrix{
*+[F.]{\composite{*+[o][F]{a\quad} * *+[F]{\quad b}}} \ar[r]
& *+[F]{c}
}
\xymatrix@R=2ex{
A \ar[drr]& B & C \\
D & E & F
}
\xymatrix@ru{
A \ar[r] & B \ar[d] \\
C \ar[u] & D \ar[l]
}
\usepackage{pst-plot,pst-node}
\usepackage{pstricks-add} % 同时载入内核与常用的功能模块
直线
\psline(0,0)(1,1em)(1.5,0)
直线
直线
\begin{pspicture}(1.5,1em)
\psline(0,0)(1,1em)(1.5,0)
\end{pspicture}
直线
\begin{pspicture}(-1.2,-1.2)(1.2,1.2)
\psaxes(0,0)(-1.2,-1.2)(1.2,1.2)
\pscircle(0,0){1}
\end{pspicture}
\psset{linewidth=0.4pt}
\begin{pspicture}(-1.2,-1.2)(1.2,1.2)
\psaxes[labels=none,ticks=none]
{->}(0,0)(-1.2,-1.2)(1.2,1.2)
\pscircle[linewidth=0.8pt](0,0){1}
\end{pspicture}
\begin{pspicture}(-0.5,0)(1,1)
\pswedge(0,0){1}{0}{120}
\end{pspicture}
\begin{pspicture}(-0.5,0)(1.2,1.2)
\psaxes[labels=none,ticks=none]{->}(1.2,1.2)
\pswedge[fillstyle=solid,fillcolor=gray,
opacity=0.2](0,0){1}{0}{120}
\end{pspicture}
\uput[120](1;120){$P$}
\pnode(1;120){P}
\uput[120](P){$P$}
\pnode(1;120){P}
\pnode(P|0,0){P0}
\pnode(1;120){P}
\pnode(P|0,0){P0}
\ncline{-}{P}{P0} % 等价于 \psline(P)(P0)
\psset{linewidth=0.4pt}
\begin{pspicture}(-1.2,-1.2)(1.2,1.2)
\psaxes[labels=none,ticks=none]{->}(0,0)(-1.2,-1.2)(1.2,1.2)
\pscircle[linewidth=0.8pt](0,0){1}
\pswedge[fillstyle=solid,fillcolor=gray,opacity=0.2]
(0,0){1}{0}{120}
\pswedge[fillstyle=solid,fillcolor=gray,opacity=0.5]
(0,0){0.3}{0}{120}
\uput[60](0.3;60){$120^\circ$} % 在扇形中间标注角度
\pnode(1;120){P}
\pnode(P|0,0){P0}
\ncline{-}{P}{P0} % 正弦线
\uput[120](P){$P$}
\uput[d](P0){$P_0$}
\end{pspicture}
\begin{pspicture}(-1,-1.2)(3.5,1.2)
\psaxes{->}(0,0)(0,-1.2)(3.5,1.2)
\psplot{0}{3.5}{x 180 Pi div mul sin} % 三角函数单位是度
\end{pspicture}
\psset{algebraic=true}
\begin{pspicture}(-1,-1.2)(3.5,1.2)
\psaxes{->}(0,0)(0,-1.2)(3.5,1.2)
\psplot{0}{3.5}{sin(x)} % 三角函数单位是弧度
\end{pspicture}
\psset{algebraic=true}
\begin{pspicture}(0,-1.2)(3.5,1.2)
\psaxes[labels=none,dx=1.57]
{->}(0,0)(0,-1.2)(3.5,1.2)
\psplot{0}{3.5}{sin(x)}
\uput*[d](0,0){$0^\circ$}
\uput*[d](1.57,0){$90^\circ$}
\uput*[d](3.14,0){$180^\circ$}
\end{pspicture}
\multido{\n=0+1.57,\i=0+90}{3}{
\uput*[d](\n,0){$\i^\circ$}
}
\pnode(!120 Pi mul 180 div 120 sin){Q}
\pnode(Q|0,0){Q0}
\uput[r](*{3.5} {sin(x)}){$\sin x$}
\begin{pspicture}(-1.5,-0.5)(1.5,0.5)
\pscircle*(0,0){0.5}
\rput(-1,0){
\pscircle(0,0){0.5}
}
\rput(1,0){
\pscircle(0,0){0.5}
}
\end{pspicture}
% \newcommand\iangle{120}
\pnode(!\iangle\space Pi mul 180 div \iangle\space sin){Q}
% \usepackage{pstricks-add}
% \usepackage{siunitx}
\begin{figure}
\centering
\newcommand\iangle{120}
\psset{unit=1.5cm,linewidth=0.4pt,algebraic=true}
\begin{pspicture}(-3.5,-1.5)(4.5,1.5)
\rput(-2,0){
\psaxes[labels=none,ticks=none]{->}(0,0)(-1.2,-1.2)(1.2,1.2)
\pscircle[linewidth=0.8pt](0,0){1}
\pswedge[fillstyle=solid,fillcolor=gray,opacity=0.2]
(0,0){1}{0}{\iangle}
\pswedge[fillstyle=solid,fillcolor=gray,opacity=0.5]
(0,0){0.3}{0}{\iangle}
\uput[!\iangle\space 2 div]
(0.3;!\iangle\space 2 div) {\ang{\iangle}}
\pnode(1;\iangle){P}
\pnode(P|0,0){P0}
\ncline{-}{P}{P0}
\uput[\iangle](P){$P$}
\uput[d](P0){$P_0$}
}
\psaxes[labels=none,dx=1.57]
{->}(0,0)(0,-1.2)(3.5,1.2)
\psplot[linewidth=0.8pt]{0}{3.5}{sin(x)}
\multido{\n=0+1.57,\i=0+90}{3}{
\uput*[d](\n,0){\small\ang{\i}}
}
\uput[r](*{3.5} {sin(x)}){$\sin x$}
\pnode(!\iangle\space Pi mul 180 div \iangle\space sin){Q}
\pnode(Q|0,0){Q0}
\uput[u](Q){$Q$}
\uput[d](Q0){$Q_0$}
\ncline{-}{Q}{Q0}
\psline[linestyle=dashed](P)(Q)
\end{pspicture}
\caption{正弦函数与单位圆(\textsf{PSTricks} 实现)}
\label{fig:pstsine}
\end{figure}
\usepackage{tikz}
% 使用 latex + dvipdfmx 编译时
\usepackage[dvipdfmx]{graphicx}
\usepackage{tikz}
\begin{tikzpicture}
\draw (0,0) circle (1ex);
\end{tikzpicture}
圆形
\tikz \draw (0,0) circle (1ex);
\tikz \fill (0,0) circle (1ex);
\tikz \filldraw[thick,fill=gray]
(0,0) circle (0.5cm);
\begin{tikzpicture}
\draw[->] (-1.2,0) -- (1.2,0);
\draw[->] (0,-1.2) -- (0,1.2);
\draw[thick] (0,0) circle (1);
\end{tikzpicture}
\tikz\draw (30:0.5) arc (30:150:0.5);
\begin{tikzpicture}
\draw[thick] (0,0) circle (1);
\fill[fill=gray, fill opacity=0.3]
(0,0) -- (0:1) arc (0:120:1) -- cycle;
\filldraw[fill=gray,fill opacity=0.5]
(0,0) -- (0:0.3) arc (0:120:0.3) -- cycle;
\end{tikzpicture}
\begin{tikzpicture}
\draw (0,0) circle (1);
\fill (120:1) circle (2pt);
\node[above left] (P) at (120:1) {$P$};
\end{tikzpicture}
\begin{tikzpicture}
\draw (0,0) circle (1);
\coordinate[label=120:$P$] (P) at (120:1);
\draw (0,0) -- (P);
\end{tikzpicture}
\coordinate[label=below:$P_0$] (P0) at (P |- 0,0);
% \usepackage{siunitx}
\begin{tikzpicture}
\newcommand\iangle{120}
\draw[->] (-1.2,0) -- (1.2,0);
\draw[->] (0,-1.2) -- (0,1.2);
\draw[thick] (0,0) circle (1);
\coordinate[label=\iangle:$P$] (P) at (\iangle:1);
\coordinate[label=below:$P_0$] (P0) at (P |- 0,0);
\draw (0,0) -- (P);
\draw (P) -- (P0);
\fill[fill=gray,fill opacity=0.2]
(0,0) -- (0:1) arc (0:\iangle:1) -- cycle;
\filldraw[fill=gray,fill opacity=0.5]
(0,0) -- (0:0.3) arc (0:\iangle:0.3) -- cycle;
\node[right] at (\iangle/2:0.3) {\ang{\iangle}};
\end{tikzpicture}
\begin{tikzpicture}
% 从 0 度到 360 度的正弦函数曲线,rad 函数和单位 r 把度转换为弧度
\draw[domain=0:rad(360)] plot (\x, {sin(\x r)});
\end{tikzpicture}
\begin{tikzpicture}
\draw (0,0) -- (2,0) node[right] {右};
\draw (0,-1) -- node[above] {连线} (2,-1);
\end{tikzpicture}
\begin{tikzpicture}
% 坐标轴
\draw[->] (0,0) -- ({rad(210)}, 0);
\draw[->] (0,-1.2) -- (0,1.2);
% 文字标签与刻度
\foreach \t in {0, 90, 180} { % 遍历三个角度
\draw ({rad(\t)}, -0.05) -- ({rad(\t)}, 0.05); % 画刻度线
\node[below, outer sep=2pt, fill=white, font=\small] % 标注横轴角度
at ({rad(\t)}, 0) {\ang{\t}};
}
\foreach \y in {-1,1} {\draw (-0.05,\y) -- (0.05,\y);} % 纵轴刻度
\end{tikzpicture}
\begin{tikzpicture}[fill=lightgray] % 全局选项
\begin{scope}[thick,->,fill=gray,xshift=-3cm] % 区块内整体向左平移
\filldraw (0,0) circle (1);
\draw (-1.2,0) -- (1.2,0);
\draw (0,-1.2) -- (0,1.2);
\end{scope}
\filldraw (0,0) circle (1); % 原位置
\end{tikzpicture}
\begin{figure}
\centering
% \usepackage{siunitx}
\begin{tikzpicture}[scale=1.5] % 整体放大坐标,但不影响字号
\newcommand\iangle{120}
% 左边的单位圆
\begin{scope}[xshift=-2cm]
\draw[->] (-1.2,0) -- (1.2,0);
\draw[->] (0,-1.2) -- (0,1.2);
\draw[thick] (0,0) circle (1);
\coordinate[label=\iangle:$P$] (P) at (\iangle:1);
\coordinate[label=below:$P_0$] (P0) at (P |- 0,0);
\draw (0,0) -- (P);
\draw (P) -- (P0);
\fill[fill=gray,fill opacity=0.2]
(0,0) -- (0:1) arc (0:\iangle:1) -- cycle;
\filldraw[fill=gray,fill opacity=0.5]
(0,0) -- (0:0.3) arc (0:\iangle:0.3) -- cycle;
\node[right] at (\iangle/2:0.3) {\ang{\iangle}};
\end{scope}
% 右边的函数图
\draw[->] (0,0) -- ({rad(210)}, 0);
\draw[->] (0,-1.2) -- (0,1.2);
\draw[thick, domain=0:rad(210)] plot (\x, {sin(\x r)})
node[right] {$\sin x$};
\foreach \t in {0, 90, 180} {
\draw ({rad(\t)}, -0.05) -- ({rad(\t)}, 0.05);
\node[below, outer sep=2pt, fill=white, font=\small]
at ({rad(\t)}, 0) {\ang{\t}};
}
\foreach \y in {-1,1} {\draw (-0.05,\y) -- (0.05,\y);}
\coordinate[label=above:$Q$] (Q) at ({rad(\iangle)}, {sin(\iangle)});
\coordinate[label=below:$Q_0$] (Q0) at (Q |- 0,0);
\draw (Q) -- (Q0);
\draw[dashed] (P) -- (Q);
\end{tikzpicture}
\caption{正弦函数与单位圆(\textsf{TikZ} 实现)}
\label{fig:tikzsine}
\end{figure}
\setlength\unitlength{1cm}
\begin{picture}(1,1)
\put(0,0) {左下} \put(1,1) {右上}
\end{picture}
% 主要代码片断
draw (0,0) .. tension 2 .. (1cm,1cm){right} .. (2cm,0){right}
.. (5cm,1cm);
% 主要代码片断
z1 = (0,0); z2 = (2cm,0); z3 = (0,1cm); z4 = (3cm,1.5cm);
dotlabel.lft(btex $z_1$ etex, z1); dotlabel.rt(btex $z_2$ etex, z2);
dotlabel.lft(btex $z_3$ etex, z3); dotlabel.rt(btex $z_4$ etex, z4);
draw z1 -- z4; draw z2 -- z3;
z5 = whatever[z1, z4] = whatever[z2, z3]; % 计算交点
dotlabel.bot(btex $z_5$ etex, z5);
input metaobj;
beginfig(1);
x = new_Tree( new_Box(btex root etex) )
( new_Circle(btex child etex),
new_Circle(btex child etex));
Obj(x).c=origin;
draw_Obj(x);
endfig;
end.
prologues := 3;
% pdfTeX,设置插入 MetaPost 图形
\DeclareGraphicsRule{*}{mps}{*}{}
% XeTeX,设置插入 MetaPost 图形
\DeclareGraphicsRule{*}{eps}{*}{}
outputtemplate := "%j-%c.mps";
% XeTeX,设置插入 MetaPost 图形
\DeclareGraphicsRule{.mps}{eps}{.mps}{}
% 带有 LaTeX 标签的 MetaPost 文件
% 需要使用 mpost -tex=latex 或 mptopdf --latex 命令编译
verbatimtex
\documentclass{article}
\usepackage{amssymb}
\begin{document}% 后面可以省去 \end{document}
etex
beginfig(1);
draw fullcircle scaled 2cm;
label.rt(btex $\Lleftarrow$ unit circle etex, (1cm,0));
endfig;
end.
% 带有 LaTeX 标签的 MetaPost 文件
% 需要使用 mpost 或 mptopdf 命令编译两遍
input latexmp;
setupLaTeXMP(packages="amssymb");
beginfig(1);
draw fullcircle scaled 2cm;
label.rt(textext("$\Lleftarrow$ unit circle"), (1cm,0));
endfig;
end.
% 带有中文 LaTeX 标签的 MetaPost 文件
% 需要使用 mpost 或 mptopdf 命令编译两遍
input latexmp;
setupLaTeXMP(
packages="amssymb,CJK",
preamble=("\AtBeginDocument{\begin{CJK}{UTF8}{gbsn}}" &
"\AtEndDocument{\end{CJK}}"));
beginfig(1);
draw fullcircle scaled 2cm;
label.rt(textext("$\Lleftarrow$ 单位圆"), (1cm,0));
endfig;
end.
% \usepackage[shellescape]{gmp}
% 使用 xelatex -shell-escape 命令编译
\begin{mpost}
draw ((0,0) -- (0,2) -- (1,3.25) -- (2,2) -- (2,0)
-- (0,2) -- (2,2) -- (0,0) -- (2,0)) scaled 1cm;
\end{mpost}
% 导言区使用
\usepackage[shellescape,latex]{gmp}
\usempxpackage{CJKutf8}
\mpxcommands{
\AtBeginDocument{\begin{CJK*}{UTF8}{gbsn}}
\AtEndDocument{\clearpage\end{CJK*}}
}
\begin{mpost*}[mpsettings={u:=\mpdim{0.4\linewidth};}]
fill (0,0) -- (u, 1pt) -- (2u, 0) -- (u, -1pt) -- cycle;
label.top(btex 示例 etex, (u, 1pt));
label.bot(btex \textit{Example} etex, (u, -1pt));
\end{mpost*}
draw((0,0) .. tension 2 .. (1cm,1cm){right} .. (2cm,0){right}
.. (5cm,1cm));
guide star(int n = 5, real r0 = 1)
{
guide unitstar;
if (n < 5) return nullpath;
real theta = 180/n;
real r = Cos(2theta) / Cos(theta);
for (int k = 0; k < n; ++k)
unitstar = unitstar -- dir(90+2k*theta)
-- r * dir(90+(2k+1)*theta);
unitstar = unitstar -- cycle;
return scale(r0) * unitstar;
}
for (int i = 5; i <= 8; ++i)
filldraw(shift(i*2cm,0) * star(i,1cm), lightgray, gray+1mm);
import binarytree;
binarytree bt=searchtree(4,2,1,3,5,6);
draw(bt);
import solids;
size(4cm);
currentprojection = orthographic(1, 1, 1);
real a = 4;
real h = 2.2a;
draw(scale3(a) * unitsphere, white);
draw(shift((a/2,0,-h/2)) * scale(a/2,a/2,h) * unitcylinder, gray);
% \usepackage{asymptote}
\begin{asy}
real r = 0.8cm;
for (int i = 0; i < 360; i+=10)
draw(circle(dir(i)*r, r));
\end{asy}
\usepackage{asymptote}
\begin{asydef}
import graph;
unitsize(1cm);
\end{asydef}
\documentclass{beamer}
\usepackage[UTF8,noindent]{ctexcap}
\begin{document}
% ...
\end{document}
\makeatletter
\def\beamer@linkspace#1{%
\begin{pgfpicture}{0pt}{-1.5pt}{#1}{5.5pt}
\pgfsetfillopacity{0}
\pgftext[x=0pt,y=-1.5pt]{.}
\pgftext[x=#1,y=5.5pt]{.}
\end{pgfpicture}}
\makeatother
\begin{frame}
这是简单的一帧。
帧里的内容是垂直居中的。
\end{frame}
\begin{frame}
\frametitle{标题}
\framesubtitle{小标题}
这是简单的一帧。
\end{frame}
\begin{frame}{标题}{小标题}
这是简单的一帧。
\end{frame}
\begin{frame}{古中国数学}{定理发现}
中国在 3000 多年前就知道勾股数的概念,比古希腊更早一些。
《周髀算经》的记载:
\begin{itemize}
\item 公元前 11 世纪,商高答周公问:
\begin{quote}
勾广三,股修四,径隅五。
\end{quote}
\item 又载公元前 7--6 世纪陈子答荣方问,表述了勾股定理的一般形式:
\begin{quote}
若求邪至日者,以日下为勾,日高为股,勾股各自乘,并而开方除之,得邪至日。
\end{quote}
\end{itemize}
\end{frame}
% beamer 导言区
\title{杂谈勾股定理}
\subtitle{数学史讲座之一}
\institute{九章学堂}
\author{张三}
\date{\today}
\subject{勾股定理}
\keywords{勾股定理, 历史}
\part{引言}
\begin{frame}
\partpage
\end{frame}
\lecture{杂谈勾股定理}{gougu} % 讲座标题和讲座标签
% 导言区
\AtBeginLecture{
\begin{frame}
\Large
本周论题:\insertlecture
\end{frame}
}
% 导言区
\AtBeginSection[]{ % 空的可选项表示 \section* 前不加目录
\begin{frame}{本节提要}
\tableofcontents[currentsection]
\end{frame}
}
\begin{frame}{参考文献}
\nocite{Shiye}
\bibliography{math}
\end{frame}
% 提供简单的作者年代引用格式
\bibliographystyle{apalike}
\newtheorem{thm}{定理}
\renewcommand\proofname{证明}
\begin{frame}{现代叙述}
\begin{thm}[勾股定理]
直角三角形斜边的平方等于两直角边的平方和。
\end{thm}
\end{frame}
\begin{frame}
\begin{block}{块标题}
这是一个区块
\end{block}
\begin{block}{}% 无标题
这是另一个区块
\end{block}
\end{frame}
\begin{frame}{古中国数学}{定理证明}
有论者认为早在公元前 11 世纪商高即已证明勾股定理\cite{quanjing}。
完整的证明见于三国时(公元 3 世纪)赵爽对《周髀算经》的注释。
\begin{figure}
\centering
\includegraphics[height=0.4\textheight]{xiantu.pdf}
\caption{赵爽的弦图可给出勾股定理的一个富于对称美的证明}
\end{figure}
\end{frame}
\logo{\includegraphics{logo.pdf}}
% 在 thm 环境最后:
\begin{center}
\begin{tikzpicture}[scale=0.5,font=\small]
\draw[thick] (0,0) node[left] {$A$}
-- (4,0) node[right] {$C$}
-- (4,3) node[above right] {$B$} -- cycle;
\draw (3.5,0) |- (4,0.5);
\end{tikzpicture}
\end{center}
\documentclass[xcolor=table]{beamer}
% 颜色 craneorange 是在 crane 色彩主题中定义的
\rowcolors{2}{craneorange!25}{craneorange!50}
\begin{tabular}{rrr}
\rowcolor{craneorange}直角边 $a$ & 直角边 $b$ & 斜边 $c$\\
3 & 4 & 5 \\
5 & 12 & 13 \\
7 & 24 & 25 \\
8 & 15 & 17 \\
\end{tabular}
\usetheme{PaloAlto}
\usecolortheme{crane}
\usebeamerfonttheme{professionalfonts}
\usepackage{arev}
% XeLaTeX 编译
\usepackage[noindent,UTF8]{ctexcap}
\setCJKsansfont[ItalicFont={华文新魏}]{黑体}
\renewcommand\CJKfamilydefault{\CJKsfdefault}
\documentclass[no-math]{beamer}
\usepackage[noindent,UTF8]{ctexcap}
\setCJKsansfont[ItalicFont={华文新魏}]{黑体}
\renewcommand\CJKfamilydefault{\CJKsfdefault}
\setbeamertemplate{itemize items}[circle]
\setbeamercolor{itemize item}[fg=black]
\setbeamercolor{itemize/enumerate body}{fg=gray}
\setbeamerfont{itemize/enumerate body}{family=\rmfamily}
\begin{frame}
\onslide<1>{只有第 1 步}
\onslide<2->{第 2 步之后}
\onslide<1,3>{第 1, 3 两步}
\end{frame}
\begin{frame}
计数:\only<1>{1}\only<2>{2}\only<3>{3}\only<4->{4}
\onslide<5> 数完了。
\end{frame}
\begin{frame}
\textbf<3>{只在第 3 步加粗}
\end{frame}
\begin{frame}
\begin{theorem}<2->
第 2 步以后显示的定理
\end{theorem}
\end{frame}
\begin{frame}
\begin{itemize}
\item<1-> 开始显示
\item<3-> 最后显示
\item<2-> 然后显示
\end{itemize}
\end{frame}
\begin{frame}
\begin{itemize}[<+->]
\item 开始显示
\item 其次显示
\item 最后显示
\end{itemize}
\end{frame}
\alert<2>{在第 2 步强调重要的内容}
\begin{itemize}
\item<+-| alert@+>
公元前 6 世纪,毕达哥拉斯学派发现一个法则,可以构造直角三角形的边长;
\item<+-| alert@+>
公元前 3 世纪,欧几里德《几何原本》使用面积法证明勾股定理。
\end{itemize}
\newdimen\xoffset
\begin{frame}
% 第一步是静止的,之后自动运动
\animate<2-10>
\animatevalue<1-10>{\xoffset}{0cm}{5cm}
\hspace{\xoffset}从左到右
\end{frame}
% \usepackage{multimedia}
\begin{frame}{AVI movie}
\movie[width=4cm,height=3cm]{Click to play}{foo.avi}
\end{frame}
% \usepackage{multimedia}
\begin{frame}{Music}
% 自动播放,无显示内容
\sound[autostart]{}{foo.au}
\end{frame}
% \usepackage{tdclock}
\begin{frame}
当前时间:\tdtime;已经过去时间:\crono
\end{frame}
% \usepackage{ocgtools}
\begin{frame}
% 点击公式会显示定理名称
\ocgminitext{$a^2+b^2=c^2$}{Pythagoras Theorem}
\end{frame}
\documentclass{article} % 包含错误的文档
\begin{document}
\secton{Start}
A simple equation
\begin{equation}
x = \overline{a+b
\end{equation}
\end{document}
% 当出现 ! No room for a new ... 的错误时使用
\usepackage{etex}
% 将 txfonts 定义的重积分符号定义为 \TXFiint,保留原来 amsmath 的 \iint
\usepackage{savesym}
\usepackage{amsmath}
\savesymbol{iint}
\usepackage{txfonts}
\restoresymbol{TXF}{iint}
\newcommand\Emph[1]{\textbf{\textit{#1}}}
\show\Emph
\newcommand\Emph[1]{\textbf{\textit{#1}}}
\texttt{\meaning\Emph}
版面宽度是:
\texttt{\the\textwidth}
\showhyphens{information technology}
\draftmode=1
% 导言区 \usepackage{trace}
\newcommand\test[2]{(#1-#2)}
\traceon
\test{a}{b}
\traceoff
\usepackage[l2tabu, orthodox]{nag}
% \usepackage{lipsum}
\linespread{1}\usefont{T1}{bch}{m}{n}
\lipsum[1-2]
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[
\cases{ a & b \cr
c & d \cr}
\]
\end{document}
\documentclass{minimal}
\usepackage{amsmath}
\listfiles
\begin{document}
\[
\cases{ a & b \cr
c & d \cr}
\]
\end{document}
\def\testsentence{This is a test.}
\def\Emph#1{\textbf{#1}}
\def\exchange(#1,#2){#2 and #1}
\exchange(left,right)
\def\multi#1{(#1,#1)}
\edef\multi#1{[\multi{#1}, \multi{#1}]}
\multi{X}
\let\oldemph=\emph
\renewcommand\emph[1]{\textbf{#1}}
An \emph{important} command
\let\oldemph=\emph
\renewcommand\emph[1]{%
\oldemph{\Large #1}}
An \emph{important} command
\ifnum 0=1 不\fi 相等,
\ifnum \value{page}>100 大页码
\else 小页码\fi,
\ifdim \linewidth<5cm 窄行\else 宽行\fi。
% \usepackage{changepage}
\def\outside#1{%
\checkoddpage % 设置自动交叉引用
\ifoddpage % 使用交叉引用并检查页码奇偶
{\raggedleft #1$\rightarrow$}% 奇数页右侧
\else
{\raggedright $\leftarrow$#1}% 偶数页左侧
\fi}
\outside{\textsf{向外侧对齐}}
\def\bigchinese#1{%
\ifcase\value{#1}%
零\or 壹\or 贰\or 叁\or 肆\or 伍\or 陆\or 柒\or 捌\or 玖\else 溢出
\fi}
\renewcommand\theenumi{\bigchinese{enumi}}
\begin{enumerate}\sffamily
\item 1 \item 2 \item 3
\end{enumerate}
\ifnum 0=1\relax 0\else 1\fi
% 将参数 #2 输出 2^#1 次
\def\recur#1#2{%
\ifnum #1=0\relax%
#2 %
\else
\setcounter{enumi}{#1}%
\addtocounter{enumi}{-1}%
\recur{\value{enumi}}{#2 #2}%
\fi}
\textsf{\recur0a\recur1b\recur2c\recur3d}
% \usepackage{etoolbox}
\sffamily
\ifnumcomp{\value{page}+1}>{10*10}{大页码}{小页码},
\ifboolexpr{not test {\ifnumodd{\value{page}}}
and test {\ifdimcomp{\linewidth}>{5cm+20pt/2}}}%
{是}{不是}%
偶数页宽行。
% \usepackage{etoolbox}
\begin{math}
\setcounter{enumi}{1}
\whileboolexpr{not test {\ifnumcomp{\value{enumi}}>{30}}}%
{
\mathsf{\theenumi}\rightarrow
\stepcounter{enumi}
}
\cdots
\end{math}
\catcode`\"=\active
\def"#1"{\textbf{#1}}
An "important" usage.
\makeatletter
\setlength\@fpsep{1cm}% 浮动页中不同浮动体间距
\makeatother
% boldmath.sty
\ProvidesPackage{boldmath}[2010/10/10 v1.0 emphasis using bold font]
\newcommand\Emph[1]{\textbf{#1}}
% myarticle.cls
\ProvidesClass{myarticle}[2010/10/10 v1.0]
\LoadClass[a4paper,11pt]{article}
\RequirePackage{boldemph}[2010/10/10]
\DeclareOption{hyperref}{%
\RequirePackage{hyperref}%
}
\AtEndDocument{%
\begin{center}
\includegraphics{logo.pdf}
\end{center}}
% 在 boldemph.sty 中,给 emph 增加加粗的功能
\let\boldmath@oldemph\emph
\def\emph#1{\textbf{\boldemph@oldemph{#1}}}
% 通常是在某 .sty 或 .cls 中
% \RequirePackage{keyval}
% 定义 text 族的 emph 选项,控制 \emph 命令的定义
\let\text@emph=\emph
\define@key{text}{emph}[\text@emph]{%
\let\emph=#1}
\newcommand\settext[1]{%
\setkeys{text}{#1}}
% 在 .tex 文件中使用
\begin{quotation}
\settext{emph=\textbf} % 粗体
An \emph{important} example.
\settext{emph} % 默认的格式
An \emph{important} example.
\end{quotation}
\begin{codebox}
\Procname{$\proc{BinSearch}(A, x, L, H)$}
\li \While $L\le H$ \RComment $L$ 与$H$ 是左右分点
\li \Do $M \gets \lfloor(L+H)/2\rfloor$ \RComment $M$ 是中间分点
\li \If $x > A[M]$
\li \Then $H \gets M-1$
\li \ElseIf $x < A[M]$
\li \Then $H \gets M+1$
\li \ElseNoIf \RComment 找到 $x$,返回位置
\li $j \gets M$
\li \Return $j$
\End
\End
\li $j \gets 0$
\li \Return $j$
\end{codebox}
set terminal epslatex size 8cm,4cm
set output 'sine-epslatex.tex'
set size 1,1
set xlabel '$x$'
set ylabel '$y$'
set xtics ('$-\pi$' -pi, '$-\frac12\pi$' -pi/2, 0, \
'$\frac12\pi$' pi/2, '$\pi$' pi)
set ytics (-1, 0, 1)
set format y "$%g$"
plot [-pi:pi] [-1:1] sin(x) title '$\sin x$'
% \usepackage{pgfplotstable}
\pgfplotstabletypeset{
Input Output
-1 10
0 1500
1 1235.7
2 1.53e6
}
% \usepackage{pgfplotstable,booktabs}
\pgfplotstableset{
every head row/.style={
before row=\toprule,after row=\midrule},
every last row/.style={
after row=\bottomrule},
column type=r, col sep=comma}
\pgfplotstabletypeset{temperature.csv}
C 语言的循环语句
================
C 语言可以使用 `for` 循环语句,例如计算 $s = \sum_k k^2$:
int s = 0;
for (int k = 1; k < 10; ++k)
s += k * k;
华式,摄式,开尔文
1,-17.22222222,255.9277778
20,-6.666666667,266.4833333
40,4.444444444,277.5944444
60,15.55555556,288.7055556
80,26.66666667,299.8166667
100,37.77777778,310.9277778
TODO:LaTeX 的意义,用途,安装
编译 tex 文档
xelatex gougu.tex % 初次编译
bibtex gougu.aux % 生成引用
xelatex gougu.tex % 再次编译,添加引用
一些 tex 源码示例
\maketitle % 生成 title
\tableofcontents % 生成 TOC(需要至少编译两次)
\usepackage{graphicx} % 使用宏包
\includegraphics[width=3cm]{input.pdf} % 还可使用其他图片格式:.png, .jpg, .eps 等
\hline % horizontal line (用于表格)
% 环境
gbegin{figure}[ht] % Here Top(图片浮动的位置设定)
\centering
\includegraphics[scale=0.6]{xiantu.pdf} \caption{这是图片的说明。} % xiantu.pdf 是图片,还可使用其他格式
\label{fig:xiantu} % label 用于文中的说明引用
\end{figure}
**用英文字符指定希腊字符
\usepackage[greek,english]{babel}
\greektext{abcde}
TODO:fontenc,inputenc
Q\@.E\@.D\@. 即“证明完毕”。 % \@. (防止缩写字母中的 period 被认为是句子结尾 fullstop)
\CJKsetecglue{} % set e(nglish) c(hinese) glue to "no glue"
\phantom{嗯} % 占位,但是不显示内容
\vphantom % 类似 \phantom
\hphantom % 类似 \phantom
\\ % linebreak, 也可使用 `\linebreak`
\par
{\You {\emph should} emphasis it.}
\textit{
You {\emph should} emphasis it.}
\newcommand\Emph{\textbf}
\underline % make text appeared with an underline
\S
\dag
\ddag % double dagger
\texttrademark % 不带 text 是文本模式和数学模式通用的
% symbol
\symbol{'\$} % WYSIWYG
\symbol{'Z}
\symbol{"6a} % #hex(16 进制)
\symbol{'07} % #oct(8 进制)
% font family
\textrm{text in Roman Family} \rmfamily
\textsf{text in Sans Serif font Family} \sffamily
\texttt{text in Typewritter font family} \ttfamily % t(ypewritter) t(ext)
% font shape
\textup{text in Upright shape} \upshape
\textit{text in Italic shape} \itshape
\textsl{text in Slanted shape} \slshape
\textsc{text in Small Capital} \scshape % small caption
% font series
\textmd{median text} \mdseries
\textbf{bold face} \bfseries
% default setup
\rmfamily\mdseries\upshape
% CJK font family
{\CJKfamily{hei}这是黑体}
{\CJKfamily{kai}这是楷书}
{\CJKfamily{song}这是宋体}
{\CJKfamily{fs}这是仿宋}
{\songti 宋体}
{\heiti 黑体}
{\fangsong 仿宋}
{\kaishu 楷书}
关于字体
Set Font
% Set font --- method 1
\fontencoding{OT1}\fontfamily{pzc}\fontseries{mb}\fontshape{it}\fontsize{14}{17} % size, line
\selectfont % 使其生效
So far so good
% Set font --- method 2
\usefont{T1}{pbk}{db}{n} % 编码,族,系列,形状
Not too bad
txfonts
\documentclass{article}
\usepackage{txfonts} % free, excellent
\begin{document}
\end{document}
fontspec
% \setmainfont[<optional>]{<font-name>}
% setmainfont, setsansfont, setmonofont
\usepackage{fontspec}
\setmainfont{Times New Roman}
\setsansfont{Verdana}
\setmonofont{Courier New}
fonts
% size of font
\tiny
\scriptsize
\footnotesize
\small
\large
\Large
\LARGE
\huge
\Huge
% chinese font size
\zihao{0} % 初号
\zihao{-0} % 小初号
\zihao{5} % 五号 (c5size)
\zihao{-5} % 小五号 (cs5size)
% default font size
\normalfont % 10pt, or c5size(CTeX)
% line
\linespread{<因子>} % 基本行距的倍数
\setstretch % spacing
\singlespacing
\onehalfspacing
\doublespacing
Dimensions
pt
pointpc
pica (12 pt)in
inch (72.27 pt, 72 bp)bp
big pointcm
centimeter (2.54 cm = 1 in)mm
millimeterdd
didot pointcc
cicerosp
scaled point (65536 sp = 1 pt)em
M 的宽度(等于 \quad
)ex
x 的高度en
Spaces
% 不可换行的水平间距
\thinspace \, % for numbers: 1\,234\,567\,890
\negthinspace \!
\enspace % 0.5 em
\nobreakable ~ % tie, for names: Donald~E. Knuth
% 可以换行的水平间距
\quad % 1 em
\qquad % 2 em
\enskip % 0.5 em
\ % 空格
% hspace
\hspace{2em} % Space\hspace{1cm}1\,cm,
\hspace*{1cm}Text
\hspace{2em plus 1em minus 0.25 em}
left\hspace{\fill}middle\hfill right % align to left, middle, right
left\hspace{\stretch{2}}middle\hspace{\fill}right
\hrulefill % 下划线
\dotfill % 点
% length
\setlength{\parindent}{8em}
\addtolength{\parindent}{2em}
\newlength\mylen % new a length
Boxs
% mbox makebox
\mbox{cannot be broken}
\makebox[1em]{\textbullet}text
\makebox[5cm][s]{some text} % 宽度,位置(clrs: center, left, right, stretched)
\makebox[0pt][l]{abc}xyz % overlap
abc\llap{xyz} % llap(更高层的表达方式)
\rlap{abc}xyz % rlap
% fbox framebox
\fbox % \setlength{\fboxsep}{2pt}, \framebox % 比 \fbox 强,可自定义
\fboxrule{0.4pt} (default)
% sbox savebox
\sbox \savebox
\newsavebox{\mybox}
\sbox{\mybox}{a box made by me}
\usebox{\mybox}
% set box param
\settowidth{10pt}{content}
\settoheight{10pt}{content}
\settodepth{10pt}{content}
% get box param
\wd{\fbox}
\ht{\mbox}
\dp{\mybox}
\framebox[2\width]{文字宽度两倍的宽} % width, height, depth, totalheight
Alignment
\indent % generate an indent (\parindent)
% 段落
\parskip % 0pt plus 1pt
\setlength{\parskip}{0pt}
\raggedright % 右侧不对齐
\raggedleft
\centering
\begin{center} % or `flushright`, `flushleft`
居中
\end{center}
MISC
% hyphenation 放到导言区
\hyphenation{man-u-script com-pu-ter gym-na-sium}
% Lettrine 首字母超大多行效果
\usepackage{lettrine}
\lettrine{S}{tay} hungry, stay foolish
% shapepar
\usepackage{shapepar}
\heartpar{这一段文字会变成心形}
% syntonly
\usepackage{syntonly} % syntax only
\syntaxonly
% quote
\begin{quote}
quot
\end{quote}
% quotation 段首缩进
\begin{quotation}
Better for multiparagraph quotation
\end{quotation}
% verse
\begin{verse}
For Poetry
\end{verse}
% abstract
\begin{abstract} % article, report
Abstract goes here % \abstractname 摘要名称
% \CTEXoptions[abstractname={摘\quad 要}]
\end{abstract}
Lists
% enumerate
\begin{enumerate} % numbered
\item one
\item two
\end{enumerate}
\begin{enumerate}
\item 中文
\item[1a.] 汉语 % set "bullet" by hand
\end{enumerate}
% itemize
\begin{itemize} % bullet
\item not one
\item not two
\end{itemize}
% description
\begin{description} %
\item[\tau] Greek alphabet \tau
\end{description}
% 手动设置
% counter
\item This is number\theenumi % enumi, enumii, enumiii, enumiv
\arabic{enumi}
\alph{enumi}
\roman{enumi}
\Alph{enumi}
% reset
\renewcommand\theenumi{\roman{enumi}}
\renewcommand\labelenumi{\theenumi}
% 页码也是一个 counter
\thepage % current page number
% define your own counter
\newcounter{mycnt}
\setcounter{mycnt}{0}
\renewcommand\themycnt{\arabic{mycnt}}
\stepcounter{mycnt}\themycnt
\addtocounter{mycnt}{-1}
% amsmath
\usepackage{amsmath}
\numberwithin{equation}{section}
% 定制列表环境
% general list
\begin{list} % \list{标签}{设置命令}
\item
\end{list}
\newcounter{mylist}
\begin{list}{\#\themylist}{\usecounter{mylist}}
\item 中文
\item English
\end{list}
% 或者使用 enumitem 包
\usepackage{enumitem}
\begin{enumerate}[itemsep=0pt,parset=0pt,label=(\arabic*)] % set up
\item 中文
\item English
\end{enumerate}
Theorem
\usepackage{theorem}
% theorem
\newtheorm{thm}{定理} % “定理” 是定理标题
\begin{thm}
一个定理
\end{thm}
\begin{thm}[勾股定理]
一个有名字的定理
\end{thm}
% lemma
\newtheorm{lemma}{引理}[chapter] % 按章
\begin{lemma}
...
\end{lemma}
% proposition
\newtheorm{prop}[thm]{命题} % thm 是编号的方式
\begin{prop}
...
\end{prop}
% 设置 theorem 格式
\usepackage{theorem}
\theoremstyle{changebreak}
\theoremheaderfont{\sffamily\bfseries}
\theorembodyfont{\normalfont}
\newtheorem{definition}{定义}[chapter]
\theoremstyle
% 或者更强大的 `ntheorem` 宏包,或者 `amsthm`
\usepackage{amsthm}
\renewcommand\proofname{证明}
\renewcommand\qedsymbol{\ensuremath{\Box}} % 证明完毕(Q.E.D)
Verbatim
% verbatim:\ver<符号><抄录内容><符号>
\verb"\LaTeX"
\verb!\LaTeX!
\verb*!1 2 3 4! % *(显示空格)
% 使用环境
\begin{verbatim}
#!usr/bin/env perl
...
\end{verbatim}
\begin{verbatim*}
...
\end{verbatim*}
% 使用宏包
\usepackage{fancyvrb}
\SaveVerb{myverb}|shit[({=-+[/})|
\fbox{套中 \UseVerb{myverb}}
% 程序高亮
\usepackage{listings}
\begin{lstlisting}[language=C]
...
\end{lstlisting}
\lstset{ % 整体设置
column=flexible % 等于 lstset{flexiblecolumns}
commentstyle=\rmfamily\itshape}
tabbing
\begin{tabbing}
格式\hspace{3em} \= 作者 \kill % be killed,这一行不会显示
Plain \TeX \> 高德纳 \\ % \\ 以换行
\LaTeX \> Leslie Lamport % 最后一行不用换行
\end{tabbing}
footnote
\footnote{This is a footnote}
\footnote[1]{This is another footnote} % 脚注符号是 thefootnote
\begin{minipage}{8em} % 对应地,是 thempfootnote
这是一个小页环境\footnote{脚注。}中的脚注
\end{minipage}
\renewcommand\thefootnote{\fnsymbol{footnote}}
\renewcommand\thefootnote{\textcircled{\arabic{footnote}}}
% 更好的方法
\usepackage{pifont}
\renewcommand\thefootnote{\ding{\numexpr171+\value{footnote}}} % 阳文带圈数字从 171 开始
% footnotemark footnotetext
\begin{tabular}{r|r} % right-align, right-align
自变量 & 因变量\footnotemark \\ \hline % 添加脚注标记
$x$ & $y$
\end{tabular}
\footnotetext{$y=x^2$。} % 添加脚注内容
% 边注 \marginpar
有边注的文字\marginpar[\hfill 左 $\rightarrow$]{\leftarrow 右}
\reversemarginpar
\normalmarginpar
\marginparwidth % 宽度
\marginparsep % 间隔,用 setlength 设置
space
\vspace{<长度>}
\vfill % 即 \vspace{\fill}
% skip
\smallskip % smallskipmount
\medskip % medskipmount
\bigskip % bigskipmount
% bottom
\raggedbottom
\flushbottom
\parbox[<位置>][<高度>][<内容位置>]{<Width>}{<Content>}
前沿\parbox{2em}{不搭后语}。 % 一个有趣的例子
\parbox[t]{2em}{Content} % top bounded
\parbox[b]{2em}{Content} % bottom bounded
\parbox[c]{2em}{Content} % center aligened
\parbox[s]{2em}{Content} % stretched
% rule
\rule[<升高距离>]{<Width>}{<Height}
\rule{1pt}{1em}Middle\rule{1p}
\rule[-0.1em]{1em}{1em} 可用作 Q.E.D.
% struct
\fbox{\strut---}\qquad
title page
\title{杂谈勾股定理\thanks{感谢某某对本文的大力支持}} % 生成特殊的感谢脚注
\author{张三在左\\三明堂 \and 李四在右\\四合院}
\data\today % 可以省略
% 设置格式
层次 | 名称 | 命令 | 说明 |
---|---|---|---|
-1 | part | \part |
可选的最高层 |
0 | chapter | \chapter |
report, book 的最高层 |
1 | section | \section |
article 的最高层 |
2 | subsection | \subsection |
|
3 | subsubsubsection | \subsubsubsection |
report, book |
4 | paragraph | \paragraph |
不编号,不生成目录 |
5 | subparagraph | \subparagraph 不编号,不生成目录 |
% 全书
\frontmatter % 书的前段
\mainmatter % 书的正文,页码重新计数
\backmatter % 书的后段,不编号
\clearpage
\include{lang-natural} % 引入 lang-natural.tex 文档
\include{a-complex-table}
\includeonly{lang-natural} % 可以在 preamble 设置只引入某一章
一个例子
% main.tex
\documentclass{ctexart}
\input{preamble} % 复杂的导言区
\begin{document}
...
\end{document}
% a-complex-table.tex
...
\endinput % 停止导出
这是一个复杂的表格,最好从 main.tex 中分离出来。
请直接编译主文档:
xelatex main.tex
设置 CTeX
% \CTEXsetup[<key>=<value>,etc.]{<对象类型>}
% 对象类型:part, chapter, section, subsection, subsubsection, paragraph, subparagraph
\CTEXsetup[name={第,节}]{section} % 变成 “第 1 节” 这样
\CTEXsetup[number={\chinese{section}}]{section} % 变成 “第一节” 这样
\CTEXsetup[format={\raggedright\bfseries}]{section}
% nameformat
% numberformat
% titleformat
% aftername,章节名与后面标题间的内容
\CEXsetup[aftername={\\vspace{2em}}]{part}
% beforeskip, afterskip 前后的 skip 距离
% indent 章节标题的缩进长度
% 增加格式
\CTEXsetup[titleformat+={\fansong}]{subsection} % 思考 “=” 与 “+=” 的区别
\documentclass[a4paper,titlepage]{article} % 标题单独成页
% a4paper, a5paper, b5paper, letterpaper, leagalpaper, executivepaper
% landscape 横向纸张
% oneside, twoside
% 10pt, 11pt, 12pt
% onecolumn, twocolumn
% titlepage, notitlepage
% openany, openright(每章从奇数页开始)
% leqno 公式左边编号
% fleqn 公式左对齐,固定长度(默认居中)
% draft 编译出的 pdf 有提示
% final (默认值)
% openbib
article
, report
, book
vs. ctexart
, ctexrep
, ctexbook
% ctex.sty, ctexcap.sty
ctexcap.sty
\documentclass{ltxdoc}
\usepackage{ctexcap}
\zihao{5}
\begin{document}
...
\end{document}
ctex.sty
\documentclass{moderncv} % 简历
\usepackage{ctex}
\zihao{-4}
\begin{document}
...
\end{document}
About UTF-8
\XeTeXinputencoding "GBK" % XeTeX 处理非 UTF-8 编码文档
% ctexutf8, ctexcaputf8 % 类似 documentclass[UTF-8]{ctexart} 之类
% ctexartutf8, ctexreputf8, ctexbookutf8
Geometry
\paperwidth \hoffset
\paperheight \voffset
\topmargin
\headhight \headsep
\textheight \textwidth
\marginparsep % 边注的 sep
\marginparwidth
\footskip % 为什么不是 footsep?因为最后一行是变化的,而 footnote 跟在紧跟当页最后一行,用一个 skip 来分隔
% Set geometry method 1
\usepackage[a4paper,left=3cm,right=3cm]{geometry}
% Set geometry method 2
\usepackage{geometry}
\geometry{a4paper,left=3cm,right=3cm} % 右边距
Page Style
\pagenumbering{roman}
% Page style:
% empty:无 head,footnote
% plain:无 head,footnote 为居中页码
% headings:无 footnote,head 是章节名
% myheadings:没有 footnote,head 是页数和自定义内容
\pagestyle{<风格>} % 设置整体
\thispagestyle{<风格>} % 设置本页
\documentclass{article}
\pagetsyle{headings}
% 大幅图片,当前页使用 plain 风格
\begin{figure}[p]
\thispagestyle{plain}
...
\end{figure}
fancyhdr
\lhead{<contents>} \chead{<c>} \rhead{<c>}
\lfoot{<contents>} \cfoot{<c>} \rfoot{<c>}
\fancyhead[<位置>]{<c>} % E/O + L/C/R, even/odd page number
\fancyfoot[<位置>]{<c>} % E/O + L/C/R, left/center,right
\fancyhf[<位置>]{<c>} % H/F + E/O + L/C/R
% Example:
\documentclass[twoside]{ctexrep}
\usepackage{fancyhdr}
\pagestyle{fancy}
\cfoot{\thepage}
\fancyhead[CO]{张三}
\fancyhead[CE]{论语言}
\fancyfoot[RO,LE]{$\heartsuit$}
% \leftmark \rightmark 通常就是“章”“节”名
\fancyhead[LE,RO]{\slshape \rightmark}
\fancyhead[LO,RE]{\slshape \leftmark}
\fancyfoot[C]{\thepage}
% 重新定义风格
\renewcommand\headrulewidth{0.6pt} % default: 0.4pt
\renewcommand\footrulewidth{0.6pt} % default: 0.4pt
\fancypagestyle{plain}{%
\fancyhf{}
\cfoot{--\textit{\thepage}--} % 页码形状
\renewcommand\headrulewidth{0pt}
\renewcommand\footrulewidth{0pt}
}
% columns
\documentclass[twocolumn]{article}
% \onecolumn
% \twocolumn
Macro
command
\boldface{boldfaced text}
environment
\begin{tabular}
...
\end{tabular}
% \newcommand<命令>[<参数个数>][<首个参数默认值>]{具体定义}
\newcommand\PRC{People's Republic of \emph{China}}
\newcommand\drives[2]{#1 drives #2} % \loves{Driver}{car} === driver drives car
\newcommand\does[3][drives]{#2 #1 #3} % \does{driver}{car} ===> driver drives car, \does{like}{I}{fish} ===> I like fish
% renewcommand 和 呢我command类似,但是用于重定义
\renewcommand\abstractname{内容简介}
% providecommand 提供一个简单版本,有别的版本,此版本就被替代
\providecommand\url[1]{\texttt{#1}} % 一个简单的 URL 实现,只是怕没有这个命令(但是料想应该有,所以只提供一个“简陋”的实现)
% 或者两者组合出现
\providecommand \renewcommand % 不管之前是否有定义,都定义一个新 command
A complex example
\newcommand\Emph[1]{\emph{#1}}
\newcommand\setEmph[1]{%
\renewcommand\setEmph[1]{%
#1{##1}}}
TODO:这部分自己实践一下
% command vs. environment
{\quote ... \endquote}
\begin{quote}
...
\end{quote}
\newenvironment{<环境名>}[<参数个数>][<首参数默认值>]{环境前定义}{<环境后定义>}
\renewenvironment{<环境名>}[<参数个数>][<首参数默认值>]{环境前定义}{<环境后定义>}
\newenvironment{myabstract}[1][摘要] %
{\small
\begin{center}\bfseries #1\end{center}
\begin{quotation}} % 环境前定义
{\end{quotation}} % 环境后定义(这里不能使用环境参数)
刘海洋的一段总结:
定义命令和环境是进行 LaTeX 格式定制、打成内容与格式分离目标的利器。使用自定义的命令和环境把字体、字号、缩进、对齐、间距等各种琐细的内容包装起来,赋以一个有意义的名字,可以使文档结构清晰、代码整洁、易于维护。在使用宏定义的功能时,要综合利用各种已有的命令、环境、变量等功能,事实上,前面所介绍的长度变量与盒子,字体字号等内容,大多并不直接出现在正文中,而主要用在实现各种结构画得宏定义里。
\tableofcontents % 至少编译两次才出现目录
\listoffigures
\listoftables