Foxit PDF SDK

Public 成员函数 | 所有成员列表
com.foxit.sdk.pdf.CustomSecurityCallback类 参考
类 com.foxit.sdk.pdf.CustomSecurityCallback 继承关系图:

## 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_info | PDF文档的加密信息。

注解
  用户应该实现此回调函数。

返回
  加密上下文。

## ◆ 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_num | PDF对象的对象编号。
  [in] | gen_num | PDF对象的生成编号。
  [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_num | PDF对象的对象编号。
  [in] | gen_num | PDF对象的生成编号。
  [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_num | PDF对象的对象编号。
  [in] | gen_num | PDF对象的生成编号。

注解
  用户应该实现此回调函数。

返回
  用户实现和创建的解密器。

## ◆ 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>