Table of Contents

Enum WebpChunkPosition

Namespace
Egami.Formats.Webp
Assembly
Egami.dll

Where a kept chunk sat in a WebP file, so it can be written back in the same place.

public enum WebpChunkPosition

Fields

AfterImageData = 1

After the image data.

BeforeImageData = 0

Before the image data (the VP8, VP8L or ALPH chunk, or the first ANMF chunk).

Examples

using Raster<Rgba8> image = Raster.Load<Rgba8>("duck.webp");
WebpDetails webp = (WebpDetails)image.Metadata.FormatDetails!;
Console.WriteLine($"{(webp.Lossless ? "lossless" : "lossy")}, extended: {webp.Extended}, alpha: {webp.HasAlpha}");

// Chunks Egami does not read are kept and written back where they were.
foreach (WebpChunk chunk in webp.OtherChunks)
{
    Console.WriteLine($"{chunk.Type}: {chunk.Data.Length} bytes, {chunk.Position}");
}

// An animation's frames say whether each was stored lossless.
foreach (Frame<Rgba8> frame in image.Frames)
{
    Console.WriteLine(frame.Metadata.FormatDetails is WebpFrameDetails { Lossless: true } ? "lossless frame" : "lossy frame");
}