Ανάγνωση στα Αγγλικά Επεξεργασία

Κοινή χρήση μέσω


BitmapEncoder.Palette Property

Definition

Gets or sets a value that represents the BitmapPalette of an encoded bitmap.

public virtual System.Windows.Media.Imaging.BitmapPalette Palette { get; set; }

Property Value

An instance of BitmapPalette.

Exceptions

The BitmapPalette value that is passed to the encoder is null.

Examples

The following example demonstrates how to apply a custom palette to a Tagged Image File Format (TIFF) image and subsequently encode it.

int width = 128;
int height = width;
int stride = width/8;
byte[] pixels = new byte[height*stride];

// Try creating a new image with a custom palette.
List<System.Windows.Media.Color> colors = new List<System.Windows.Media.Color>();
colors.Add(System.Windows.Media.Colors.Red);
colors.Add(System.Windows.Media.Colors.Blue);
colors.Add(System.Windows.Media.Colors.Green);
BitmapPalette myPalette = new BitmapPalette(colors);

// Creates a new empty image with the pre-defined palette

BitmapSource image = BitmapSource.Create(
    width,
    height,
    96,
    96,
    PixelFormats.Indexed1,
    myPalette, 
    pixels, 
    stride);

FileStream stream = new FileStream("empty.tif", FileMode.Create);
TiffBitmapEncoder encoder = new TiffBitmapEncoder();
TextBlock myTextBlock = new TextBlock();
myTextBlock.Text = "Codec Author is: " + encoder.CodecInfo.Author.ToString();
encoder.Frames.Add(BitmapFrame.Create(image));
MessageBox.Show(myPalette.Colors.Count.ToString());
encoder.Save(stream);

Remarks

Only Tagged Image File Format (TIFF) and Graphics Interchange Format (GIF) images (and some older, non-standard bitmap (BMP) images) support palettes.

Applies to

Προϊόν Εκδόσεις
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

See also