【问题标题】:Only PNG supports transparency, is that true?只有 PNG 支持透明度,是这样吗?
【发布时间】:2012-02-27 04:56:51
【问题描述】:

我发现JPG不支持透明度,alpha值总是255。我想知道只有png支持透明度吗?

【问题讨论】:

  • 支持透明度的格式有很多,只是 JPEG 不是其中之一......
  • TGA targa 我认为有 alpha 通道。图片格式和位深度非常复杂。 16 到 32 位的所有组合中的 rgba argb

标签: image image-processing png jpeg transparency


【解决方案1】:
  • png-32 支持不同级别的透明度。每个像素的不透明度可以在 0 到 255 之间,0 表示完全透明。

  • png-24 支持将一种颜色设置为完全透明。其他一切都是不透明的。

  • gif 使用调色板。您可以指定调色板中的一种颜色是完全透明的。

  • png-8 也使用调色板,但调色板中的每种颜色都有自己的不透明度值,因此它也支持不同级别的透明度。

  • jpg 不支持透明度。

【讨论】:

  • 这是不正确的。调色板 PNG-8 支持不同级别的透明度(请参阅pngquant)。 只有 Photoshop 和 GIMP 没有,因此您需要更好的工具(例如 Fireworks 或前面提到的 pngquant)。
  • 位图图像呢?
  • PNG-24 仅支持类似 GIF 的透明度(一种颜色被指定为透明颜色并且它是完全透明的)。 PNG-32 通过 alpha 通道支持不同级别的透明度,其中每个像素的不透明度可以在 0 到 255 之间。可能有一些应用程序错误地将 PNG32 文件称为“PNG-24”。
【解决方案2】:

JPEG 2000 支持完全透明。见JPEG 2000 Side channel spatial information

【讨论】:

  • JPEG2000 是一种新的文件格式,不是原始 JPEG 格式的扩展。
  • 不要与问题中讨论的 .JPG 文件格式相混淆。 JPEG 2000 是 .jp2
【解决方案3】:

JPEG XR(与 JPEG 2000 不同)也支持透明度。
但是,它对于网络来说不是一种有用的格式,因为只有 Internet Explorer 和 Edge 支持它。

WebP 是另一种支持透明度的新兴图像格式。
但是,Internet Explorer 缺乏对它的支持。

【讨论】:

    【解决方案4】:

    来自Transparency (graphic) - Wikipedia

    通过透明颜色或 Alpha 通道支持透明度的光栅文件格式包括 GIF、PNG、BMP、TIFF、TGAJPEG 2000

    【讨论】:

      猜你喜欢
      • 2011-06-08
      • 2011-03-17
      • 2013-04-11
      • 1970-01-01
      • 2012-03-29
      • 2018-07-15
      • 2012-05-29
      • 1970-01-01
      • 2011-09-10
      相关资源
      最近更新 更多