L_SetPDFOptions

Summary

Sets the file options used by LEADTOOLS when loading PDF, PS or EPS files.

Syntax

#include "l_bitmap.h"

L_LTFIL_API L_INT L_SetPDFOptions(pOptions)

Parameters

pFILEPDFOPTIONS pOptions

Pointer to a structure that contains the options to use when loading PDF, PS or EPS files.

Returns

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

Comments

The FILEPDFOPTIONS.uStructSize member must be set before calling this function. If a PDF, PS or EPS file is loaded without first calling this function, the following default values will be used:

FILEPDFOPTIONS Member Default value
bUseLibFonts TRUE
nDisplayDepth 24
nTextAlpha 4
nGraphicsAlpha 1

The values set by this function are valid for the current thread. To change the values used by the current thread, this function must be called again.

Both font and graphics anti-aliasing slow down the drawing of the resulting bitmap.

Font and graphics anti-aliasing can only be used if nDisplayDepth is 8 or greater.

Required DLLs and Libraries

Platforms

Win32, x64, Linux.

See Also

Functions

Topics

Example

This example loads a PDF file, with a display depth defined by the user and without using font anti-aliasing

L_INT SetPDFOptionsExample(L_TCHAR     * pszPDFFileName, 
                                           pBITMAPHANDLE pBitmap, 
                                           L_INT         nDisplayDepth) 
{ 
   L_INT nRet; 
   FILEPDFOPTIONS PdfOptions; 
 
   /* Get the current PDF options */    
   nRet = L_GetPDFOptions(&PdfOptions,sizeof(FILEPDFOPTIONS)); 
   if(nRet != SUCCESS) 
      return nRet; 
 
   /*Change display depth */ 
   switch(nDisplayDepth) 
   { 
      /*We only accept 1,4,8 or 24*/ 
      case 1   : 
      case 4   : 
      case 8   : 
      case 24  : 
         PdfOptions.nDisplayDepth = nDisplayDepth; 
         break; 
      default : 
         MessageBox (NULL, TEXT("Invalid Display Depth"), TEXT("Notice"), MB_OK); 
         /* current value is used instead of value passed by the user */ 
   } 
 
   /* No font anti-aliasing*/ 
   PdfOptions.nTextAlpha = 1; 
 
   /* Set new PDF options */ 
   nRet = L_SetPDFOptions(&PdfOptions); 
   if(nRet != SUCCESS) 
      return nRet; 
 
   if(pBitmap->Flags.Allocated) 
      L_FreeBitmap(pBitmap); 
 
   /* Now load the PDF file */ 
   nRet = L_LoadBitmap(pszPDFFileName, 
                pBitmap, 
                sizeof(BITMAPHANDLE), 
                0, 
                ORDER_RGB, 
                NULL, 
                NULL); 
   if(nRet != SUCCESS) 
      return nRet; 
   nRet = L_SaveBitmap(MAKE_IMAGE_PATH(TEXT("Result.BMP")), pBitmap, FILE_BMP, 24, 0, NULL); 
   if(nRet != SUCCESS) 
      return nRet; 
   return SUCCESS; 
} 

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.