在图像上添加阴影

在图像上添加阴影

我正在做一个beamer演示,我想首先展示一张真实形式的图像:

如图

并在下一张幻灯片中将其一部分显示为阴影,如下所示:

图_w_阴影

有没有办法做到这一点?

答案1

这是一个非常强大的方法:

在此处输入图片描述

\documentclass{beamer}% http://ctan.org/pkg/beamer
\newsavebox{\myimage}
\savebox{\myimage}{\quad\fbox{\includegraphics[width=150pt]{tiger}}\quad}% Store image with padding
\begin{document}
\begin{frame}
  \frametitle{A frame title}
  \onslide<2>{%
    \smash{% Remove vertical height
      \rlap{% Right overLAP (zero-width, left-aligned)
        \color{black!30}% Background colour
          \rule[\dimexpr-\ht\myimage-\baselineskip]{\wd\myimage}{.5\ht\myimage}% Box
          }}}%
  \usebox{\myimage}
\end{frame}
\end{document}

这个想法是在图像(存储在一个框中)的背景中打印一个\rule[<depth>]{<width>}{<height>}特定颜色(= 30% 黑色)的块() ,该块的宽度( )和高度( )为零,并将其正确定位以仅突出显示您要查找的区域。填充用于(一侧或两侧)。\color{black!30}\myimage\rlap\smash\myimage\quad\hspace*{1em}

覆盖规范\onslide<.>仅在幻灯片 2 上打印块。您必须使用测量值,因为我没有您的图像/图表。

注意:这要求您的图像(或图表)是透明的,以便在没有绘制任何内容的地方可以看到块。


如果您想要反向操作,并在叠加层中使用一些透明度,那么以下方法可能就是您想要的。遵循类似的技术,只使用transparent包裹指定\transparent{<num>}所用颜色的透明度(0 = 完全透明;1 = 完全不透明):

在此处输入图片描述

\documentclass{beamer}% http://ctan.org/pkg/beamer
\usepackage{transparent}% http://ctan.org/pkg/transparent
\newsavebox{\myimage}
\savebox{\myimage}{\quad\fbox{\includegraphics[width=150pt]{tiger}}\quad}% Store image with padding
\begin{document}
\begin{frame}
  \frametitle{A frame title}
  \rlap{\usebox{\myimage}}%
  \onslide<2>{%
    \smash{% Remove vertical height
      \color{black}\transparent{0.8}% Overlay colour = black + 80% opaque
        \rule{\wd\myimage}{.5\ht\myimage}% Box
    }}%
\end{frame}
\end{document}

答案2

始终存在 tikz 解决方案。

您可以将图像放入 tikz 节点,然后使用节点锚点作为矩形封面的参考点。我定义了一个宏来简化重复使用。第一个参数是封面将出现的幻灯片,第二个参数是要覆盖的图像量(1 覆盖整个图像,0.5 仅覆盖下半部分,依此类推)。示例:

\documentclass{beamer}
\usepackage{tikz,graphicx}
\usetikzlibrary{calc}
\def\coverfig#1#2{
    \coordinate (zone) at ($(fig.south)!#2!(fig.north)$);
    \fill<#1>[black, opacity=0.3] (fig.south west) rectangle(fig.east|-zone);
}

\begin{document}
\begin{frame}
  \begin{center}
  \begin{tikzpicture}
    \node[inner sep=1em] (fig) {\includegraphics[width=0.6\linewidth]{tiger}};
    \coverfig{1}{.8}
    \coverfig{2}{.5}
    \coverfig{3}{.2}
  \end{tikzpicture}
\end{center}
\end{frame}
\end{document}

结果是:

动画片

相关内容