Skip to content

PDF 文件转档

若要将 PDF 文件转换为 Office 或其他格式,请向/file/handle发送请求,包括作为输入的 PDF 文件和文件处理参数。在开始之前,请确保 ComPDFKit Processor 已启动并正在运行。

您将向处理器的端点/file/handle发送 POST 请求。要了解有关多部分请求的更多信息,请参阅 API 参考指南

使用本地 PDF 文件转换

/file/handle发送分段请求并附加 PDF 文件:

shell
curl -f -X POST http://localhost:7000/file/handle \
-H "Content-Type: multipart/form-data" \
-F file=@"document.pdf" \
-F executeType="pdf/docx" \
-F password="file open password" \
-F parameter="{ \"contentOptions\": \"2\", \"worksheetOptions\": \"1\"}" \
> result.docx

4.1.1 PDF 转换功能 API 参数指南

本章节介绍目前 ComPDFKit Processor 支持的文件处理的参数设置。针对 PDF 转 Word、Excel、PPT、HTML、RTF、PNG、JPG、CSV 格式的功能支持特殊参数设置。对于其他功能,可忽略参数设置(会使用默认参数进行文档处理)。

PDF 转 Word

使用不同功能时可以在上传文件时使用它们各自特别的参数,其他步骤是一致的。

PDF 转 Word:

java
{    
  "isContainAnnot": "1",  
  "isContainImg": "1",
  "wordLayoutMode": "1",
  "isAllowOcr": "0",
  "isContainOcrBg": "0",
  "isOnlyAiTable": "0"
}

所需参数

isContainAnnot:是否包含注释(1:是,0:否)。

isContainImg:是否包含图片(1:是,0:否)。

wordLayoutMode:排版方式(1、流排模式;2、流排支持表格;3、框排模式;) 默认1。

isAllowOcr:是否允许开启 OCR(1: 是、0: 否)默认0。

isContainOcrBg:开启 OCR 后,是否保留底图(1: 是、0: 否)默认0。

isOnlyAiTable:是否允许开启 AI 表格识别(1: 是、0: 否)默认0。

PDF 转 Excel

使用不同功能时可以在上传文件时使用它们各自特别的参数,其他步骤是一致的。

PDF 转 Excel:

java
{
    "contentOptions": "2",
    "worksheetOptions": "1",
    "isContainAnnot": "1",  
    "isContainImg": "1",
    "isAllowOcr": "0",
    "isContainOcrBg": "0",
    "isOnlyAiTable": "0"
}

所需参数

contentOptions: 内容提取选项(1: 仅文本、2: 仅图表、3: 所有内容)。

worksheetOptions: 创建工作表的选项(1: ForEachTable、2: ForEachPage、3: ForTheDocument)。

isContainAnnot: 是否包含注释(1:是,0:否)。

isContainImg: 是否包含图片(1:是,0:否)。

isAllowOcr:是否允许开启 OCR(1: 是、0: 否)默认0。

isContainOcrBg:开启 OCR 后,是否保留底图(1: 是、0: 否)默认0。

isOnlyAiTable:是否允许开启 AI 表格识别(1: 是、0: 否)默认0。

PDF 转 PPT

使用不同功能时可以在上传文件时使用它们各自特别的参数,其他步骤是一致的。

PDF 转 PPT:

java
{    
  "isContainAnnot": "1",  
  "isContainImg": "1",
  "isAllowOcr": "0",
  "isContainOcrBg": "0",
  "isOnlyAiTable": "0"
}

所需参数

isContainAnnot: 是否包含注释(1:是,0:否)。

isContainImg: 是否包含图片(1:是,0:否)。

isAllowOcr:是否允许开启 OCR(1: 是、0: 否)默认0。

isContainOcrBg:开启 OCR 后,是否保留底图(1: 是、0: 否)默认0。

isOnlyAiTable:是否允许开启 AI 表格识别(1: 是、0: 否)默认0。

PDF 转 HTML

使用不同功能时可以在上传文件时使用它们各自特别的参数,其他步骤是一致的。

PDF 转 HTML:

java
{
   "pageOptions": "2",
   "isContainAnnot": "1",
   "isContainImg": "1",
   "isAllowOcr": "0",
   "isContainOcrBg": "0",
   "isOnlyAiTable": "0"
}

所需参数

pageOptions: 1: SinglePage, 2: SinglePageNavigationByBookmarks, 3: MultiplePages, 4: MultiplePagesSplitByBookmarks

isContainAnnot: 是否包含注释(1:是,0:否)。

isContainImg: 是否包含图片(1:是,0:否)。

isAllowOcr:是否允许开启 OCR(1: 是、0: 否)默认0。

isContainOcrBg:开启 OCR 后,是否保留底图(1: 是、0: 否)默认0。

isOnlyAiTable:是否允许开启 AI 表格识别(1: 是、0: 否)默认0。

PDF 转 RTF

使用不同功能时可以在上传文件时使用它们各自特别的参数,其他步骤是一致的。

PDF 转 RTF:

java
{    
  "isContainAnnot": "1", 
  "isContainImg": "1",
  "isAllowOcr": "0",
  "isContainOcrBg": "0"
}

所需参数

isContainAnnot: 是否包含注释(1:是,0:否)。

isContainImg: 是否包含图片(1:是,0:否)。

isAllowOcr:是否允许开启 OCR(1: 是、0: 否)默认0。

isContainOcrBg:开启 OCR 后,是否保留底图(1: 是、0: 否)默认0。

PDF 转 JPG

使用不同功能时可以在上传文件时使用它们各自特别的参数,其他步骤是一致的。 PDF 转 JPG:

java
{  
  "imgDpi": "300"
}

所需参数

imgDpi:图片 DPI 值范围是72-1500(默认为300)。

PDF 转 CSV

使用不同功能时可以在上传文件时使用它们各自特别的参数,其他步骤是一致的。

PDF 转 CSV:

java
{    
  "isCsvMerge": "1",
  "isOnlyAiTable": "0"
}

所需参数

isCsvMerge: 是否合并 CSV(1: 是, 0: 否)。

  • isCsvMerge 为 1 时,返回的文件是 .csv 格式。
  • isCsvMerge 为 0 时,返回的文件是 .zip 格式。

isOnlyAiTable:是否允许开启 AI 表格识别(1: 是、0: 否)默认0。

PDF 转 JSON

使用不同功能时可以在上传文件时使用它们各自特别的参数,其他步骤是一致的。

PDF 转 JSON:

java
{
   "type": "0",
   "isAllowOcr": "0",
   "extractTextMode": "0"
}

所需参数

type:PDF 转 JSON 时,需要被转档的内容类别(0: PDF 中表格外的文本、1: PDF 中的所有表格以及表格中的文本、2: 提取所有内容)默认0。

isAllowOcr:是否允许开启 OCR(1: 是、0: 否)默认0。

extractTextMode:PDF 转 JSON type 为 "2" 时,需要提取的内容格式(0: 按照行提取、1: 按照段落提取)默认0。开启 OCR 之后目前无法按照段落提取

有关 JSON 文件内容字段解释祥见 PDF数据提取 JSON格式说明.pdf