既定のカテゴリのガンマ値を設定します。
Overloads Public Sub SetGamma( _
ByVal gamma As Single _)
[C#]
public void SetGamma(floatgamma);
[C++]
public: void SetGamma(floatgamma);
[JScript]
public function SetGamma(
gamma : float);
パラメータ
- gamma
ガンマ補正値を指定します。ガンマは通常、1.0 ~ 2.2 の範囲の値です。ただし、状況によっては、0.1 ~ 5.0 の値が有効な場合があります。
戻り値
このメソッドは値を返しません。
解説
ImageAttributes オブジェクトは、5 つの調整カテゴリ (既定、ビットマップ、ブラシ、ペン、テキスト) に関して色とグレースケールの設定を保持します。たとえば、既定のカテゴリに対してあるガンマ値を指定し、ビットマップ カテゴリには別のガンマ値を指定し、さらにペン カテゴリにも異なるガンマ値を指定できます。
既定のカラー調整設定値およびグレースケール調整設定値は、調整設定値が設定されていないすべてのカテゴリに対して適用されます。たとえば、ペン カテゴリの調整設定を一切指定していない場合、ペン カテゴリには既定の設定が適用されます。
使用例
[Visual Basic, C#] 次の例は、Windows フォームでの使用を意図してデザインされており、 Paint イベント ハンドラのパラメータである PaintEventArgs e が必要です。このコードは次のアクションを実行します。
- ファイル Camera.jpg を使用する Image オブジェクトを開き、ガンマの既定値を使用してそのファイルを画面に描画します。
- ImageAttributes オブジェクトを作成し、 SetGamma メソッドを呼び出すことにより、そのオブジェクトのガンマを 2.2 に設定します。
- ImageAttributes オブジェクト内に設定されたガンマ値を使用して、イメージ (2 回目のカメラ) を画面に描画します。
Public Sub SetGammaExample(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 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
[C#]
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.
ImageAttributes imageAttr = new 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, // Image
rect, // Dest. rect.
0, // srcX
0, // srcY
200, // srcWidth
200, // srcHeight
GraphicsUnit.Pixel, // srcUnit
imageAttr); // ImageAttributes
}
[C++, JScript] C++ および JScript のサンプルはありません。Visual Basic および C# のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
参照
ImageAttributes クラス | ImageAttributes メンバ | System.Drawing.Imaging 名前空間 | ImageAttributes.SetGamma オーバーロードの一覧