ImageAttributes::Metode ClearNoOp (gdiplusimageattributes.h)
Metode ImageAttributes::ClearNoOp menghapus pengaturan NoOp untuk kategori tertentu.
Sintaks
Status ClearNoOp(
[in, optional] ColorAdjustType type
);
Parameter
[in, optional] type
Jenis: ColorAdjustType
Elemen enumerasi ColorAdjustType yang menentukan kategori di mana pengaturan NoOp dibersihkan. Nilai defaultnya adalah ColorAdjustTypeDefault.
Nilai kembali
Jenis: Status
Jika metode berhasil, metode mengembalikan Ok, yang merupakan elemen dari enumerasi Status .
Jika metode gagal, metode mengembalikan salah satu elemen lain dari enumerasi Status .
Keterangan
Anda dapat menonaktifkan penyesuaian warna untuk jenis objek tertentu dengan memanggil metode ImageAttributes::SetNoOp . Nantinya, Anda dapat memulihkan penyesuaian warna untuk jenis objek tersebut dengan memanggil metode ImageAttributes::ClearNoOp . Misalnya, pernyataan berikut menonaktifkan penyesuaian warna untuk kuas:
myImageAttributes.SetNoOp(ColorAdjustTypeBrush);
Pernyataan berikut ini menginstal ulang penyesuaian warna kuas yang ada sebelum panggilan ke ImageAttributes::SetNoOp:
myImageAttributes.ClearNoOp(ColorAdjustTypeBrush);
Contoh
Contoh berikut membuat objek Gambar dari file .emf. Kode ini juga membuat objek ImageAttributes . Panggilan ImageAttributes::SetColorMatrix mengatur matriks penyesuaian warna kuas dari objek ImageAttributes tersebut ke matriks yang mengonversi merah menjadi hijau.
Kode memanggil DrawImage tiga kali, setiap kali melewati alamat objek Gambar dan alamat objek ImageAttributes . Ketika gambar digambar pertama kali, semua warna merah yang dicat oleh kuas dikonversi menjadi hijau. (Merah yang digambar oleh pena tidak diubah.) Sebelum gambar digambar untuk kedua kalinya, kode memanggil metode ImageAttributes::SetNoOp dari objek ImageAttributes . Jadi ketika gambar digambar untuk kedua kalinya, tidak ada penyesuaian warna yang diterapkan pada kuas. Sebelum gambar digambar untuk ketiga kalinya, kode memanggil metode ImageAttributes::ClearNoOp , yang menginstal ulang pengaturan penyesuaian warna kuas. Jadi ketika gambar digambar untuk ketiga kalinya, semua warna merah yang dicat oleh kuas dikonversi menjadi hijau.
VOID Example_SetClearNoOp(HDC hdc)
{
Graphics graphics(hdc);
Image image(L"TestMetafile4.emf");
ImageAttributes imAtt;
ColorMatrix brushMatrix = { // red converted to green
0.0f, 1.0f, 0.0f, 0.0f, 0.0f,
0.0f, 1.0f, 0.0f, 0.0f, 0.0f,
0.0f, 0.0f, 1.0f, 0.0f, 0.0f,
0.0f, 0.0f, 0.0f, 1.0f, 0.0f,
0.0f, 0.0f, 0.0f, 0.0f, 1.0f};
imAtt.SetColorMatrix(
&brushMatrix,
ColorMatrixFlagsDefault,
ColorAdjustTypeBrush);
// Draw the image (metafile) using brush color adjustment.
// Items filled with a brush change from red to green.
graphics.DrawImage(
&image,
Rect(0, 0, image.GetWidth(), image.GetHeight()), // dest rect
0, 0, image.GetWidth(), image.GetHeight(), // source rect
UnitPixel,
&imAtt);
// Temporarily disable brush color adjustment.
imAtt.SetNoOp(ColorAdjustTypeBrush);
// Draw the image (metafile) without brush color adjustment.
// There is no change from red to green.
graphics.DrawImage(
&image,
Rect(0, 80, image.GetWidth(), image.GetHeight()), // dest rect
0, 0, image.GetWidth(), image.GetHeight(), // source rect
UnitPixel,
&imAtt);
// Reinstate brush color adjustment.
imAtt.ClearNoOp(ColorAdjustTypeBrush);
// Draw the image (metafile) using brush color adjustment.
// Items filled with a brush change from red to green.
graphics.DrawImage(
&image,
Rect(0, 160, image.GetWidth(), image.GetHeight()), // dest rect
0, 0, image.GetWidth(), image.GetHeight(), // source rect
UnitPixel,
&imAtt);
}
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows XP, Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung | Windows 2000 Server [hanya aplikasi desktop] |
Target Platform | Windows |
Header | gdiplusimageattributes.h (termasuk Gdiplus.h) |
Pustaka | Gdiplus.lib |
DLL | Gdiplus.dll |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk