26 using namespace common;
30 namespace conversion {
34 namespace pdf2office {
40 : enable_retain_page_layout(false)
41 , enable_generate_headers_and_footers(false)
42 , enable_generate_footnotes_and_endnotes(false)
43 , enable_generate_page_rendered_break(false) { }
63 PDF2WordSettingData(
bool enable_retain_page_layout,
bool enable_generate_headers_and_footers,
bool enable_generate_footnotes_and_endnotes,
bool enable_generate_page_rendered_break) {
64 this->enable_retain_page_layout = enable_retain_page_layout;
65 this->enable_generate_headers_and_footers = enable_generate_headers_and_footers;
66 this->enable_generate_footnotes_and_endnotes = enable_generate_footnotes_and_endnotes;
67 this->enable_generate_page_rendered_break = enable_generate_page_rendered_break;
105 void Set(
bool enable_retain_page_layout,
bool enable_generate_headers_and_footers,
bool enable_generate_footnotes_and_endnotes,
bool enable_generate_page_rendered_break) {
106 this->enable_retain_page_layout = enable_retain_page_layout;
107 this->enable_generate_headers_and_footers = enable_generate_headers_and_footers;
108 this->enable_generate_footnotes_and_endnotes = enable_generate_footnotes_and_endnotes;
109 this->enable_generate_page_rendered_break = enable_generate_page_rendered_break;
156 : enable_aggressively_split_sections(false) {}
168 this->enable_aggressively_split_sections = enable_aggressively_split_sections;
194 void Set(
bool enable_aggressively_split_sections) {
195 this->enable_aggressively_split_sections = enable_aggressively_split_sections;
217 typedef enum _WorkbookSettings {
219 e_WorkbookSettingsDocument = 0,
221 e_WorkbookSettingsEachTable = 1,
223 e_WorkbookSettingsEachPage = 2
229 , thousands_separator(
"")
240 this->decimal_symbol = decimal_symbol;
241 this->thousands_separator = thousands_separator;
242 this->workbook_settings = workbook_settings;
269 this->decimal_symbol = decimal_symbol;
270 this->thousands_separator = thousands_separator;
271 this->workbook_settings = workbook_settings;
319 : enable_ml_recognition(false)
320 , include_pdf_comments(true)
321 , enable_trailing_space(true)
322 , include_images(true) { }
358 PDF2OfficeSettingData(
const wchar_t* metrics_data_folder_path,
bool enable_ml_recognition,
const Range& page_range,
bool include_pdf_comments,
360 const PDF2ExcelSettingData& excel_setting_data,
bool enable_trailing_space,
bool include_images) {
361 this->metrics_data_folder_path = metrics_data_folder_path;
362 this->enable_ml_recognition = enable_ml_recognition;
363 this->page_range = page_range;
364 this->include_pdf_comments = include_pdf_comments;
365 this->word_setting_data = word_setting_data;
366 this->power_point_setting_data = power_point_setting_data;
367 this->excel_setting_data = excel_setting_data;
368 this->enable_trailing_space = enable_trailing_space;
369 this->include_images = include_images;
427 void Set(
const wchar_t* metrics_data_folder_path,
bool enable_ml_recognition,
const Range &page_range,
bool include_pdf_comments,
429 const PDF2ExcelSettingData& excel_setting_data,
bool enable_trailing_space,
bool include_images) {
430 this->metrics_data_folder_path = metrics_data_folder_path;
431 this->enable_ml_recognition = enable_ml_recognition;
432 this->page_range = page_range;
433 this->include_pdf_comments = include_pdf_comments;
434 this->word_setting_data = word_setting_data;
435 this->power_point_setting_data = power_point_setting_data;
436 this->excel_setting_data = excel_setting_data;
437 this->enable_trailing_space = enable_trailing_space;
438 this->include_images = include_images;
543 virtual bool NeedToPause() = 0;
553 virtual void ProgressNotify(
int converted_count,
int total_count) = 0;
593 static Progressive StartConvertToWord(
const wchar_t* src_pdf_path,
const wchar_t* src_pdf_password,
const wchar_t* saved_word_file_path,
653 static Progressive StartConvertToExcel(
const wchar_t* src_pdf_path,
const wchar_t* src_pdf_password,
const wchar_t* saved_excel_file_path,
712 static Progressive StartConvertToPowerPoint(
const wchar_t* src_pdf_path,
const wchar_t* src_pdf_password,
const wchar_t* saved_ppt_file_path,
PDF2PowerPointSettingData()
Constructor.
Definition: fs_pdf2office.h:155
Definition: fs_common.h:271
Definition: fs_pdf2office.h:152
Definition: fs_pdf2office.h:315
PDF2WordSettingData(bool enable_retain_page_layout, bool enable_generate_headers_and_footers, bool enable_generate_footnotes_and_endnotes, bool enable_generate_page_rendered_break)
Constructor, with parameters.
Definition: fs_pdf2office.h:63
CFX_Object Object
Object type.
Definition: fs_basictypes.h:145
Definition: fs_pdf2office.h:36
void Set(bool enable_retain_page_layout, bool enable_generate_headers_and_footers, bool enable_generate_footnotes_and_endnotes, bool enable_generate_page_rendered_break)
Set value.
Definition: fs_pdf2office.h:105
File reading interface.
Definition: fx_stream.h:566
bool enable_trailing_space
A boolean value which indicates whether to add trailing spaces from lines in paragraphs for convertin...
Definition: fs_pdf2office.h:518
WIDE STRING CLASS.
Definition: fx_string.h:1452
PDF2WordSettingData word_setting_data
A setting data object that used for converting PDF documents to Word format documents.
Definition: fs_pdf2office.h:489
bool enable_aggressively_split_sections
A boolean value which indicates whether split sections aggressively for the conversion of PDF documen...
Definition: fs_pdf2office.h:206
bool enable_generate_headers_and_footers
A boolean value which indicates whether convert the recognized headers and footers from PDF documents...
Definition: fs_pdf2office.h:127
String thousands_separator
A string value which indicates being recognized as thousands separator during the conversion of PDF d...
Definition: fs_pdf2office.h:303
bool enable_generate_page_rendered_break
A boolean value which indicates whether to generate the "lastRenderedPageBreak" marker in word format...
Definition: fs_pdf2office.h:148
PDF2ExcelSettingData excel_setting_data
A setting data object that used for converting PDF documents to Excel format documents.
Definition: fs_pdf2office.h:505
void Set(bool enable_aggressively_split_sections)
Set value.
Definition: fs_pdf2office.h:194
WString metrics_data_folder_path
A valid path of a folder which contains metrics data files. This should not be an empty string.
Definition: fs_pdf2office.h:449
PDF2PowerPointSettingData(bool enable_aggressively_split_sections)
Constructor, with parameters.
Definition: fs_pdf2office.h:167
File stream interface, reading & writing.
Definition: fx_stream.h:669
PDF2PowerPointSettingData power_point_setting_data
A setting data object that used for converting PDF documents to Power Point format documents.
Definition: fs_pdf2office.h:497
Definition: fs_common.h:208
WorkbookSettings
Enumeration for Excel workbook settings.
Definition: fs_pdf2office.h:217
Header file for common definitions and classes.
PDF2WordSettingData()
Constructor.
Definition: fs_pdf2office.h:39
bool enable_retain_page_layout
A boolean value which indicates whether retain page layout for the conversion of PDF documents to Wor...
Definition: fs_pdf2office.h:118
String decimal_symbol
A string value which indicates being recognized as decimal during the conversion of PDF documents to ...
Definition: fs_pdf2office.h:287
PDF2OfficeSettingData(const wchar_t *metrics_data_folder_path, bool enable_ml_recognition, const Range &page_range, bool include_pdf_comments, const PDF2WordSettingData &word_setting_data, const PDF2PowerPointSettingData &power_point_setting_data, const PDF2ExcelSettingData &excel_setting_data, bool enable_trailing_space, bool include_images)
Constructor, with parameters.
Definition: fs_pdf2office.h:358
bool include_images
A boolean value which indicates whether to include images in PDF documents for converting PDF documen...
Definition: fs_pdf2office.h:529
Definition: fs_basictypes.h:230
Definition: fs_pdf2office.h:210
PDF2ExcelSettingData()
Constructor.
Definition: fs_pdf2office.h:227
void Set(const wchar_t *metrics_data_folder_path, bool enable_ml_recognition, const Range &page_range, bool include_pdf_comments, const PDF2WordSettingData &word_setting_data, const PDF2PowerPointSettingData &power_point_setting_data, const PDF2ExcelSettingData &excel_setting_data, bool enable_trailing_space, bool include_images)
Set value.
Definition: fs_pdf2office.h:427
Foxit namespace.
Definition: fs_basictypes.h:124
WorkbookSettings workbook_settings
An enumeration value which indicates the setting of the workbook for the conversion of PDF documents ...
Definition: fs_pdf2office.h:311
Definition: fs_pdf2office.h:564
BYTE STRING CLASS.
Definition: fx_string.h:317
bool include_pdf_comments
A boolean value which indicates whether to include PDF documents comments for the conversion of PDF d...
Definition: fs_pdf2office.h:481
Definition: fs_pdf2office.h:536
PDF2ExcelSettingData(String decimal_symbol, String thousands_separator, WorkbookSettings workbook_settings)
Constructor, with parameters.
Definition: fs_pdf2office.h:239
bool enable_generate_footnotes_and_endnotes
A boolean value which indicates whether convert the recognized footnotes and endnotes from PDF docume...
Definition: fs_pdf2office.h:136
#define NULL
The null-pointer value.
Definition: fx_system.h:780
PDF2OfficeSettingData()
Constructor.
Definition: fs_pdf2office.h:318
void Set(String decimal_symbol, String thousands_separator, WorkbookSettings workbook_settings)
Set value.
Definition: fs_pdf2office.h:268
Range page_range
A range object that specifies some pages. These pages will be used to convert PDF documents to office...
Definition: fs_pdf2office.h:472
bool enable_ml_recognition
A boolean value which indicates whether enable machine learning-based recognition functionality....
Definition: fs_pdf2office.h:463