10#include <pdfsdk/cxx/core.h>
46 bool ignoreHeadersAndFooters,
47 const std::filesystem::path& outputFile,
48 const std::vector<size_t>& pageIndexes = {},
51 auto outputFileStr = outputFile.wstring();
54 PDPageRange pages = {pageIndexes.data(), pageIndexes.size()};
55 const PDPageRange* pagesPtr = pageIndexes.empty() ? nullptr : &pages;
56 const PDProgressMonitor* progressMonitor = progress ? progress->monitor() :
nullptr;
57 void* progressData = progress ? progress->userdata() :
nullptr;
58 PDF_CHECK_SUCCESS_X(
PDFConvertToDocx(input.get(), pagesPtr, progressMonitor, progressData, ¶ms));
79 const std::filesystem::path& outputFile,
80 const std::vector<size_t>& pageIndexes = {},
83 auto outputFileStr = outputFile.wstring();
87 PDPageRange pages = {pageIndexes.data(), pageIndexes.size()};
88 const PDPageRange* pagesPtr = pageIndexes.empty() ? nullptr : &pages;
89 const PDProgressMonitor* progressMonitor = progress ? progress->monitor() :
nullptr;
90 void* progressData = progress ? progress->userdata() :
nullptr;
91 PDF_CHECK_SUCCESS_X(
PDFConvertToXlsx(input.get(), pagesPtr, progressMonitor, progressData, ¶ms));
105 const std::filesystem::path& outputFile,
106 const std::vector<size_t>& pageIndexes = {},
109 auto outputFileStr = outputFile.wstring();
111 PDPageRange pages = {pageIndexes.data(), pageIndexes.size()};
112 const PDPageRange* pagesPtr = pageIndexes.empty() ? nullptr : &pages;
113 const PDProgressMonitor* progressMonitor = progress ? progress->monitor() :
nullptr;
114 void* progressData = progress ? progress->userdata() :
nullptr;
115 PDF_CHECK_SUCCESS_X(
PDFConvertToPptx(input.get(), pagesPtr, progressMonitor, progressData, ¶ms));
129 const std::filesystem::path& outputFolder,
130 const std::vector<size_t>& pageIndexes = {},
134 auto outputFolderStr = outputFolder.wstring();
135 params.outputFolder = outputFolderStr.c_str();
136 params.useHTMExtension =
true;
137 PDPageRange pages = {pageIndexes.data(), pageIndexes.size()};
138 const PDPageRange* pagesPtr = pageIndexes.empty() ? nullptr : &pages;
139 const PDProgressMonitor* progressMonitor = progress ? progress->monitor() :
nullptr;
140 void* progressData = progress ? progress->userdata() :
nullptr;
141 PDF_CHECK_SUCCESS_X(PDFConvertToHtml(input.get(), pagesPtr, progressMonitor, progressData, ¶ms));
143 PDF_THROW(
kPDErrInternalError,
"PDF to HTML converter is temporary unavailable on this platform");
158 const std::filesystem::path& outputFile,
159 const std::vector<size_t>& pageIndexes = {},
163 auto outputFileStr = outputFile.wstring();
164 params.outputFile = outputFileStr.c_str();
165 params.tableRecognize =
true;
166 PDPageRange pages = {pageIndexes.data(), pageIndexes.size()};
167 const PDPageRange* pagesPtr = pageIndexes.empty() ? nullptr : &pages;
168 const PDProgressMonitor* progressMonitor = progress ? progress->monitor() :
nullptr;
169 void* progressData = progress ? progress->userdata() :
nullptr;
170 PDF_CHECK_SUCCESS_X(PDFConvertToRtf(input.get(), pagesPtr, progressMonitor, progressData, ¶ms));
172 PDF_THROW(
kPDErrInternalError,
"PDF to RTF converters is temporary unavailable on this platform");
189 const std::wstring& pageDivider,
190 bool convertCroppedText,
191 const std::filesystem::path& outputFile,
192 const std::vector<size_t>& pageIndexes = {},
195 auto outputFileStr = outputFile.wstring();
196 params.outputFile = outputFileStr.c_str();
197 params.convertCroppedText = convertCroppedText;
198 params.dividerString = pageDivider.c_str();
199 PDPageRange pages = {pageIndexes.data(), pageIndexes.size()};
200 const PDPageRange* pagesPtr = pageIndexes.empty() ? nullptr : &pages;
201 const PDProgressMonitor* progressMonitor = progress ? progress->monitor() :
nullptr;
202 void* progressData = progress ? progress->userdata() :
nullptr;
203 PDF_CHECK_SUCCESS_X(PDFConvertToText(input.get(), pagesPtr, progressMonitor, progressData, ¶ms));
217 const std::filesystem::path& outputFile,
218 const std::vector<size_t>& pageIndexes = {},
221 auto outputFileStr = outputFile.wstring();
222 params.outputFile = outputFileStr.c_str();
223 PDPageRange pages = {pageIndexes.data(), pageIndexes.size()};
224 const PDPageRange* pagesPtr = pageIndexes.empty() ? nullptr : &pages;
225 const PDProgressMonitor* progressMonitor = progress ? progress->monitor() :
nullptr;
226 void* progressData = progress ? progress->userdata() :
nullptr;
227 PDF_CHECK_SUCCESS_X(PDFConvertToJson(input.get(), pagesPtr, progressMonitor, progressData, ¶ms));
Represents a PDF document.
Definition document.h:22
Progress monitor for tracking the progress of an operation.
Definition progress_monitor.h:14
void ConvertPdfToPowerPoint(const PDF::Document &input, const std::filesystem::path &outputFile, const std::vector< size_t > &pageIndexes={}, PDF::ProgressMonitor *progress=nullptr)
Coverts a PDF file (or a part of it) into a MS PowerPoint Document format (.pptx).
Definition convert.h:104
void ConvertPdfToHtml(const PDF::Document &input, const std::filesystem::path &outputFolder, const std::vector< size_t > &pageIndexes={}, PDF::ProgressMonitor *progress=nullptr)
Coverts a PDF file (or a part of it) into a HTML Document format (.html).
Definition convert.h:128
void ConvertPdfToExcel(const PDF::Document &input, ConvertPdfToExcelType convertType, bool keepTablesOnly, const std::filesystem::path &outputFile, const std::vector< size_t > &pageIndexes={}, PDF::ProgressMonitor *progress=nullptr)
Coverts a PDF file (or a part of it) into a MS Excel Document format (.xlsx).
Definition convert.h:76
ConvertPdfToExcelType
The type of conversion to perform when converting a PDF document to Excel format.
Definition convert.h:25
void ConvertPdfToJson(const PDF::Document &input, const std::filesystem::path &outputFile, const std::vector< size_t > &pageIndexes={}, PDF::ProgressMonitor *progress=nullptr)
Coverts a PDF file (or a part of it) into a JSON format.
Definition convert.h:216
void ConvertPdfToText(const PDF::Document &input, const std::wstring &pageDivider, bool convertCroppedText, const std::filesystem::path &outputFile, const std::vector< size_t > &pageIndexes={}, PDF::ProgressMonitor *progress=nullptr)
Coverts a PDF file (or a part of it) into plain text format.
Definition convert.h:188
void ConvertPdfToRtf(const PDF::Document &input, const std::filesystem::path &outputFile, const std::vector< size_t > &pageIndexes={}, PDF::ProgressMonitor *progress=nullptr)
Coverts a PDF file (or a part of it) into a Rich Text Document format (.rtf).
Definition convert.h:157
void ConvertPdfToWord(const PDF::Document &input, bool ignoreHeadersAndFooters, const std::filesystem::path &outputFile, const std::vector< size_t > &pageIndexes={}, PDF::ProgressMonitor *progress=nullptr)
Coverts a PDF file (or a part of it) into a MS Word Document format (.docx).
Definition convert.h:45
@ kPDErrInternalError
Internal error.
Definition errors.h:23
PDF to DOCX conversion API.
PDErrCode PDFConvertToDocx(PDDoc source, const PDPageRange *pageRange, const PDProgressMonitor *progress, void *progressData, const PDFConvertToDocxParams *params)
A function to covert a PDF file (or a part of it) into a MS Word Document format (....
PDF to HTML conversion API.
PDF to JSON conversion API.
PDF to PPTX conversion API.
PDFSDK_IMPORT_ PDErrCode PDFSDK_CALLCONV PDFConvertToPptx(PDDoc source, const PDPageRange *pageRange, const PDProgressMonitor *progress, void *progressData, const PDFConvertToPptxParams *params)
A function to covert a PDF file (or a part of it) into a MS PowerPoint Document format (....
PDF to RTF conversion API.
PDF to TXT conversion API.
PDF to XLSX conversion API.
PDFConvertToXlsxType
Defines how the content is organized in the resulting Excel file.
Definition pdf2xlsx.h:24
PDFSDK_IMPORT_ PDErrCode PDFSDK_CALLCONV PDFConvertToXlsx(PDDoc source, const PDPageRange *pageRange, const PDProgressMonitor *progress, void *progressData, const PDFConvertToXlsxParams *params)
A function to covert a PDF file (or a part of it) into a MS Excel Document format (....
Contains conversion-related parameters such as the output directory and file name,...
Definition pdf2docx.h:23
bool ignoreHeadersAndFooters
Definition pdf2docx.h:29
const wchar_t * outputFile
Definition pdf2docx.h:24
Contains conversion-related parameters such as the output file, and a flag related table recognition.
Definition pdf2pptx.h:23
const wchar_t * outputFile
Definition pdf2pptx.h:24
Contains conversion-related parameters such as the output file, the Excel sheet makeup,...
Definition pdf2xlsx.h:35
bool keepTablesOnly
Definition pdf2xlsx.h:39
const wchar_t * outputFile
Definition pdf2xlsx.h:36
PDFConvertToXlsxType convertType
Definition pdf2xlsx.h:38
Specifies a structure to define a set of pages.
Definition document.h:43
Definition progress_monitor.h:15