结果

结果

我是 Tikz 新手。我想使用 Tikz 覆盖将 png 或 pdf 图像放置在另一个 pdf 图形上。不幸的是,我没有这两个图形的 Tikz 代码。

我已经看过这个答案了如何将 PDF 图形放在另一个图形之上使用Tex Commands在 Tikz 上绘制图像和最接近的例子图像中包含另一幅图像

我的问题是使用 Tikz 将图像叠加在正确的位置并保持两个图形的纵横比?

我已经在 MWE 中使用过overpic包和Tikz这里(现在无法正常工作)

这是最小的工作示例。Tikz 的标题放置不正确。知道原因吗?

快速预览 writelatex 的输出

\documentclass[12pt]{article}
\usepackage{mwe,tikz}
\usepackage[percent]{overpic}
\pagestyle{empty}

\begin{document}

\begin{figure}
  \centering
   \begin{overpic}[scale=0.75]{example-image-a}
     \put(3,3){\includegraphics[scale=0.21]{example-image-b}}
  \end{overpic}
\caption{Using Overpic}
\end{figure}

\begin{figure}
 \centering
   \begin{tikzpicture}[overlay]
     \node at (1,1) {\includegraphics[scale=1]{example-image-a}};
     \node at (1.5,1) {\includegraphics[scale=0.25]{example-image-b}};
  \end{tikzpicture}
\caption{Using Tikz Overlay}
\end{figure}

\end{document}    

结果:

页

答案1

第一次尝试时遇到两个问题:

  • overlay关键字。你写这个是因为你想覆盖两个图形,但这不是此关键字的目的。在单个图形中,tikzpicture您绘制的所有内容确实会按照绘制顺序进行叠加。当您希望将tikzpicture图形叠加在周围的文本或另一个tikzpicture图形上时,请使用此关键字,但事实并非如此。

    在这个例子中,overlay罪魁祸首是字幕定位错误,因为overlay它使图形在 TeX 眼中“消失”(它给图形赋予了零尺寸)。

  • 图 B 在图 A 内的定位。默认情况下,节点的坐标指的是其中心。您必须使用anchor=south east使它们指向左下角,如示例中所示overpic。您还需要inner sep=0pt删除包含图形的节点的内部填充。

此外,坐标单位还有另一个问题。overpic使用相对于比例的单位。因此,在这种情况下,数量3表示图形 A 的宽度。这在 tikz 中实现起来有点复杂,我认为在这种情况下不需要。您可以使用关键字和3%手动调整 tikz 使用的单位。使用产生的结果与您的示例大致相同。x=dimensiony=dimension1mmoverpic

所以最终的代码是:

\documentclass[12pt]{article}
\usepackage{mwe,tikz}\usepackage[percent]{overpic}
\pagestyle{empty}

\begin{document}
\begin{figure}
  \centering   
  \begin{overpic}[scale=0.75]{example-image-a}
     \put(3,3){\includegraphics[scale=0.21]{example-image-b}}  
  \end{overpic}
\caption{Using Overpic}
\end{figure}

\begin{figure} \centering
\begin{tikzpicture}[      
        every node/.style={anchor=south west,inner sep=0pt},
        x=1mm, y=1mm,
      ]   
     \node (fig1) at (0,0)
       {\includegraphics[scale=0.75]{example-image-a}};
     \node (fig2) at (3,3)
       {\includegraphics[scale=0.21]{example-image-b}};  
\end{tikzpicture}
\caption{Using Tikz Overlay}
\end{figure}
\end{document}

结果

在此处输入图片描述

相关内容