# include“l_bitmap.h”
L_LTIMGCOR_APIL_INTL_SliceBitmap(pBitmap, pOptions, pnDeskewAngle, pfnCallback, pUserData, uFlags)
从射线扫描胶片中提取单个切片。
指向位图句柄的指针,该句柄引用要切片的位图。
指向SLICEBITMAPOPTIONS结构,LEADTOOLS用来切片位图。
NULL或要更新的变量的地址与函数旋转切片位图的量。旋转的量以百分之一度表示。例如,500表示顺时针5度。如果不需要检查旋转量,可以传递NULL。只有当从pSLICEBITMAPOPTIONS标志参数中选择SLC_DESKEW时,该字段才会更新。
指向用于检索每个片的数据和信息的回调函数的指针。此回调函数必须返回正数或错误码(负数)。如果它返回一个错误代码,切片过程将停止,代码将作为返回代码返回。类中描述的函数原型BITMAPSLICECALLBACK函数。
可用于传递回调函数所需的一个或多个附加参数的空指针。要使用此特性,请为变量赋值或创建包含所需字段的结构。然后,在这个参数中,传递变量或结构的地址,将其强制转换为L_VOID *。回调函数在自己的pUserData形参中接收地址,可以将其转换为适当数据类型的指针以访问变量或结构。如果不需要附加参数,则可以在此参数中传递NULL。
保留以备将来使用。必须是0。
| 价值 | 意义 |
|---|---|
| 成功 | 活动很成功。 |
| < 1 | 发生错误。指返回代码. |
此函数不支持签名数据映像。如果将签名数据图像传递给该函数,则返回错误代码ERROR_SIGNED_DATA_NOT_SUPPORTED。
该函数用于从射线扫描胶片中提取单个切片。下图显示了应用L_SliceBitmap函数之前和之后的这些射线图像示例,其中我们使用输出数据在每个单独的切片周围画一条白线。
函数调用前的影片
函数调用后的影片
若要在执行此函数期间更新状态栏或检测用户中断,请参阅L_SetStatusCallback.
该功能支持12位和16位灰度和48位和64位彩色图像。支持12位和16位灰度以及48位和64位彩色图像文件和医疗成像工具包。
此函数不支持32位灰度图像。如果将32位灰度图像传递给该函数,则返回错误代码ERROR_GRAY32_UNSUPPORTED。
必需的dll和库
Win32, x64, Linux。
类型定义结构体tagSLICEBITMAPUSERINFO{L_TCHAR SlicesFolder [L_MAXPATH];L_UINT SlicesCount;}SLICEBITMAPUSERINFO, * pSLICEBITMAPUSERINFO;L_INT EXT_CALLBACK (pBITMAPHANDLE pBitmap)LPRECT lpSliceRect,L_INT得到,L_VOID * pUserData){pSLICEBITMAPUSERINFO pSlicesUserInfo;L_TCHAR szDirectory [L_MAXPATH];L_TCHAR S [30];L_INT nRet;UNREFERENCED_PARAMETER (lpSliceRect);UNREFERENCED_PARAMETER(南);pSlicesUserInfo = (pSLICEBITMAPUSERINFO) pserdata;lstrcpy (szDirectory pSlicesUserInfo - > SlicesFolder);lstrcat (szDirectory、文本(" \ \ "));wsprintf(年代,文本(“% d.bmp”), (pSlicesUserInfo - > SlicesCount));lstrcat (szDirectory S);nRet = L_SaveFile(szDirectory, pBitmap, FILE_BMP, 24, 0, SAVEFILE_FIXEDPALETTE, NULL, NULL, NULL);如果(nRet == SUCCESS){pSlicesUserInfo - > SlicesCount + +;L_FreeBitmap (pBitmap);GlobalFreePtr (pBitmap);}返回成功;}L_INT SliceBitmapExample(HWND HWND, pBITMAPHANDLE pBitmap, LPSTR SlicesFolder){SLICEBITMAPOPTIONS选项;SLICEBITMAPUSERINFO用户数据;L_INT nRet;L_tchar s [30] = text ("");L_TCHAR Message[512] = TEXT("");选项。uStructSize =运算符(SLICEBITMAPOPTIONS);//倾斜切片图像,倾斜角度在-5到5度之间选项。uFlags= SLC_DESKEW|SLC_DSKW_LINEAR|SLC_CUTSLICES;选项。uMaxDeskewAngle = 500;选项。crFill = RGB(0,0,0);memcpy(用户数据。SlicesFolder, L_MAXPATH);用户数据。SlicesCount = 0;nRet = L_SliceBitmap(pBitmap, &Options, NULL, ExampleSliceCB, (L_VOID *)(&UserData), 0);如果(nRet == SUCCESS){lstrcpy(消息、文本(切片图像的个数为));wsprintf(年代,文本(“% d”), (UserData.SlicesCount));lstrcat(Message, S);消息框(hWnd, Message, TEXT(“SliceBitmap榜样”), MB_OK);}其他的{返回nRet;}返回成功;}
帮助收藏
光栅net|C API|c++类库|HTML5 JavaScript
文档net|C API|c++类库|HTML5 JavaScript
医疗net|C API|c++类库|HTML5 JavaScript
医疗网络查看器net
188宝金博怎么下载
支持的平台上
.NET、Java、Android和iOS/macOS程序集
C API/ c++类库
HTML5 JavaScript库
您的邮件已发送给技术支持!应该有人联系!如果你的事情很紧急,请回来聊天。
聊天时间:
周一至周五,美国东部时间上午8:30至下午6:00
感谢您的反馈!
请再次填写表格,开始新的聊天。
所有代理目前都离线。
聊天时间:
星期一至星期五
美国东部时间上午8:30 -下午6点
如需与我们联系,请填写此表格,我们将通过电子邮件与您联系。
