所谓的幻影坦克是一类图片,在预览和点开的时候显示不一样的图

它们是通过 PNG 格式的 Alpha 通道实现的

令一个像素点在亮背景下显示颜色 $\vec{A}$,在暗背景下显示颜色 $\vec{B}$ 设能达成效果的颜色为 $[\vec{X},\alpha]$

可列出方程组 $$ \begin{aligned} \vec{A}&=\frac{\alpha}{255}\vec{X}+\frac{255-\alpha}{255}[255,255,255]\\ \vec{B}&=\frac{\alpha}{255}\vec{X} \end{aligned} $$ 可得 $$ \vec{A}-\vec{B}=\frac{255-\alpha}{255}[255,255,255] $$ 当 $\vec{A}-\vec{B}$ 三个分量都相等时方程才有解,所以幻影坦克一般都是灰度图 得 $$ \begin{aligned} \alpha&=255-A+B\\ \vec{X}&=\frac{255}{255-A+B}\vec{B} \end{aligned} $$

可以看到,为了让值得范围保持在 $[0,255]$ 内,A图偏亮,B图偏暗