fpdf_convert.h 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384
  1. #ifndef PUBLIC_FPDFCONVERT_H_
  2. #define PUBLIC_FPDFCONVERT_H_
  3. #ifdef LINUX_SERVER
  4. #define FPDFCONVERT_EXPORT __attribute__((visibility("default")))
  5. #else
  6. #define FPDFCONVERT_EXPORT
  7. #endif
  8. #include <vector>
  9. class CFP_PdfToWord;
  10. class CFP_PdfToPPT;
  11. class CFP_PdfToExcel;
  12. class CFP_PdfToTable;
  13. class CFP_PdfToTxt;
  14. class CFP_PdfToImg;
  15. class CFP_PdfToRtf;
  16. class CFP_PdfToHtml;
  17. class CFP_PDFExtraceText;
  18. class CFP_PDFExtraceTable;
  19. class CFP_PDFExtracePDF;
  20. #ifdef USEOCR
  21. class CFP_PdfToEditable;
  22. #endif // USEOCR
  23. // #define ERR_SUCCESS_ 1000// 成功
  24. // #define ERR_UNKNOWN_ 1001// 未知错误
  25. // #define ERR_VERIFY_ 1002// 认证失败
  26. // #define ERR_INVALID_ 1003// license无效
  27. // #define ERR_OVERDUE_ 1004// license过期
  28. // #define ERR_DATA_ 1005// license数据错误
  29. // #define ERR_PLATFORM_ 1006// platform错误
  30. // #define ERR_IDENTIFIER_ 1007// identifier错误
  31. typedef struct fpdf_to_word_t__ *FPDF_TO_WORD;
  32. typedef struct fpdf_to_ppt_t__ *FPDF_TO_PPT;
  33. typedef struct fpdf_to_excel_t__ *FPDF_TO_EXCEL;
  34. typedef struct fpdf_to_excel_table_t__ *FPDF_TO_TABLE;
  35. typedef struct fpdf_to_txt_t__ *FPDF_TO_TXT;
  36. typedef struct fpdf_to_csv_t__ *FPDF_TO_CSV;
  37. typedef struct fpdf_to_img_t__ *FPDF_TO_IMG;
  38. typedef struct fpdf_to_rtf_t__ *FPDF_TO_RTF;
  39. typedef struct fpdf_to_html_t__ *FPDF_TO_HTML;
  40. typedef struct fpdf_handle_ *FPDF_HANDLE;
  41. typedef struct fpdf_to_table_json_t__ *FPDF_TO_TableJson;
  42. typedef bool (*PSO_StartOCR)(const char *img_path,size_t size); //number is not 0,img_path is memmorydata
  43. enum ConvertPlatForm {
  44. P_MAC, P_IOS, P_ANDROID, P_WIN, P_LINUX, P_OTHERS
  45. };
  46. enum ConvertType {
  47. T_PPT, T_WORD, T_TXT, T_EXCEL, T_TABLE, T_CSV, T_IMG, T_RTF, T_HTML, T_ExtractText, T_ExtractTable, T_EDITABLE, T_ExtractPDF
  48. };
  49. #ifndef CONVERT_HTML_PARAMS_
  50. #define CONVERT_HTML_PARAMS_
  51. //转换出的文档类型
  52. enum PageAndNavigationPaneOptions : int {
  53. SinglePage = 0, //单页
  54. //SinglepageNavigationByTitle,//导览框架 基于标题 未实现 需要文件标题数据,预留接口
  55. SinglePageNavigationByBookmarks,//导览框架 基于书签
  56. MultiplePages,//多页拆分
  57. //MultiplePagesSplitByTitle,//多页按标题拆分 未实现 需要文件标题数据,预留接口
  58. MultiplePagesSplitByBookmarks//多页按书签拆分
  59. };
  60. #endif //CONVERT_HTML_PARAMS_
  61. #ifndef CONVERTPARAMS_
  62. #define CONVERTPARAMS_
  63. enum ImgType {
  64. JPEG, PNG //, BMP, GIF, TIFF, TGA, JPEG2000
  65. };
  66. enum ExcelMode{
  67. OneTableOneSheet, //一个表格一个Sheet
  68. PageTablesOneSheet, //一页所有表格一个Sheet
  69. AllPagesTablesSingleSheet, //文档所有表格一个Sheet
  70. PageTablesTextsOneSheet, //一页所有文字与表格一个Sheet
  71. PageTextsOnSheet, //一页所有文本一个Sheet
  72. AllPagesTablesTextsSingleSheet //所有文字和表格一个Sheet
  73. };
  74. enum WordLayoutMode {
  75. FlowMode = 1, //流排模式
  76. FlowTableMode = 3, //流排支持表格
  77. BoxMode = 4 //框排模式
  78. };
  79. enum OCRLanguage {
  80. UNKNOWN = 0, ///< Unknown
  81. CHINESE = 1, ///< Simplified Chinese
  82. CHINESE_TRA = 2, ///< Traditional Chinese
  83. ENGLISH = 3, ///< English
  84. KOREAN = 4, ///< Korean
  85. JAPANESE = 5, ///< Japanese
  86. LATIN = 6, ///< Latin
  87. };
  88. //1.10.x 新增
  89. //数据提取参数
  90. //提取文本
  91. //开启 OCR 之后目前无法按照段落提取
  92. enum ExtractTextMode {
  93. e_ExtractByLines, //按照行提取
  94. e_ExtractByParagraphs, //按照段落提取
  95. };
  96. typedef struct ConverterParams {
  97. bool isOnlyAiTable;
  98. bool isContainImg;//是否包含图片
  99. bool isImgsMerge;//是否图片合并
  100. unsigned int imgDpi;//图片分辨率
  101. ImgType imgType;//图片类型
  102. bool isContainAnnot;//是否包含注释
  103. bool isAnnotToImg;//注释是否转成图片
  104. bool isPathToImg;//路径是否转成图片
  105. bool isContainEmptyChar;//是否包含空字符
  106. WordLayoutMode wordLayoutMode;//Word排版模式
  107. ExcelMode excelMode;
  108. bool isSingleSheetOfExcel;//转Excel是否采用单Sheet
  109. bool isAllowOcr;//是否允许开启OCR
  110. bool isContainOcrBg;//是否包含OCR底图
  111. OCRLanguage ocrLanguage;//OCR语言
  112. PageAndNavigationPaneOptions htmlOptions;
  113. bool isCsvMerge;//是否合并CSV
  114. ExtractTextMode extractTextMode;
  115. ConverterParams() {
  116. isContainImg = true;
  117. isImgsMerge = true;
  118. imgDpi = 144;
  119. imgType = ImgType::PNG;
  120. isContainAnnot = true;
  121. isAnnotToImg = true;
  122. isPathToImg = true;
  123. isContainEmptyChar = true;
  124. wordLayoutMode = WordLayoutMode::BoxMode;
  125. excelMode = OneTableOneSheet;
  126. isSingleSheetOfExcel = true;
  127. isAllowOcr = false;
  128. isContainOcrBg = true;
  129. htmlOptions = PageAndNavigationPaneOptions::SinglePage;
  130. isCsvMerge = false;
  131. isOnlyAiTable = false;
  132. extractTextMode = e_ExtractByLines;
  133. }
  134. } ConverterParams;
  135. enum ConvertResult {
  136. /// Success, and no error occurs.
  137. e_ErrSuccess = 0,
  138. /// 取消转换
  139. e_ErrCancel = 1,
  140. /// File cannot be found or could not be opened.
  141. e_ErrFile = 2,
  142. /// Invalid password. Usually, this error may occur when loading a PDF document with password. When meet this, user should load document again with correct password.
  143. e_ErrPDFPassword = 3,
  144. /// PDF页面加载失败
  145. e_ErrPDFPage = 4,
  146. /// Format is invalid. For files, this may also mean that file is corrupted.
  147. e_ErrPDFFormat = 5,
  148. /// PDF document is encrypted by some unsupported security handler.
  149. e_ErrPDFSecurity = 6,
  150. /// Out-of-memory error occurs.
  151. e_ErrOutOfMemory = 7,
  152. /// 系统IO错误
  153. e_ErrIO = 8,
  154. /// 文件夹压缩失败
  155. e_ErrCompress = 9,
  156. /// The license is invalid
  157. e_ErrLicenseInvalid = 20,
  158. /// The license has expired
  159. e_ErrLicenseExpire = 21,
  160. /// The license does not support the current platform
  161. e_ErrLicenseUnsupportedPlatform = 22,
  162. /// The license does not support the application id
  163. e_ErrLicenseUnsupportedID = 23,
  164. /// The license does not support the device id
  165. e_ErrLicenseUnsupportedDevice = 24,
  166. /// The license does not have the function permission
  167. e_ErrLicensePermissionDeny = 25,
  168. /// License has not been initialized
  169. e_ErrLicenseUninitialized = 26,
  170. /// Illegal access to the API interface
  171. e_ErrLicenseIllegalAccess = 27,
  172. /// Failed to read license file
  173. e_ErrLicenseFileReadFailed = 28,
  174. /// PDF文档中没有表格
  175. e_ErrNoTable = 40,
  176. /// 调用OCR识别失败
  177. e_ErrOCRFailure = 41,
  178. /// 未知错误
  179. e_ErrUnknown = 100
  180. };
  181. #endif //CONVERTPARAMS_
  182. #ifdef __cplusplus
  183. extern "C" {
  184. #endif
  185. // Conversions to/from underlying types.
  186. FPDFCONVERT_EXPORT CFP_PdfToWord *CFPPdfToWordFromFPDFToWord(FPDF_TO_WORD word);
  187. FPDFCONVERT_EXPORT FPDF_TO_WORD FPDFToWordFromCFPPdfToWord(CFP_PdfToWord *word);
  188. FPDFCONVERT_EXPORT CFP_PdfToPPT *CFPPdfToPPTFromFPDFTOPPT(FPDF_TO_PPT ppt);
  189. FPDFCONVERT_EXPORT FPDF_TO_PPT FPDFTOPPTFromCFPPdfToPPT(CFP_PdfToPPT *ppt);
  190. FPDFCONVERT_EXPORT CFP_PdfToExcel *CFPPdfToExcelFromFPDFTOEXCEL(FPDF_TO_EXCEL excel);
  191. FPDFCONVERT_EXPORT FPDF_TO_EXCEL FPDFTOEXCELFromCFPPdfToExcel(CFP_PdfToExcel *excel);
  192. FPDFCONVERT_EXPORT CFP_PdfToTable *CFPPdfToTableFromFPDFTOTABLE(FPDF_TO_TABLE table);
  193. FPDFCONVERT_EXPORT FPDF_TO_TABLE FPDFTOTABLEFromCFPPdfToTable(CFP_PdfToTable *table);
  194. FPDFCONVERT_EXPORT CFP_PdfToTxt *CFPPdfToTxtFromFPDFToTxt(FPDF_TO_TXT txt);
  195. FPDFCONVERT_EXPORT FPDF_TO_TXT FPDFToTxtFromCFPPdfToTxt(CFP_PdfToTxt *txt);
  196. FPDFCONVERT_EXPORT CFP_PdfToTable *CFPPdfToCsvFromFPDFTOCSV(FPDF_TO_CSV csv);
  197. FPDFCONVERT_EXPORT FPDF_TO_CSV FPDFTOCSVFromCFPPdfToCsv(CFP_PdfToTable *csv);
  198. FPDFCONVERT_EXPORT CFP_PdfToImg *CFPPdfToImgFromFPDFToImg(FPDF_TO_IMG img);
  199. FPDFCONVERT_EXPORT FPDF_TO_IMG FPDFToImgFromCFPPdfToImg(CFP_PdfToImg *img);
  200. FPDFCONVERT_EXPORT CFP_PdfToRtf *CFPPdfToRtfFromFPDFToRtf(FPDF_TO_RTF rtf);
  201. FPDFCONVERT_EXPORT FPDF_TO_RTF FPDFToRtfFromCFPPdfToRtf(CFP_PdfToRtf *rtf);
  202. FPDFCONVERT_EXPORT CFP_PdfToHtml *CFPPdfToHtmlFromFPDFToHtml(FPDF_TO_HTML html);
  203. FPDFCONVERT_EXPORT FPDF_TO_HTML FPDFToHtmlFromCFPPdfToHtml(CFP_PdfToHtml *html);
  204. FPDFCONVERT_EXPORT FPDF_HANDLE FPDFExtractTextFromCFPPdfExtractText(CFP_PDFExtraceText* exctarct_text);
  205. FPDFCONVERT_EXPORT CFP_PDFExtraceText* FPDFExtractTextToCFPPdfExtractText(FPDF_HANDLE exctarct_text);
  206. FPDFCONVERT_EXPORT FPDF_HANDLE FPDFExtractTableFromCFPPdfExtractTable(CFP_PDFExtraceTable* exctarct_table);
  207. FPDFCONVERT_EXPORT CFP_PDFExtraceTable* FPDFExtractTableToCFPPdfExtractTable(FPDF_HANDLE exctarct_table);
  208. FPDFCONVERT_EXPORT FPDF_HANDLE FPDFExtractPDFFromCFPPdfExtractPDF(CFP_PDFExtracePDF* exctarct_pdf);
  209. FPDFCONVERT_EXPORT CFP_PDFExtracePDF* FPDFExtractPDFToCFPPdfExtractPDF(FPDF_HANDLE exctarct_pdf);
  210. #ifdef USEOCR
  211. FPDFCONVERT_EXPORT FPDF_HANDLE FPDFToEditableFromCFPPdfToEditable(CFP_PdfToEditable* pdf_editable);
  212. FPDFCONVERT_EXPORT CFP_PdfToEditable* FPDFToEditableToCFPPdfToEditable(FPDF_HANDLE pdf_editable);
  213. #endif
  214. //旧接口废弃
  215. //FPDFCONVERT_EXPORT int CPDF_initPermission(const char *key, const char *secret, const char *packageName, const int current_time, const ConvertPlatForm &platForm, int *type, bool id_verify);
  216. FPDFCONVERT_EXPORT int CPDF_initPermission(const char* license_file, bool isFile, const char* deviceId, const char* appId, bool id_verify);
  217. FPDFCONVERT_EXPORT void CPDF_initRes(const char *path);
  218. FPDFCONVERT_EXPORT void CPDF_ReleaseRes();
  219. FPDFCONVERT_EXPORT int CPDF_getPagesByFd(const int fd, const char *user_pwd);
  220. FPDFCONVERT_EXPORT int CPDF_getPagesByPath(const char *strPdfFile, const char *strUserPwd);
  221. FPDFCONVERT_EXPORT char *getFileSizeStr(const char *filename);
  222. FPDFCONVERT_EXPORT bool FileIsImage(const char *filename);
  223. FPDFCONVERT_EXPORT bool isAllowToWord();
  224. FPDFCONVERT_EXPORT bool isAllowToPPT();
  225. FPDFCONVERT_EXPORT bool isAllowToTxt();
  226. FPDFCONVERT_EXPORT bool isAllowToExcel();
  227. FPDFCONVERT_EXPORT bool isAllowToTable();
  228. FPDFCONVERT_EXPORT bool isAllowToCsv();
  229. FPDFCONVERT_EXPORT bool isAllowToImg();
  230. FPDFCONVERT_EXPORT bool isAllowToRtf();
  231. FPDFCONVERT_EXPORT bool isAllowToHtml();
  232. FPDFCONVERT_EXPORT bool isAllowOcr();
  233. FPDFCONVERT_EXPORT bool isAllowExtract();
  234. FPDFCONVERT_EXPORT bool isAllowToSearchablePDF();
  235. FPDFCONVERT_EXPORT void CPDF_ConvertPages(void *fpdf_to_handle, int pages, ConvertType type);
  236. FPDFCONVERT_EXPORT int CPDF_getPages(void *fpdf_to_handle, ConvertType type);
  237. FPDFCONVERT_EXPORT void CPDF_Cancel(void *fpdf_to_handle, ConvertType type);
  238. FPDFCONVERT_EXPORT bool CPDF_IsCancel(void *fpdf_to_handle, ConvertType type);
  239. FPDFCONVERT_EXPORT void CPDF_Release(void *fpdf_to_handle, ConvertType type);
  240. FPDFCONVERT_EXPORT void CPDF_setStartOcr(PSO_StartOCR pfunc);
  241. FPDFCONVERT_EXPORT void CPDF_setOcrResult(const char *result);
  242. FPDFCONVERT_EXPORT const char *CPDF_getOcrKey();
  243. FPDFCONVERT_EXPORT int CPDF_verifyOcrKey(const char *secret, char *result);
  244. FPDFCONVERT_EXPORT FPDF_TO_WORD CPDF_InitPDFToWordByFd(const int fd, const char *name, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  245. FPDFCONVERT_EXPORT FPDF_TO_WORD CPDF_InitIMGToWord(const char *imgPath, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, ConvertResult *result);
  246. FPDFCONVERT_EXPORT FPDF_TO_WORD CPDF_InitPDFToWordByPath(const char *strPdfFile, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  247. FPDFCONVERT_EXPORT int CPDF_StartPDFToWord(FPDF_TO_WORD word, int nPageNo, int nPageid);
  248. FPDFCONVERT_EXPORT void CPDF_EndPDFToWord(FPDF_TO_WORD word, char *pOutPath);
  249. FPDFCONVERT_EXPORT FPDF_TO_PPT CPDF_InitIMGToPPT(const char *imgPath, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, ConvertResult *result);
  250. FPDFCONVERT_EXPORT FPDF_TO_PPT CPDF_InitPDFToPPTByFd(const int fd, const char *name, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  251. FPDFCONVERT_EXPORT FPDF_TO_PPT CPDF_InitPDFToPPTByPath(const char *strPdfFile, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  252. FPDFCONVERT_EXPORT int CPDF_StartPDFToPPT(FPDF_TO_PPT ppt, int nPageNo, int nPageid);
  253. FPDFCONVERT_EXPORT void CPDF_EndPDFToPPT(FPDF_TO_PPT ppt, char *pOutPath);
  254. FPDFCONVERT_EXPORT FPDF_TO_EXCEL CPDF_InitIMGToExcel(const char *imgPath, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, ConvertResult *result);
  255. FPDFCONVERT_EXPORT FPDF_TO_EXCEL CPDF_InitPDFToExcelByFd(const int fd, const char *name, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  256. FPDFCONVERT_EXPORT FPDF_TO_EXCEL CPDF_InitPDFToExcelByPath(const char *strPdfFile, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  257. FPDFCONVERT_EXPORT bool CPDF_InitExcelXML(FPDF_TO_EXCEL excel, const int convertPages);
  258. FPDFCONVERT_EXPORT int CPDF_StartPDFToExcel(FPDF_TO_EXCEL excel, int nPageNo, int nPageid);
  259. FPDFCONVERT_EXPORT void CPDF_EndPDFToExcel(FPDF_TO_EXCEL excel, char *pOutPath);
  260. FPDFCONVERT_EXPORT FPDF_TO_TABLE CPDF_InitIMGToTable(const char *imgPath, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, ConvertResult *result);
  261. FPDFCONVERT_EXPORT FPDF_TO_TABLE CPDF_InitPDFToTableByFd(const int fd, const char *name, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  262. FPDFCONVERT_EXPORT FPDF_TO_TABLE CPDF_InitPDFToTableByPath(const char *strPdfFile, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  263. FPDFCONVERT_EXPORT bool CPDF_InitTableXML(FPDF_TO_TABLE table, const int convertPages);
  264. FPDFCONVERT_EXPORT int CPDF_StartPDFToTable(FPDF_TO_TABLE table, int nPageNo, int nPageid);
  265. FPDFCONVERT_EXPORT void CPDF_EndPDFToTable(FPDF_TO_TABLE table, char *pOutPath);
  266. FPDFCONVERT_EXPORT FPDF_TO_CSV CPDF_InitIMGToCSv(const char *imgPath, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, ConvertResult *result);
  267. FPDFCONVERT_EXPORT FPDF_TO_CSV CPDF_InitPDFToCsvByFd(const int fd, const char *name, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  268. FPDFCONVERT_EXPORT FPDF_TO_CSV CPDF_InitPDFToCsvByPath(const char *strPdfFile, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  269. FPDFCONVERT_EXPORT bool CPDF_InitCsvXML(FPDF_TO_CSV csv, const int convertPages);
  270. FPDFCONVERT_EXPORT int CPDF_StartPDFToCsv(FPDF_TO_CSV csv, int nPageNo, int nPageid);
  271. FPDFCONVERT_EXPORT void CPDF_EndPDFToCsv(FPDF_TO_CSV csv, char *pOutPath);
  272. FPDFCONVERT_EXPORT FPDF_TO_TXT CPDF_InitIMGToTxt(const char *imgPath, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, ConvertResult *result);
  273. FPDFCONVERT_EXPORT FPDF_TO_TXT CPDF_InitPDFToTxtByFd(const int fd, const char *name, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  274. FPDFCONVERT_EXPORT FPDF_TO_TXT CPDF_InitPDFToTxtByPath(const char *strPdfFile, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  275. FPDFCONVERT_EXPORT int CPDF_StartPDFToTxt(FPDF_TO_TXT txt, int nPageNo, int nPageid);
  276. FPDFCONVERT_EXPORT void CPDF_EndPDFToTxt(FPDF_TO_TXT txt, char *pOutPath);
  277. FPDFCONVERT_EXPORT FPDF_TO_IMG CPDF_InitPDFToImgByFd(const int fd, const char *name, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  278. FPDFCONVERT_EXPORT FPDF_TO_IMG CPDF_InitPDFToImgByPath(const char *strPdfFile, ConverterParams &params, const char *strOutputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  279. FPDFCONVERT_EXPORT int CPDF_StartPDFToImg(FPDF_TO_IMG img, int nPageNo, int nPageid);
  280. FPDFCONVERT_EXPORT void CPDF_EndPDFToImg(FPDF_TO_IMG img, char *pOutPath);
  281. FPDFCONVERT_EXPORT FPDF_TO_RTF CPDF_InitIMGToRTF(const char *imgPath, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, ConvertResult *result);
  282. FPDFCONVERT_EXPORT FPDF_TO_RTF CPDF_InitPDFToRTFByFd(const int fd, const char *name, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  283. FPDFCONVERT_EXPORT FPDF_TO_RTF CPDF_InitPDFToRTFByPath(const char *strPdfFile, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  284. FPDFCONVERT_EXPORT void CPDF_InitPDFToRTFPages(FPDF_TO_RTF rtf, int *pages, int len);
  285. FPDFCONVERT_EXPORT int CPDF_StartPDFToRTF(FPDF_TO_RTF rtf, int nPageNo, int nPageid);
  286. FPDFCONVERT_EXPORT void CPDF_EndPDFToRTF(FPDF_TO_RTF rtf, char *pOutPath);
  287. FPDFCONVERT_EXPORT FPDF_TO_HTML CPDF_InitIMGToHTML(const char *imgPath, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, ConvertResult *result);
  288. FPDFCONVERT_EXPORT FPDF_TO_HTML CPDF_InitPDFToHTMLByFd(const int fd, const char *name, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  289. FPDFCONVERT_EXPORT FPDF_TO_HTML CPDF_InitPDFToHTMLByPath(const char *strPdfFile, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  290. FPDFCONVERT_EXPORT int CPDF_StartPDFToHTML(FPDF_TO_HTML html, int nPageNo, int nPageid);
  291. FPDFCONVERT_EXPORT void CPDF_EndPDFToHTML(FPDF_TO_HTML html, char *pOutPath);
  292. FPDFCONVERT_EXPORT FPDF_HANDLE CPDF_InitPDFExtractTextByFd(const int fd, const char *name, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  293. FPDFCONVERT_EXPORT FPDF_HANDLE CPDF_InitPDFExtractTextByPath(const char *strPdfFile, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  294. FPDFCONVERT_EXPORT int CPDF_StartPDFExtractText(FPDF_HANDLE handle, int nPageNo, int nPageid);
  295. FPDFCONVERT_EXPORT void CPDF_EndPDFExtractText(FPDF_HANDLE handle, char *pOutPath);
  296. FPDFCONVERT_EXPORT FPDF_HANDLE CPDF_InitPDFExtractTableByFd(const int fd, const char *name, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  297. FPDFCONVERT_EXPORT FPDF_HANDLE CPDF_InitPDFExtractTableByPath(const char *strPdfFile, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  298. FPDFCONVERT_EXPORT int CPDF_StartPDFExtractTable(FPDF_HANDLE handle, int nPageNo, int nPageid);
  299. FPDFCONVERT_EXPORT void CPDF_EndPDFExtractTable(FPDF_HANDLE handle, char *pOutPath);
  300. FPDFCONVERT_EXPORT FPDF_HANDLE CPDF_InitPDFExtractPDFByFd(const int fd, const char *name, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  301. FPDFCONVERT_EXPORT FPDF_HANDLE CPDF_InitPDFExtractPDFByPath(const char *strPdfFile, ConverterParams &params, const char *outputDir, const char *outputFilenameNoSuffix, const char *strUserPwd, ConvertResult *result);
  302. FPDFCONVERT_EXPORT int CPDF_StartPDFExtractPDF(FPDF_HANDLE handle, int nPageNo, int nPageid);
  303. FPDFCONVERT_EXPORT void CPDF_EndPDFExtractPDF(FPDF_HANDLE handle, char *pOutPath);
  304. #ifdef USEOCR
  305. FPDFCONVERT_EXPORT FPDF_HANDLE CPDF_InitPDFToSearchableByFd(const int fd, const char* name, ConverterParams& params, const char* outputDir, const char* outputFilenameNoSuffix, const char* strUserPwd, ConvertResult* result);
  306. FPDFCONVERT_EXPORT FPDF_HANDLE CPDF_InitPDFToSearchableByPath(const char* strPdfFile, ConverterParams& params, const char* outputDir, const char* outputFilenameNoSuffix, const char* strUserPwd, ConvertResult* result);
  307. FPDFCONVERT_EXPORT int CPDF_StartPDFToSearchable(FPDF_HANDLE handle, int nPageNo, int nPageid);
  308. FPDFCONVERT_EXPORT void CPDF_EndPDFToSearchable(FPDF_HANDLE handle, char *pOutPath);
  309. #endif
  310. FPDFCONVERT_EXPORT int CPDF_GetMajorNumber();
  311. FPDFCONVERT_EXPORT int CPDF_GetMinorNumber();
  312. FPDFCONVERT_EXPORT int CPDF_GetRevisionNumber();
  313. FPDFCONVERT_EXPORT const char* CPDF_GetVersion();
  314. FPDFCONVERT_EXPORT const char * CPDF_GetBuildTag();
  315. FPDFCONVERT_EXPORT void CPDF_EnableLog(bool is_enable, char* filename, bool is_standOutput);
  316. #ifdef __cplusplus
  317. }
  318. #endif
  319. #endif // PUBLIC_FPDFCONVERT_H_