SAVEDLGPARAMS

typedef struct _SAVEDLGPARAMS
{
   L_UINT uStructSize;
   L_TCHAR szFileName [L_MAXPATH];
   pBITMAPHANDLE pBitmap;
   L_INT nBitsPerPixel;
   L_INT nFormat ;
   L_INT nQFactor ;
   L_UINT uSaveMulti ;
   L_BOOL bSaveInterlaced ;
   L_INT nPasses ;
   L_BOOL bSaveWithStamp
   L_INT nStampBits ;
   L_INT nStampWidth ;
   L_INT nStampHeight ;
   L_INT nPageNumber;
   L_UINT uFileTypeIndex;
   L_UINT uSubTypeIndex;
   FILEJ2KOPTIONS FileJ2KOptions;
   LPFILESAVEFORMAT pFileFormats;
   L_UINT uFileFormatsCount;
   L_UINT32 uDlgFlags;
   LTCOMMDLGHELPCB pfnHelpCallback;
   L_VOID L_FAR *pHelpCallBackUserData;
   FILEJBIG2OPTIONS FileJBIG2Options;
} SAVEDLGPARAMS, L_FAR* LPSAVEDLGPARAMS;

The SAVEDLGPARAMS structure provides information used to initialize the dialog box created by the L_DlgSave function. After the user closes the dialog box, this structure is updated with information about the user's selections.

Member

Description

uStructSize

Size of this structure, in bytes. Use the sizeof operator to calculate this value.

szFileName

Character string containing the name of the file to save.

pBitmap

Pointer to the bitmap handle that references the bitmap used for processing.

nBitsPerPixel

Value that indicates the number of bits per pixel to be used to save the image.

nFormat

Output file format. For valid values, refer to Formats of Output Files.

nQFactor

This parameter is used when saving an image file as FILE_LEAD, FILE_CMP, FILE_PNG, FILE_JPEG, FILE_JPEG_422, FILE_JPEG_411, FILE_EXIF_JPEG_411, FILE_EXIF_JPEG, FILE_FPX_JPEG_QFACTOR, FILE_TIF_JPEG, FILE_TIF_JPEG_422, FILE_TIF_JPEG_411, FILE_JPEG_LAB, FILE_JPEG_LAB_422, FILE_JPEG_LAB_411, FILE_DICOM_JPEG_GRAY, FILE_DICOM_JPEG_COLOR, FILE_DICOM_J2K_GRAY, FILE_TIF_CMP, FILE_TIF_J2K, FILE_TIF_CMW, FILE_RAS_PDF_JPEG, FILE_RAS_PDF_JPEG_422, FILE_RAS_PDF_JPEG_411, FILE_J2K, FILE_JP2, FILE_CMW. Qfactor is a number that determines the degree of loss in the compression process. For possible values, refer to Compression Quality Factors.

uSaveMulti

Data value indicating how to save a page to a multipage file. You can save multipage images in PCX, GIF, FlashPix, and most TIFF file formats (including JTIF, but excluding EXIF). Possible values are:

 

Value

Meaning

 

MULTIPAGE_OPERATION_OVERWRITE

[1] Overwrite the file.

 

MULTIPAGE_OPERATION_APPEND

[2] Append page to the end of the file.

 

MULTIPAGE_OPERATION_REPLACE

[3] Replace page. Refer to SAVEFILEOPTION.Flags.

 

MULTIPAGE_OPERATION_INSERT

[4] Insert page. Refer to SAVEFILEOPTION.Flags.

 

bSaveInterlaced

Flag that indicates whether to save GIF files as interlaced. GIF files may be saved interlaced or non-interlaced. Selecting GIF as the format of the file to be saved, the user is given the option in the dialog of selecting interlaced or non-interlaced. Selecting interlaced will set this flag to TRUE. For more information, see Implementing GIF Features. Possible values are:

 

Value

Meaning

 

TRUE

Save GIF files as interlaced.

 

FALSE

Save GIF files as non-interlaced.

 

nPasses

Value that indicates the number of passes (scans through the image) when loading or saving a progressive JPEG, LEAD CMP or PNG files. (This value is also used when loading, but not when saving, interlaced PNG files.)

 

Possible values when saving (whether progressive or not):

 

Value

Meaning

 

Any positive number

Save the file as a progressive file with the specified number of passes.

 

0

Save the file as an ordinary JPEG or LEAD CMP file (not a progressive file).

 

Any negative number

Save the file as a progressive file with the LEADTOOLS default number of passes.

 

bSaveWithStamp

Value that indicates the status of the SaveStamp Box. If checked, a stamp of the image will be saved if the DLG_SAVE_AUTOPROCESS flag was set and the format supports stamps. Possible values are:

 

Value

Meaning

 

TRUE

Save the image with a stamp.

 

FALSE

Save the image without a stamp.

 

nStampBits

Value that indicates the bits per pixel of the stamp image to save. A stamp is saved only if the ESO_SAVEWITHSTAMP flag is set in the SAVEFILEOPTION.Flags field, for formats that support stamps. Possible values are 8 or 24.

nStampWidth

Width, in pixels, of the stamp image to save. A stamp is saved only if the ESO_SAVEWITHSTAMP flag is set in the SAVEFILEOPTION.Flags field, in formats that support stamps. Possible values range from 1 to 255.

nStampHeight

Height, in pixels, of the stamp image to save. A stamp is saved only if the ESO_SAVEWITHSTAMP flag is set in the SAVEFILEOPTION.Flags field, in formats that support stamps. Possible values range from 1 to 255.

nPageNumber

Value that indicates the number of the page to replace or the number of the page in front of which to insert the page.

uFileTypeIndex

Value that indicates the file type. When the L_DlgSave function returns, this member will be updated with the file type entered by the user through the dialog. Set this member before calling L_DlgSave to initialize the dialog. For example, to set the initial selection on "LEAD (*.cmp)" format set this member to DLG_FF_SAVE_LEAD. For a list of possible values, refer to Customizing File Format Lists.

uSubTypeIndex

Value that indicates the file sub-type, if one exists. When the L_DlgSave function returns, this member will be updated with the file sub-type entered by the user through the dialog, if one exists. Set this member before calling L_DlgSave to initialize the dialog. For example, to set the initial selection to the "Progressive" subtype of the "LEAD (*.cmp)" file type, set this member to DLG_FF_SAVE_SUB_CMP_PROGRESSIVE. For a list of possible values, refer to Customizing File Format Lists.

FileJ2KOptions

A structure that contains the options to use when saving J2K or JP2 files.

pFileFormats

Pointer to an array of FILESAVEFORMAT structures that will indicate which formats, BPP, and subformats to include in the File Save Dialog. The order of the elements in the array indicates the order the items will appear in the FileType drop-down list box. Pass NULL to have LEADTOOLS add all supported formats, BPP, and subformats to the File Save Dialog. For more information on available file types, refer to Customizing File Format Lists.

uFileFormatsCount

The number of the items in pFileFormats. This member is ignored if pFileFormats is NULL. For more information on available file types, refer to Customizing File Format Lists.

uDlgFlags

User interface flags for this dialog, which determine the layout and action of the dialog. Possible values are:

 

Value

Meaning

 

DLG_SAVE_AUTOPROCESS

[0x00000001] Process the image on OK. The pBitmap member of this structure should contain a valid bitmap.

 

DLG_SAVE_SHOW_CONTEXTHELP

[0x00000002] Dialog should contain a context sensitive help icon.

 

DLG_SAVE_SHOW_FILEOPTIONS_PROGRESSIVE

[0x00000004] The Save File Options dialog will have progressive save options.

 

DLG_SAVE_SHOW_FILEOPTIONS_MULTIPAGE

[0x00000008] The Save File Options dialog will have multipage options.

 

DLG_SAVE_SHOW_FILEOPTIONS_STAMP

[0x00000010] The Save File Options dialog will have stamp options for formats that support stamps.

 

DLG_SAVE_SHOW_FILEOPTIONS_QFACTOR

[0x00000020] The Save File Options dialog will have the Qfactor option for formats that support Qfactor.

 

DLG_SAVE_SHOW_FILEOPTIONS_J2KOPTIONS

[0x00000040] The Save File Options dialog will have a J2K Options button for formats that support J2K options.

 

DLG_SAVE_SHOW_FILEOPTIONS_BASICJ2KOPTIONS

[0x00000080] The Save File Options dialog will have the Compression group controls ("Control", "Ratio" and "Target Size") for formats that support J2K options.

 

DLG_SAVE_ENABLESIZING

[0x00000100] The Save File Options dialog will have the enable sizing option. This option does not work under Windows NT 4.0 and Windows 95.

 

DLG_SAVE_SHOW_FILEOPTIONS_JBIG2OPTIONS

[0x00000200] The Save File Options dialog will have “JBIG2 options” button.

pfnHelpCallback

Pointer to an optional help callback function. If you do not wish to provide help to this dialog, use NULL as the value of this parameter. To provide help to this dialog, use the function pointer as the value of this parameter. The callback function must adhere to the prototype described in LTCOMMDLGHELPCB.

pHelpCallBackUserData

Void pointer that you can use to pass one or more additional parameters that the callback function needs. To use this feature, assign a value to a variable or create a structure that contains as many fields as you need. Then, in this parameter, pass the address of the variable or structure, casting it to L_VOID L_FAR *. The callback function, which receives the address in its own pHelpCallBackUserData parameter, can cast it to a pointer of the appropriate data type to access your variable or structure. If the additional parameters are not needed, you can pass NULL in this parameter.

FileJBIG2Options

A structure that contains the options to use when saving JBIG2 files.