Contiene informazioni relative alla modalità di manipolazione dei colori di bitmap e metafile durante il rendering.
System.Drawing.Imaging.ImageAttributes
Spazio dei nomi: System.Drawing.Imaging
Assembly: System.Drawing (in System.Drawing.dll)
Public NotInheritable Class ImageAttributes _ Implements ICloneable, IDisposable
public sealed class ImageAttributes : ICloneable, IDisposable
public ref class ImageAttributes sealed : ICloneable, IDisposable
[<Sealed>] type ImageAttributes = class interface ICloneable interface IDisposable end
Il tipo ImageAttributes espone i seguenti membri.
| Nome | Descrizione | |
|---|---|---|
|
ImageAttributes | Inizializza una nuova istanza della classe ImageAttributes. |
| Nome | Descrizione | |
|---|---|---|
|
ClearBrushRemapTable | Cancella la tabella di modifica del mapping dei colori del pennello di questo oggetto ImageAttributes. |
|
ClearColorKey() | Cancella la chiave di colore (intervallo di trasparenza) per la categoria predefinita. |
|
ClearColorKey(ColorAdjustType) | Cancella la chiave di colore (intervallo di trasparenza) per una categoria specificata. |
|
ClearColorMatrix() | Cancella la matrice di regolazione del colore per la categoria predefinita. |
|
ClearColorMatrix(ColorAdjustType) | Cancella la matrice di regolazione del colore per una categoria specificata. |
|
ClearGamma() | Disabilita la correzione gamma per la categoria predefinita. |
|
ClearGamma(ColorAdjustType) | Disabilita la correzione gamma per una categoria specificata. |
|
ClearNoOp() | Cancella l'impostazione NoOp per la categoria predefinita. |
|
ClearNoOp(ColorAdjustType) | Cancella l'impostazione NoOp per una categoria specificata. |
|
ClearOutputChannel() | Cancella l'impostazione del canale di output CMYK per la categoria predefinita. |
|
ClearOutputChannel(ColorAdjustType) | Cancella l'impostazione del canale di output CMYK per una categoria specificata. |
|
ClearOutputChannelColorProfile() | Cancella l'impostazione del profilo del colore del canale di output per la categoria predefinita. |
|
ClearOutputChannelColorProfile(ColorAdjustType) | Cancella l'impostazione del profilo del colore del canale di output per una categoria specificata. |
|
ClearRemapTable() | Cancella la tabella di modifica del mapping dei colori per la categoria predefinita. |
|
ClearRemapTable(ColorAdjustType) | Cancella la tabella di modifica del mapping dei colori per una categoria specificata. |
|
ClearThreshold() | Cancella il valore di soglia per la categoria predefinita. |
|
ClearThreshold(ColorAdjustType) | Cancella il valore di soglia per una categoria specificata. |
|
Clone | Crea una copia esatta dell'oggetto ImageAttributes. |
|
Dispose | Rilascia tutte le risorse utilizzate dall'oggetto ImageAttributes. |
|
Equals(Object) | Determina se l'oggetto Object specificato è uguale all'oggetto Object corrente. (Ereditato da Object) |
|
Finalize | Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulitura prima che l'oggetto stesso venga recuperato dalla procedura di Garbage Collection. (Ereditato da Object) |
|
GetAdjustedPalette | Regola i colori in una tavolozza in base alle impostazioni di regolazione di una categoria specificata. |
|
GetHashCode | Funge da funzione hash per un determinato tipo. (Ereditato da Object) |
|
GetType | Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
|
MemberwiseClone | Consente di creare una copia dei riferimenti dell'oggetto Object corrente. (Ereditato da Object) |
|
SetBrushRemapTable | Imposta la tabella di modifica del mapping dei colori per la categoria pennello. |
|
SetColorKey(Color, Color) | Imposta la chiave di colore per la categoria predefinita. |
|
SetColorKey(Color, Color, ColorAdjustType) | Imposta la chiave di colore (intervallo di trasparenza) per una categoria specificata. |
|
SetColorMatrices(ColorMatrix, ColorMatrix) | Imposta la matrice di regolazione del colore e la matrice di regolazione delle gradazioni di grigio per la categoria predefinita. |
|
SetColorMatrices(ColorMatrix, ColorMatrix, ColorMatrixFlag) | Imposta la matrice di regolazione del colore e la matrice di regolazione delle gradazioni di grigio per la categoria predefinita. |
|
SetColorMatrices(ColorMatrix, ColorMatrix, ColorMatrixFlag, ColorAdjustType) | Imposta la matrice di regolazione del colore e la matrice di regolazione delle gradazioni di grigio per una categoria specificata. |
|
SetColorMatrix(ColorMatrix) | Imposta la matrice di regolazione del colore per la categoria predefinita. |
|
SetColorMatrix(ColorMatrix, ColorMatrixFlag) | Imposta la matrice di regolazione del colore per la categoria predefinita. |
|
SetColorMatrix(ColorMatrix, ColorMatrixFlag, ColorAdjustType) | Imposta la matrice di regolazione del colore per una categoria specificata. |
|
SetGamma(Single) | Imposta il valore gamma per la categoria predefinita. |
|
SetGamma(Single, ColorAdjustType) | Imposta il valore gamma per una categoria specificata. |
|
SetNoOp() | Disattiva la regolazione del colore per la categoria predefinita. È possibile chiamare il metodo ClearNoOp per ripristinare le impostazioni di regolazione del colore precedenti alla chiamata al metodo SetNoOp. |
|
SetNoOp(ColorAdjustType) | Disattiva la regolazione del colore per una categoria specificata. È possibile chiamare il metodo ClearNoOp per ripristinare le impostazioni di regolazione del colore precedenti alla chiamata al metodo SetNoOp. |
|
SetOutputChannel(ColorChannelFlag) | Imposta il canale di output CMYK per la categoria predefinita. |
|
SetOutputChannel(ColorChannelFlag, ColorAdjustType) | Imposta il canale di output CMYK per una categoria specificata. |
|
SetOutputChannelColorProfile(String) | Imposta il file del profilo del colore del canale di output per la categoria predefinita. |
|
SetOutputChannelColorProfile(String, ColorAdjustType) | Imposta il file del profilo del colore del canale di output per una categoria specificata. |
|
SetRemapTable(ColorMap[]) | Imposta la tabella di modifica del mapping dei colori per la categoria predefinita. |
|
SetRemapTable(ColorMap[], ColorAdjustType) | Imposta la tabella di modifica del mapping dei colori per una categoria specificata. |
|
SetThreshold(Single) | Imposta la soglia (intervallo di trasparenza) per la categoria predefinita. |
|
SetThreshold(Single, ColorAdjustType) | Imposta la soglia (intervallo di trasparenza) per una categoria specificata. |
|
SetWrapMode(WrapMode) | Imposta la modalità di disposizione utilizzata per decidere come inserire una trama all'interno di una forma o entro i limiti di quest'ultima. Una trama viene inserita all'interno di una forma per riempirla quando è di dimensioni minori rispetto alla forma. |
|
SetWrapMode(WrapMode, Color) | Imposta la modalità di disposizione e il colore utilizzati per decidere come inserire una trama all'interno di una forma o nei limiti di quest'ultima. Una trama viene inserita all'interno di una forma per riempirla quando è di dimensioni minori rispetto alla forma. |
|
SetWrapMode(WrapMode, Color, Boolean) | Imposta la modalità di disposizione e il colore utilizzati per decidere come inserire una trama all'interno di una forma o nei limiti di quest'ultima. Una trama viene inserita all'interno di una forma per riempirla quando è di dimensioni minori rispetto alla forma. |
|
ToString | Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
Un oggetto ImageAttributes mantiene diverse impostazioni di regolazione dei colori, tra cui le matrici di regolazione dei colori, le matrici di regolazione delle gradazioni di grigio, i valori di correzione gamma, le tabelle della mappa dei colori e i valori di soglia dei colori. Durante il rendering i colori possono venire corretti, scuriti, schiariti e rimossi. Per applicare tali operazioni di modifica, inizializzare un oggetto ImageAttributes e passare il percorso di tale oggetto ImageAttributes, unitamente al percorso di un oggetto Image, al metodo DrawImage.
Nell'esempio seguente viene raddoppiata la componente rossa di un'immagine monocromatica (0,2, 0,0, 0,4, 1,0), quindi viene aggiunto 0,2 alle componenti rossa, blu e verde.
Nell'illustrazione che segue si mostra l'immagine originale a sinistra e l'immagine trasformata a destra.
Nel codice riportato di seguito la ricolorazione è eseguita tramite i seguenti passaggi:
-
Inizializzazione di un oggetto ColorMatrix.
-
Creazione di un oggetto ImageAttributes e passaggio dell'oggetto ColorMatrix al metodo SetColorMatrix dell'oggetto ImageAttributes.
-
Passaggio dell'oggetto ImageAttributes al metodo DrawImage di un oggetto Graphics.
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)
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);
.NET Framework
Supportato in: 4, 3.5, 3.0, 2.0, 1.1, 1.0.NET Framework Client Profile
Supportato in: 4, 3.5 SP1Windows 7, Windows Vista SP1 o versione successiva, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (componenti di base del server non supportati), Windows Server 2008 R2 (componenti di base del server supportati con SP1 o versione successiva), Windows Server 2003 SP2
.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.