Foxit PDF SDK
foxit::addon::conversion::pdf2office::PDF2Office Class Reference
Inheritance diagram for foxit::addon::conversion::pdf2office::PDF2Office:
foxit::Base

Static Public Member Functions

static void Initialize (const wchar_t *library_path, const wchar_t *fx_engine_path=L"")
 Initialize Foxit PDF Conversion. More...
 
static void Release ()
 Release all resource allocated by Foxit PDF Conversion. More...
 
static bool SetConvertCheckCallback (ConvertCheckCallback *convert_check_callback)
 Set the callback object to check the PDF to Office conversion conditions. More...
 
static common::Progressive StartConvertToExcel (const wchar_t *src_pdf_path, const wchar_t *src_pdf_password, const wchar_t *saved_excel_file_path, const PDF2OfficeSettingData &setting_data, ConvertCallback *convert_callback=0)
 Start to convert a PDF file to a Excel format file. Function PDF2Office::Initialize must be called before calling this function. More...
 
static common::Progressive StartConvertToExcel (common::file::ReaderCallback *src_pdf_reader, const wchar_t *src_pdf_password, common::file::StreamCallback *saved_excel_file_stream, const PDF2OfficeSettingData &setting_data, ConvertCallback *convert_callback=0)
 Start to convert a PDF file to a Excel format file. Function PDF2Office::Initialize must be called before calling this function. More...
 
static common::Progressive StartConvertToPowerPoint (const wchar_t *src_pdf_path, const wchar_t *src_pdf_password, const wchar_t *saved_ppt_file_path, const PDF2OfficeSettingData &setting_data, ConvertCallback *convert_callback=0)
 Start to convert a PDF file to a PowerPoint format file. Function PDF2Office::Initialize must be called before calling this function. More...
 
static common::Progressive StartConvertToPowerPoint (common::file::ReaderCallback *src_pdf_reader, const wchar_t *src_pdf_password, common::file::StreamCallback *saved_ppt_file_stream, const PDF2OfficeSettingData &setting_data, ConvertCallback *convert_callback=0)
 Start to convert a PDF file to a PowerPoint format file. Function PDF2Office::Initialize must be called before calling this function. More...
 
static common::Progressive StartConvertToWord (const wchar_t *src_pdf_path, const wchar_t *src_pdf_password, const wchar_t *saved_word_file_path, const PDF2OfficeSettingData &setting_data, ConvertCallback *convert_callback=0)
 Start to convert a PDF file to a Word format file. Function PDF2Office::Initialize must be called before calling this function. More...
 
static common::Progressive StartConvertToWord (common::file::ReaderCallback *src_pdf_reader, const wchar_t *src_pdf_password, common::file::StreamCallback *saved_word_file_stream, const PDF2OfficeSettingData &setting_data, ConvertCallback *convert_callback=0)
 Start to convert a PDF file to a Word format file. Function PDF2Office::Initialize must be called before calling this function. More...
 

Additional Inherited Members

- Public Member Functions inherited from foxit::Base
FS_HANDLE Handle () const
 Get the handle of current object. More...
 

Detailed Description

This class can be used to convert PDF files to Office(Word, Excel or PowerPoint) format files. Before using "Conversion" module, please ensure the resource folders named "res" and "lib" in the Foxit PDF Conversion SDK package is valid. Before using methods in this module, please ensure Foxit PDF SDK has been initialized successfully by function common::Library::Initialize with a key including "PDF2Office" module.

See also
common::Library

Member Function Documentation

◆ Initialize()

static void foxit::addon::conversion::pdf2office::PDF2Office::Initialize ( const wchar_t *  library_path,
const wchar_t *  fx_engine_path = L"" 
)
static

Initialize Foxit PDF Conversion.

During the life-cycle of "PDF2Office" module, this function can only be called once and should be called first before any other functions in "PDF2Office" module can be called.

Parameters
[in]library_pathPath of Foxit PDF Conversion SDK library. This should not be an empty string.
[in]fx_engine_pathPath of Foxit PDF Conversion engine. It can be an empty string. If the parameter is empty, PDF Conversion SDK library will be called directly for PDF to Office conversion, otherwise Foxit PDF Conversion SDK library will be called through the Foxit PDF Conversion engine for PDF to Office conversion.
Returns
None.
Note
If module "PDF2Office" is not defined in the license information which is used in function common::Library::Initialize, that means user has no right in using PDF2Office related functions and this function will throw exception foxit::e_ErrNoPDF2OfficeModuleRight.

◆ Release()

static void foxit::addon::conversion::pdf2office::PDF2Office::Release ( )
static

Release all resource allocated by Foxit PDF Conversion.

When the user does not use "pdf2office" module, this function should be called to release all memory blocks allocated by the library.

Returns
None.

◆ SetConvertCheckCallback()

static bool foxit::addon::conversion::pdf2office::PDF2Office::SetConvertCheckCallback ( ConvertCheckCallback convert_check_callback)
static

Set the callback object to check the PDF to Office conversion conditions.

This method allows you to specify a custom convert check callback that will be called to evaluate whether the conversion from PDF to Office should proceed, based on user-defined logic , when the required permissions for converting the PDF documents are not met.

Parameters
[in]convert_check_callbackA customized convert check callback which is implemented based on callback class ConvertCheckCallback. If this is NULL, customized convert check callback will be removed and default convert check will be used instead.
Note
When Foxit PDF Conversion engine is set by function PDF2Office::Initialize, the ConvertCheckCallback will be not work, and it will use the internal ConvertCheckcallbacks to allow conversion.
Returns
true means success, while false means failure.

◆ StartConvertToExcel() [1/2]

static common::Progressive foxit::addon::conversion::pdf2office::PDF2Office::StartConvertToExcel ( const wchar_t *  src_pdf_path,
const wchar_t *  src_pdf_password,
const wchar_t *  saved_excel_file_path,
const PDF2OfficeSettingData setting_data,
ConvertCallback convert_callback = 0 
)
static

Start to convert a PDF file to a Excel format file. Function PDF2Office::Initialize must be called before calling this function.

Currently only support converting to XLSX format file.

Parameters
[in]src_pdf_pathPath of a PDF file. This should not be an empty string.
[in]src_pdf_passwordPassword for the input PDF file. If no password is needed for the file, please pass an empty string.
[in]saved_excel_file_pathPath of the saved Excel format file as conversion result. This should not be an empty string. If the suffix name of the saved Excel format file is not "xlsx", a new suffix named "xlsx" will be added to the original file name.
[in]setting_dataSetting data used for converting.If the parameter page_range of PDF2OfficeSettingData object is empty, that means convert each page of the PDF file to Excel format file.
[in]convert_callbackA conversion::pdf2office::ConvertCallback object which is implemented by user to pause and notify the conversion progress during the converting process. This can be NULL which means not to pause and notify the conversion progress. If this is not NULL, it should be a valid conversion::pdf2office::ConvertCallback object implemented by user.
Default value: NULL.
Returns
A progressive object. Please check the rate of current progress by function common::Progressive::GetRateOfProgress. If the rate is not 100 yet, call function common::Progressive::Continue to continue the progress until the progress is finished.
Note
When Foxit PDF Conversion engine is set by function PDF2Office::Initialize, the ConvertCallback will be not work.

◆ StartConvertToExcel() [2/2]

static common::Progressive foxit::addon::conversion::pdf2office::PDF2Office::StartConvertToExcel ( common::file::ReaderCallback src_pdf_reader,
const wchar_t *  src_pdf_password,
common::file::StreamCallback saved_excel_file_stream,
const PDF2OfficeSettingData setting_data,
ConvertCallback convert_callback = 0 
)
static

Start to convert a PDF file to a Excel format file. Function PDF2Office::Initialize must be called before calling this function.

Currently only support converting to XLSX format file.

Parameters
[in]src_pdf_readerA ReaderCallback object which is implemented by user to load a PDF document. It should not be NULL.
[in]src_pdf_passwordPassword for the input PDF file. If no password is needed for the file, please pass an empty string.
[in]saved_excel_file_streamA foxit::common::file::StreamCallback object which is implemented by user to read the contents of the converted Excel format file. It should not be NULL.
[in]setting_dataSetting data used for converting.If the parameter page_range of PDF2OfficeSettingData object is empty, that means convert each page of the PDF file to Excel format file.
[in]convert_callbackA conversion::pdf2office::ConvertCallback object which is implemented by user to pause and notify the conversion progress during the converting process. This can be NULL which means not to pause and notify the conversion progress. If this is not NULL, it should be a valid conversion::pdf2office::ConvertCallback object implemented by user.
Default value: NULL.
Returns
A progressive object. Please check the rate of current progress by function common::Progressive::GetRateOfProgress. If the rate is not 100 yet, call function common::Progressive::Continue to continue the progress until the progress is finished.
Note
When Foxit PDF Conversion engine is set by function PDF2Office::Initialize, the ConvertCallback will be not work.

◆ StartConvertToPowerPoint() [1/2]

static common::Progressive foxit::addon::conversion::pdf2office::PDF2Office::StartConvertToPowerPoint ( const wchar_t *  src_pdf_path,
const wchar_t *  src_pdf_password,
const wchar_t *  saved_ppt_file_path,
const PDF2OfficeSettingData setting_data,
ConvertCallback convert_callback = 0 
)
static

Start to convert a PDF file to a PowerPoint format file. Function PDF2Office::Initialize must be called before calling this function.

Currently only support converting to PPTX format file.

Parameters
[in]src_pdf_pathPath of a PDF file. This should not be an empty string.
[in]src_pdf_passwordPassword for the input PDF file. If no password is needed for the file, please pass an empty string.
[in]saved_ppt_file_pathPath of the saved PowerPoint format file as conversion result. This should not be an empty string. If the suffix name of the saved PowerPoint format file is not "pptx", a new suffix named "pptx" will be added to the original file name.
[in]setting_dataSetting data used for converting.If the parameter page_range of PDF2OfficeSettingData object is empty, that means convert each page of the PDF file to Power Point format file.
[in]convert_callbackA conversion::pdf2office::ConvertCallback object which is implemented by user to pause and notify the conversion progress during the converting process. This can be NULL which means not to pause and notify the conversion progress. If this is not NULL, it should be a valid conversion::pdf2office::ConvertCallback object implemented by user.
Default value: NULL.
Returns
A progressive object. Please check the rate of current progress by function common::Progressive::GetRateOfProgress. If the rate is not 100 yet, call function common::Progressive::Continue to continue the progress until the progress is finished.
Note
When Foxit PDF Conversion engine is set by function PDF2Office::Initialize, the ConvertCallback will be not work.

◆ StartConvertToPowerPoint() [2/2]

static common::Progressive foxit::addon::conversion::pdf2office::PDF2Office::StartConvertToPowerPoint ( common::file::ReaderCallback src_pdf_reader,
const wchar_t *  src_pdf_password,
common::file::StreamCallback saved_ppt_file_stream,
const PDF2OfficeSettingData setting_data,
ConvertCallback convert_callback = 0 
)
static

Start to convert a PDF file to a PowerPoint format file. Function PDF2Office::Initialize must be called before calling this function.

Currently only support converting to PPTX format file.

Parameters
[in]src_pdf_readerA ReaderCallback object which is implemented by user to load a PDF document. It should not be NULL.
[in]src_pdf_passwordPassword for the input PDF file. If no password is needed for the file, please pass an empty string.
[in]saved_ppt_file_streamA foxit::common::file::StreamCallback object which is implemented by user to read the contents of the converted PowerPoint format file. It should not be NULL.
[in]setting_dataSetting data used for converting.If the parameter page_range of PDF2OfficeSettingData object is empty, that means convert each page of the PDF file to Power Point format file.
[in]convert_callbackA conversion::pdf2office::ConvertCallback object which is implemented by user to pause and notify the conversion progress during the converting process. This can be NULL which means not to pause and notify the conversion progress. If this is not NULL, it should be a valid conversion::pdf2office::ConvertCallback object implemented by user.
Default value: NULL.
Returns
A progressive object. Please check the rate of current progress by function common::Progressive::GetRateOfProgress. If the rate is not 100 yet, call function common::Progressive::Continue to continue the progress until the progress is finished.
Note
When Foxit PDF Conversion engine is set by function PDF2Office::Initialize, the ConvertCallback will be not work.

◆ StartConvertToWord() [1/2]

static common::Progressive foxit::addon::conversion::pdf2office::PDF2Office::StartConvertToWord ( const wchar_t *  src_pdf_path,
const wchar_t *  src_pdf_password,
const wchar_t *  saved_word_file_path,
const PDF2OfficeSettingData setting_data,
ConvertCallback convert_callback = 0 
)
static

Start to convert a PDF file to a Word format file. Function PDF2Office::Initialize must be called before calling this function.

Currently only support converting to DOCX format file.

Parameters
[in]src_pdf_pathPath of a PDF file. This should not be an empty string.
[in]src_pdf_passwordPassword for the input PDF file. If no password is needed for the file, please pass an empty string.
[in]saved_word_file_pathPath of the saved Word format file as conversion result. This should not be an empty string. If the suffix name of the saved Word format file is not "docx", a new suffix named "docx" will be added to the original file name.
[in]setting_dataSetting data used for converting.If the parameter page_range of PDF2OfficeSettingData object is empty, that means convert each page of the PDF file to Word format file.
[in]convert_callbackA conversion::pdf2office::ConvertCallback object which is implemented by user to pause and notify the conversion progress during the converting process. This can be NULL which means not to pause and notify the conversion progress. If this is not NULL, it should be a valid conversion::pdf2office::ConvertCallback object implemented by user.
Default value: NULL.
Returns
A progressive object. Please check the rate of current progress by function common::Progressive::GetRateOfProgress. If the rate is not 100 yet, call function common::Progressive::Continue to continue the progress until the progress is finished.
Note
When Foxit PDF Conversion engine is set by function PDF2Office::Initialize, the ConvertCallback will be not work.

◆ StartConvertToWord() [2/2]

static common::Progressive foxit::addon::conversion::pdf2office::PDF2Office::StartConvertToWord ( common::file::ReaderCallback src_pdf_reader,
const wchar_t *  src_pdf_password,
common::file::StreamCallback saved_word_file_stream,
const PDF2OfficeSettingData setting_data,
ConvertCallback convert_callback = 0 
)
static

Start to convert a PDF file to a Word format file. Function PDF2Office::Initialize must be called before calling this function.

Currently only support converting to DOCX format file.

Parameters
[in]src_pdf_readerA ReaderCallback object which is implemented by user to load a PDF document. It should not be NULL.
[in]src_pdf_passwordPassword for the input PDF file. If no password is needed for the file, please pass an empty string.
[in]saved_word_file_streamA foxit::common::file::StreamCallback object which is implemented by user to read the contents of the converted Word format file. It should not be NULL.
[in]setting_dataSetting data used for converting.If the parameter page_range of PDF2OfficeSettingData object is empty, that means convert each page of the PDF file to Word format file.
[in]convert_callbackA conversion::pdf2office::ConvertCallback object which is implemented by user to pause and notify the conversion progress during the converting process. This can be NULL which means not to pause and notify the conversion progress. If this is not NULL, it should be a valid conversion::pdf2office::ConvertCallback object implemented by user.
Default value: NULL.
Returns
A progressive object. Please check the rate of current progress by function common::Progressive::GetRateOfProgress. If the rate is not 100 yet, call function common::Progressive::Continue to continue the progress until the progress is finished.
Note
When Foxit PDF Conversion engine is set by function PDF2Office::Initialize, the ConvertCallback will be not work.