LNITFFile::GetTextSegment

#include "ltwrappr.h"

L_INT LNITFFile::GetTextSegment(uIndex, pLBuffer)

L_UINT uIndex;

/* index of the text data in the text segment */

LBuffer * pLBuffer;

/* pointer to a LBuffer object to be updated */

Retrieves a buffer for the text data at a specified index in the text segment.

Parameter

Description

uIndex

A zero-based index of the text data in the text segment.

pLBuffer

Pointer to LBuffer object to be updated with the text data.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Required DLLs and Libraries

LTNTF

For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application.

See Also

Functions:

LNITFFile::Create, LNITFFile::Destroy, LNITFFile::GetStatus, LNITFFile::SaveFile, LNITFFile::AppendImageSegment, LNITFFile::AppendGraphicSegment, LNITFFile::AppendTextSegment, LNITFFile::SetVector, LNITFFile::GetVector, LNITFFile::GetNITFHeader, LNITFFile::SetNITFHeader, LNITFFile::GetGraphicHeaderCount, LNITFFile::GetGraphicHeader, LNITFFile::SetGraphicHeader, LNITFFile::GetImageHeaderCount, LNITFFile::GetImageHeader, LNITFFile::SetImageHeader, LNITFFile::GetTextHeaderCount, LNITFFile::SetTextHeader, LNITFFile::GetTextHeader.

Topics:

NITF Functions: Getting and Setting Text Data

 

Programming with LEADTOOLS NITF Functions

Example

#define MAKE_IMAGE_PATH(pFileName) TEXT("C:\\Users\\Public\\Documents\\LEADTOOLS Images\\")pFileName
L_INT LNITFFile_GetTextSegmentExample()
{
   WRPUNLOCKSUPPORT();
   //Parse the NITF file
   LNITFFile Nitf; 
   Nitf.Create (MAKE_IMAGE_PATH(TEXT("test.ntf")));
   L_UINT uFlags = 0; 
   TXTHEADER TextHeader; 
   L_UINT uCount; 
   L_UINT i = 0; 
   memset(&TextHeader, 0, sizeof(TXTHEADER)); 
   // Check if the NITF is empty or invalid
   uFlags = Nitf.GetStatus ();
   if((uFlags & NITF_FILE_EMPTY) == NITF_FILE_EMPTY) 
   {
      MessageBox(NULL, TEXT("NITF file is empty"), 0, 0);
      return SUCCESS;
   }
   if((uFlags & NITF_FILE_VALID) != NITF_FILE_VALID) 
   {
      MessageBox(NULL, TEXT("NITF file is invalid"), 0, 0);
      return SUCCESS;
   }
   // Update the Text header
   uCount = Nitf.GetTextHeaderCount ();
   for( i = 0; i < uCount; ++i) 
   {
      LBuffer Buffer;
      Nitf.GetTextSegment(i, &Buffer);
      MessageBoxA(NULL, (LPCSTR)Buffer.Lock(), "Text Segment", 0);
      Buffer.Unlock();
   }
   Nitf.SaveFile (MAKE_IMAGE_PATH(TEXT("test1.ntf")));
   Nitf.Destroy ();
   return SUCCESS;
}