在投影机中随机排列图像

在投影机中随机排列图像

我想在投影仪演示中排列图像,而不必将它们设置在预定义的位置。是否有一个包或一种快速方法可以将给定数量的图像随机放入投影仪中?

\begin{figure}
    \includegraphics[width=0.3\linewidth]{img1}
    \includegraphics[width=0.3\linewidth]{img2}
    \includegraphics[width=0.3\linewidth]{img3}
\end{figure}

我想在投影机中移动它们,但不要让它们处于同一条线上。

答案1

您可以使用 TikZ 的节点并rnd随机化位置;该命令\PlaceImageRnd有一个以逗号分隔的图像名称文件列表作为强制参数:

\PlaceImageRnd{<image-1>,<image-2>,...,<image-n>}

线路

\pgfmathsetseed{\pdfuniformdeviate 10000000}

每次运行代码时更新位置。

代码:

\documentclass{beamer}
\usepackage{tikz}

\newcommand\PlaceImageRnd[1]{%
  \begin{tikzpicture}
  \pgfmathsetseed{\pdfuniformdeviate 10000000}
  \pgfmathparse{2.0*rnd+1.0}
  \foreach \Image in {#1}
  {
    \node at (10*rnd,6*rnd) 
      {\includegraphics[width=0.3\linewidth]{\Image}};
  }
  \end{tikzpicture}% 
}

\begin{document}

\begin{frame}
\PlaceImageRnd{example-image-a,example-image-b,example-image-c}
\end{frame} 

\end{document}

第一次运行我得到:

在此处输入图片描述

相关内容