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

Public 成员函数

virtual void * CreateContext (const char *filter, const char *sub_filter, const char *encrypt_info)=0
 用于创建加密和解密上下文的回调函数。 更多...
 
virtual String DecryptData (const void *decryptor, const void *encrypted_data, uint32 encrypted_data_len)=0
 用于解密加密数据的回调函数。 更多...
 
virtual bool EncryptData (const void *context, int obj_num, int gen_num, const void *src_data, uint32 src_data_len, void *out_dst_buffer, uint32 *out_dst_buffer_len)=0
 用于获取加密数据的回调函数。 更多...
 
virtual String FinishDecryptor (void *decryptor)=0
 用于完成解密的回调函数。 更多...
 
virtual SecurityHandler::CipherType GetCipher (const void *context)=0
 用于获取密码类型的回调函数。 更多...
 
virtual uint32 GetDecryptedSize (const void *context, uint32 src_data_size)=0
 用于获取估计的解密数据大小的回调函数。 更多...
 
virtual uint32 GetEncryptedSize (const void *context, int obj_num, int gen_num, const void *src_data, uint32 src_data_len)=0
 用于获取估计的加密大小的回调函数。 更多...
 
virtual String GetEncryptKey (const void *context)=0
 用于获取加密密钥的回调函数。 更多...
 
virtual PDFDoc::EncryptType GetSecurityType ()
 获取安全回调的加密类型。 更多...
 
virtual uint32 GetUserPermissions (const void *context, uint32 user_permission)=0
 用于获取用户权限的回调函数。 更多...
 
virtual bool IsOwner (const void *context)=0
 用于检查当前用户是否是PDF文档所有者的回调函数。 更多...
 
virtual bool ReleaseContext (void *context)=0
 用于释放加密和解密上下文的回调函数。 更多...
 
virtual void * StartDecryptor (const void *context, int obj_num, int gen_num)=0
 用于开始解密的回调函数。 更多...
 
virtual bool UseStandardCryptoMethod (const void *context)
 用于检查是否使用标准加密方法或自定义加密方法的回调函数。 更多...
 
- Public 成员函数 继承自 foxit::pdf::SecurityCallback
virtual void Release ()=0
 用于释放当前回调对象自身的回调函数。 更多...
 

详细描述

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

成员函数说明

◆ CreateContext()

virtual void* foxit::pdf::CustomSecurityCallback::CreateContext ( const char *  filter,
const char *  sub_filter,
const char *  encrypt_info 
)
pure virtual

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

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

◆ DecryptData()

virtual String foxit::pdf::CustomSecurityCallback::DecryptData ( const void *  decryptor,
const void *  encrypted_data,
uint32  encrypted_data_len 
)
pure virtual

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

参数
[in]decryptor用户实现和创建的解密器,由回调函数 CustomSecurityCallback::StartDecryptor 返回。
[in]encrypted_data存储加密数据的缓冲区。
[in]encrypted_data_len加密数据的长度,以字节为单位。
注解
用户应该实现此回调函数。
返回
解密的数据内容。

◆ EncryptData()

virtual bool foxit::pdf::CustomSecurityCallback::EncryptData ( const void *  context,
int  obj_num,
int  gen_num,
const void *  src_data,
uint32  src_data_len,
void *  out_dst_buffer,
uint32 out_dst_buffer_len 
)
pure virtual

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

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

◆ FinishDecryptor()

virtual String foxit::pdf::CustomSecurityCallback::FinishDecryptor ( void *  decryptor)
pure virtual

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

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

◆ GetCipher()

virtual SecurityHandler::CipherType foxit::pdf::CustomSecurityCallback::GetCipher ( const void *  context)
pure virtual

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

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

◆ GetDecryptedSize()

virtual uint32 foxit::pdf::CustomSecurityCallback::GetDecryptedSize ( const void *  context,
uint32  src_data_size 
)
pure virtual

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

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

◆ GetEncryptedSize()

virtual uint32 foxit::pdf::CustomSecurityCallback::GetEncryptedSize ( const void *  context,
int  obj_num,
int  gen_num,
const void *  src_data,
uint32  src_data_len 
)
pure virtual

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

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

◆ GetEncryptKey()

virtual String foxit::pdf::CustomSecurityCallback::GetEncryptKey ( const void *  context)
pure virtual

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

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

◆ GetSecurityType()

virtual PDFDoc::EncryptType foxit::pdf::CustomSecurityCallback::GetSecurityType ( )
inlinevirtual

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

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

重载 foxit::pdf::SecurityCallback .

foxit::pdf::RMSSecurityCallback 重载.

◆ GetUserPermissions()

virtual uint32 foxit::pdf::CustomSecurityCallback::GetUserPermissions ( const void *  context,
uint32  user_permission 
)
pure virtual

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

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

◆ IsOwner()

virtual bool foxit::pdf::CustomSecurityCallback::IsOwner ( const void *  context)
pure virtual

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

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

◆ ReleaseContext()

virtual bool foxit::pdf::CustomSecurityCallback::ReleaseContext ( void *  context)
pure virtual

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

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

◆ StartDecryptor()

virtual void* foxit::pdf::CustomSecurityCallback::StartDecryptor ( const void *  context,
int  obj_num,
int  gen_num 
)
pure virtual

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

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

◆ UseStandardCryptoMethod()

virtual bool foxit::pdf::CustomSecurityCallback::UseStandardCryptoMethod ( const void *  context)
inlinevirtual

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

参数
[in]context加密和解密的上下文,由回调函数 CustomSecurityCallback::CreateContext 返回。
返回