7

我想让一些文本显示为半透明,但不是以覆盖方式(最终变为实心)只是永久半透明。使事情复杂化的是,有问题的文本是 a 的一部分matrix

$
\begin{matrix}
          & \{-2,3,5,0,8\} & \\
    \{-2,3,5,0\} & & \{-2,3,5,8\} \\
          & \{-2,3,5\} &
\end{matrix}
$

我希望矩阵中的第三行是半透明的。有没有办法做到这一点?

4

3 回答 3

15

编辑:通过将解决方案变成带有可选参数的命令来改进解决方案。

好的,发现了如何做到这一点:

\newcommand{\semitransp}[2][35]{\textcolor{fg!#1}{#2}}

...

$
\begin{matrix}
       & \{-2,3,5,0,8\} & \\
    \{-2,3,5,0\} & & \{-2,3,5,8\} \\
      & \semitransp{\{-2,3,5\}} &
\end{matrix}
$

可选参数控制透明度。所以\semitransp[20]{text}更轻,\semitransp[60]{text}更重。默认值 35 在我的电脑屏幕上看起来不错。它在墙上的投影效果如何还有待观察。

于 2010-08-29T11:02:46.653 回答
4

Ari 的答案可能对他有用(以及在 2010 年),但给定的命令将使所有后续文本透明,而不仅仅是给定文本。

仅使给定文本透明的改进解决方案:

\newcommand{\semitransp}[2][35]{\textcolor{fg!#1}{#2}}
% Swap \color with \textcolor and add another curly brackets pair.

...

$
\begin{matrix}
   & \{-2,3,5,0,8\} & \\
\{-2,3,5,0\} & & \{-2,3,5,8\} \\
  & \semitransp{\{-2,3,5\}} &
\end{matrix}
$
于 2019-01-07T06:10:53.353 回答
4

要获得真正的半透明,可以使用\pgfsetfillopacity. 与通过将前景色与背景混合来伪造不透明度相比的优势在于,如果有背景图像或其他一些彩色元素,这也将起作用。

\documentclass{beamer}

\begin{document}

\begin{frame}
$
\begin{matrix}
          & \{-2,3,5,0,8\} & \\
    \{-2,3,5,0\} & & \{-2,3,5,8\} \\
          & {\pgfsetfillopacity{0.2}\{-2,3,5\}} &
\end{matrix}
$

\end{frame} 


\setbeamertemplate{background canvas}{\includegraphics[width=\paperwidth]{example-grid-100x100bp}}


\begin{frame}
$
\begin{matrix}
          & \{-2,3,5,0,8\} & \\
    \{-2,3,5,0\} & & \{-2,3,5,8\} \\
          & {\pgfsetfillopacity{0.2}\{-2,3,5\}} &
\end{matrix}
$

\end{frame}     

\end{document}
于 2019-02-27T10:19:23.463 回答