Bagikan melalui


Fungsi StretchDIB (vfw.h)

Fungsi StretchDIB menyalin bitmap independen perangkat dari satu lokasi memori ke lokasi lain dan mengubah ukuran gambar agar sesuai dengan persegi tujuan.

Sintaks

void StretchDIB(
  LPBITMAPINFOHEADER biDst,
  LPVOID             lpDst,
  int                DstX,
  int                DstY,
  int                DstXE,
  int                DstYE,
  LPBITMAPINFOHEADER biSrc,
  LPVOID             lpSrc,
  int                SrcX,
  int                SrcY,
  int                SrcXE,
  int                SrcYE
);

Parameter

biDst

Penunjuk ke struktur BITMAPINFOHEADER yang menjelaskan bitmap tujuan.

lpDst

Arahkan ke buffer memori yang akan menerima bit piksel yang disalin.

DstX

Koordinat X dari asal persegi panjang tujuan.

DstY

Koordinat Y dari asal persegi panjang tujuan.

DstXE

Lebar, dalam piksel, persegi tujuan.

DstYE

Tinggi, dalam piksel, persegi tujuan.

biSrc

Pointer ke struktur BITMAPINFOHEADER yang menjelaskan bitmap sumber.

lpSrc

Penunjuk ke data bitmap sumber.

SrcX

Koordinat X dari asal persegi panjang sumber.

SrcY

Koordinat Y dari asal persegi panjang sumber.

SrcXE

Lebar, dalam piksel, persegi panjang sumber.

SrcYE

Tinggi, dalam piksel, persegi panjang sumber.

Mengembalikan nilai

Tidak ada

Keterangan

Ukuran buffer tujuan harus cukup besar untuk mengakomodasi byte perataan apa pun di akhir setiap baris piksel.

Fungsi ini tidak melakukan apa pun jika biSrc dan biDst memiliki nilai yang berbeda untuk biBitCount atau jika nilai untuk biSrc. biBitCount tidak sama dengan 8, 16, atau 24.

Fungsi ini tidak melakukan dithering atau smoothing lainnya. Nilai piksel hanya dihilangkan atau diduplikasi pada basis baris demi baris, kolom demi kolom.

Fungsi ini tidak melakukan pemrosesan khusus berdasarkan pengodean piksel kecuali untuk menghitung jumlah bit per piksel. Secara khusus fungsi ini tidak akan menghasilkan hasil yang benar ketika piksel dikodekan dalam grup lebih dari 1 piksel, seperti dalam kasus format YUV di mana Anda dan V didekorasi sehingga tidak direpresentasikan secara merata di setiap piksel.

Sebelum menyertakan Vfw.h, Anda harus menambahkan baris berikut ke kode Anda:


#define DRAWDIB_INCLUDE_STRETCHDIB

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 vfw.h
Pustaka Vfw32.lib
DLL Msvfw32.dll