![Как нарисовать диаграмму TikZ, которая не занимает места](https://rvso.com/image/286975/%D0%9A%D0%B0%D0%BA%20%D0%BD%D0%B0%D1%80%D0%B8%D1%81%D0%BE%D0%B2%D0%B0%D1%82%D1%8C%20%D0%B4%D0%B8%D0%B0%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D1%83%20TikZ%2C%20%D0%BA%D0%BE%D1%82%D0%BE%D1%80%D0%B0%D1%8F%20%D0%BD%D0%B5%20%D0%B7%D0%B0%D0%BD%D0%B8%D0%BC%D0%B0%D0%B5%D1%82%20%D0%BC%D0%B5%D1%81%D1%82%D0%B0.png)
Я новичок в TikZ и у меня есть тривиальный вопрос. Как нарисовать диаграмму без полей? Другими словами, мне нужно что-то, что не смещает текст. Похоже на эффект, достигаемый с помощью обычной картинки LaTeX с {0,0} для ширины и высоты. Вот минимальный пример того, как должна выглядеть диаграмма:
\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 был над словом, а не смещал его. Похож на тот, что с Picture. Я чувствую, что для этого есть простое решение, но я не могу его найти.
Спасибо
решение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}