将图像另存为 24 位 png

将图像另存为 24 位 png

有没有办法将图像保存为 24 位 png?我没有用 GIMP 管理。请记住,这是像素艺术,因此保持准确的颜色很重要。

我在 GIMP 中尝试了几件事,但它总是这样说:

$ file Junction.png 
Junction.png: PNG image data, 160 x 60, 8-bit/color RGBA, non-interlaced

而不是 24 位。

答案1

您的问题是您不理解命令的输出file。我使用 Paint.NET 将图像保存为 32 位 PNG、24 位 PNG 和 8 位 PNG。然后我file对它们运行命令:

$ file *bit.png
08-bit.png: PNG image data, 800 x 600, 8-bit colormap, non-interlaced
24-bit.png: PNG image data, 800 x 600, 8-bit/color RGB, non-interlaced
32-bit.png: PNG image data, 800 x 600, 8-bit/color RGBA, non-interlaced

正如您所看到的,8-bit/color RGBAPaint.NET 实际上将其称为 32 位 PNG,因为它是每种颜色 8 位 *(3 种颜色 + 1 个 Alpha 通道)。 8 * 4 = 32。24 位 PNG 是相同的,但没有 Alpha 通道:8 * 3 = 24。

如果您想要 Paint.NET 所称的 24 位 PNG,则需要删除 Alpha 通道。据我所知,GIMP 总是导出带有 alpha 通道的 PNG,如果任何你的图层有一个 Alpha 通道。

如果您只使用 1 个图层,那么很简单:转到图层 > 透明度 > 删除 Alpha 通道,然后导出。您将获得 24 位 PNG。

如果您使用多个图层并且需要透明效果,那么杰蒂尔指出您可以在导出之前使用“图像”>“拼合图像”来删除具有透明度的图层。然后您可以撤消以恢复图层。

您还可以对导出的 PNG 进行后处理以删除 Alpha 通道。您可以将导出的图像加载回 GIMP,这将使其成为第 1 层,从该层中删除 Alpha 通道,然后再次导出。更好的方法是使用优化,除了删除无用的 Alpha 通道之外,它通常比 GIMP 更好地压缩 PNG。

答案2

笔记:如果您正在寻找每通道 16 位支持,那么此答案适用。否则,如果您不了解 24 位支持(8 位 * 3 种颜色 (RGB) = 24 位),请参阅@cjm 的回答至于如何理解它是如何工作的。


来自GIMP常见问题解答:

摘抄

我们什么时候可以看到每通道 16 位支持(或更好)?

对于某些行业,尤其​​是摄影行业,24 位颜色深度(每通道 8 位)是真正的进入障碍。 GEGL 再次助您一臂之力。将 GEGL 集成到 GIMP 中的工作是在 2.4 发布后开始的,并将跨越多个稳定版本。这项工作将在 GIMP 3.0 中完成,它将全面支持高位深度。如果您现在需要此类支持并且迫不及待,电影绘画克里塔现在支持每通道 16 位。

当前的开发分支 GIMP 2.9.x 支持比 2.8 和更旧的每组件 8 位更高的位深度...

如果你不熟悉GEGL:

摘抄

GEGL(通用图形库)是一个基于图形的图像处理框架。

GEGL 提供基础设施,可在大于 RAM 缓冲区的情况下进行基于需求的缓存非破坏性图像编辑。通过 babl,它为输入和输出提供了对各种颜色模型和像素存储格式的支持。

特征

  • 浮点处理以及更大的8位、16位整数和32位浮点的处理和输出
  • ....

答案3

Image->Flatten
File->Export
Edit->Undo
~/Documents$ file Untitled.png 
Untitled.png: PNG image data, 640 x 400, 8-bit/color RGB, non-interlaced

相关内容