使用 Tikz 将图像水平对齐并等距放置

使用 Tikz 将图像水平对齐并等距放置

我正在定制一个 beamer 模板,想在标题页插入三幅图像,所有图像都水平对齐且间距相等。

我已经尝试了很多种选择\node但还没有找到好的解决方案。

我基本上用的是

\node[anchor=north west](img1) at (0,\slideheight-0.2cm)
    {\includegraphics[width=.2\textwidth]{img1.png}};

\node[anchor=north west](img2) at (2cm,\slideheight-0.2cm)
    {\includegraphics[width=.2\textwidth]{img2.png}};

并尝试调整距离,但这是一个非常糟糕的想法™。

答案1

您真的需要nodes 来实现这一点吗?\includegraphics只需几个 s 就可以完成这项工作\hfill。但是,这可以用节点来完成。将第一个节点放在 0 处,将第二个节点放在 处,0.5\textwidth第三个节点放在 处。现在选择我已在 处设置的\textwidth节点的统一宽度。然后为每个节点选择适当的锚点,如以下代码和 所示。text width0.3333\textwidthalign=center

\documentclass{beamer}
\usepackage{tikz}
\begin{document}
  \begin{frame}
  X\hrulefill X

  \includegraphics[width=.2\textwidth]{example-image-a}\hfill
  \includegraphics[width=.2\textwidth]{example-image-b}\hfill
  \includegraphics[width=.2\textwidth]{example-image-c}
  \end{frame}
  \begin{frame}
  X\hrulefill X

    \begin{tikzpicture}
      \node[anchor=north west,text width=0.3333\textwidth,align=center](img1) at
           (0,\textheight-0.2cm)
           {\includegraphics[width=0.5\linewidth]{example-image-a}};
     \node[anchor=north,text width=0.3333\textwidth,align=center](img2) at
           (0.5\textwidth,\textheight-0.2cm)
           {\includegraphics[width=0.5\linewidth]{example-image-b}};
     \node[anchor=north east,text width=0.3333\textwidth,align=center](img2) at
           (\textwidth,\textheight-0.2cm)
           {\includegraphics[width=0.5\linewidth]{example-image-c}};
    \end{tikzpicture}
  \end{frame}
\end{document}

在此处输入图片描述

相关内容