StretchDIBits將DIB中矩形區(qū)域內(nèi)像素使用的顏色數(shù)據(jù)拷貝到指定的目標矩形中。如果目標矩形比源矩形大小要大,那么函數(shù)對顏色數(shù)據(jù)的行和列進行拉伸,以與目標矩形匹配。如果目標矩形大小要比源矩形小,那么該函數(shù)通過使用指定的光柵操作對行列進行壓縮。
stretchdibits的參數(shù)有哪些?
hdc:指向目標設備環(huán)境的句柄。
XDest:指定目標矩形左上角位置的X軸坐標,按邏輯單位來表示坐標。
YDest:指定目標矩形左上角的Y軸坐標,按邏輯單位表示坐標。
nDestWidth:指定目標矩形的寬度。
nDestHeight:指定目標矩形的高度。
XSrc:指定DIB中源矩形(左上角)的X軸坐標,坐標以像素點表示。
YSrc:指定DIB中源矩形(左上角)的Y軸坐標,坐標以像素點表示。
nSrcWidth:按像素點指定DIB中源矩形的寬度。
nSrcHeight:按像素點指定DIB中源矩形的高度。
lpBits:指向DIB位的指針,這些位的值按字節(jié)類型數(shù)組存儲,有關更多的信息,參考下面的備注一節(jié)。
lpBitsInfo:指向BITMAPINFO結構的指針,該結構包含有關DIB方面的信息。
iUsage:表示是否提供了BITMAPINFO結構中的成員bmiColors,如果提供了,那么該bmiColors是否包含了明確的RGB值或索引。參數(shù)iUsage必須取下列值,這些值的含義如下:
DIB_PAL_COLORS:表示該數(shù)組包含對源設備環(huán)境的邏輯調(diào)色板進行索引的16位索引值。
DIB_RGB_COLORS:表示該顏色表包含原義的RGB值,若想了解更多的信息,請參考下面?zhèn)渥⒁还?jié)。
dwRop:指定源像素點、目標設備環(huán)境的當前刷子和目標像素點是如何組合形成新的圖像。若想了解更多信息,請參考下面的備注一節(jié)。
返回值:如果函數(shù)執(zhí)行成功,那么返回值是拷貝的掃描線數(shù)目,如果函數(shù)執(zhí)行失敗,那么返回值是GDI_ERROR。
Windows NT:若想獲取更多錯誤信息,請調(diào)用GetLastError函數(shù)。Windows 98、Windows NT 5.0及以后版本:如果設備驅(qū)動程序不支持傳送給StretchDIBits的JPEG文件格式的圖像,則該函數(shù)將失敗,并返回GEI_ERROR。
備注:自底向上的DIB的起始點為左下角,自頂向下DIB的起始點為左上角。如果nSrcWidth和nDestWidth參數(shù)的符號不同?;蚴莕SrcHeight和nDesHeight參數(shù)的符號不同。那么函數(shù)StretchDIBits將創(chuàng)建位圖的鏡像。如果NsrcWidth和NdestWidth符號不同,那么函數(shù)將沿著X軸創(chuàng)建位圖鏡像。如果NsrcHeight和NdestHeight符號不同,那么函數(shù)將沿著Y軸創(chuàng)建位圖鏡像。
對于Windows 98、Windows NT 5.0及以后版本:該函數(shù)允許將JPEG圖像用作源圖像,每個參數(shù)如何使用其實仍是一樣的。如果BITMAPINFOHEADER結構中的成員biCompression為BI_JPEG,那么參數(shù)lpBits指向的是一個包含JPEG圖像的緩沖區(qū)。BITMAPINFOHEADER結構中的biSizeImage成員指定了該緩沖區(qū)的大小。參數(shù)iUsage必須設為DIB_RGB_COLORS。dwRop必須設為SRCCOPY。為確保打印時可以有正確的圖元文件假脫機操作。應用程序應在調(diào)用StretchDIBits函數(shù)之前調(diào)用CHECKJPEGFORMAT轉(zhuǎn)義符,以確認打印機識別JPEG圖像。
ICM:執(zhí)行顏色管理。如果指定的BITMAPINFO結構中的bmiHeader不包含BITMAPV4HEADER或BITMAPV5HEADER,那么當前設備環(huán)境的顏色配置(profile)被用作源顏色配置(profile)。如果沒有顏色檔案,那么就使用RGB。如果指定的BITMAPINFO結構中的成員bmiHeader包含了BITMAPV4HEADER或BITMAPV5HEADER,那么將把位圖標頭中指定的顏色配置(profile)用作源顏色配置。
速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:不支持;頭文件:wingdi.h:庫文件:gdi32.lib。
關鍵詞: stretchdibits是什么意思 stretchdibits的參數(shù)有哪些 StretchDIBits速度測試 StretchDIBits用法