我想根据框架坐标 x 和 y 在投影仪框架顶部绘制一个箭头。目的是在演示过程中将其用作指针,以便它能够覆盖文本、图形和数学。
如果可能的话,我们的想法是构建如下命令:
\newcommand<>{\Arrow}[2]{
\only#3{
\DrawArrow{#1}{#2}
}
}
这样它就可以在框架中使用它:\Arrow{x}{y}
我环顾四周,但找不到任何可以调整以做到这一点的东西。
谢谢你!
这是我基于 BambOo 代码使用的最终代码:
\usetikzlibrary{shapes.arrows}
\tikzset{
use page relative coordinates/.style={
shift={(current page.south west)},
x={(current page.south east)},
y={(current page.north west)}
},
}
\newcommand<>{\Pointer}[2]{
\onslide#3{
\begin{tikzpicture}[remember picture,overlay,use page relative coordinates]
\node (x) at (#1,#2) {};
\draw[stealth-] (x) %
node[overlay,single arrow,draw=none,fill=red!70,anchor=tip,rotate=60,opacity=0.75]%
{\hspace{0.5cm}~};
\end{tikzpicture}
}
}
答案1
你可以使用漂亮的变体use bounding box relative coordinates
基于current page
锚点。
参见tikz
手册第 17.13.2 节
\documentclass{beamer}
\usepackage{tikz}
\tikzset{
use page relative coordinates/.style={
shift={(current page.south west)},
x={(current page.south east)},
y={(current page.north west)}
},
}
\begin{document}
\begin{frame}{title}{subtitle}
\includegraphics[width=0.5\textwidth]{example-image-a}
\begin{tikzpicture}[remember picture,overlay,use page relative coordinates]
\node (x) at (0.6,0.5) {x};
\draw[stealth-] (x) --++ (-45:0.2) node[fill=white,draw,at end] {OOOOOh here is an X !};
\end{tikzpicture}
\end{frame}
\end{document}