ImageAttributes.SetGamma Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Sets the gamma value.
Overloads
SetGamma(Single) |
Sets the gamma value for the default category. |
SetGamma(Single, ColorAdjustType) |
Sets the gamma value for a specified category. |
SetGamma(Single)
- Source:
- ImageAttributes.cs
- Source:
- ImageAttributes.cs
Sets the gamma value for the default category.
public:
void SetGamma(float gamma);
public void SetGamma (float gamma);
member this.SetGamma : single -> unit
Public Sub SetGamma (gamma As Single)
Parameters
- gamma
- Single
The gamma correction value.
Examples
The following code example is designed for use with Windows Forms, and it requires PaintEventArgs e
, which is a parameter of the Paint event handler. In addition, you need to change the image file path to a path and image name valid on your system. The code performs the following actions:
Opens an Image that uses the file Camera.jpg and draws it to the screen using the default value for gamma.
Creates an ImageAttributes object and sets its gamma to 2.2 by calling the SetGamma method.
Draws the image (a second camera) to the screen using the gamma value just set in the ImageAttributes object.
private:
void SetGammaExample( PaintEventArgs^ e )
{
// Create an Image object from the file Camera.jpg, and draw it to
// the screen.
Image^ myImage = Image::FromFile( "Camera.jpg" );
e->Graphics->DrawImage( myImage, 20, 20 );
// Create an ImageAttributes object and set the gamma to 2.2.
System::Drawing::Imaging::ImageAttributes^ imageAttr =
gcnew System::Drawing::Imaging::ImageAttributes;
imageAttr->SetGamma( 2.2f );
// Draw the image with gamma set to 2.2.
Rectangle rect = Rectangle(250,20,200,200);
e->Graphics->DrawImage( myImage, rect, 0, 0, 200, 200, GraphicsUnit::Pixel, imageAttr );
}
private void SetGammaExample(PaintEventArgs e)
{
// Create an Image object from the file Camera.jpg, and draw it to
// the screen.
Image myImage = Image.FromFile("Camera.jpg");
e.Graphics.DrawImage(myImage, 20, 20);
// Create an ImageAttributes object and set the gamma to 2.2.
System.Drawing.Imaging.ImageAttributes imageAttr =
new System.Drawing.Imaging.ImageAttributes();
imageAttr.SetGamma(2.2f);
// Draw the image with gamma set to 2.2.
Rectangle rect = new Rectangle(250, 20, 200, 200);
e.Graphics.DrawImage(myImage, rect, 0, 0, 200, 200,
GraphicsUnit.Pixel, imageAttr);
}
Public Sub SetGammaExample(ByVal e As PaintEventArgs)
' Create an Image object from the file Camera.jpg, and draw
' it to screen.
Dim myImage As Image = Image.FromFile("Camera.jpg")
e.Graphics.DrawImage(myImage, 20, 20)
' Create an ImageAttributes object and set the gamma to 2.2.
Dim imageAttr As New System.Drawing.Imaging.ImageAttributes
imageAttr.SetGamma(2.2F)
' Draw the image with gamma set to 2.2.
Dim rect As New Rectangle(250, 20, 200, 200)
e.Graphics.DrawImage(myImage, rect, 0, 0, 200, 200, _
GraphicsUnit.Pixel, imageAttr)
' Image
End Sub
Remarks
Typical values for the gamma
parameter are from 1.0 to 2.2; however, values from 0.1 to 5.0 could prove useful in some circumstances.
An ImageAttributes object maintains color and grayscale settings for five adjustment categories: default, bitmap, brush, pen, and text. For example, you can specify a gamma value for the default category, a different gamma value for the bitmap category, and still a different gamma value for the pen category.
The default color-adjustment and grayscale-adjustment settings apply to all categories that do not have adjustment settings of their own. For example, if you never specify any adjustment settings for the pen category, the default settings apply to the pen category.
Gamma values outside the usual range may be useful for old CRT monitors or for monitors that are in unusual lighting conditions, such as industrial environments or window displays.
Applies to
SetGamma(Single, ColorAdjustType)
- Source:
- ImageAttributes.cs
- Source:
- ImageAttributes.cs
Sets the gamma value for a specified category.
public:
void SetGamma(float gamma, System::Drawing::Imaging::ColorAdjustType type);
public void SetGamma (float gamma, System.Drawing.Imaging.ColorAdjustType type);
member this.SetGamma : single * System.Drawing.Imaging.ColorAdjustType -> unit
Public Sub SetGamma (gamma As Single, type As ColorAdjustType)
Parameters
- gamma
- Single
The gamma correction value.
- type
- ColorAdjustType
An element of the ColorAdjustType enumeration that specifies the category for which the gamma value is set.
Examples
For a code example, see the SetGamma(Single) method.
Remarks
Typical values for the gamma
parameter are from 1.0 to 2.2; however, values from 0.1 to 5.0 could prove useful in some circumstances.
An ImageAttributes object maintains color and grayscale settings for five adjustment categories: default, bitmap, brush, pen, and text. For example, you can specify a gamma value for the default category, a different gamma value for the bitmap category, and still a different gamma value for the pen category.
The default color-adjustment and grayscale-adjustment settings apply to all categories that do not have adjustment settings of their own. For example, if you never specify any adjustment settings for the pen category, the default settings apply to the pen category.
As soon as you specify a color-adjustment or grayscale-adjustment setting for a certain category, the default adjustment settings no longer apply to that category. For example, suppose you specify a collection of adjustment settings for the default category. If you set the gamma value for the pen category by passing Pen to the SetGamma method, none of the default adjustment settings will apply to pens.
Gamma values outside the usual range may be useful for old CRT monitors or for monitors that are in unusual lighting conditions, such as industrial environments or window displays.