Skip to content
DemoAPI 参考文档FAQ

PDF 生成模板编辑器

开源可视化 PDF 生成引擎,支持自定义模板,并提供面向开发者的 API,灵活构建文档生成流程。

查看 GitHub
Guides

ComPDF ​

提供用于全局库初始化、配置和实用工具方法的静态方法。

initWithPath ​

方法名:initWithPath(licensePath : string)

使用您的ComPDF 商业许可密钥Xml文件进行初始化ComPDF SDK。请联系我们的销售获取试用许可证。

参数:

名称类型描述
licensePathstring许可证文件路径

返回一个 Promise。

名称类型描述
resultboolean如果初始化成功,则返回 true,否则返回 false。
tsx
// Android: 放置到assets目录中
await ComPDFKit.initWithPath('assets://license_key_android.xml')

// iOS: 复制到ios根目录中
await ComPDFKit.initWithPath('license_key_ios.xml')

// 或者,使用绝对文件路径
await ComPDFKit.initWithPath('/data/data/your.package.name/files/license_key.xml')

init_ ​

使用您的 ComPDF 商业许可证密钥离线初始化 ComPDF SDK。请联系销售部门获取试用许可证。

参数:

名称类型描述
licensestring您的 ComPDF 许可证密钥

返回一个 Promise。

名称类型描述
resultboolean如果初始化成功,返回 true,否则返回 false。
tsx
ComPDFKit.init_('your compdfkit license')

initialize ​

使用您的 ComPDF 商业许可证密钥,通过在线认证初始化 ComPDF SDK。请联系销售部门获取试用许可证。

参数:

名称类型描述
androidOnlineLicensestring您的 ComPDF for React Native Android 在线许可证密钥。
iosOnlineLicensestring您的 ComPDF for React Native iOS 在线许可证密钥。

返回一个 Promise。

名称类型描述
resultboolean如果初始化成功,返回 true,否则返回 false。
tsx
ComPDFKit.initialize('android online license', 'ios online license')

getVersionCode ​

获取 ComPDF SDK 的版本号。

例如:'2.0.1'

返回一个 Promise。

名称类型描述
versionCodeStringComPDF SDK 的版本号。
tsx
ComPDFKit.getVersionCode().then((versionCode : string) => {
  console.log('ComPDF SDK Version:', versionCode)
})

getSDKBuildTag ​

获取 ComPDF SDK 的构建标记。

例如:"build_beta_2.0.0_42db96987_202404081007"

返回一个 Promise。

名称类型描述
buildTagStringComPDF SDK 的构建标记。
tsx
ComPDFKit.getSDKBuildTag().then((buildTag : string) => {
  console.log('ComPDF Build Tag:', buildTag)
})

openDocument ​

用于展示 PDF 文档。

参数:

名称类型描述
documentstring要展示的 PDF 文档路径。
passwordstringPDF 文档的密码。
configurationstring配置对象,用于自定义 ComPDF 的外观和行为。
  • (Android) 对于本地存储文件路径:
tsx
document = '/storage/emulated/0/Download/PDF_document.pdf'
ComPDFKit.openDocument(document, '', ComPDFKit.getDefaultConfig({}))
  • (Android) 对于内容 Uri:
tsx
document = 'content://...'
ComPDFKit.openDocument(document, '', ComPDFKit.getDefaultConfig({}))
  • (Android) 对于 assets 路径:
tsx
document = "file:///android_asset/..."
ComPDFKit.openDocument(document, '', ComPDFKit.getDefaultConfig({}))
  • (iOS) 对于应用程序包文件路径:
tsx
document = 'pdf_document.pdf'
ComPDFKit.openDocument(document, '', ComPDFKit.getDefaultConfig({}))

getDefaultConfig ​

当使用 ComPDFKit.openDocument 方法或 CPDFReaderView UI 组件展示 PDF 文件时,您需要传递配置参数来定制 UI 特性和 PDF 查看属性。ComPDF 提供了通过 ComPDFKit.getDefaultConfig 获取的默认配置参数。您可以使用以下示例来获取它们:

tsx
ComPDFKit.getDefaultConfig({})

您可以修改某些参数以满足您的需求。以下是一些使用示例:

  1. 设置初始显示模式和可用模式列表。以下代码示例仅启用查看模式和注释模式:
tsx
ComPDFKit.getDefaultConfig({
  modeConfig: {
    initialViewMode: CPDFViewMode.VIEWER,
    availableViewModes: [
      CPDFViewMode.VIEWER,
      CPDFViewMode.ANNOTATIONS
    ]
  }
})
  1. 设置启用的注释类型和默认注释属性值列表。例如,仅启用注释注释并设置注释的颜色和透明度:
tsx
ComPDFKit.getDefaultConfig({
  annotationsConfig:{
    availableType:[
      CPDFAnnotationType.NOTE
    ],
    availableTools:[
      CPDFConfigTool.SETTING,
      CPDFConfigTool.UNDO,
      CPDFConfigTool.REDO
    ],
    initAttribute:{
      note:{
        color: '#1460F3',
        alpha: 255
      }
    }
  }
})
  1. 设置显示模式和翻页方向:
tsx
ComPDFKit.getDefaultConfig({
  readerViewConfig:{
    displayMode: CPDFDisplayMode.DOUBLE_PAGE,
    verticalMode: false
  }
})

有关更多配置参数的描述,请参阅 CPDFCONFIGURATION.md。

removeSignFileList ​

删除电子签名注释列表中保存的签名。

返回一个 Promise。

名称类型描述
resultboolean如果删除成功,返回 true,否则返回 false。
tsx
ComPDFKit.removeSignFileList();

pickFile ​

打开系统文件选择器以选择一个PDF文档。

返回一个 Promise。

参数类型描述
resultstring返回选择的PDF文件路径
tsx
String? path = ComPDFKit.pickFile();

setImportFontDir ​

导入字体文件以支持显示额外的语言。导入的字体将出现在自由文本注释和文本编辑的字体列表中。

注意: 字体必须在初始化SDK之前导入。

导入字体的步骤:

  1. 将要导入的字体文件复制到一个自定义文件夹中。
  2. 调用 setImportFontDir 并将文件夹路径作为参数传入。
  3. 使用 ComPDFKit.init_ 初始化SDK。

参数:

参数名类型描述
fontDirstring包含要导入字体文件的文件夹路径。
addSysFontstring是否将系统字体包含在字体列表中。

返回一个 Promise。

参数类型描述
resultbool是否设置成功
tsx
// 设置字体目录
ComPDFKit.setImportFontDir('fontdir', true);
// 初始化 ComPDF SDK
ComPDFKit.init_('your license key');

createUri ​

此方法仅支持 Android 平台,用于在 Android 设备上创建用于保存文件的 URI。

文件默认保存在 Downloads 目录,但可以使用 childDirectoryName 参数指定 Downloads 目录下的子目录。

如果未提供 childDirectoryName,则文件将直接保存在 Downloads 目录中。

fileName 参数为必填项,用于指定文件名称(例如 test.pdf)。

参数:

名称类型描述
fileNamestring指定文件名称,例如 test.pdf。
childDirectoryNamestring指定 Downloads 文件夹下的子目录。
mimeTypestring文件的 MIME 类型,默认为 application/pdf。

返回值(Promise):

名称类型描述
uristring返回用于保存文件的 URI。

示例代码:

tsx
const uri: string = await ComPDFKit.createUri('test.pdf', '', 'application/pdf');