我是 TikZ 新手,我有一个简单的问题。如何绘制无边框图表?换句话说,我需要一些不会取代文本的东西。类似于使用宽度和高度为 {0,0} 的常规 LaTeX 图片实现的效果。这是我需要的图表的一个最小示例:
\documentclass[a4paper]{report}
\usepackage{tikz}
\begin{document}
\begin{picture}(0,0)(0,0)
\put(0,3){\vector(1,0){60}}
\end{picture}
Picture
\tikz{\draw [->] (0,0) -- (0:80pt);}
TikZ
\end{document}
结果如下:
例如 http://ubuntuone.com/1Kgnezgx4gUSZ9sgJIcjJR
我希望 TikZ 的向量(以及一般的环境)位于单词上方,而不是取代它。与图片类似。我觉得有一个简单的解决方案,但我似乎找不到它。
谢谢
答案1
您可以使用以下overlay
选项:
\tikz[overlay]{\draw [->] (0,0) -- (0:80pt);}
如果您想提出错误,该baseline
选项可能会有所帮助:
\tikz[overlay,baseline=-0.8ex]{\draw [->] (0,0) -- (0:80pt);}
overlay
该选项还remember picture
提供了一些不错的功能,例如在当前页面的绝对位置进行绘图
\tikz[remember picture, overlay]{\draw (current page.center) circle [radius=10mm];}
(其中current page
有矩形的锚点node
)或连接两张图片
\tikz[remember picture,baseline=(first.base)]{\node [blue] (first) {First Node};}
Some regular Text her in this line.
A new paragraph and more text, ending with a
\tikz[remember picture,baseline=(second.base)]{\node [blue] (second) {second Node};}.
\tikz[remember picture, overlay]{\draw [blue,<->] (first) to[bend left] (second);}
答案2
\documentclass[a4paper]{report}
\usepackage{tikz}
\begin{document}
\begin{picture}(0,0)(0,0)
\put(0,3){\vector(1,0){60}}
\end{picture}
Picture
\makebox(0,0){\put(0,3){\vector(1,0){60}}}
Picture
\makebox[0pt][l]{\tikz\draw [->] (0,0) -- (0:80pt);}
TikZ
\tikz\draw [overlay,->] (0,0) -- (0:80pt);
TikZ
\end{document}