如何繪製不佔空間的 TikZ 圖

如何繪製不佔空間的 TikZ 圖

我是 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}

相關內容