我正在尝试使用 beamer 进行演示,并使用 Tikz 将图片合并到我的框架中的某些位置。
由于某些原因,我想固定图片的高度(包含在一个节点中)并检索该图片的宽度(以便为该图片绘制特定的背景。
是否可以获取环境内图片或节点的宽度tikzpicture
(长度应该是我从pic
节点检索到的值):
\begin{tikzpicture}[anchor=south east,inner sep = 0, outer sep = 0,overlay]
\node (pic) at (0,0) {\includegraphics[height=1.2\baselineskip,keepaspectratio]{mypicture.pdf}};
\draw [fill=couleurprimaire,couleurprimaire] (-\lengt,0) rectangle (\lengt,2\baselineskip);
\end{tikzpicture}
答案1
您可以使用以下方法获取图片文本的宽度\settowidth
\documentclass{beamer}
\usepackage{tikz}
\begin{document}
\begin{frame}
\newlength{\picwidth}
\settowidth{\picwidth}{\includegraphics[height=1.2\baselineskip,keepaspectratio]{pic.pdf}}
\begin{tikzpicture}[anchor=south east,inner sep = 0, outer sep = 0,overlay]
\node (pic) at (0,0) {\includegraphics[height=1.2\baselineskip,keepaspectratio]{pic.pdf}};
\draw [fill=blue] (-\picwidth,0) rectangle (\picwidth,2\baselineskip);
\end{tikzpicture}
\end{frame}
\end{document}