ImageAttributes Klasse

Definition

Enthält Informationen darüber, wie Bitmap- und Metadateifarben während des Renderns bearbeitet werden.

public ref class ImageAttributes sealed : ICloneable, IDisposable
public sealed class ImageAttributes : ICloneable, IDisposable
type ImageAttributes = class
    interface ICloneable
    interface IDisposable
Public NotInheritable Class ImageAttributes
Implements ICloneable, IDisposable
Vererbung
ImageAttributes
Implementiert

Beispiele

Im folgenden Beispiel wird ein Bild verwendet, das alle eine Farbe (0,2, 0,0, 0,4, 1,0) aufweist und die rote Komponente 0,2 zur roten, grünen und blauen Komponente hinzufügt.

In der folgenden Abbildung wird links das Originalbild und rechts das transformierte Bild gezeigt.

Farben

Der Code im Beispiel verwendet die folgenden Schritte, um die Neufarbe auszuführen:

  1. Initialisieren eines ColorMatrix-Objekts.

  2. Erstellen eines ImageAttributes-Objekts und Übergeben des ColorMatrix-Objekts an die SetColorMatrix-Methode des ImageAttributes-Objekts.

  3. Übergeben des ImageAttributes-Objekts an die DrawImage-Methode eines Graphics-Objekts.

Image image = new Bitmap("InputColor.bmp");
ImageAttributes imageAttributes = new ImageAttributes();
int width = image.Width;
int height = image.Height;

float[][] colorMatrixElements = { 
   new float[] {2,  0,  0,  0, 0},        // red scaling factor of 2
   new float[] {0,  1,  0,  0, 0},        // green scaling factor of 1
   new float[] {0,  0,  1,  0, 0},        // blue scaling factor of 1
   new float[] {0,  0,  0,  1, 0},        // alpha scaling factor of 1
   new float[] {.2f, .2f, .2f, 0, 1}};    // three translations of 0.2

ColorMatrix colorMatrix = new ColorMatrix(colorMatrixElements);

imageAttributes.SetColorMatrix(
   colorMatrix,
   ColorMatrixFlag.Default,
   ColorAdjustType.Bitmap);

e.Graphics.DrawImage(image, 10, 10);

e.Graphics.DrawImage(
   image,
   new Rectangle(120, 10, width, height),  // destination rectangle 
   0, 0,        // upper-left corner of source rectangle 
   width,       // width of source rectangle
   height,      // height of source rectangle
   GraphicsUnit.Pixel,
   imageAttributes);
Dim image As New Bitmap("InputColor.bmp")
Dim imageAttributes As New ImageAttributes()
Dim width As Integer = image.Width
Dim height As Integer = image.Height

' The following matrix consists of the following transformations:
' red scaling factor of 2
' green scaling factor of 1
' blue scaling factor of 1
' alpha scaling factor of 1
' three translations of 0.2
Dim colorMatrixElements As Single()() = { _
   New Single() {2, 0, 0, 0, 0}, _
   New Single() {0, 1, 0, 0, 0}, _
   New Single() {0, 0, 1, 0, 0}, _
   New Single() {0, 0, 0, 1, 0}, _
   New Single() {0.2F, 0.2F, 0.2F, 0, 1}}

Dim colorMatrix As New ColorMatrix(colorMatrixElements)

imageAttributes.SetColorMatrix(colorMatrix, ColorMatrixFlag.Default, ColorAdjustType.Bitmap)

e.Graphics.DrawImage(image, 10, 10)

e.Graphics.DrawImage( _
   image, _
   New Rectangle(120, 10, width, height), _
   0, _
   0, _
   width, _
   height, _
   GraphicsUnit.Pixel, _
   imageAttributes)

Hinweise

Ein ImageAttributes Objekt verwaltet mehrere Farbanpassungseinstellungen, einschließlich Farbanpassungsmatrizen, Graustufenanpassungsmatrizen, Gammakorrekturwerte, Farbzuordnungstabellen und Farbschwellenwerte. Während des Renderns können Farben korrigiert, abgedunkelt, aufgehellt und entfernt werden. Um solche Manipulationen anzuwenden, initialisieren Sie ein ImageAttributes Objekt, und übergeben Sie den Pfad dieses ImageAttributes Objekts (zusammen mit dem Pfad eines Image) an die DrawImage Methode.

Hinweis

In .NET 6 und höher wird das System.Drawing.Common-Paket,das diesen Typ enthält, nur auf Windows Betriebssystemen unterstützt. Die Verwendung dieses Typs in plattformübergreifenden Apps verursacht Warnungen zur Kompilierzeit und Laufzeitausnahmen. Weitere Informationen finden Sie unter System.Drawing.Common wird nur für Windows unterstützt.

Konstruktoren

ImageAttributes()

Initialisiert eine neue Instanz der ImageAttributes-Klasse.

Methoden

ClearBrushRemapTable()

Löscht die Pinsel-Farbumwandlungstabelle dieses ImageAttributes-Objekts.

ClearColorKey()

Löscht den Colorkey (Transparenzbereich) für die Standardkategorie.

ClearColorKey(ColorAdjustType)

Löscht den Colorkey (Transparenzbereich) für eine angegebene Kategorie.

ClearColorMatrix()

Löscht die Farbanpassungsmatrix für die Standardkategorie.

ClearColorMatrix(ColorAdjustType)

Löscht die Farbanpassungsmatrix für eine angegebene Kategorie.

ClearGamma()

Deaktiviert die Gammakorrektur für die Standardkategorie.

ClearGamma(ColorAdjustType)

Deaktiviert die Gammakorrektur für eine angegebene Kategorie.

ClearNoOp()

Löscht die NoOp-Einstellung für die Standardkategorie.

ClearNoOp(ColorAdjustType)

Löscht die NoOp-Einstellung für eine angegebene Kategorie.

ClearOutputChannel()

Löscht die CMYK-Ausgabekanaleinstellung für die Standardkategorie.

ClearOutputChannel(ColorAdjustType)

Löscht die CMYK-Ausgabekanaleinstellung für eine angegebene Kategorie.

ClearOutputChannelColorProfile()

Löscht die Einstellung des Ausgabekanal-Farbprofils für die Standardkategorie.

ClearOutputChannelColorProfile(ColorAdjustType)

Löscht die Einstellung des Ausgabekanal-Farbprofils für eine angegebene Kategorie.

ClearRemapTable()

Löscht die Farbumwandlungstabelle für die Standardkategorie.

ClearRemapTable(ColorAdjustType)

Löscht die Farbumwandlungstabelle für eine angegebene Kategorie.

ClearThreshold()

Löscht den Schwellenwert für die Standardkategorie.

ClearThreshold(ColorAdjustType)

Löscht den Schwellenwert für eine angegebene Kategorie.

Clone()

Erstellt eine genaue Kopie dieses ImageAttributes-Objekts.

Dispose()

Gibt alle von diesem ImageAttributes-Objekt verwendeten Ressourcen frei.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
Finalize()

Gibt einem Objekt Gelegenheit zu dem Versuch, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird.

GetAdjustedPalette(ColorPalette, ColorAdjustType)

Passt die Farben in einer Palette entsprechend den Anpassungseinstellungen einer angegebenen Kategorie an.

GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
SetBrushRemapTable(ColorMap[])

Legt die Farbumwandlungstabelle für die Pinselkategorie fest.

SetColorKey(Color, Color)

Legt den Colorkey für die Standardkategorie fest.

SetColorKey(Color, Color, ColorAdjustType)

Legt den Colorkey (Transparenzbereich) für eine angegebene Kategorie fest.

SetColorMatrices(ColorMatrix, ColorMatrix)

Legt die Farbanpassungsmatrix und die Anpassungsmatrix für Graustufenwerte für die Standardkategorie fest.

SetColorMatrices(ColorMatrix, ColorMatrix, ColorMatrixFlag)

Legt die Farbanpassungsmatrix und die Anpassungsmatrix für Graustufenwerte für die Standardkategorie fest.

SetColorMatrices(ColorMatrix, ColorMatrix, ColorMatrixFlag, ColorAdjustType)

Legt die Farbanpassungsmatrix und die Anpassungsmatrix für Graustufenwerte für eine angegebene Kategorie fest.

SetColorMatrix(ColorMatrix)

Legt die Farbanpassungsmatrix für die Standardkategorie fest.

SetColorMatrix(ColorMatrix, ColorMatrixFlag)

Legt die Farbanpassungsmatrix für die Standardkategorie fest.

SetColorMatrix(ColorMatrix, ColorMatrixFlag, ColorAdjustType)

Legt die Farbanpassungsmatrix für eine angegebene Kategorie fest.

SetGamma(Single)

Legt den Gammawert für die Standardkategorie fest.

SetGamma(Single, ColorAdjustType)

Legt den Gammawert für eine angegebene Kategorie fest.

SetNoOp()

Deaktiviert die Farbanpassung für die Standardkategorie. Durch Aufruf der ClearNoOp-Methode können Sie die vor dem Aufruf der SetNoOp-Methode gültigen Farbanpassungseinstellungen erneut aktivieren.

SetNoOp(ColorAdjustType)

Deaktiviert die Farbanpassung für eine angegebene Kategorie. Durch Aufruf der ClearNoOp-Methode können Sie die vor dem Aufruf der SetNoOp-Methode gültigen Farbanpassungseinstellungen erneut aktivieren.

SetOutputChannel(ColorChannelFlag)

Legt den CMYK-Ausgabekanal für die Standardkategorie fest.

SetOutputChannel(ColorChannelFlag, ColorAdjustType)

Legt den CMYK-Ausgabekanal für eine angegebene Kategorie fest.

SetOutputChannelColorProfile(String)

Legt die Ausgabekanal-Farbprofildatei für die Standardkategorie fest.

SetOutputChannelColorProfile(String, ColorAdjustType)

Legt die Ausgabekanal-Farbprofildatei für eine angegebene Kategorie fest.

SetRemapTable(ColorMap[])

Legt die Farbumwandlungstabelle für die Standardkategorie fest.

SetRemapTable(ColorMap[], ColorAdjustType)

Legt die Farbumwandlungstabelle für eine angegebene Kategorie fest.

SetThreshold(Single)

Legt den Schwellenwert (Transparenzbereich) für die Standardkategorie fest.

SetThreshold(Single, ColorAdjustType)

Legt den Schwellenwert (Transparenzbereich) für eine angegebene Kategorie fest.

SetWrapMode(WrapMode)

Legt den Umbruchmodus fest, mit dem bestimmt wird, wie eine Struktur in einer Form oder an den Begrenzungen der Form gekachelt werden soll. Wenn eine Struktur kleiner als eine Form ist, wird sie in der Form gekachelt, um sie auszufüllen.

SetWrapMode(WrapMode, Color)

Legt den Umbruchmodus und die Farbe fest, mit denen festgelegt wird, wie eine Struktur in einer Form oder an den Begrenzungen der Form gekachelt werden soll. Wenn eine Struktur kleiner als eine Form ist, wird sie in der Form gekachelt, um sie auszufüllen.

SetWrapMode(WrapMode, Color, Boolean)

Legt den Umbruchmodus und die Farbe fest, mit denen festgelegt wird, wie eine Struktur in einer Form oder an den Begrenzungen der Form gekachelt werden soll. Wenn eine Struktur kleiner als eine Form ist, wird sie in der Form gekachelt, um sie auszufüllen.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für

Siehe auch