请选择 进入手机版 | 继续访问电脑版
楼主: janyiyi
3412 1

PGF/Tikz包简介 [推广有奖]

  • 3关注
  • 17粉丝

讲师

27%

还不是VIP/贵宾

-

威望
0
论坛币
3211 个
通用积分
5056.8299
学术水平
539 点
热心指数
537 点
信用等级
538 点
经验
10157 点
帖子
300
精华
2
在线时间
88 小时
注册时间
2010-10-3
最后登录
2024-3-27

janyiyi 发表于 2016-8-27 20:19:23 |显示全部楼层 |坛友微信交流群

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

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

  1. \usepackage{tikz}
复制代码

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

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

  1. \usetikzlibrary{库名,库名,...}
复制代码


图形工具

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

  1. \begin{tikzpicture}[选项,选项,...]
复制代码

语句
  1. \end{tikzpicture}
复制代码

“语句”可能不止一条,每一条都以“;”号结束。比如
  1. \begin{tikzpicture}[execute at end picture=%
  2. {
  3. \begin{pgfonlayer}{background}
  4. path[fill=yellow,rounded corners]
  5. (current bounding box.south west) rectangle
  6. (current bounding box.north east);
  7. \end{pgfonlayer}
  8. }]
  9. \node at (0,0) {X};
  10. \node at (2,1) {Y};
  11. \end{tikzpicture}
复制代码


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

  1. \tikz[选项,选项,...]{多个语句}
复制代码

如果只有一条语句,大括号可以省略,比如
  1. \tikz[baseline=(X.base)]\node [cross out,draw] (X) {world.};
复制代码

在不至于混淆的情况下,我们有时也称语句为代码。

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


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

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

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

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

  1. \begin{scope}[选项,选项,...]
  2. 语句
  3. \end{scope}
复制代码

比如
  1. \begin{tikzpicture}[ultra thick]
  2. \begin{scope}[red]
  3. \draw (0mm,10mm) -- (10mm,10mm);
  4. \draw (0mm,8mm) -- (10mm,8mm);
  5. \end{scope}
  6. \draw (0mm,6mm) -- (10mm,6mm);
  7. \begin{scope}[green]
  8. \draw (0mm,4mm) -- (10mm,4mm);
  9. \draw (0mm,2mm) -- (10mm,2mm);
  10. \draw[blue] (0mm,0mm) -- (10mm,0mm);
  11. \end{scope}
  12. \end{tikzpicture}
复制代码


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

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

如果在导言中加入

  1. \usetikzlibrary{scopes}
复制代码

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

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

  1. \tikzset{选项,选项,...}
复制代码

在环境形式中这个命令必须被放在环境中。在命令方式下可置于命令外。

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

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





二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:pgf Background rectangle Baseline bounding

ljj197819 发表于 2016-8-28 12:59:19 |显示全部楼层 |坛友微信交流群
PGF/Tikz非常强大,可惜官方手册是英文的,没有中文。

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-3-28 23:42