ImageAttributes Klasa

Definicja

Zawiera informacje o sposobie manipulowania kolorami mapy bitowej i metapliku podczas renderowania.

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
Dziedziczenie
ImageAttributes
Implementuje

Przykłady

Poniższy przykład przyjmuje obraz, który jest jednym kolorem (0.2, 0.0, 0.4, 1.0) i podwaja czerwony składnik dodaje 0,2 do czerwonych, zielonych i niebieskich składników.

Poniższa ilustracja przedstawia oryginalny obraz po lewej stronie i przekształcony obraz po prawej stronie.

Kolory kolorów

Kod w przykładzie używa następujących kroków, aby wykonać ponowne kolorowanie:

  1. Inicjowanie ColorMatrix obiektu.

  2. ImageAttributes Twórca obiekt i przekaż ColorMatrix obiekt do SetColorMatrix metody ImageAttributes obiektu.

  3. ImageAttributes Przekaż obiekt do DrawImage metody Graphics obiektu.

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)

Uwagi

Obiekt ImageAttributes utrzymuje kilka ustawień korekty kolorów, w tym macierze do korekty kolorów, macierze korekty szarości, wartości korekty gamma, tabele mapy kolorów i wartości progowe koloru. Podczas renderowania kolory można poprawić, zaciemnić, rozjaśnić i usunąć. Aby zastosować takie manipulacje, zainicjuj ImageAttributes obiekt i przekaż ścieżkę tego ImageAttributes obiektu (wraz ze ścieżką elementu Image) do DrawImage metody .

Uwaga

W programach .NET 6 i nowszych pakiet System.Drawing.Common, który zawiera ten typ, jest obsługiwany tylko w systemach operacyjnych Windows. Użycie tego typu w aplikacjach międzyplatformowych powoduje ostrzeżenia w czasie kompilacji i wyjątki czasu wykonywania. Aby uzyskać więcej informacji, zobacz System.Drawing.Common only supported on Windows (Obsługiwane tylko w systemie Windows).

Konstruktory

ImageAttributes()

Inicjuje nowe wystąpienie klasy ImageAttributes.

Metody

ClearBrushRemapTable()

Czyści tabelę kolorową pędzla tego ImageAttributes obiektu.

ClearColorKey()

Czyści klucz koloru (zakres przezroczystości) dla kategorii domyślnej.

ClearColorKey(ColorAdjustType)

Czyści klucz koloru (zakres przezroczystości) dla określonej kategorii.

ClearColorMatrix()

Czyści macierz korekty kolorów dla kategorii domyślnej.

ClearColorMatrix(ColorAdjustType)

Czyści macierz korekty kolorów dla określonej kategorii.

ClearGamma()

Wyłącza korektę gamma dla kategorii domyślnej.

ClearGamma(ColorAdjustType)

Wyłącza korektę gamma dla określonej kategorii.

ClearNoOp()

Czyści NoOp ustawienie dla kategorii domyślnej.

ClearNoOp(ColorAdjustType)

Czyści NoOp ustawienie dla określonej kategorii.

ClearOutputChannel()

Czyści ustawienie kanału wyjściowego CMYK (cyan-magenta-yellow-black) dla kategorii domyślnej.

ClearOutputChannel(ColorAdjustType)

Czyści ustawienie kanału wyjściowego (cyan-magenta-yellow-black) dla określonej kategorii.

ClearOutputChannelColorProfile()

Czyści ustawienie profilu koloru kanału wyjściowego dla kategorii domyślnej.

ClearOutputChannelColorProfile(ColorAdjustType)

Czyści ustawienie profilu koloru kanału wyjściowego dla określonej kategorii.

ClearRemapTable()

Czyści tabelę color-remap dla kategorii domyślnej.

ClearRemapTable(ColorAdjustType)

Czyści tabelę color-remap dla określonej kategorii.

ClearThreshold()

Czyści wartość progową dla kategorii domyślnej.

ClearThreshold(ColorAdjustType)

Czyści wartość progową dla określonej kategorii.

Clone()

Tworzy dokładną kopię tego ImageAttributes obiektu.

Dispose()

Zwalnia wszystkie zasoby używane przez ten ImageAttributes obiekt.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
Finalize()

Umożliwia obiektowi próbę zwolnienia zasobów i wykonania innych operacji oczyszczania przed odzyskaniem przez odzyskiwanie pamięci.

GetAdjustedPalette(ColorPalette, ColorAdjustType)

Dostosowuje kolory w palecie zgodnie z ustawieniami regulacji określonej kategorii.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
SetBrushRemapTable(ColorMap[])

Ustawia tabelę color-remap dla kategorii pędzla.

SetBrushRemapTable(ReadOnlySpan<ColorMap>)

Zawiera informacje o sposobie manipulowania kolorami mapy bitowej i metapliku podczas renderowania.

SetBrushRemapTable(ReadOnlySpan<ValueTuple<Color,Color>>)

Zawiera informacje o sposobie manipulowania kolorami mapy bitowej i metapliku podczas renderowania.

SetColorKey(Color, Color)

Ustawia klucz koloru dla kategorii domyślnej.

SetColorKey(Color, Color, ColorAdjustType)

Ustawia klucz koloru (zakres przezroczystości) dla określonej kategorii.

SetColorMatrices(ColorMatrix, ColorMatrix)

Ustawia macierz korekty kolorów i macierz korekty skali szarości dla kategorii domyślnej.

SetColorMatrices(ColorMatrix, ColorMatrix, ColorMatrixFlag)

Ustawia macierz korekty kolorów i macierz korekty skali szarości dla kategorii domyślnej.

SetColorMatrices(ColorMatrix, ColorMatrix, ColorMatrixFlag, ColorAdjustType)

Ustawia macierz korekty kolorów i macierz korekty skali szarości dla określonej kategorii.

SetColorMatrix(ColorMatrix)

Ustawia macierz korekty kolorów dla kategorii domyślnej.

SetColorMatrix(ColorMatrix, ColorMatrixFlag)

Ustawia macierz korekty kolorów dla kategorii domyślnej.

SetColorMatrix(ColorMatrix, ColorMatrixFlag, ColorAdjustType)

Ustawia macierz korekty kolorów dla określonej kategorii.

SetGamma(Single)

Ustawia wartość gamma dla kategorii domyślnej.

SetGamma(Single, ColorAdjustType)

Ustawia wartość gamma dla określonej kategorii.

SetNoOp()

Wyłącza dostosowywanie kolorów dla kategorii domyślnej. Możesz wywołać metodę ClearNoOp , aby przywrócić ustawienia korekty kolorów, które zostały wprowadzone przed wywołaniem SetNoOp metody .

SetNoOp(ColorAdjustType)

Wyłącza dostosowywanie kolorów dla określonej kategorii. Możesz wywołać metodę ClearNoOp , aby przywrócić ustawienia korekty kolorów, które zostały wprowadzone przed wywołaniem SetNoOp metody .

SetOutputChannel(ColorChannelFlag)

Ustawia kanał wyjściowy CMYK (cyan-magenta-yellow-black) dla kategorii domyślnej.

SetOutputChannel(ColorChannelFlag, ColorAdjustType)

Ustawia kanał wyjściowy CMYK (cyan-magenta-yellow-black) dla określonej kategorii.

SetOutputChannelColorProfile(String)

Ustawia plik profilu kolorów kanału wyjściowego dla kategorii domyślnej.

SetOutputChannelColorProfile(String, ColorAdjustType)

Ustawia plik profilu kolorów kanału wyjściowego dla określonej kategorii.

SetRemapTable(ColorAdjustType, ReadOnlySpan<ColorMap>)

Zawiera informacje o sposobie manipulowania kolorami mapy bitowej i metapliku podczas renderowania.

SetRemapTable(ColorAdjustType, ReadOnlySpan<ValueTuple<Color,Color>>)

Zawiera informacje o sposobie manipulowania kolorami mapy bitowej i metapliku podczas renderowania.

SetRemapTable(ColorMap[])

Ustawia tabelę color-remap dla kategorii domyślnej.

SetRemapTable(ColorMap[], ColorAdjustType)

Ustawia tabelę color-remap dla określonej kategorii.

SetRemapTable(ReadOnlySpan<ColorMap>)

Zawiera informacje o sposobie manipulowania kolorami mapy bitowej i metapliku podczas renderowania.

SetRemapTable(ReadOnlySpan<ValueTuple<Color,Color>>)

Zawiera informacje o sposobie manipulowania kolorami mapy bitowej i metapliku podczas renderowania.

SetThreshold(Single)

Ustawia próg (zakres przezroczystości) dla kategorii domyślnej.

SetThreshold(Single, ColorAdjustType)

Ustawia próg (zakres przezroczystości) dla określonej kategorii.

SetWrapMode(WrapMode)

Ustawia tryb zawijania, który służy do decydowania, jak kafelkować teksturę w kształcie lub na granicach kształtów. Tekstura jest wyłożona kafelkami na kształt, aby wypełnić go, gdy tekstura jest mniejsza niż kształt, który wypełnia.

SetWrapMode(WrapMode, Color)

Ustawia tryb zawijania i kolor używany do określania sposobu kafelkowania tekstury w kształcie lub na granicach kształtów. Tekstura jest wyłożona kafelkami na kształt, aby wypełnić go, gdy tekstura jest mniejsza niż kształt, który wypełnia.

SetWrapMode(WrapMode, Color, Boolean)

Ustawia tryb zawijania i kolor używany do określania sposobu kafelkowania tekstury w kształcie lub na granicach kształtów. Tekstura jest wyłożona kafelkami na kształt, aby wypełnić go, gdy tekstura jest mniejsza niż kształt, który wypełnia.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Dotyczy

Zobacz też