Foxit PDF SDK
com.foxit.sdk.pdf.CustomSecurityCallback类 参考
类 com.foxit.sdk.pdf.CustomSecurityCallback 继承关系图:
com.foxit.sdk.pdf.SecurityCallback com.foxit.sdk.pdf.RMSSecurityCallback

Public 成员函数

java.lang.Object createContext (String filter, String sub_filter, String encrypt_info)
 用于创建加密和解密上下文的回调函数。 更多...
 
byte [] decryptData (java.lang.Object decryptor, byte[] encrypted_data)
 用于解密加密数据的回调函数。 更多...
 
boolean encryptData (java.lang.Object context, int obj_num, int gen_num, byte[] src_data, byte[] out_dst_buffer)
 用于获取加密数据的回调函数。 更多...
 
byte [] finishDecryptor (java.lang.Object decryptor)
 用于完成解密的回调函数。 更多...
 
int getCipher (java.lang.Object context)
 用于获取密码类型的回调函数。 更多...
 
int getDecryptedSize (java.lang.Object context, int src_data_size)
 用于获取估计的解密数据大小的回调函数。 更多...
 
int getEncryptedSize (java.lang.Object context, int obj_num, int gen_num, byte[] src_data)
 用于获取估计的加密大小的回调函数。 更多...
 
byte [] getEncryptKey (java.lang.Object context)
 用于获取加密密钥的回调函数。 更多...
 
int getSecurityType ()
 获取安全回调的加密类型。 更多...
 
int getUserPermissions (java.lang.Object context, int user_permission)
 用于获取用户权限的回调函数。 更多...
 
boolean isOwner (java.lang.Object context)
 用于检查当前用户是否是PDF文档所有者的回调函数。 更多...
 
boolean releaseContext (java.lang.Object context)
 用于释放加密和解密上下文的回调函数。 更多...
 
java.lang.Object startDecryptor (java.lang.Object context, int obj_num, int gen_num)
 用于开始解密的回调函数。 更多...
 
boolean useStandardCryptoMethod (java.lang.Object context)
 用于检查是否使用标准加密方法或自定义加密方法的回调函数。 更多...
 
- Public 成员函数 继承自 com.foxit.sdk.pdf.SecurityCallback
int getSecurityType ()
 获取安全回调的加密类型。 更多...
 
void release ()
 用于释放当前回调对象自身的回调函数。 更多...
 

详细描述

此类表示自定义解密和加密的回调对象。如果用户想要使用 自定义安全回调,用户应该继承此回调类并实现纯虚函数 (作为回调函数),然后通过函数 common.Library.registerSecurityCallback 并使用任何自定义过滤器名称(遵循PDF名称约定)向 Foxit PDF SDK 注册自定义安全回调对象。 函数 common.Library.unregisterSecurityCallback 可以用来注销具有 注册过滤器名称的安全回调对象。

成员函数说明

◆ createContext()

java.lang.Object com.foxit.sdk.pdf.CustomSecurityCallback.createContext ( String  filter,
String  sub_filter,
String  encrypt_info 
)

用于创建加密和解密上下文的回调函数。

参数
[in]filter自定义安全回调对象的过滤器名称。
[in]sub_filter指定加密字典内容语法的子过滤器名称。
[in]encrypt_infoPDF文档的加密信息。
注解
用户应该实现此回调函数。
返回
加密上下文。

◆ decryptData()

DX_BYTE_ARRAY com.foxit.sdk.pdf.CustomSecurityCallback.decryptData ( java.lang.Object  decryptor,
byte []  encrypted_data 
)

用于解密加密数据的回调函数。

参数
[in]decryptor用户实现和创建的解密器,由回调函数 CustomSecurityCallback.startDecryptor 返回。
[in]encrypted_data存储加密数据的缓冲区。
注解
用户应该实现此回调函数。
返回
解密的数据内容。

◆ encryptData()

boolean com.foxit.sdk.pdf.CustomSecurityCallback.encryptData ( java.lang.Object  context,
int  obj_num,
int  gen_num,
byte []  src_data,
byte []  out_dst_buffer 
)

用于获取加密数据的回调函数。

参数
[in]context加密和解密的上下文,由回调函数 CustomSecurityCallback.createContext 返回。
[in]obj_numPDF对象的对象编号。
[in]gen_numPDF对象的生成编号。
[in]src_data存储要加密的纯文本的缓冲区。
[out]out_dst_buffer接收加密内容的输出参数。
注解
用户应该实现此回调函数。
返回
true 表示成功,false 表示失败。

◆ finishDecryptor()

DX_BYTE_ARRAY com.foxit.sdk.pdf.CustomSecurityCallback.finishDecryptor ( java.lang.Object  decryptor)

用于完成解密的回调函数。

参数
[in]decryptor用户实现和创建的解密器,由回调函数 CustomSecurityCallback.startDecryptor 返回。
注解
用户应该实现此回调函数。
返回
解密的数据内容。

◆ getCipher()

int com.foxit.sdk.pdf.CustomSecurityCallback.getCipher ( java.lang.Object  context)

用于获取密码类型的回调函数。

参数
[in]context加密和解密的上下文,由回调函数 CustomSecurityCallback.createContext 返回。
注解
用户应该实现此回调函数。
返回
密码类型。请参考从 com.foxit.sdk.pdf.SecurityHandler.e_CipherNone 开始的值, 应该是这些值中的一个。

◆ getDecryptedSize()

int com.foxit.sdk.pdf.CustomSecurityCallback.getDecryptedSize ( java.lang.Object  context,
int  src_data_size 
)

用于获取估计的解密数据大小的回调函数。

参数
[in]context加密和解密的上下文,由回调函数 CustomSecurityCallback.createContext 返回。
[in]src_data_size要解密的源数据大小。
注解
用户应该实现此回调函数。
返回
估计的解密数据大小。

◆ getEncryptedSize()

int com.foxit.sdk.pdf.CustomSecurityCallback.getEncryptedSize ( java.lang.Object  context,
int  obj_num,
int  gen_num,
byte []  src_data 
)

用于获取估计的加密大小的回调函数。

参数
[in]context加密和解密的上下文,由回调函数 CustomSecurityCallback.createContext 返回。
[in]obj_numPDF对象的对象编号。
[in]gen_numPDF对象的生成编号。
[in]src_data存储要加密的纯文本的缓冲区。
注解
用户应该实现此回调函数。
返回
估计的加密大小。

◆ getEncryptKey()

DX_BYTE_ARRAY com.foxit.sdk.pdf.CustomSecurityCallback.getEncryptKey ( java.lang.Object  context)

用于获取加密密钥的回调函数。

参数
[in]context加密和解密的上下文,由回调函数 CustomSecurityCallback.createContext 返回。
注解
用户应该实现此回调函数。
返回
加密密钥。

◆ getSecurityType()

int com.foxit.sdk.pdf.CustomSecurityCallback.getSecurityType ( )

获取安全回调的加密类型。

注解
用户不应覆盖此函数,否则会有意外行为。
返回
加密类型。它总是返回 com.foxit.sdk.pdf.PDFDoc.e_EncryptCustom

◆ getUserPermissions()

int com.foxit.sdk.pdf.CustomSecurityCallback.getUserPermissions ( java.lang.Object  context,
int  user_permission 
)

用于获取用户权限的回调函数。

参数
[in]context加密和解密的上下文,由回调函数 CustomSecurityCallback.createContext 返回。
[in]user_permission文档的原始权限设置。请参考从 com.foxit.sdk.pdf.PDFDoc.e_PermPrint 开始的值,可以是这些值中的一个或多个的组合。
注解
用户应该实现此回调函数。
返回
新的用户权限。请参考从 com.foxit.sdk.pdf.PDFDoc.e_PermPrint 开始的值, 应该是这些值中的一个或多个的组合。

◆ isOwner()

boolean com.foxit.sdk.pdf.CustomSecurityCallback.isOwner ( java.lang.Object  context)

用于检查当前用户是否是PDF文档所有者的回调函数。

参数
[in]context加密和解密的上下文,由回调函数 CustomSecurityCallback.createContext 返回。
注解
用户应该实现此回调函数。
返回
true 表示当前用户是所有者,false 表示当前用户不是所有者。

◆ releaseContext()

boolean com.foxit.sdk.pdf.CustomSecurityCallback.releaseContext ( java.lang.Object  context)

用于释放加密和解密上下文的回调函数。

参数
[in]context加密和解密的上下文,由回调函数 CustomSecurityCallback.createContext 返回。
注解
用户应该实现此回调函数。
返回
true 表示成功,false 表示失败。

◆ startDecryptor()

java.lang.Object com.foxit.sdk.pdf.CustomSecurityCallback.startDecryptor ( java.lang.Object  context,
int  obj_num,
int  gen_num 
)

用于开始解密的回调函数。

参数
[in]context加密和解密的上下文,由回调函数 CustomSecurityCallback.createContext 返回。
[in]obj_numPDF对象的对象编号。
[in]gen_numPDF对象的生成编号。
注解
用户应该实现此回调函数。
返回
用户实现和创建的解密器。

◆ useStandardCryptoMethod()

boolean com.foxit.sdk.pdf.CustomSecurityCallback.useStandardCryptoMethod ( java.lang.Object  context)

用于检查是否使用标准加密方法或自定义加密方法的回调函数。

参数
[in]context加密和解密的上下文,由回调函数 CustomSecurityCallback.createContext 返回。
返回
<ul>
<li>
<b>true</b> 表示使用标准加密方法。在这种情况下,回调函数 @link CustomSecurityCallback::getDecryptedSize CustomSecurityCallback.getDecryptedSize @endlink、@link
CustomSecurityCallback::startDecryptor CustomSecurityCallback.startDecryptor @endlink、 @link CustomSecurityCallback::decryptData
CustomSecurityCallback.decryptData @endlink、@link CustomSecurityCallback::finishDecryptor CustomSecurityCallback.finishDecryptor @endlink、 @link
CustomSecurityCallback::getEncryptedSize CustomSecurityCallback.getEncryptedSize @endlink 和 @link CustomSecurityCallback::encryptData
CustomSecurityCallback.encryptData @endlink 将无用, 用户可以为它们使用空实现。  
</li>
<li>
<b>false</b> 表示使用自定义加密方法。在这种情况下,请确保上述提到的回调函数都已实现。  
</li>
</ul>