L_ReadFileStamp2

Include

#include "l_bitmap.h"

Syntax

L_LTFIL_API L_INT L_ReadFileStamp2(pszFile, pBitmap, uStructSize, pLoadOptions, pFileInfo)


L_TCHAR* pszFile; /* file name */
pBITMAPHANDLE pBitmap; /* pointer to the target bitmap handle */
L_UINT uStructSize; /* size, in bytes, of the structure pointed to by pBitmap */
pLOADFILEOPTION pLoadOptions; /* pointer to optional extended load options */
pFILEINFO pFileInfo; /* pointer to file information */

Summary

Reads a thumbnail image stored in a file and loads it into the specified bitmap.

Parameters

Parameter Description
pszFile Character string containing the file name.
pBitmap Pointer to the bitmap handle referencing the bitmap that will contain the thumbnail image.
uStructSize Size, in bytes, of the structure pointed to by pBitmap, for versioning. Use sizeof(BITMAPHANDLE).
pLoadOptions Pointer to optional extended load options. Pass NULL to use the default load options.
pFileInfo Pointer to information about the file.

Returns

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

Remarks

Only the EXIF, CMP, JFIF and FlashPix formats support stamps. However, not all files of these formats contain stamps.

L_ReadFileStamp2 is like L_ReadFileStamp. The difference is that L_ReadFileStamp2 takes a pFILEINFO parameter in order to reduce the number of calls to FILEINFO. This improves the performance of the FileOpen common dialog when loading certain file formats.

NOTE: At this time, there are no multi-page formats that support stamps.

Required DLLs and Libraries

LTFIL
File format DLLs
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, Linux.

See Also
Functions: L_ReadFileStamp
L_WriteFileStamp
Topics: Raster Image Functions: Loading and Saving Stamp Images
Loading and Saving Images

For a list of functions that utilize the LOADFILEOPTION or SAVEFILEOPTION structures, refer to Functions Utilizing the LOADFILEOPTION or SAVEFILEOPTION structures.

Example

The following example reads a thumbnail from a JPEG image and loads it into the specified bitmap. Then it saves the thumbnail image into a CMP image. The example speeds up the stamp reading by indicating the file format. The speedup can be significant for file formats for which detecting the format is slow.

C API
#define MAKE_IMAGE_PATH(pFileName) TEXT("C:\\Users\\Public\\Documents\\LEADTOOLS Images\\")pFileName 
 
 
L_INT ReadFileStampExample2(L_VOID) 
{ 
   L_INT nRet; 
   BITMAPHANDLE StampBitmap; 
   FILEINFO FileInfo = {0}; 
   FileInfo.Flags = FILEINFO_FORMATVALID; 
   FileInfo.Format = FILE_JPEG; 
 
   nRet = L_ReadFileStamp2(MAKE_IMAGE_PATH(TEXT("cannon.jpg")), 
                   &StampBitmap, sizeof(BITMAPHANDLE), NULL, &FileInfo); 
   if(nRet != SUCCESS) 
      return nRet; 
 
      nRet = L_SaveBitmap(MAKE_IMAGE_PATH(TEXT("thumbnail.cmp")),  
                   &StampBitmap, FILE_CMP, 24, 2, NULL);  
    
   if(StampBitmap.Flags.Allocated) 
      L_FreeBitmap(&StampBitmap); 
 
   return nRet; 
} 

Help Version 19.0.2017.10.27
Products | Support | Contact Us | Copyright Notices
© 1991-2017 LEAD Technologies, Inc. All Rights Reserved.
LEADTOOLS Raster Imaging C API Help