浏览代码

added tikz familiy tree example

Martin Thoma 12 年之前
父节点
当前提交
2274a07a62
共有 4 个文件被更改,包括 71 次插入0 次删除
  1. 31 0
      tikz/family-tree/Makefile
  2. 5 0
      tikz/family-tree/README.md
  3. 二进制
      tikz/family-tree/family-tree.png
  4. 35 0
      tikz/family-tree/family-tree.tex

+ 31 - 0
tikz/family-tree/Makefile

@@ -0,0 +1,31 @@
+SOURCE = family-tree
+DELAY = 80
+DENSITY = 300
+WIDTH = 512
+
+make:
+	pdflatex $(SOURCE).tex -output-format=pdf
+	make clean
+
+clean:
+	rm -rf  $(TARGET) *.class *.html *.log *.aux *.data *.gnuplot
+
+gif:
+	pdfcrop $(SOURCE).pdf
+	convert -verbose -delay $(DELAY) -loop 0 -density $(DENSITY) $(SOURCE)-crop.pdf $(SOURCE).gif
+	make clean
+
+png:
+	make
+	make svg
+	inkscape $(SOURCE).svg -w $(WIDTH) --export-png=$(SOURCE).png
+
+transparentGif:
+	convert $(SOURCE).pdf -transparent white result.gif
+	make clean
+
+svg:
+	#inkscape $(SOURCE).pdf --export-plain-svg=$(SOURCE).svg
+	pdf2svg $(SOURCE).pdf $(SOURCE).svg
+	# Necessary, as pdf2svg does not always create valid svgs:
+	inkscape $(SOURCE).svg --export-plain-svg=$(SOURCE).svg

+ 5 - 0
tikz/family-tree/README.md

@@ -0,0 +1,5 @@
+Example from [StackExchange](http://tex.stackexchange.com/a/47384/5645)
+
+Compiled example
+----------------
+![Example](family-tree.png)

二进制
tikz/family-tree/family-tree.png


+ 35 - 0
tikz/family-tree/family-tree.tex

@@ -0,0 +1,35 @@
+\documentclass[varwidth=true, border=2pt]{standalone}
+\usepackage{xcolor}
+\usepackage{tikz}
+\usetikzlibrary{trees}
+\def\name#1{\hbox to 50pt{#1\rule{10pt}{0pt}}}
+\begin{document}
+\begin{tikzpicture}[
+  man/.style={rectangle,draw,fill=gray!30},
+  woman/.style={rectangle,draw,fill=gray!10},
+  grandchild/.style={grow=down,xshift=1em,anchor=west,
+    edge from parent path={(\tikzparentnode.south) |- (\tikzchildnode.west)}},
+  first/.style={level distance=6ex},
+  second/.style={level distance=12ex},
+  third/.style={level distance=18ex},
+  level 1/.style={sibling distance=70pt}]
+    % Parents
+    \coordinate
+      child[grow=left] {node[man,anchor=east]{\name{Jim}}}
+      child[grow=right] {node[woman,anchor=west]{\name{Jane}}}
+      child[grow=down,level distance=0ex]
+    [edge from parent fork down]
+    % Children and grandchildren
+    child{node[man] {\name{Alfred}}
+      child[grandchild,first] {node[man]{\name{Joe}}}
+      child[grandchild,second] {node[woman]{\name{Heather}}}
+      child[grandchild,third] {node[woman] {\name{Barbara}}}}
+    child{node[woman] {\name{Berta}}
+      child[grandchild,first] {node[man]{\name{Howard}}}}
+    child {node[man] {\name{Charles}}
+       child[grandchild,first] {node[man]{\name{Howard}}}}
+    child {node[woman]{\name{Doris}}
+      child[grandchild,first] {node[man]{\name{Nick}}}
+      child[grandchild,second] {node[woman]{\name{Liz}}}};
+\end{tikzpicture}
+\end{document}