Поместите изображение между узлами в tikz: как добиться точного позиционирования

Поместите изображение между узлами в tikz: как добиться точного позиционирования

Я пытаюсь включить фоновое изображение в рисунок tikz/pgf. Мне нужно иметь возможность рисовать узлы непосредственно на определенных элементах изображения, поэтому его нужно точно настроить.

Было бы проще всего, если бы я мог каким-то образом закрепить это за двумя узлами, определяющими углы изображения, вот так:

\documentclass{article}
\usepackage{pgf,tikz}
\begin{document}
\begin{tikzpicture}
\node at (0,0) {a};
\includegraphics{something.png}
\node at (2,2) {b};
\end{tikzpicture}
\end{document}

Конечно, это не делает то, что мне нужно, т.е. не масштабирует изображение так, чтобы его верхний правый угол находился в точке (2,2), а нижний левый угол — в точке (0,0):

введите описание изображения здесь

решение1

Комментарий @percusse привел меня к правильному ответу. Он подразумевает использование среды scope.

Следующий код взят из ответа @Caramdir вРисование на изображении с помощью TikZ:

\documentclass[tikz]{standalone}
\begin{document}
\begin{tikzpicture}
    \node[anchor=south west,inner sep=0] (image) at (0,0) {\includegraphics[width=0.9\textwidth]{some_image.jpg}};
    \begin{scope}[x={(image.south east)},y={(image.north west)}]
        \draw[red,ultra thick,rounded corners] (0.62,0.65) rectangle (0.78,0.75);
    \end{scope}
\end{tikzpicture}
\end{document}

решение2

Как насчет этого?

\documentclass[tikz]{standalone}
\begin{document}
\begin{tikzpicture}
\node[inner sep=0pt] (img) at (0,0) {\includegraphics{example-image-a}};
\coordinate (a) at (img.south west);
\coordinate (b) at (img.north east);
\draw[blue,thick] (a)--(b);
\end{tikzpicture}
\end{document}

введите описание изображения здесь

Связанный контент