不可见的PNG图像层,仅作为背景可见

Modified on: Sun, 18 Nov 2018 10:00:03 +0800

我最近遇到了一个非常奇特的图像,具有奇怪的属性。图像是PNG格式,只显示一个透明背景的简单鸟。我的朋友给我发送了简单说明的图像,只是为了保存它并将其设置为我的背景。

将图像设置为背景后,第二张图像显示实际上海鸥站在武器上:

这首先使我对图像的本质以及如何制作这样的图像非常好奇。我在Photoshop中打开了图像并且没有任何异常出现 - 图像仍然与透明海鸥相同,没有隐藏的图层或蒙版使其不可见。在Photoshop中检查图像后,我原以为Windows在将其设置为桌面背景时对文件进行了更改 - 导航到%AppData%\Microsoft\Windows\Themes后,图像看起来是相同的

与在Photoshop中查看或编辑相比,为什么此图像在设置为Windows桌面背景时会显示单独的隐藏图层或完全独立的图像?

直接链接到图片。

最佳答案

我猜这就是所谓的“Dirty Transparency”这个文章

基本上透明PNG中的任何颜色都可以用RGBA值来描述,其中RGB代表红色,绿色和蓝色通道,A代表Alpha。 “不可见”颜色可以包含任何RGB值+ 0 Alpha,这意味着颜色将保留原始信息,但渲染为透明,因为其alpha设置为0。

为什么要在使用Alpha时存储RGB值?因此,您可以获得平滑的边缘和透明的颜色 - 与透明背景GIF中的锯齿边缘不同。 PNG中的透明度可以从0到255,在GIF中它是100%透明或不透明的。为了渲染某些东西,比如50%的透明度,你仍然需要知道RGB值,因此存储了值。大多数图像编辑软件在保存完全透明的颜色时会丢弃该RGB信息,包括Photoshop。

我不能代表CC版本,但要看旧版Photoshop中的“隐形”颜色,你需要一个插件。选择一个:PhotofreebiesSuperPNG。 SuperPNG看起来更近,而且不那么杂乱。

为什么这个伎俩有效?壁纸必须是不透明的,因为它们没有“背后”显示出来,对吧?我的猜测是Windows丢弃Alpha通道信息,显示过程中隐藏的RGB值。

作者:Dave,Nihal

相关问答

添加新评论