Bagikan melalui


Fungsi CMTranslateRGBsExt (icm.h)

Menerjemahkan bitmap dari satu format yang ditentukan ke dalam format yang ditentukan yang berbeda dan memanggil fungsi panggilan balik secara berkala, jika ditentukan, untuk melaporkan kemajuan dan mengizinkan aplikasi panggilan untuk mengakhiri terjemahan.

Sintaks

BOOL CMTranslateRGBsExt(
  HCMTRANSFORM   hcmTransform,
  LPVOID         lpSrcBits,
  BMFORMAT       bmInput,
  DWORD          dwWidth,
  DWORD          dwHeight,
  DWORD          dwInputStride,
  LPVOID         lpDestBits,
  BMFORMAT       bmOutput,
  DWORD          dwOutputStride,
  LPBMCALLBACKFN lpfnCallback,
  LPARAM         ulCallbackData
);

Parameter

hcmTransform

Menentukan transformasi warna yang akan digunakan.

lpSrcBits

Arahkan ke bitmap untuk diterjemahkan.

bmInput

Menentukan format bitmap input.

dwWidth

Menentukan jumlah piksel per baris pemindaian dalam bitmap input.

dwHeight

Menentukan jumlah baris pemindaian dalam bitmap input.

dwInputStride

Menentukan jumlah byte dari awal satu baris pemindaian ke awal baris berikutnya dalam bitmap input. Jika dwInputStride diatur ke nol, CMM harus mengasumsikan bahwa garis pemindaian diisi sehingga selaras dengan DWORD.

lpDestBits

Menunjuk ke buffer tujuan untuk menempatkan bitmap yang diterjemahkan.

bmOutput

Menentukan format bitmap output.

dwOutputStride

Menentukan jumlah byte dari awal satu baris pemindaian ke awal baris berikutnya dalam bitmap input. Jika dwOutputStride diatur ke nol, CMM harus memindai baris sehingga sejajar dengan DWORD.

lpfnCallback

Pointer ke fungsi panggilan balik yang disediakan aplikasi yang disebut secara berkala oleh CMTranslateRGBsExt untuk melaporkan kemajuan dan memungkinkan proses panggilan untuk membatalkan terjemahan. (Lihat ICMProgressProcCallback.)

ulCallbackData

Data diteruskan kembali ke fungsi panggilan balik, misalnya untuk mengidentifikasi terjemahan yang melaporkan kemajuan.

Menampilkan nilai

Jika fungsi ini berhasil, nilai yang dikembalikan adalah TRUE.

Jika fungsi ini gagal, nilai yang dikembalikan adalah FALSE dan CMM harus memanggil SetLastError untuk mengatur kesalahan terakhir ke nilai kesalahan valid yang ditentukan dalam Winerror.h.

Keterangan

Setiap CMM diperlukan untuk mengekspor fungsi ini.

Saat menulis ke buffer tujuan, CMM harus memastikan bahwa garis pemindaian diisi agar selaras dengan DWORD.

Jika format input dan output tidak kompatibel dengan transformasi warna, fungsi ini gagal.

Jika format bitmap input dan output adalah 3 saluran, 4 byte per piksel seperti dalam kasus BM_xRGBQUADS, byte keempat harus dipertahankan dan disalin ke buffer output.

Jika fungsi panggilan balik mengembalikan nol, pemrosesan harus dibatalkan dan CMTranslateRGBsExt harus mengembalikan nol untuk menunjukkan kegagalan; buffer output mungkin terisi sebagian.

Perhatikan bahwa fungsi ini harus mendukung terjemahan di tempat. Artinya, setiap kali jejak memori output kurang dari atau sama dengan jejak memori input, fungsi ini harus dapat menerjemahkan warna bitmap bahkan jika buffer sumber dan tujuan sama.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Header icm.h

Lihat juga