L_Jp2AppendBoxes (original) (raw)
Summary
Appends boxes of uBoxType
to the specified file.
Syntax
#include "l_bitmap.h"
L_LTJP2_API L_INT EXT_FUNCTION L_Jp2AppendBoxes(hJp2, pszFile, uBoxType, pBoxes, uNumOfBoxes)
Parameters
L_HJP2 hJp2
JPEG 2000 engine handle that was created by the L_Jp2Create function.
L_TCHAR * pszFile
Character string that contains the name of the file to append boxes.
eJP2BOXTYPE uBoxType
The type of the boxes to be appended.
L_VOID * pBoxes
Point to an array of boxes of type uBoxType
.
L_UINT uNumOfBoxes
Number of boxes in the array.
Returns
Value | Meaning |
---|---|
SUCCESS | The function was successful. |
< 1 | An error occurred. Refer to Return Codes. |
Comments
This function appends JPEG 2000 boxes to the specified file. If the specified box type is L_JP2_IPR, L_JPX_IPR, L_JPX_GTSO, or L_JPX_COMPOSITION, only the first box will be appended, because a JPEG 2000 file cannot have more than one box each of these types. Boxes of type uBoxType
will be reset and updated with the new appended boxes only.
This function does not append L_JP2_RESOLUTION_BOX box it returns ERROR_INV_PARAMETER error, this box can be set by L_Jp2SetBoxes.
Required DLLs and Libraries
- LTJP2
- LTIMGEFX
- LFJ2K
- For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application.
Platforms
Win32, x64.
See Also
Functions
- L_Jp2AppendBoxesMemory
- L_Jp2AppendFrames
- L_Jp2AppendFramesMemory
- L_Jp2AppendGMLDataMemory
- L_Jp2ReadBox
- L_Jp2ReadBoxMemory
Topics
- Programming with JPEG 2000 Features
- Raster Image Functions: Working with JPEG 2000
- Raster Image Functions: Working with JPX
- Programming with JPX Features
Example
This example appends a box to already existing JPEG 2000 file.
L_INT Jp2AppendBoxesExample(L_UINT8* pXMLData, L_SIZE_T uSize)
{
L_HJP2 hEngine;
L_INT nRet;
L_JP2_XML_BOX XMLBox;
// Create JPEG 2000 engine handle
hEngine = L_Jp2Create();
if (hEngine == NULL)
return ERROR_INV_HANDLE;
// Create an XML box
XMLBox.uStructSize = sizeof(L_JP2_XML_BOX);
XMLBox.pData = pXMLData;
XMLBox.uDataSize = uSize;
// Append XML box to a JPX file
nRet = L_Jp2AppendBoxes(hEngine, MAKE_IMAGE_PATH("image1.jp2"), L_JP2B_XML, &XMLBox, 1);
if (nRet != SUCCESS)
return nRet;
// Destroy engine handle
nRet = L_Jp2Destroy(hEngine);
if (nRet != SUCCESS)
return nRet;
return SUCCESS;
}
LEADTOOLS Raster Imaging C API Help