L_ShiftBitmapData

# include“l_bitmap.h”

L_LTIMGCOR_APIL_INTL_ShiftBitmapData (pDstBitmap、pSrcBitmap uSrcLowBit、uSrcHighBit uDstLowBit, uDstBitsPerPixel, uFlags)

选择一个指定数量的从一个8位,12或16位灰度位图到一个面具,面具的地方在一个新的8中,12或16位灰度位图。这个函数是可用的文档和医疗成像工具包。

参数

pBITMAPHANDLEpDstBitmap

指针指向的目标位图包含函数的结果。用户应该免费的位图,再将其传递函数。

pBITMAPHANDLEpSrcBitmap

源位图句柄指针引用8、12或16位灰度位图。pSrcBitmap不会受到影响。

L_UINTuSrcLowBit

起始位的位置,将构建的面具。这个职位是一个从零开始的号码。

L_UINTuSrcHighBit

最后一点的位置。这是包容性(它是面具的一部分)。不应低于价值uSrcLowBit。你也可以通过1,解释为“最高位”(pSrcBitmap- > BitsPerPixel 1)。

L_UINTuDstLowBit

钻头位置选择的面具将会复制到pDstBitmap

L_UINTuDstBitsPerPixel

位/目标位图的像素。允许的值是8、12或16

L_UINT32uFlags

保留以供将来使用。必须是0。

返回

价值 意义
成功 函数是成功的。
< 1 一个错误发生。指返回代码

评论

这个函数可以处理整个图像或一个地区的形象。如果位图有一个地区,效果仅适用于该地区。

这个函数不支持32位灰度图像。它返回错误代码ERROR_GRAY32_UNSUPPORTED如果一个32位的灰度图像是传递给这个函数。

必需的dll和库

平台

Win32 x64, Linux。

另请参阅

功能

主题

例子

这个示例加载位图和应用转变。

L_INT ShiftBitmapDataExample (L_VOID){L_INT nRet;BITMAPHANDLE LeadBitmap;/ *加载位图句柄保存图像。* /BITMAPHANDLE DstBitmap;/ *位图处理结果。* // *加载位图,保持文件的比特每像素* /nRet = L_LoadBitmap (MAKE_IMAGE_PATH(文本(“Slice.tif”&LeadBitmap)),运算符(BITMAPHANDLE), 0 ORDER_BGRORGRAY空,空);如果(nRet ! =成功)返回nRet;/ * 2 5位从一点移动到目的地的高比特位图* /nRet = L_ShiftBitmapData (&DstBitmap &LeadBitmap,2/ * uSrcLowBit * /,6/ * uSrcHighBit * /,3/ * uDstLowBit * /,8/ * uDstBitsPerPixel * /,0);如果(nRet ! =成功)返回nRet;/ /现在我们有DstBitmap生成图像nRet = L_SaveBitmap (MAKE_IMAGE_PATH(文本(“Result.BMP”))、&DstBitmap FILE_BMP, 24岁,0,NULL);如果(nRet ! =成功)返回nRet;如果(DstBitmap.Flags.Allocated)L_FreeBitmap (&DstBitmap);/ /免费的位图如果(LeadBitmap.Flags.Allocated)L_FreeBitmap (&LeadBitmap);返回成功;}

LEADTOOLS光栅成像C API的帮助
188金宝搏的网址客服|支持|联系我们|知识产权的通知
©1991 - 2021领先的技术公司。保留所有权利。