Linux-Mint

將圖像另存為 24 位 png

  • November 24, 2013

有沒有辦法將圖像保存為 24 位 png?我沒有用 GIMP 管理。請記住,這是像素藝術,因此保持準確的顏色很重要。

我在 GIMP 中嘗試了幾件事,但它總是這樣說:

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

而不是 24 位。

你的問題是你不理解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 通道。據我所知,如果您的任何圖層具有 Alpha 通道,GIMP 總是會導出帶有 Alpha 通道的 PNG 。

如果您只使用 1 層,那麼它很簡單:轉到圖層 > 透明度 > 刪除 Alpha 通道,然後導出。您將獲得 24 位 PNG。

如果您正在使用多個圖層並且需要透明效果,那麼jthill指出您可以使用 Image > Flatten Image 在導出之前刪除具有透明度的圖層。然後您可以撤消以恢復圖層。

您還可以對導出的 PNG 進行後處理以刪除 Alpha 通道。您可以將導出的圖像載入回 GIMP,這將使其成為 1 層,從該層中刪除 Alpha 通道,然後再次導出。更好的方法是使用optipng,它通常會比 GIMP 更好地壓縮 PNG,此外還可以刪除無用的 alpha 通道。

引用自:https://unix.stackexchange.com/questions/102314