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. |
Win32, x64, Linux.
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.
#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;
}
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET