有没有办法将图像保存为 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 RGBA
Paint.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