Loads the specified frames bitmaps (Color, Opacity and Pre-multiplied opacity) stored in the specified JPEG 2000 file in memory.
#include "ltwrappr.h"
L_INT LJp2FileFormat::ReadFramesMemory(pBuffer, uBufferSize, pComposite, pFrames, uNumOfFrames, nBitsPerPixel, nOrder, pLoadOptions, pFileInfo, pReadCallBack, pUserData)
Pointer to a JPEG 2000 file in memory.
Size of JPEG 2000 file in bytes.
Pointer to the L_JP2_JPXCOMPOSITE structure, that references L_JP2_JPXBITMAPS bitmaps to be filled with image data.
Frames indices. An array of unsigned integers specifies the indices of the frames to be loaded from the file.
Number of frames to be loaded. This value specifies the size of pFrames.
Resulting bitmap pixel depth. If zero [0], the bitmap will have the original files pixel depth (do not convert).
The desired color order. Possible values are:
Value | Meaning |
---|---|
ORDER_RGB | [0] Read-green-blue order. |
ORDER_BGR | [1] Blue green-red order. |
ORDER_GRAY | [2] 12 or 16-bit grayscale image. 12 and 16-bit grayscale images are supported in Document/Medical imaging products only. |
0 | The data is 8 bits per pixel or less. |
ORDER_RGBORGRAY | [3] Load the image as red, green, blue, OR as a 12 or 16-bit grayscale image. 12 and 16-bit grayscale images are supported in Document/Medical imaging products only. |
ORDER_BGRORGRAY | [4] Load the image as blue, green, red, OR as a 12 or 16-bit grayscale image. 12 and 16-bit grayscale images are supported in Document/Medical imaging products only. |
ORDER_ROMM | [5] ROMM order. ROMM only supports 24 and 48-bit images. |
ORDER_BGRORGRAYORROMM | [6] Load the image as blue, green, red, OR as a 12 or 16-bit grayscale image OR as ROMM. 12 and 16-bit grayscale images are supported in Document/Medical imaging products only. |
Pointer to optional extended load options. Pass NULL to use the default load options.
Pointer to a FILEINFO structure. If nothing is known about the file pass NULL.
Optional callback function for additional processing.
If you do not provide a callback function, pass NULL.
If you do provide a callback function, use the function pointer as the value of this parameter.
The callback function must adhere to the function prototype described in the LFile::LoadFileCallBack function.
Void pointer that you can use to pass one or more additional parameters used by the callback function.
Value | Meaning |
---|---|
SUCCESS | The function was successful. |
< 1 | An error occurred. Refer to Return Codes. |
LJp2FileFormat::ReadFramesMemory loads the specified frames bitmaps (Color, Opacity and Pre-multiplied opacity) stored in the specified JPEG 2000 file in memory. You must free this structure by calling the LJp2FileFormat::FreeComposite function. Also you must free structure bitmaps by calling the LBitmapBase::Free function. All of the engines boxes will be reset.
Win32, x64.
This example reads specific frame in JPEG 2000 file format
L_INT LJp2FileFormat__ReadFramesMemoryExample(L_UINT8* pFileBuffer, L_SIZE_T uFileSize)
{
LJp2FileFormat Engine;
L_INT nRet;
L_JP2_JPXCOMPOSITE Composite = {0};
L_UINT32 puFrames[1] = {0};
Composite.uStructSize = sizeof(L_JP2_JPXCOMPOSITE);
/*Read a frame*/
puFrames[0] = 0;
nRet = Engine.ReadFramesMemory( pFileBuffer, uFileSize, &Composite, puFrames, 1, 24, ORDER_BGR, NULL, NULL, NULL, NULL);
if(nRet != SUCCESS)
return nRet;
/*you may use the bitmaps*/
//Composite.pBitmaps[0].ColorBitmap;
for (L_UINT32 index=0;index<Composite.uNumOfBitmaps; index++)
{
L_FreeBitmap(&Composite.pBitmaps[index].ColorBitmap);
}
/*Free comoposite structure*/
nRet = Engine.FreeComposite( &Composite);
if(nRet != SUCCESS)
return nRet;
return SUCCESS;
}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document