Fungsi AlphaBlend (wingdi.h)

Fungsi AlphaBlend menampilkan bitmap yang memiliki piksel transparan atau semitransparan.

Sintaks

BOOL AlphaBlend(
  [in] HDC           hdcDest,
  [in] int           xoriginDest,
  [in] int           yoriginDest,
  [in] int           wDest,
  [in] int           hDest,
  [in] HDC           hdcSrc,
  [in] int           xoriginSrc,
  [in] int           yoriginSrc,
  [in] int           wSrc,
  [in] int           hSrc,
  [in] BLENDFUNCTION ftn
);

Parameter

[in] hdcDest

Handel ke konteks perangkat tujuan.

[in] xoriginDest

Koordinat x, dalam unit logis, dari sudut kiri atas persegi panjang tujuan.

[in] yoriginDest

Koordinat y, dalam unit logis, dari sudut kiri atas persegi panjang tujuan.

[in] wDest

Lebar, dalam unit logis, persegi panjang tujuan.

[in] hDest

Tinggi, dalam unit logis, persegi panjang tujuan.

[in] hdcSrc

Handel ke konteks perangkat sumber.

[in] xoriginSrc

Koordinat x, dalam unit logis, dari sudut kiri atas persegi panjang sumber.

[in] yoriginSrc

Koordinat y, dalam unit logis, dari sudut kiri atas persegi panjang sumber.

[in] wSrc

Lebar, dalam unit logis, dari persegi panjang sumber.

[in] hSrc

Tinggi, dalam unit logis, dari persegi panjang sumber.

[in] ftn

Fungsi alpha-blending untuk bitmap sumber dan tujuan, nilai alfa global yang akan diterapkan ke seluruh bitmap sumber, dan memformat informasi untuk bitmap sumber. Fungsi campuran sumber dan tujuan saat ini terbatas pada AC_SRC_OVER. Lihat struktur BLENDFUNCTION dan EMRALPHABLEND .

Mengembalikan nilai

Jika fungsi berhasil, nilai yang dikembalikan adalah TRUE.

Jika fungsi gagal, nilai yang dikembalikan adalah FALSE.

Keterangan

Jika persegi panjang sumber dan persegi panjang tujuan tidak berukuran sama, bitmap sumber direntangkan agar sesuai dengan persegi tujuan. Jika fungsi SetStretchBltMode digunakan, nilai iStretchMode secara otomatis dikonversi ke COLORONCOLOR untuk fungsi ini (yaitu, BLACKONWHITE, WHITEONBLACK, dan HALFTONE diubah menjadi COLORONCOLOR).

Koordinat tujuan diubah dengan menggunakan transformasi yang saat ini ditentukan untuk konteks perangkat tujuan. Koordinat sumber diubah dengan menggunakan transformasi yang saat ini ditentukan untuk konteks perangkat sumber.

Kesalahan terjadi (dan fungsi mengembalikan FALSE) jika konteks perangkat sumber mengidentifikasi konteks perangkat metafile yang disempurnakan.

Jika bitmap tujuan dan sumber tidak memiliki format warna yang sama, AlphaBlend mengonversi bitmap sumber agar sesuai dengan bitmap tujuan.

AlphaBlend tidak mendukung pencerminan. Jika lebar atau tinggi sumber atau tujuan negatif, panggilan ini akan gagal.

Saat merender ke printer, pertama-tama panggil GetDeviceCaps dengan SHADEBLENDCAPS untuk menentukan apakah printer mendukung perpaduan dengan AlphaBlend. Perhatikan bahwa, untuk tampilan DC, semua operasi penpaduan didukung dan bendera ini mewakili apakah operasi dipercepat.

Jika sumber dan tujuan adalah permukaan yang sama, yaitu, keduanya adalah layar atau bitmap memori yang sama dan sumber dan persegi panjang tujuan tumpang tindih, kesalahan terjadi dan fungsi mengembalikan FALSE.

Persegi panjang sumber harus sepenuhnya berada di dalam permukaan sumber, jika tidak, kesalahan terjadi dan fungsi mengembalikan FALSE.

AlphaBlend gagal jika lebar atau tinggi sumber atau tujuan negatif.

Anggota SourceConstantAlpha dari BLENDFUNCTION menentukan nilai transparansi alfa yang akan digunakan pada seluruh bitmap sumber. Nilai SourceConstantAlpha dikombinasikan dengan nilai alfa per piksel apa pun. Jika SourceConstantAlpha adalah 0, diasumsikan bahwa gambar transparan. Atur nilai SourceConstantAlpha ke 255 (yang menunjukkan bahwa gambar buram) saat Anda hanya ingin menggunakan nilai alfa per piksel.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header wingdi.h (sertakan Windows.h)
Pustaka Msimg32.lib
DLL Msimg32.dll

Lihat juga

BLENDFUNCTION

Fungsi Bitmap

Gambaran Umum Bitmap

EMRALPHABLEND

GetDeviceCaps

SetStretchBltMode