# include“l_bitmap.h”
L_LTTMB_APIL_INTL_BrowseDir(pszPath, pszFilter, pThumbOptions, bStopOnError, binclesubdirs, bExpandMultipage, lSizeDisk, lSizeMem, pfnBrowseDirCB, pUserData)
浏览指定目录中支持的图像,并为找到的每个图像文件生成缩略图。
字符串,包含要浏览图像的目录的名称
字符串,包含用于浏览的文件筛选器。* . jpg。
指向包含浏览器缩略图创建选项的结构的指针。
标志,指示发生错误时是否停止生成缩略图。可能取值为:
价值 | 意义 |
---|---|
真正的 | 如果发生错误,停止生成缩略图。 |
假 | 如果发生错误,不要停止生成缩略图。 |
标志,指示在查找文件时是否递归子目录。可能取值为:
价值 | 意义 |
---|---|
真正的 | 递归子目录。 |
假 | 不要递归子目录。 |
标志,指示是否展开多页文件。如果为True,将加载多页文件中的每一页。可能取值为:
价值 | 意义 |
---|---|
真正的 | 展开多页文件,从多页文件中加载每一页。 |
假 | 不要展开多页文件。 |
加载文件的最大大小。使用此选项可限制浏览将尝试加载的图像的大小。通过0表示没有限制。
内存中要加载的图像的最大大小。使用此选项可限制浏览将尝试加载的图像的大小。通过0表示没有限制。
处理每个生成的缩略图所需的回调函数。为了处理缩略图,必须指定一个回调函数。的callback function must adhere to the function prototype described inBROWSEDIRCALLBACK函数。
可用于传递回调函数所需的一个或多个附加参数的空指针。要使用此特性,请为变量赋值或创建包含所需字段的结构。然后,在这个参数中,传递变量或结构的地址,将其强制转换为L_VOID *。回调函数在自己的pUserData形参中接收地址,可以将其转换为适当数据类型的指针以访问变量或结构。如果不需要附加参数,则可以在此参数中传递NULL。
价值 | 意义 |
---|---|
成功 | 活动很成功。 |
< 1 | 发生错误。指返回代码. |
使用此函数浏览目录以查找LEADTOOLS支持的图像文件。将加载找到的每个受支持的文件,并为图像生成缩略图。在回调函数中,您可以以应用程序所需的任何方式处理缩略图。例如,您可以将缩略图添加到LEADTOOLS ImageList控件中。
如果pThumbOptions->nHeight或pThumbOptions->nWidth指定为0,图像将不会被调整大小。中返回整个图像BROWSEDIRCALLBACK函数。
如果为pThumbOptions->nHeight或pThumbOptions->nWidth指定-1,图像将根本不会被加载。的BROWSEDIRCALLBACK函数将为每个文件调用,但只接收文件信息,而不是有效的图像。
必需的dll和库
x64 Win32。
这个例子将浏览一个文件夹,并为找到的所有受支持的图像生成缩略图。
L_INT EXT_CALLBACK BrowseDirCallback(pBITMAPHANDLE pBitmap
L_TCHAR * pszFilename,
pFILEINFO pFILEINFO,
L_INT nStatusCode,
L_INT nPercent,
L_VOID * pUserData)
{
L_TCHAR buf [200];
UNREFERENCED_PARAMETER (pUserData);
UNREFERENCED_PARAMETER (nPercent);
UNREFERENCED_PARAMETER (pFileInfo);
UNREFERENCED_PARAMETER (pBitmap);
开关(nStatusCode)
{
情况下BROWSE_PRELOAD:/*通知图像即将被加载*/
返回成功;
情况下BROWSE_LOADING: / *在加载图像的过程*/
返回成功;
情况下SUCCESS:/*成功生成缩略图*/
/*对缩略图做一些事情,即插入到ImageList控件*/
/ *……* /
打破;
情况下browse_skip:/*跳过一个大文件
/*向用户*/报告错误
wsprintf (buf文本(“跳过的文件:%s !”), pszFilename);
消息框(NULL, buf, TEXT(“跳过”), MB_OK);
返回成功;
默认的:
如果(nStatusCode < SUCCESS)
{
/*向用户*/报告错误
wsprintf (buf文本("错误:%d -生成缩略图!\n%s\n按OK继续!”), nStatusCode, pszFilename);
如果消息框(NULL, buf, TEXT(“错误”), | mb_iconerror) == idcancel)
返回(ERROR_USER_ABORT);
}
}
返回成功;
}
L_INT BrowseDirExample (L_VOID)
{
L_INT nRet;
THUMBOPTIONS选择;
memset(选择0运算符(THUMBOPTIONS));
Opt.uStructSize =运算符(THUMBOPTIONS);
Opt.nWidth = 115;/*缩略图宽度*/
Opt.nHeight = 115;/*缩略图高度*/
Opt.nBits = 24;/* 24位*/
Opt.uCRFlags = 0;/*忽略,b/c我们指定24位*/
Opt.bMaintainAspect = TRUE;/*在创建缩略图时保持aspect */
Opt.bForceSize = FALSE;/*不强制大小*/
Opt.crBackColor = RGB(0,0,0);/*忽略背景颜色*/
Opt.bLoadStamp = TRUE;/*试一试装载邮票如果现在在文件* /
Opt.bResample = TRUE;/ *重新取样,为质量更好的缩略图*/
nRet = L_BrowseDir(MAKE_IMAGE_PATH(L_TEXT("")),
文本(“* . jpg”),
选择,
FALSE, /*不停止错误*/
假的,/ *做不递归子目录*/
假的,/ *做不展开多页文件*/
0, /*不限制文件大小*/
4000*1024,/*设置图像大小限制为4MB */
BrowseDirCallback,/* callback */
/*没有用户数据*/
返回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点
如需与我们联系,请填写此表格,我们将通过电子邮件与您联系。