我想根据背景颜色自动改变文本的颜色。
我已经tikz
创建了背景(形状只是一个例子)但是欢迎使用任何其他方式。
\documentclass{beamer}
\usepackage{tikz}
\usetheme{Madrid}
\usebackgroundtemplate{%
\begin{tikzpicture}
\coordinate (A) at (0,0);
\coordinate (B) at (0,\paperheight);
\coordinate (C) at (\paperwidth,0);
\fill[blue] (A) -- (C) -- (B) -- cycle;
\end{tikzpicture}
}
\begin{document}
\begin{frame}
\frametitle{Example}
Could this text be automatically white on blue and blue on white?
\end{frame}
\end{document}
答案1
这个想法很简单:使用一些非平凡的混合模式。
你可能想要
- 调整颜色,使“蓝色”减去“黄色”等于“白色”
- 修改背景,使右下角看起来正确。
我使用 Mac 上的预览和 Adobe Reader 测试该文档。
\documentclass{beamer}
\usepackage{tikz}
\usetheme{Madrid}
\usebackgroundtemplate{
\begin{tikzpicture}
\coordinate (A) at (0,0);
\coordinate (B) at (0,\paperheight);
\coordinate (C) at (\paperwidth,0);;
\coordinate (D) at (\paperwidth,\paperheight);
\fill[blue] (A) -- (C) -- (B) -- cycle;
\fill[white](D) -- (C) -- (B) -- cycle;
\end{tikzpicture}
}
\begin{document}
\begin{frame}
\frametitle{Example}
\pgfsetblendmode{difference}
\color{yellow}Could this text be automatically white on blue and blue on white?
\end{frame}
\end{document}
编辑:
正如@Werner 所建议的,如果您不知道如何修复脚线,请添加以下行:
\addtobeamertemplate{footline}{\pgfsetblendmode{normal}}{}
如果您发现它们出乎意料,请更改footline
为其他内容。
另一方面,如果你认为这很棒,
\addtobeamertemplate{navigation symbols}{\pgfsetblendmode{difference}}{}