DrawDibBegin 函式 (vfw.h)

DrawDib 函式會變更 DrawDib DC 的參數,或初始化新的 DrawDib DC。

語法

BOOL VFWAPI DrawDibBegin(
  HDRAWDIB           hdd,
  HDC                hdc,
  int                dxDst,
  int                dyDst,
  LPBITMAPINFOHEADER lpbi,
  int                dxSrc,
  int                dySrc,
  UINT               wFlags
);

參數

hdd

DrawDib DC 的控制碼。

hdc

要繪製的 DC 控制碼。 這是選擇性參數。

dxDst

目的地矩形 MM_TEXT 用戶端單位的寬度。

dyDst

目的地矩形 MM_TEXT 用戶端單位的高度。

lpbi

包含影像格式的 BITMAPINFOHEADER 結構的指標。 DIB 的色彩表格遵循影像格式, 而 biHeight 成員必須是正值。

dxSrc

來源矩形的寬度,以圖元為單位。

dySrc

來源矩形的高度,以圖元為單位。

wFlags

函式適用的旗標。 定義下列值。

意義
DDF_ANIMATE 允許調色盤動畫。 如果存在這個值,DrawDib 會藉由在LOGPALETTE結構的palPalEntry陣列專案中設定PC_RESERVED來保留盡可能多的專案,而且使用DrawDibChangePalette函式可以動畫顯示調色盤。 如果您的應用程式使用 DrawDibBegin 函式搭配 DrawDibDraw 函式,請使用 DrawDibBegin 而非 DrawDibDraw來設定此值。
DDF_BACKGROUNDPAL 實現用來繪製做為背景工作的調色盤,讓顯示所使用的目前調色盤保持不變。 (此值互斥 DDF_SAME_HDC.)
DDF_BUFFER 導致 DrawDib 嘗試使用螢幕外緩衝區,以便使用 DDF_UPDATE 。 這會停用解壓縮並直接繪製到畫面。 如果 DrawDib 無法建立螢幕外緩衝區,則會直接解壓縮或繪製到畫面。 如需詳細資訊,請參閱DrawDibDraw所述的DDF_UPDATEDDF_DONTDRAW值。
DDF_DONTDRAW 目前影像未繪製,但已解壓縮。 DDF_UPDATE 稍後可用來繪製影像。 此旗標會取代 DDF_PREROLL 旗標。
DDF_FULLSCREEN 不支援。
DDF_HALFTONE 不論 DIB 的調色盤為何,一律會將 DIB 複製到標準調色盤。 如果您的應用程式使用 DrawDibBegin 搭配 DrawDibDraw,請使用 DrawDibBegin 而非 DrawDibDraw來設定此值。
DDF_JUSTDRAWIT 使用 GDI 繪製影像。 禁止 DrawDib 函式解壓縮、延展或重複顯示影像。 這會去除與 StretchDIBits 函式區別的功能 DrawDib。
DDF_SAME_DRAW 使用 DrawDibDraw的目前繪圖參數。 只有在使用DrawDibDrawDrawDibBegin之後,lpbidxDestdyDestdxSrcdySrc尚未變更時,才使用此值。 此旗標會取代 DDF_SAME_DIBDDF_SAME_SIZE 旗標。
DDF_SAME_HDC 使用目前的 DC 控制碼,以及目前與 DC 相關聯的調色盤。
DDF_UPDATE 上次緩衝處理的點陣圖必須重新繪製。 如果繪圖失敗,則無法使用緩衝影像,而且必須先指定新的影像,才能更新顯示器。

傳回值

如果成功,則傳回 TRUE ,否則傳回 FALSE

備註

此函式會準備將 lpbi 指定的 DIB 繪製至 DC。 影像會延展至 dxDestdyDest所指定的大小。 如果 dxDestdyDest 設定為 -1,則 DIB 會繪製到 1:1 刻度,而不延展。

您可以重新發出 DrawDibBegin、指定新的旗標,以及變更下列至少一項設定來更新 DrawDib DC 的旗標: dxDestdyDestlpbidxSrcdySrc

如果 DrawDibBegin 的參數尚未變更,則對函式的後續呼叫不會有任何作用。

規格需求

   
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 vfw.h
程式庫 Vfw32.lib
Dll Msvfw32.dll

另請參閱

DrawDib 函式