ImageAttributes.SetGamma 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
设置 gamma 值。
重载
SetGamma(Single) |
设置默认类别的 gamma 值。 |
SetGamma(Single, ColorAdjustType) |
设置指定类别的 gamma 值。 |
SetGamma(Single)
- Source:
- ImageAttributes.cs
- Source:
- ImageAttributes.cs
- Source:
- ImageAttributes.cs
- Source:
- ImageAttributes.cs
- Source:
- ImageAttributes.cs
设置默认类别的 gamma 值。
public:
void SetGamma(float gamma);
public void SetGamma (float gamma);
member this.SetGamma : single -> unit
Public Sub SetGamma (gamma As Single)
参数
- gamma
- Single
伽玛更正值。
示例
下面的代码示例设计用于 Windows 窗体,它需要 PaintEventArgse
,这是 Paint 事件处理程序的参数。 此外,需要将映像文件路径更改为系统上有效的路径和映像名称。 该代码执行以下操作:
打开使用文件 Camera.jpg 的 Image,并使用 gamma 的默认值将其绘制到屏幕。
创建一个 ImageAttributes 对象,并通过调用 SetGamma 方法将其 gamma 设置为 2.2。
使用刚刚在 ImageAttributes 对象中设置的伽玛值将图像(第二个相机)绘制到屏幕。
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
注解
gamma
参数的典型值为 1.0 到 2.2;但是,在某些情况下,从 0.1 到 5.0 的值可能很有用。
ImageAttributes 对象维护五个调整类别的颜色和灰度设置:默认、位图、画笔、笔和文本。 例如,可以为默认类别指定伽玛值、位图类别的不同伽玛值,以及笔类别的其他伽玛值。
默认颜色调整和灰度调整设置适用于没有自己调整设置的所有类别。 例如,如果从未为笔类别指定任何调整设置,则默认设置将应用于笔类别。
通常范围之外的伽玛值对于旧 CRT 监视器或处于异常照明条件的监视器(如工业环境或窗口显示器)可能很有用。
适用于
SetGamma(Single, ColorAdjustType)
- Source:
- ImageAttributes.cs
- Source:
- ImageAttributes.cs
- Source:
- ImageAttributes.cs
- Source:
- ImageAttributes.cs
- Source:
- ImageAttributes.cs
设置指定类别的 gamma 值。
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)
参数
- gamma
- Single
伽玛更正值。
- type
- ColorAdjustType
ColorAdjustType 枚举的元素,指定为其设置伽玛值的类别。
示例
有关代码示例,请参阅 SetGamma(Single) 方法。
注解
gamma
参数的典型值为 1.0 到 2.2;但是,在某些情况下,从 0.1 到 5.0 的值可能很有用。
ImageAttributes 对象维护五个调整类别的颜色和灰度设置:默认、位图、画笔、笔和文本。 例如,可以为默认类别指定伽玛值、位图类别的不同伽玛值,以及笔类别的其他伽玛值。
默认颜色调整和灰度调整设置适用于没有自己调整设置的所有类别。 例如,如果从未为笔类别指定任何调整设置,则默认设置将应用于笔类别。
指定特定类别的颜色调整或灰度调整设置后,默认调整设置将不再应用于该类别。 例如,假设为默认类别指定调整设置的集合。 如果将 Pen 传递给 SetGamma 方法来设置笔类别的 gamma 值,则默认调整设置将不适用于笔。
通常范围之外的伽玛值对于旧 CRT 监视器或处于异常照明条件的监视器(如工业环境或窗口显示器)可能很有用。