PixelFormat Structure


The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Defines a pixel format for images and pixel-based surfaces.

Namespace:   System.Windows.Media
Assembly:  PresentationCore (in PresentationCore.dll)

public struct PixelFormat : IEquatable<PixelFormat>


Gets the number of bits-per-pixel (bpp) for this PixelFormat.


Gets a collection of bit masks associated with the PixelFormat.


Determines whether the specified object is equal to the current object. (Overrides ValueType.Equals(Object).)


Determines whether the pixel format equals the given PixelFormat.

System_CAPS_pubmethodSystem_CAPS_staticEquals(PixelFormat, PixelFormat)

Determines whether the specified PixelFormat instances are considered equal.


Creates a hash code from this pixel format's Masks value.(Overrides ValueType.GetHashCode().)


Gets the Type of the current instance.(Inherited from Object.)


Creates a string representation of this PixelFormat.(Overrides ValueType.ToString().)

System_CAPS_puboperatorSystem_CAPS_staticEquality(PixelFormat, PixelFormat)

Compares two PixelFormat instances for equality.

System_CAPS_puboperatorSystem_CAPS_staticInequality(PixelFormat, PixelFormat)

Compares two PixelFormat instances for inequality.

<object property="pixelFormat"/>


One of the predefined pixel formats defined by the PixelFormats class.

The following example shows how to create a PixelFormat and find the value of its properties.

public PixelFormat createPixelFormat()
    // Create a PixelFormat object.
    PixelFormat myPixelFormat = new PixelFormat();

    // Make this PixelFormat a Gray32Float pixel format.
    myPixelFormat = PixelFormats.Gray32Float;

    // Get the number of bits-per-pixel for this format. Because
    // the format is "Gray32Float", the float value returned will be 32.
    int bpp = myPixelFormat.BitsPerPixel;

    // Get the collection of masks associated with this format.
    IList<PixelFormatChannelMask> myChannelMaskCollection = myPixelFormat.Masks;

    // Capture the mask info in a string.
    String stringOfValues = " ";
    foreach (PixelFormatChannelMask myMask in myChannelMaskCollection)
        IList<byte> myBytesCollection = myMask.Mask;
        foreach (byte myByte in myBytesCollection)
            stringOfValues = stringOfValues + myByte.ToString();

    // Return the PixelFormat which, for example, could be 
    // used to set the pixel format of a bitmap by using it to set
    // the DestinationFormat of a FormatConvertedBitmap.
    return myPixelFormat;

.NET Framework
Available since 3.0

Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top