本页内容
CPDFReaderView - Props
打开文档
CPDFReaderView
是一个 React 组件,用于展示 PDF 文档。以下是关于 document
属性的详细信息。
document
指定要展示的 PDF 文档的路径或 URI。
- 类型:
string
- 必需: 是
使用示例:
- (Android) 对于本地存储文件路径:
tsx
<CPDFReaderView
document={'/storage/emulated/0/Download/PDF_document.pdf'}/>
- (Android) 对于内容 Uri:
tsx
<CPDFReaderView
document={'content://...'}/>
- (Android) 对于 assets 路径:
tsx
<CPDFReaderView
document={'file:///android_asset/...'}/>
- (iOS) 对于应用程序包文件路径:
tsx
<CPDFReaderView
document={'pdf_document.pdf'}/>
password
打开文档的密码是一个可选参数。
- 类型:
string
使用示例:
tsx
<CPDFReaderView
document={'pdf_document.pdf'}
password={'password'}/>
configuration
用于在渲染 PDF 文件时传递配置参数,以自定义 UI 特性和 PDF 查看属性。ComPDFKit
提供了通过 ComPDFKit.getDefaultConfig
获取的默认配置参数。
- 类型:
string
- 必需: 是
使用示例:
tsx
<CPDFReaderView
document={samplePDF}
configuration={ComPDFKit.getDefaultConfig({
})}
style={{flex:1}}
/>
文档相关
hasChange
检查文档是否已被修改。
返回一个 Promise。
Promise 参数:
名称 | 类型 | 描述 |
---|---|---|
hasChange | boolean | true :文档已被修改,false :文档未被修改。 |
tsx
const hasChange = await pdfReaderRef.current?.hasChange();
save
保存当前文档的更改。
返回一个 Promise。
Promise 参数:
名称 | 类型 | 描述 |
---|---|---|
result | boolean | true:保存成功,false:保存失败。 |
js
const saveResult = await pdfReaderRef.current.save();
onSaveDocument
可选函数
当文档保存时,此函数将被调用。
参数:
名称 | 类型 | 描述 |
---|---|---|
pageNumber | int | 当前页码 |
tsx
<CPDFReaderView
onSaveDocument={()=>{}}
/>
查看器
setMargins
设置当前 PDF 视图的边距。
参数:
名称 | 类型 | 描述 |
---|---|---|
left | int | 左边距 |
top | int | 上边距 |
right | int | 右边距 |
bottom | int | 下边距 |
tsx
await pdfReaderRef.current?.setMargins(10, 10, 10, 10);
页面
setDisplayPageIndex
跳转到指定页面索引。
参数:
名称 | 类型 | 描述 |
---|---|---|
pageIndex | int | 需要跳转的页码 |
tsx
await pdfReaderRef.current?.setDisplayPageIndex(1);
getCurrentPageIndex
获取当前页面的索引。
返回一个 Promise。
Promise 参数:
名称 | 类型 | 描述 |
---|---|---|
pageIndex | int | 当前文档展示的页面索引 |
tsx
const pageIndex = await pdfReaderRef.current?.getCurrentPageIndex();
onPageChanged
可选函数
页面编号更改时调用此函数。
参数:
名称 | 类型 | 描述 |
---|---|---|
pageNumber | int | 当前页面的页码 |
tsx
<CPDFReaderView
onPageChanged={(pageIndex: number) => {
console.log('Current Page:', pageIndex);
}}
/>
注释
importAnnotations
将指定的 XFDF 文件中的注释导入到当前 PDF 文档中。
参数:
名称 | 类型 | 描述 |
---|---|---|
xfdfFile | string | 要导入的 XFDF 文件的路径。 Android 支持以下路径: - assets 文件: 'file:///android_asset/test.xfdf' - 文件路径: '/data/xxx.xfdf' - Uri: 'content://xxxx' |
返回一个 Promise。
Promise 参数:
名称 | 类型 | 描述 |
---|---|---|
result | boolean | true: 导入成功,false: 导入失败。 |
tsx
const result = await pdfReaderRef.current?.importAnnotations('xxx.xfdf');
exportAnnotations
将当前 PDF 文档中的注释导出为 XFDF 文件。
返回一个 Promise。
Promise 参数:
名称 | 类型 | 描述 |
---|---|---|
xfdfPath | string | 如果导出成功,返回 XFDF 文件的路径;如果导出失败,则返回空字符串。 |
tsx
const exportXfdfFilePath = await pdfReaderRef.current?.exportAnnotations();
removeAllAnnotations
删除当前文档中的所有注释。
返回一个 Promise。
Promise 参数:
名称 | 类型 | 描述 |
---|---|---|
result | boolean | true: 成功,false: 失败。 |
tsx
const removeResult = await pdfReaderRef.current?.removeAllAnnotations();