ColorMatrix Konstruktoren
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Initialisiert eine neue Instanz der ColorMatrix-Klasse.
Überlädt
ColorMatrix() |
Initialisiert eine neue Instanz der ColorMatrix-Klasse. |
ColorMatrix(ReadOnlySpan<Single>) | |
ColorMatrix(Single[][]) |
Initialisiert eine neue Instanz der ColorMatrix-Klasse mit den Elementen der angegebenen Matrix |
ColorMatrix()
- Quelle:
- ColorMatrix.cs
- Quelle:
- ColorMatrix.cs
- Quelle:
- ColorMatrix.cs
Initialisiert eine neue Instanz der ColorMatrix-Klasse.
public:
ColorMatrix();
public ColorMatrix ();
Public Sub New ()
Gilt für:
ColorMatrix(ReadOnlySpan<Single>)
- Quelle:
- ColorMatrix.cs
public:
ColorMatrix(ReadOnlySpan<float> newColorMatrix);
public ColorMatrix (ReadOnlySpan<float> newColorMatrix);
new System.Drawing.Imaging.ColorMatrix : ReadOnlySpan<single> -> System.Drawing.Imaging.ColorMatrix
Public Sub New (newColorMatrix As ReadOnlySpan(Of Single))
Parameter
- newColorMatrix
- ReadOnlySpan<Single>
Gilt für:
ColorMatrix(Single[][])
- Quelle:
- ColorMatrix.cs
- Quelle:
- ColorMatrix.cs
- Quelle:
- ColorMatrix.cs
Wichtig
Diese API ist nicht CLS-kompatibel.
Initialisiert eine neue Instanz der ColorMatrix-Klasse mit den Elementen der angegebenen Matrix newColorMatrix
.
public:
ColorMatrix(cli::array <cli::array <float> ^> ^ newColorMatrix);
[System.CLSCompliant(false)]
public ColorMatrix (float[][] newColorMatrix);
[<System.CLSCompliant(false)>]
new System.Drawing.Imaging.ColorMatrix : single[][] -> System.Drawing.Imaging.ColorMatrix
Public Sub New (newColorMatrix As Single()())
Parameter
- newColorMatrix
- Single[][]
Die Werte der Elemente des neuen ColorMatrix-Objekts.
- Attribute
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie eine ColorMatrixerstellt und verwendet wird. Fügen Sie zum Ausführen dieses Beispiels den Code in eine Windows Form ein, und rufen Sie RotateColors
von der Ereignisbehandlungsmethode des Formulars Paint auf, die als PaintEventArgsübergeben e
wird.
private void RotateColors(PaintEventArgs e)
{
Bitmap image = new Bitmap("RotationInput.bmp");
ImageAttributes imageAttributes = new ImageAttributes();
int width = image.Width;
int height = image.Height;
float degrees = 60f;
double r = degrees * System.Math.PI / 180; // degrees to radians
float[][] colorMatrixElements = {
new float[] {(float)System.Math.Cos(r), (float)System.Math.Sin(r), 0, 0, 0},
new float[] {(float)-System.Math.Sin(r), (float)-System.Math.Cos(r), 0, 0, 0},
new float[] {0, 0, 2, 0, 0},
new float[] {0, 0, 0, 1, 0},
new float[] {0, 0, 0, 0, 1}};
ColorMatrix colorMatrix = new ColorMatrix(colorMatrixElements);
imageAttributes.SetColorMatrix(
colorMatrix,
ColorMatrixFlag.Default,
ColorAdjustType.Bitmap);
e.Graphics.DrawImage(image, 10, 10, width, height);
e.Graphics.DrawImage(
image,
new Rectangle(150, 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);
}
Private Sub RotateColors(ByVal e As PaintEventArgs)
Dim image As Bitmap = New Bitmap("RotationInput.bmp")
Dim imageAttributes As New ImageAttributes()
Dim width As Integer = image.Width
Dim height As Integer = image.Height
Dim degrees As Single = 60.0F
Dim r As Double = degrees * System.Math.PI / 180 ' degrees to radians
Dim colorMatrixElements As Single()() = { _
New Single() {CSng(System.Math.Cos(r)), _
CSng(System.Math.Sin(r)), 0, 0, 0}, _
New Single() {CSng(-System.Math.Sin(r)), _
CSng(-System.Math.Cos(r)), 0, 0, 0}, _
New Single() {0, 0, 2, 0, 0}, _
New Single() {0, 0, 0, 1, 0}, _
New Single() {0, 0, 0, 0, 1}}
Dim colorMatrix As New ColorMatrix(colorMatrixElements)
imageAttributes.SetColorMatrix( _
colorMatrix, _
ColorMatrixFlag.Default, _
ColorAdjustType.Bitmap)
e.Graphics.DrawImage(image, 10, 10, width, height)
' Pass in the destination rectangle (2nd argument), the upper-left corner
' (3rd and 4th arguments), width (5th argument), and height (6th
' argument) of the source rectangle.
e.Graphics.DrawImage( _
image, _
New Rectangle(150, 10, width, height), _
0, 0, _
width, _
height, _
GraphicsUnit.Pixel, _
imageAttributes)
End Sub