L_DocWriterInit

#include "l_bitmap.h"

L_LTDOCWRT_API L_INT EXT_FUNCTION L_DocWriterInit(phDocument, pszFileName, Format, pDocOptions, pfnStatusCallback, pUserData)

DOCUMENTWRITER_HANDLE * phDocument;

/* pointer to the PDF document handle */

L_WCHAR * pszFileName;

/* name and path to the output file */

DOCWRTFORMAT Format;

/* file format for output file */

L_VOID* pDocOptions;

/* pointer to a Document Options structure */

STATUSCALLBACK pfnStatusCallback;

/* optional callback function */

L_VOID * pUserData;

/* pointer to user data */

Initializes the Document Writer to create a document file.

Parameter

Description

phDocument

Pointer to the document handle that references the document file to create.

pszFileName

Character string containing the name and path to the file to save (output file).

Format

Format of the output file. Possible values are:

 

Value

Meaning

 

DOCUMENTFORMAT_LTD

[0] LEAD Temporary Document (Ltd)

 

DOCUMENTFORMAT_PDF

[1] Portable Document format (Pdf)

 

DOCUMENTFORMAT_DOC

[2] MS-Word document format (Doc)

 

DOCUMENTFORMAT_RTF

[3] Rich Text document format (Rtf)

 

DOCUMENTFORMAT_HTM

[4] HyperText Markup Language document format (html)

 

DOCUMENTFORMAT_TXT

[5] Text file format (Txt)

 

DOCUMENTFORMAT_EMF

[6] Enhanced metafile format (Emf)

 

DOCUMENTFORMAT_XPS

[7] Microsoft XML Paper Specification format (XPS)

Note: The current shipping version of LEADTOOLS framework and demos does not support XPS directly. You must contact LEADTOOLS for instructions on how to save your documents to the XPS format.

pDocOptions

Pointer to a Document Object structure. Possible values are:

 

DOCWRTLTDOPTIONS /*LEAD format options*/

 

DOCWRTEMFOPTIONS /*EMF format options*/

 

DOCWRTTXTOPTIONS /*Text format options*/

 

DOCWRTPDFOPTIONS /*Pdf format options*/

 

DOCWRTDOCOPTIONS /*Doc format options*/

 

DOCWRTRTFOPTIONS /*Rtf format options*/

 

DOCWRTHTMOPTIONS /*Html format options*/

 

DOCWRTXPSOPTIONS /*XPS format options*/

 

DOCWRTDOCXOPTIONS /*DocX format options */

pfnStatusCallback

Pointer to an optional callback function used to follow the job's progress.

 

If you do not provide a callback function, use NULL as the value of this parameter.

 

If you do provide a callback function, use the function pointer as the value of this parameter.

pUserData

Pointer that you can use to pass one or more additional parameters that the callback function needs.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

Call L_DocWriterInit before calling any other Document Writer functions.

This function also sets the progress callback function.

Required DLLs and Libraries

LtDocWrt_u.dll, LtDocWrt_x.dll
LtFil_u.dll, LtFil_x.dll
LfJb2_u.dll, LfJb2_x.dll
Lfcmp_u.dll, Lfcmp_x.dll
Lftif_u.dll, Lftif_x.dll
Lfraw_u.dll, Lfraw_x.dll
Lfbmp_u.dll, Lfbmp_x.dll
Lfpng_u.dll, Lfpng_x.dll
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

Windows 2000 / XP / Vista.

See Also

Functions:

L_DocWriterAddPage, L_DocWriterFinish

Topics:

Creating Document Formats

 

Raster Image Functions: Document Writers

Example

This example adds an emf page to a black html page created.

L_LTDOCWRTTEX_API L_INT L_DocWriterInitExample(L_VOID)
{
   DOCWRTPAGE Page;
   L_INT nRet=0;
   DOCWRTHTMOPTIONS html;
   DOCUMENTWRITER_HANDLE hDocument;

   html.Options.uStructSize = sizeof(html);
   html.Type = DOCWRTHTMTYPE_IECOMPATIBLE;
   html.FontEmbed = DOCWRTFONTEMBED_ALL;
   html.bUseBackgroundColor = TRUE;
   html.rgbBackground = RGB(0x00, 0x00, 0x00);

   nRet = L_DocWriterInit( &hDocument, 
                           TEXT("%UserProfile%\\My Documents\\LEADTOOLS Images\\Output.html"), 
                           DOCUMENTFORMAT_HTM, 
                           &html, 
                           NULL, 
                           NULL );
   if(nRet != SUCCESS)
      return nRet;

   Page.uStructSize = sizeof(Page);
   Page.hEmf = GetEnhMetaFile(TEXT("%UserProfile%\\My Documents\\LEADTOOLS Images\\Image1.emf"));

   nRet = L_DocWriterAddPage( hDocument, &Page );
   if(nRet != SUCCESS)
      return nRet;

   nRet = L_DocWriterFinish( hDocument );
   if(nRet != SUCCESS)
      return nRet;

   return SUCCESS;
}