以下代码来自@domenico-camasta
\documentclass{article}
\usepackage{graphicx}
\usepackage{tikz}
\begin{document}
\begin{figure}
\begin{tikzpicture}
\node(a){\includegraphics[width=0.8\textwidth]{example-image-a}};
\node at (a.north east)
[
anchor=center,
xshift=0mm,
yshift=0mm
]
{
\includegraphics[width=0.3\textwidth]{example-image-b}
};
\end{tikzpicture}
\end{figure}
\end{document}
也可以看看在文章中叠加两张图片
我需要如何重写
a.north east
在上面的例子中,如果我想放置图像 B:
1)位于图像A的中心
2) 位于图像 A 的中心东侧?
答案1
参见第 72 章tikz 和 pgf 手册关于shape
库。您将在其中找到一个节点形状列表,其中每个节点形状都显示一个带有预定义锚点的图表,与默认形状类似rectangle
:
(请注意,10
和130
锚点仅仅是示例,您可以使用 0 到 360 之间的任意度数。)
因此,您需要遵循center
和east
锚点,如下面的代码所示。
还要注意,您可能想要inner sep=0
为a
节点进行设置,以删除节点内容和边框之间的“填充”。
\documentclass{article}
\usepackage{graphicx}
\usepackage{tikz}
\begin{document}
\begin{figure}
\begin{tikzpicture}
\node [inner sep=0] (a){\includegraphics[width=0.8\textwidth]{example-image}};
\node at (a.north east)
[
anchor=center,
xshift=0mm,
yshift=0mm
]
{
\includegraphics[width=0.3\textwidth]{example-image-a}
};
\node at (a.center) {\includegraphics[width=0.3\textwidth]{example-image-b}};
\node at (a.east) {\includegraphics[width=0.3\textwidth]{example-image-c}};
\end{tikzpicture}
\end{figure}
\end{document}
答案2
默认定位是使用center
,默认锚点是center
,因此只需node at (a)
将节点放在即可a.center
。相应地,中心东位置就是east
。
\documentclass{article}
\usepackage{graphicx}
\usepackage{tikz}
\begin{document}
\begin{figure}
\begin{tikzpicture}
\node(a)[inner sep=0pt]{\includegraphics[width=0.8\textwidth]{example-image-a}};
\node at (a)
{
\includegraphics[width=0.3\textwidth]{example-image-b}
}
node at (a.east)
{
\includegraphics[width=0.3\textwidth]{example-image-b}
};
\end{tikzpicture}
\end{figure}
\end{document}