# include“l_bitmap.h”
L_LTJP2_APIL_INTEXT_FUNCTIONL_Jp2ExtractFramesBuffer(hJp2, pInFileName, lpBuffer, puBufferSize, puFrames, uNumOfFrames)
提取指定的帧puFrames
从输入文件中保存到一个新的JPEG 2000文件中,该文件由函数分配的内存缓冲区只包含提取的帧、报头和代码流,而不通过解压缩/压缩过程。
创建的jpeg2000引擎句柄L_Jp2Create函数。
字符串,包含要从中提取帧的jpeg2000文件的名称。
指向要用字节数组更新的指针的指针,其中包含只提取了帧的jpeg2000文件。你必须通过调用Windows GlobalFree()函数来释放这个缓冲区。
要用内存缓冲区的大小(以字节为单位)更新的变量的地址。
无符号整数数组指定要从输入JPEG 2000文件中提取的帧的索引。所有指标应以0为基础。如果任何帧索引超出了帧数,函数将返回ERROR_INV_PARAMETER。
要提取的帧数。的大小puFrames
数组中。
价值 | 意义 |
---|---|
成功 | 函数成功。 |
< 1 | 一个错误发生。指返回代码. |
L_Jp2ExtractFramesBuffer从输入文件中提取指定的帧,并将它们保存到一个新的JPEG 2000文件中,该文件由函数分配的内存缓冲区只包含提取的帧头和代码流,而不通过解压缩/压缩过程,因此它节省处理器时间和内存。此函数非常适用于服务器应用程序,其中多个客户端请求一个jpeg2000文件的特定帧,因此,与其解压然后压缩帧,此函数只复制所需的帧数据来生成它们,并将数据保存到内存缓冲区中的一个新的jpeg2000文件中。
所需的dll和库
x64 Win32。
这个例子从jpeg文件中提取一个帧。
(L_UINT8** lpOutBuffer, L_SIZE_T * puSize)
{
L_HJP2 hEngine;
L_JP2_FILEINFO Jp2FileInfo;
L_UINT32 puFrames [1];
* lpOutBuffer =零;
* puSize = 0;
/*创建JPEG 2000引擎句柄*/
hEngine = L_Jp2Create ();
Jp2FileInfo。uStructSize =运算符(L_JP2_FILEINFO);
L_Jp2GetFileInfo (hEngine MAKE_IMAGE_PATH(文本(“image1.jpx”)), &Jp2FileInfo);
如果(Jp2FileInfo。uNumOfFrames< 2)
返回0;
/*提取第二帧
puFrames [0] = 1;
L_Jp2ExtractFramesBuffer (hEngine MAKE_IMAGE_PATH(文本(“image1.jpx”)), lpOutBuffer, puSize, puFrames, 1);
/*空闲文件信息结构*/
L_Jp2FreeFileInfo (hEngine &Jp2FileInfo);
* / / *破坏引擎处理
L_Jp2Destroy (hEngine);
返回成功;
}
帮助收藏
光栅net|C API|c++类库|HTML5 JavaScript
文档net|C API|c++类库|HTML5 JavaScript
医疗net|C API|c++类库|HTML5 JavaScript
医疗Web查看器net
188宝金博怎么下载
支持的平台上
.NET、Java、Android和iOS/macOS程序集
C API/ c++类库
HTML5 JavaScript库
您的邮件已发送到支持!应该有人联系你!如果你的事情很紧急,请回来聊天。
聊天时间:
周一至周五,美国东部时间上午8:30至下午6:00
感谢您的反馈!
请再次填写表格开始新的聊天。
所有代理目前都离线。
聊天时间:
周一-周五
上午8:30 -下午6点
如需联系我们,请填写此表格,我们将通过电子邮件与您联系。