關於 DrawDib 函式
[與此頁面 DrawDib相關聯的功能是舊版功能。 它已被 MediaComposition 類別取代。 MediaComposition 類別已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaComposition 類別 ,而不是 DrawDib。 Microsoft 建議盡可能重寫使用舊版 API 的現有程式碼,以使用新的 API。]
整體上,DrawDib 函式類似于 StretchDIBits 函式,因為它們提供影像延展和刪除功能。 不過,DrawDib 函式支援影像解壓縮、資料串流,以及更大的顯示配接器數目。
在某些情況下,使用 DrawDib 函式會很有説明。 不過, StretchDIBits 比 DrawDib 函式更多元,而且當 DrawDib 函式無法提供所需的功能時,應該使用。 下列清單描述決定要使用 DrawDib 函數或 StretchDIBits時應考慮的因素。
色彩表格資訊格式。 DrawDib 函式會顯示使用色彩表格 DIB_RGB_COLORS 格式的影像。 如果您的應用程式市集色彩表格資訊中具有 DIB_PAL_COLORS 或 DIB_PAL_INDICES 格式的影像,您必須使用 StretchDIBits 來顯示它們。
傳輸模式。 DrawDib 函式需要您的應用程式使用 SRCCOPY 傳輸模式。 如果您的應用程式使用 StretchDIBits 搭配 SRCCOPY以外的傳輸模式,您應該繼續使用 StretchDIBits。 同樣地,如果您需要在應用程式中使用其他點陣作業,例如 XOR,請使用 StretchDIBits。
視訊和動畫播放的品質。 您可以將 DrawDib 函式用於資料串流應用程式,例如播放視訊剪輯和動畫序列的應用程式。 DrawDib 函式優於 StretchDIBits ,因為它們提供高品質的影像,並改善播放期間的動作。
顯示配接器。 DrawDib 函式支援比 StretchDIBits 支援的顯示配接器數目還多。 DrawDib 函式支援使用 4 位影像深度提供 16 色盤的 VGA 色彩配接器、使用 8 位影像深度提供 256 色板的 SVGA 配接器,以及使用 16 位、24 位和 32 位影像深度提供數千種色彩的色彩顯示配接器。
DrawDib 函式也會改善在顯示配接器上顯示影像的速度和品質,並具有更有限的功能。 例如,使用 8 位顯示器配接器時,DrawDib 會有效率地將真色影像轉換成 256 種色彩。 使用 4 位顯示器配接器時,它們也會使用 8 位影像。
影像延展。 如同 StretchDIBits,DrawDib 函式會使用來源和目的地矩形來控制顯示的影像部分。 您可以藉由改變來源和目的地矩形的位置和大小,來裁剪不想要的影像部分或延展影像。 如果顯示驅動程式不支援影像延展,DrawDib 函式會提供比 StretchDIBits 更有效率的延展功能。
壓縮的影像。 DrawDib 函式會繪製您具有解壓縮器的任何格式,包括 RLE) 、和 411 YUV 的執行時間編碼 (。 Windows 包含可選擇性安裝的 RLE 和 一般解壓縮程式。
Windows 不再支援 Indeo 編解碼器。
相關主題