PGF/Tikz包简介


Tikz其实应该是tikz,它是用pgf实现的,在LaTeX中当你在导言中用

\usepackage{tikz}
加载tikz时,就已经加载了pgf。你也可以用pgf实现其它的包。

tikz从PSTricks 中学习了通过可选项改变属性的办法,同时从metapost中学习了路径语法。它还提供了大量的 库,加载tikz库要在LaTeX导言中用命令

\usetikzlibrary{库名,库名,...}

图形工具

在LaTeX中可以把tikz放在一个“tikzpicture”环境中

\begin{tikzpicture}[选项,选项,...]
语句
\end{tikzpicture}
“语句”可能不止一条,每一条都以“;”号结束。比如
\begin{tikzpicture}[execute at end picture=%
{
\begin{pgfonlayer}{background}
path[fill=yellow,rounded corners]
(current bounding box.south west) rectangle
(current bounding box.north east);
\end{pgfonlayer}
}]
\node at (0,0) {X};
\node at (2,1) {Y};
\end{tikzpicture}
在秀文LaTeX编辑器中,上述环境以源代码形式展现,代码中间的换行符将被保留。

对于语句不多的小图形可以用命令

\tikz[选项,选项,...]{多个语句}
如果只有一条语句,大括号可以省略,比如
\tikz[baseline=(X.base)]\node [cross out,draw] (X) {world.};
在不至于混淆的情况下,我们有时也称语句为代码。在秀文LaTeX编辑器中,上述命令以源代码形式 展现,采用大括号形式(用户不必输入大括号)。

“选项”的形式和内容都非常多,一些选项有时被称为风格。多数内容会分散到其它部分。 这里先介绍几个作为开始。

baseline=长度或坐标
选项会影响图形图像的基线,等号以及后面的值是可选的,缺省值为0pt。如果长度, 会以包围图形图像的文本的基线为准,上升或下降,坐标则直接指定了基线的位置。

execute at begin picture={语句}
execute at end picture{语句}
分别指定了在图形图像开始处和结束处要执行的语句。这两个选项只能用于环境形式。

every picture=值
指定了图形图像的某种风格,比如线宽等。

结构化图形

在一个“tikzpicture”环境中,你可以把多条相互关联的语句放在一个范围内,也就是 让你的图形结构化。范围的环境形式是

\begin{scope}[选项,选项,...]
语句
\end{scope}
比如
\begin{tikzpicture}[ultra thick]
\begin{scope}[red]
\draw (0mm,10mm) -- (10mm,10mm);
\draw (0mm,8mm) -- (10mm,8mm);
\end{scope}
\draw (0mm,6mm) -- (10mm,6mm);
\begin{scope}[green]
\draw (0mm,4mm) -- (10mm,4mm);
\draw (0mm,2mm) -- (10mm,2mm);
\draw[blue] (0mm,0mm) -- (10mm,0mm);
\end{scope}
\end{tikzpicture}

范围也有与图形图像类似的选项

every scope=值
execute at begin scope={语句}
execute at end scope{语句}

如果在导言中加入

\usetikzlibrary{scopes}
就可以用一对大括号代替“\begin{scope}”和“\end{scope}”。它是范围 的简洁形式。你甚至可以用它在一段路径中划出范围。

使用选项

除了在方括号中设置选项,tikz还提供了命令

\tikzset{选项,选项,...}
在环境形式中这个命令必须被放在环境中。在命令方式下可置于命令外。

一些选项被称为风格,它们对图形图像的视觉效果有着非常大的影响。比如

\begin{tikzpicture}[help lines/.style={blue!50,very thin}]
\draw (0,0) grid +(2,2);
\draw[help lines] (2,0) grid +(2,2);
\end{tikzpicture}


目录