本页内容
删除密码
删除密码是指拥有所有者权限的用户移除用户密码和所有者密码,使文档无需密码即可打开,并默认拥有完全访问权限。
删除密码的步骤:
- 使用
CPDFReaderView
组件打开文档。 - 解锁文档并获取完全权限。
- 从解锁的文档中移除密码。
以下示例展示了如何删除密码:
tsx
const CPDFReaderViewExampleScreen = () => {
const pdfReaderRef = useRef<CPDFReaderView>(null);
const [samplePDF] = useState(
(Platform.OS === 'android'
? 'file:///android_asset/PDF_Document.pdf'
: 'PDF_Document.pdf')
);
return (
<View style={{ flex: 1 }}>
<Button title='Remove Password' onPress={async () => {
var document = pdfReaderRef.current?._pdfDocument;
const removeResult = await document?.removePassword();
}}></Button>
<CPDFReaderView
ref={pdfReaderRef}
document={samplePDF}
configuration={ComPDFKit.getDefaultConfig({
toolbarConfig: {
mainToolbarVisible: true,
iosLeftBarAvailableActions: [
CPDFToolbarAction.THUMBNAIL
]
}
})}
/>
</View>
);
};
检查文档是否已加密:
tsx
var document = pdfReaderRef.current?._pdfDocument;
const isEncrypted = await document?.isEncrypted()
获取文档权限状态:
dart
var document = pdfReaderRef.current?._pdfDocument;
const permissions = await document?.getPermissions();
权限状态说明:
权限状态 | 描述 | 枚举值 |
---|---|---|
无权限 | 文档未应用任何权限 | CPDFDocumentPermissions.NONE |
用户权限 | 使用用户密码打开文档,可能限制打印和复制等操作 | CPDFDocumentPermissions.USER |
所有者权限 | 使用所有者密码打开文档,无任何限制 | CPDFDocumentPermissions.OWNER |
检查所有者权限:
tsx
var document = pdfReaderRef.current?._pdfDocument;
// 检查当前文档是否通过所有者权限解锁
const unlocked = await document?.checkOwnerUnlocked()
// 检查所有者密码是否正确
const result = await document?.checkOwnerPassword('4321')