Table of Contents

Class IcnsDetails

Namespace
Egami.Formats.Icns
Assembly
Egami.dll

Details only ICNS has, kept in FormatDetails.

public sealed class IcnsDetails : FormatDetails
Inheritance
IcnsDetails
Inherited Members

Examples

// Probe reads only the elements: how many images an icon family holds, without decoding a pixel.
RasterInfo info = Raster.Probe("app.icns");
Console.WriteLine($"{info.ImageCount} entries; Load gives {info.Width}×{info.Height}");
using Raster best = Raster.Load("app.icns");
foreach (IcnsEntry entry in ((IcnsDetails)best.Metadata.FormatDetails!).Entries)
{
    Console.WriteLine($"{entry.Type}: {entry.Width}×{entry.Height}, {entry.BitsPerPixel} bits, {entry.Encoding}");
}

Properties

BitsPerPixel

Gets or sets the entry's bits a pixel, as BitsPerPixel.

public int BitsPerPixel { get; set; }

Property Value

int

Encoding

Gets or sets how the entry was stored.

public IcnsEntryEncoding Encoding { get; set; }

Property Value

IcnsEntryEncoding

Entries

Gets or sets every image entry of the file, so the sizes are known without decoding them. Masks are not listed.

public IReadOnlyList<IcnsEntry> Entries { get; set; }

Property Value

IReadOnlyList<IcnsEntry>

Index

Gets or sets the entry's index in Entries.

public int Index { get; set; }

Property Value

int

Type

Gets or sets the entry's four-character type.

public string Type { get; set; }

Property Value

string

Methods

Copy()

Returns a deep copy.

public override FormatDetails Copy()

Returns

FormatDetails

The copy.