Loads the specified annotation file.


#include "l_bitmap.h"

L_LTANN_API L_INT L_AnnLoad(pFile, phObject, pLoadOptions)


L_TCHAR * pFile

Character string containing the name of the file to load.


Address of the variable to be updated with the handle to the outermost (root) container object from the file.


Pointer to optional extended load options. Pass NULL to use the default load options.


Value Meaning
SUCCESS The function was successful.
< 1 An error occurred. Refer to Return Codes.


Before calling this function, you must declare a variable of data type HANNOBJECT. Then, pass the address of the variable in the phObject parameter. This function will update the variable with the handle of the outermost (root) object from the file (typically a container object). When this variable is no longer needed, you must free the allocated memory by calling L_AnnDestroy for this variable.

L_AnnLoad will load annotations stored in LEAD files. It will also look for annotations stored as a Wang compatible TIFF tag in TIF files, and load those annotations.

After the file is loaded, use L_AnnSetWnd to associate a window to the container.

The page number used when loading annotations is obtained from the LOADFILEOPTION structure.

For more information about loading and pasting automated annotations, refer to Loading and Pasting Automated Annotations.

Required DLLs and Libraries


Win32, x64.

See Also




For a complete sample code, refer to the \Examples\Annotation\C\Annotate demo.
This example loads annotations from a file and redraws the image to display the loaded annotations.

L_INT AnnLoadExample(L_HWND hWnd, L_TCHAR * pszAnnFileName, HANNOBJECT hContainer /* Container annotation object */) 
   L_INT       nRet; 
   HANNOBJECT  TmpContainer; 
   L_TCHAR     szMessage[80]; 
   L_HDC       hdc; 
   L_RECT      rAnnBounds; 
   L_RECT      rAnnBoundsName; 
   if (!pszAnnFileName) 
      return ERROR_INV_PARAMETER; 
   nRet = L_AnnLoad(pszAnnFileName, &TmpContainer, NULL); 
   if (nRet != SUCCESS) 
      wsprintf(szMessage, TEXT("Error: number %d"), nRet); 
      _tprintf(_T("%s"), szMessage); 
      return nRet; 
   // Inserts the loaded annotations into hContainer and lets you see the results of the load. 
   nRet = L_AnnInsert(hContainer, TmpContainer, L_TRUE); 
   if (nRet != SUCCESS) 
      return nRet; 
   hdc = GetDC(hWnd); 
   nRet = L_AnnGetBoundingRect(hContainer, &rAnnBounds, &rAnnBoundsName); 
   if (nRet != SUCCESS) 
      return nRet; 
   return L_AnnDraw(hdc, &rAnnBounds, hContainer); 

Help Version 22.0.2023.7.11
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Raster Imaging C API Help

Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.