Struct icns::IconFamily [] [src]

pub struct IconFamily {
    pub elements: Vec<IconElement>,
}

A set of icons stored in a single ICNS file.

Fields

The icon elements stored in the ICNS file.

Methods

impl IconFamily
[src]

[src]

Creates a new, empty icon family.

[src]

Returns true if the icon family contains no icons nor any other elements.

[src]

Encodes the image into the family, automatically choosing an appropriate icon type based on the dimensions of the image. Returns an error if there is no supported icon type matching the image dimensions.

[src]

Encodes the image into the family using the given icon type. If the selected type has an associated mask type, the image mask will also be added to the family. Returns an error if the image has the wrong dimensions for the selected type.

[src]

Returns a list of all (non-mask) icon types for which the icon family contains the necessary element(s) for a complete icon image (including alpha channel). These icon types can be passed to the get_icon_with_type method to decode the icons.

[src]

Determines whether the icon family contains a complete icon with the given type (including the mask, if the given icon type has an associated mask type).

[src]

Decodes an image from the family with the given icon type. If the selected type has an associated mask type, the two elements will decoded together into a single image. Returns an error if the element(s) for the selected type are not present in the icon family, or the if the encoded data is malformed.

[src]

Reads an icon family from an ICNS file.

[src]

Writes the icon family to an ICNS file.

[src]

Returns the encoded length of the file, in bytes, including the length of the header.