HasBackgroundColor

PngImage.HasBackgroundColor property

Ruft einen Wert ab, der angibt, ob eine Hintergrundfarbe vorhanden ist.

public override bool HasBackgroundColor { get; set; }

Beispiele

Das folgende Beispiel zeigt, wie Sie vollständig transparente Farben für einen Teil eines TrueColor-PNG-Bilds festlegen, das keinen Alphakanal unterstützt.

[C#]

Aspose.Imaging.ImageOptions.PngOptions createOptions = new Aspose.Imaging.ImageOptions.PngOptions();
createOptions.Source = new Aspose.Imaging.Sources.FileCreateSource("c:\\temp\\transparent.png", false);
createOptions.ColorType = Aspose.Imaging.FileFormats.Png.PngColorType.Truecolor;

// Erstellen Sie ein TrueColor-PNG-Bild mit 100 x 100 Pixel.
using (Aspose.Imaging.Image image = Image.Create(createOptions, 100, 100))
{
    Aspose.Imaging.FileFormats.Png.PngImage pngImage = (Aspose.Imaging.FileFormats.Png.PngImage)image;
    Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(pngImage);

    // Alle roten Pixel werden als vollständig transparent betrachtet.
    pngImage.TransparentColor = Aspose.Imaging.Color.Red;
    pngImage.HasTransparentColor = true;

    // Alle transparenten Pixel haben eine Hintergrundfarbe.
    pngImage.BackgroundColor = Aspose.Imaging.Color.Green;
    pngImage.HasBackgroundColor = true;

    // Das gesamte Bild mit weißer Farbe füllen.
    gr.FillRectangle(new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.White), pngImage.Bounds);

    // Füllen Sie das obere linke Viertel des Bildes mit der transparenten Farbe.
    // Dadurch wird das obere linke Viertel in der Hintergrundfarbe eingefärbt.
    Rectangle rect = new Rectangle(0, 0, pngImage.Width / 2, pngImage.Height / 2);
    gr.FillRectangle(new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red), rect);

    pngImage.Save();
}

Siehe auch