|
Foxit PDF SDK
|
Public 成员函数 | |
| ClearSignedData () | |
| 如果当前签名已签名并验证有效,则清除数据和外观。 更多... | |
| constructor (document, sig_field_dict) | |
| 从签名字段字典构造的构造函数。 更多... | |
| constructor (field) | |
| 使用父类对象的构造函数。 更多... | |
| EnableEmbedFont (enable_embed_font) | |
| 启用或禁用嵌入字体。 更多... | |
| EnableIncrementalSaveForFirstSigning (enable_incremental_save) | |
| 启用或禁用首次签署的增量保存。用户应在调用函数 FSDK.Signature.StartSign之前调用此函数。 默认值:false。 更多... | |
| GenerateAppearance () | |
| 生成未签署签名的外观。 更多... | |
| GetAppearanceFlags () | |
| 获取签名外观标志。 更多... | |
| GetBitmap () | |
| 获取用于签名外观的位图。 更多... | |
| GetByteRangeArray (out_byte_range_array:[number, number, number, number]) | |
| 获取字节范围数据,包含4个元素。 更多... | |
| GetCert (index) | |
| 通过索引从当前签名的证书链中获取证书。 更多... | |
| GetCertCount () | |
| 获取当前签名证书链中的证书数量。 更多... | |
| GetCertificateInfo (key) | |
| 获取证书信息。 更多... | |
| GetDocPermission () | |
| 获取当前签名的文档权限。 更多... | |
| GetDocument () | |
| 获取当前签名所属的PDF文档。 更多... | |
| GetFieldMDPAction () | |
| 获取FieldMDP("MDP"表示修改检测和防止)操作类型。 更多... | |
| GetFieldMDPActionFields () | |
| 获取用于FieldMDP操作的字段名数组。 更多... | |
| GetFilter () | |
| 获取过滤器。 更多... | |
| GetKeyLabel (label_name) | |
| 获取指定键标签的字符串。 更多... | |
| GetKeyValue (key) | |
| 获取指定键名的字符串值。 更多... | |
| GetPAdESLevel () | |
| 获取PAdES级别。 更多... | |
| GetPagingSealGroupElements () | |
| 获取当前骑缝章签名的组元素。 更多... | |
| GetPagingSealSignature () | |
| 获取骑缝章签名。 更多... | |
| GetSignatureDict () | |
| 获取签名字典。 更多... | |
| GetSignatureType () | |
| 获取签名类型。 更多... | |
| GetSignedVersionDocument (file_path) | |
| 获取当前签名被签署时的已签名版本PDF文档。 更多... | |
| GetSignTime () | |
| 获取签署时间。 更多... | |
| GetState () | |
| Get current state. 更多... | |
| GetSubFilter () | |
| 获取子过滤器。 更多... | |
| IsEmpty () | |
| 检查当前对象是否为空。 更多... | |
| IsSigned () | |
| 检查当前签名是否已签署。 更多... | |
| IsTimeStamp () | |
| 检查当前签名是否为时间戳签名。 更多... | |
| SetAppearanceContent (appearance_content) | |
| 为已签名签名外观设置自定义外观内容(作为低级绘图操作命令)。 更多... | |
| SetAppearanceFlags (appearance_flags) | |
| 设置签名外观标志。 更多... | |
| SetBitmap (bitmap) | |
| 为签名外观设置位图。 更多... | |
| SetCertChain (cert_chain) | |
| 设置证书链。 更多... | |
| SetCustomObject (key, pdf_object) | |
| 为签名字典设置自定义PDF对象。 更多... | |
| SetDefaultContentsLength (default_length) | |
| 设置表示签名值(称为已签名数据)的签名内容的默认长度。 更多... | |
| SetDocPermission (permission) | |
| 为当前签名设置文档权限。 更多... | |
| SetFieldMDPActionFields (action, field_array) | |
| 设置FieldMDP("MDP"表示修改检测和防止)操作名称数组。 更多... | |
| SetFilter (filter) | |
| 设置过滤器。 更多... | |
| SetImage (file_path, frame_index) | |
| 为签名外观设置带有指定帧索引的图像。 更多... | |
| SetImage (image, frame_index) | |
| 为签名外观设置带有指定帧索引的图像。 更多... | |
| SetKeyLabel (label_name, label_value) | |
| 设置指定键标签的字符串。 更多... | |
| SetKeyValue (key, value) | |
| 设置指定键名的字符串值。 更多... | |
| SetSignTime (sign_time) | |
| 设置签署时间。 更多... | |
| SetSubFilter (sub_filter) | |
| 设置子过滤器。 更多... | |
| StartSign (cert_file_stream, cert_password, digest_algorithm, save_path, client_data, pause) | |
| 如果当前签名未签署,则开始签署当前签名。 更多... | |
| StartSign (cert_path, cert_password, digest_algorithm, save_path, client_data, pause) | |
| 如果当前签名未签署,则开始签署当前签名。 更多... | |
| StartSign (cert_path, cert_password, digest_algorithm, stream_callback, client_data, pause) | |
| 如果当前签名未签署,则开始签署当前签名。 更多... | |
| StartVerify (client_data, pause) | |
| 如果当前签名已签署,则开始验证当前签名的完整性。 更多... | |
Public 属性 | |
| e_StateVerifyNoSupportWay | |
| 不支持的签名。 | |
静态 Public 属性 | |
| static | e_APFlagBitmap |
| 如果设置,在签名外观上显示位图。 | |
| static | e_APFlagDN |
| 如果设置,在签名外观上显示可分辨名称。 | |
| static | e_APFlagFoxitEditorFlag |
| 如果设置,在签名外观上显示Foxit Editor内容。 | |
| static | e_APFlagFoxitFlag |
| 签名外观标志的枚举。 更多... | |
| static | e_APFlagLabel |
| 如果设置,在签名外观上显示标签。 | |
| static | e_APFlagLocation |
| 如果设置,在签名外观上显示位置。 | |
| static | e_APFlagProducer |
| 如果设置,在签名外观上显示生产者内容。 | |
| static | e_APFlagReason |
| 如果设置,在签名外观上显示原因。 | |
| static | e_APFlagSigner |
| 如果设置,在签名外观上显示签署者。 | |
| static | e_APFlagSigningTime |
| 如果设置,在签名外观上显示签署时间。 | |
| static | e_APFlagText |
| 如果设置,在签名外观上显示文本内容。 | |
| static | e_DigestSHA1 |
| 签名摘要算法的枚举。 更多... | |
| static | e_DigestSHA256 |
| 签名摘要算法:sha256算法。 | |
| static | e_DigestSHA384 |
| 签名摘要算法:sha384算法。 | |
| static | e_DigestSHA512 |
| 签名摘要算法:sha512算法。 | |
| static | e_DocPermFillingFormAndSigning |
| 允许的更改包括填写表单、实例化页面模板和签名。 其他更改将使签名无效。 | |
| static | e_DocPermFillingFormSigningAndAnnotating |
| 允许的更改与2相同,以及注释的创建、删除和修改。 其他更改将使签名无效。 | |
| static | e_DocPermNoChangesAllowed |
| 不允许对PDF文档(由签名签署的文档)进行任何更改。 对这种PDF文档的任何更改都将使签名无效。 | |
| static | e_DocPermUnrestricted |
| 签名文档权限的枚举。 更多... | |
| static | e_FieldMDPActionAll |
| 所有表单字段的标志将被设置为只读。 | |
| static | e_FieldMDPActionExclude |
| 表单字段(指定表单字段除外)的标志将被设置为只读。 更多... | |
| static | e_FieldMDPActionInclude |
| 指定表单字段的标志将被设置为只读。 更多... | |
| static | e_FieldMDPActionNone |
| 签名FieldMDP("MDP"表示修改检测和防止)操作类型的枚举。 更多... | |
| static | e_KeyNameContactInfo |
| 签名键名:联系信息。 | |
| static | e_KeyNameDN |
| 签名键名:可分辨名称。 | |
| static | e_KeyNameLocation |
| 签名键名:位置。 | |
| static | e_KeyNameProducer |
| 签名键名:生产者内容。 | |
| static | e_KeyNameReason |
| 签名键名:原因。 | |
| static | e_KeyNameSigner |
| 签名键名的枚举。 更多... | |
| static | e_KeyNameText |
| 签名键名:文本内容。 | |
| static | e_LabelNameDN |
| 可分辨名称的签名键名。 更多... | |
| static | e_LabelNameLocation |
| 位置的签名标签名。 更多... | |
| static | e_LabelNameProducer |
| 生产者名称的签名键名。 更多... | |
| static | e_LabelNameReason |
| 原因的签名标签名。 更多... | |
| static | e_LabelNameSigner |
| 签名标签名的枚举。 更多... | |
| static | e_LabelNameSignTime |
| 签署时间的签名标签名。 更多... | |
| static | e_PAdESLevelBB |
| PAdES级别:B-B。 | |
| static | e_PAdESLevelBLT |
| PAdES级别:B-LT。 | |
| static | e_PAdESLevelBLTA |
| PAdES级别:B-LTA。 | |
| static | e_PAdESLevelBT |
| PAdES级别:B-T。 | |
| static | e_PAdESLevelNone |
| PAdES级别:无。 | |
| static | e_PAdESLevelNotPAdES |
| PAdES级别的枚举。 更多... | |
| static | e_SignatureTypeOrdinary |
| 签名类型的枚举。 更多... | |
| static | e_SignatureTypePagingSeal |
| 签名类型:骑缝章签名。 | |
| static | e_SignatureTypeTimeStamp |
| 签名类型:时间戳签名。 | |
| static | e_StateCertCannotGetVRI |
| 无法获取验证相关信息。 | |
| static | e_StateNoSignData |
| 签名没有任何签名数据。这意味着签名字典中没有"V"条目。 | |
| static | e_StateSigned |
| 已签名的签名。 | |
| static | e_StateUnknown |
| 签名状态的枚举。 更多... | |
| static | e_StateUnsigned |
| 未签名的签名。 | |
| static | e_StateVerifyChange |
| 文档已在签名范围内被修改。(这表示签名无效。) | |
| static | e_StateVerifyChangeIllegal |
| 文档已在签名范围外被修改,且修改使签名无效。 | |
| static | e_StateVerifyChangeLegal |
| 文档已在签名范围外被修改,但修改是允许的。 | |
| static | e_StateVerifyErrorByteRange |
| 非期望的字节范围。 | |
| static | e_StateVerifyErrorData |
| 签名数据已损坏(这意味着签名数据无法正确解析)。 | |
| static | e_StateVerifyIncredible |
| 签名不可信(包含攻击性)。 | |
| static | e_StateVerifyInvalid |
| 签名的验证状态无效。 | |
| static | e_StateVerifyIssueCurrent |
| 验证的发行者是当前发行者。 | |
| static | e_StateVerifyIssueExpire |
| 用于验证发行者的证书已过期。 | |
| static | e_StateVerifyIssueRevoke |
| 用于验证发行者的证书已被撤销。 | |
| static | e_StateVerifyIssueUncheck |
| 未检查发行者。 | |
| static | e_StateVerifyIssueUnknown |
| 发行者的验证状态未知。 | |
| static | e_StateVerifyIssueValid |
| 发行者的验证状态有效。 | |
| static | e_StateVerifyNoChange |
| 文档在签名范围内未被修改。 | |
| static | e_StateVerifyTimestampDoc |
| 签名是时间戳签名。 | |
| static | e_StateVerifyTimestampExpire |
| 时间戳的验证状态已过期。 | |
| static | e_StateVerifyTimestampInvalid |
| 时间戳的验证状态无效。 | |
| static | e_StateVerifyTimestampIssueUnknown |
| 时间戳发行者的验证状态未知。 | |
| static | e_StateVerifyTimestampIssueValid |
| 时间戳发行者的验证状态有效。 | |
| static | e_StateVerifyTimestampNone |
| 没有时间戳或未检查时间戳。 | |
| static | e_StateVerifyTimestampTimeBefore |
| 时间戳时间的验证状态有效,因为时间在过期日期之前。 | |
| static | e_StateVerifyTimestampValid |
| 时间戳的验证状态有效。 | |
| static | e_StateVerifyValid |
| 签名的验证状态有效。 | |
数字签名(PDF 1.3)可用于验证用户身份和文档内容的真实性。 它存储有关签署者的信息以及签署时文档的状态。签名包含在 签名字段中,作为表单字段的一种类型,因此类 FSDK.Signature 派生自 类 FSDK.Field。 可以通过以下函数检索/添加签名对象:
在签名中,过滤器和子过滤器键用于指定将用于签署和验证签名的 签名回调对象的过滤器和子过滤器。Foxit PDF SDK 为以下过滤器和子过滤器提供了默认 签名回调:
对于子过滤器 "ETSI.CAdES.detached" 和子过滤器 "ETSI.RFC3161",如果要使用它们的默认签名回调进行签署, 请确保已向 FSDK.TimeStampServerMgr 设置了默认时间戳服务器。 对于其他过滤器和子过滤器,或者如果用户想要对上述过滤器和子过滤器使用自定义签名回调, 用户应准备自定义签名回调并通过函数 FSDK.Library.RegisterSignatureCallback 将回调注册到 Foxit PDF SDK。
此类提供函数来获取/设置签名信息/属性、签署或验证签名等。 例如:
在签署未签署的签名之前,用户可以调用以下函数来设置签署和 已签署外观的信息:
如果未签署的签名已设置了一些签署信息,但文档直接保存或 未签署签名就关闭了,这些数据(包括过滤器和子过滤器)将在 已保存的文档或已关闭的文档中丢失。当文档再次打开时,未签署的签名需要 至少指定过滤器和子过滤器才能进行签署;否则,此签名无法签署。
| FSDK::Signature::ClearSignedData | ( | ) |
如果当前签名已签名并验证有效,则清除数据和外观。
此函数用于已签名且有效的签名。
注意:从7.0开始,此函数仅用于验证签名的完整性。 要检查签名是否有效,请参考类FSDK.LTVVerifier。
| FSDK::Signature::constructor | ( | document | , |
| sig_field_dict | |||
| ) |
从签名字段字典构造的构造函数。
| [in] | document | 有效的PDF文档。 |
| [in] | sig_field_dict | 表示签名字段的PDF字典。 它应属于由参数document指定的PDF文档。 |
| FSDK::Signature::constructor | ( | field | ) |
使用父类对象的构造函数。
| [in] | field | 父类对象。 |
| FSDK::Signature::EnableEmbedFont | ( | enable_embed_font | ) |
启用或禁用嵌入字体。
| enable_embed_font | 指示是否为签名文本嵌入字体的标志。 true表示为签名文本嵌入字体。 false表示不为签名文本嵌入字体。 |
| FSDK::Signature::EnableIncrementalSaveForFirstSigning | ( | enable_incremental_save | ) |
启用或禁用首次签署的增量保存。用户应在调用函数 FSDK.Signature.StartSign之前调用此函数。
默认值:false。
| [in] | enable_incremental_save | 指示是否使用增量保存进行首次签署的标志。 true表示使用增量保存进行首次签署。 false表示使用默认保存进行首次签署。 |
| FSDK::Signature::GenerateAppearance | ( | ) |
| FSDK::Signature::GetAppearanceFlags | ( | ) |
获取签名外观标志。
签名外观标志指示将显示哪些信息。 目前,这仅在成功设置FSDK.Signature.SetAppearanceFlags后有用。 对于PDF文档中获取的签名,此函数的返回值将无用。
| FSDK::Signature::GetBitmap | ( | ) |
获取用于签名外观的位图。
| FSDK::Signature::GetByteRangeArray | ( | out_byte_range_array: | [number, number, number, number] | ) |
获取字节范围数据,包含4个元素。
此函数用于已签署的签名,以检索其用于摘要计算的字节范围。 字节范围数组包含4个元素。这四个元素总是成对的 整数(起始字节偏移量,字节长度),描述用于摘要计算的 确切字节范围。
有关更多详细信息,请参阅<PDF Reference 1.7>第8.7节数字签名。
| [out] | out_byte_range_array | 接收字节范围数据的输出参数。 请确保此数组可以包含4个元素。 |
| FSDK::Signature::GetCert | ( | index | ) |
通过索引从当前签名的证书链中获取证书。
建议在验证签名之前使用此函数。 当当前签名的子过滤器为"adbe.x509.rsa_sha1"时,应用程序需要调用此函数 在验证签名之前获取已验证的公钥证书。 证书链中的第一个证书是签名证书,它可以用于 验证签名。
| [in] | index | 要获取的证书的索引。有效范围:从0到(count-1)。 count由函数FSDK.Signature.GetCertCount返回。 |
| FSDK::Signature::GetCertCount | ( | ) |
获取当前签名证书链中的证书数量。
建议在验证签名之前使用此函数。 当当前签名的子过滤器为"adbe.x509.rsa_sha1"时,应用程序需要调用此函数以 获取证书链中的证书数量,然后调用函数FSDK.Signature.GetCert 在验证签名之前获取验证的公钥证书。
| FSDK::Signature::GetCertificateInfo | ( | key | ) |
获取证书信息。
此函数用于已签署的签名。 目前,此函数仅支持iOS和Android平台。
| [in] | key | 证书键字符串。目前可以是以下键之一:
|
| FSDK::Signature::GetDocPermission | ( | ) |
获取当前签名的文档权限。
| FSDK::Signature::GetDocument | ( | ) |
获取当前签名所属的PDF文档。
| FSDK::Signature::GetFieldMDPAction | ( | ) |
获取FieldMDP("MDP"表示修改检测和防止)操作类型。
| FSDK::Signature::GetFieldMDPActionFields | ( | ) |
获取用于FieldMDP操作的字段名数组。
返回的字段名数组与FieldMDP操作相关联(可以通过函数FSDK.Signature.GetFieldMDPAction检查):
| FSDK::Signature::GetFilter | ( | ) |
获取过滤器。
过滤器和子过滤器用于指定将使用哪个已注册的签名回调对象来 签署/验证当前签名。
| FSDK::Signature::GetKeyLabel | ( | label_name | ) |
获取指定键标签的字符串。
如果当前签名是时间戳签名,此函数将始终返回空字符串。
| [in] | label_name | 键标签。请参考从FSDK.Signature.e_LabelNameSigner开始的值, 这应该是这些值之一。 |
| FSDK::Signature::GetKeyValue | ( | key | ) |
获取指定键名的字符串值。
此函数用于获取签名字典中某些键的字符串值,例如"Reason"、 "Location"等。
| [in] | key | 键名。请参考从FSDK.Signature.e_KeyNameSigner开始的值, 这应该是这些值之一。 |
| FSDK::Signature::GetPAdESLevel | ( | ) |
获取PAdES级别。
| FSDK::Signature::GetPagingSealGroupElements | ( | ) |
获取当前骑缝章签名的组元素。
如果当前签名类型为FSDK.Signature.e_SignatureTypePagingSeal, 此函数将返回与当前签名关联的签名数组。 否则,将返回空数组。
| FSDK::Signature::GetPagingSealSignature | ( | ) |
获取骑缝章签名。
如果当前签名类型为FSDK.Signature.e_SignatureTypePagingSeal,此函数将返回 与当前签名关联的骑缝章签名对象。
| FSDK::Signature::GetSignatureDict | ( | ) |
获取签名字典。
签名字典是签名字段字典的一部分。
| FSDK::Signature::GetSignatureType | ( | ) |
获取签名类型。
| FSDK::Signature::GetSignedVersionDocument | ( | file_path | ) |
获取当前签名被签署时的已签名版本PDF文档。
当PDF文档已被多个签名签署且用户想要获取其中某个签名被签署时的 PDF文档时,此函数很有用。
| [in] | file_path | 当前签名所属的原始打开PDF文档的完整路径。不应为空字符串。 |
| FSDK::Signature::GetSignTime | ( | ) |
获取签署时间。
| FSDK::Signature::GetState | ( | ) |
Get current state.
| FSDK::Signature::GetSubFilter | ( | ) |
获取子过滤器。
过滤器和子过滤器用于指定将使用哪个已注册的签名回调对象来 签署/验证当前签名。
| FSDK::Signature::IsEmpty | ( | ) |
检查当前对象是否为空。
当当前对象为空时,表示当前对象无用。
| FSDK::Signature::IsSigned | ( | ) |
检查当前签名是否已签署。
| FSDK::Signature::IsTimeStamp | ( | ) |
检查当前签名是否为时间戳签名。
| FSDK::Signature::SetAppearanceContent | ( | appearance_content | ) |
为已签名签名外观设置自定义外观内容(作为低级绘图操作命令)。
此函数只能在为未签署的签名调用函数FSDK.Signature.StartSign之前使用。
一旦设置了自定义外观内容,它将用作已签名外观。在这种情况下, 由FSDK.Signature.SetAppearanceFlags设置的外观标志将被忽略, 相关信息将不会在外观中使用–这些信息是通过以下方式设置的: FSDK.Signature.SetSignTime、FSDK.Signature.SetKeyValue(除过滤器和子过滤器外)、 FSDK.Signature.SetBitmap、FSDK.Signature.SetImage。
如果当前签名是时间戳签名,此函数将不执行任何操作。
| [in] | appearance_content | 自定义外观内容。这应该是用于外观的绘图操作命令序列, 例如"10 10 m 20 10 l S"。有关更多详细信息,请参考 <PDF Reference 1.7> P196。 |
| FSDK::Signature::SetAppearanceFlags | ( | appearance_flags | ) |
设置签名外观标志。
建议在为未签名的签名调用函数FSDK.Signature.StartSign之前 使用此函数。
签名外观标志指示将在已签名外观中显示哪些信息。 如果已通过函数FSDK.Signature.SetAppearanceContent设置了自定义外观内容, 则外观标志将被忽略。
如果当前签名是时间戳签名,此函数将不执行任何操作。
| [in] | appearance_flags | 签名外观标志。请参考从 FSDK.Signature.e_APFlagFoxitFlag开始的值,这应该是 这些值之一或组合。 |
| FSDK::Signature::SetBitmap | ( | bitmap | ) |
为签名外观设置位图。
建议在为未签署的签名调用函数FSDK.Signature.StartSign之前使用此函数。 如果已通过函数FSDK.Signature.SetAppearanceContent设置了自定义外观内容, 则位图将不会在已签名外观中使用。
如果当前签名是时间戳签名,此函数将不执行任何操作。
| [in] | bitmap | 要设置到外观的位图。它应该是有效的。 |
| FSDK::Signature::SetCertChain | ( | cert_chain | ) |
设置证书链。
建议在签署未签署的签名之前使用此函数。 当签名子过滤器为"adbe.x509.rsa_sha1"时,用户需要调用此函数 将证书链设置到签名。对于其他子过滤器,此函数将直接返回而不执行任何操作。
| [in] | cert_chain | 表示证书链的字符串数组。 |
| FSDK::Signature::SetCustomObject | ( | key | , |
| pdf_object | |||
| ) |
为签名字典设置自定义PDF对象。
建议在为未签署的签名调用函数FSDK.Signature.StartSign之前 使用此函数。
| [in] | key | 签名字典的键,其值元素将被设置。不应为空字符串。 |
| [in] | pdf_object | 要设置为键值的自定义FSDK.PDFObject对象。不应为null。 它可以是直接PDF对象或间接PDF对象。 |
| FSDK::Signature::SetDefaultContentsLength | ( | default_length | ) |
设置表示签名值(称为已签名数据)的签名内容的默认长度。
此函数只能在为未签署的签名调用函数FSDK.Signature.StartSign之前使用。
签名内容表示签名值(称为已签名数据)。 当初始化签名字段时,签名内容将使用 默认长度7942进行初始化。当使用自定义签名回调来签署和验证未签署的签名时, 用户可以调用此函数来更改签名内容的默认长度。在这种情况下, 用户还应确保在回调函数FSDK.SignatureCallback.Sign中返回的已签名数据的长度 不应大于由此函数设置的默认长度。
| [in] | default_length | 签名值(称为已签名数据)的默认长度,以字节为单位。 它不应小于4098。 |
| FSDK::Signature::SetDocPermission | ( | permission | ) |
为当前签名设置文档权限。
此函数仅对未签署的签名有用。如果此函数用于已签署的签名,将不执行任何操作。
关于权限值的一些注意事项:
| [in] | permission | 文档权限。请参考从FSDK.Signature.e_DocPermUnrestricted开始的值, 这应该是这些值之一。 |
| FSDK::Signature::SetFieldMDPActionFields | ( | action | , |
| field_array | |||
| ) |
设置FieldMDP("MDP"表示修改检测和防止)操作名称数组。
此函数仅对未签署的签名有用。如果此函数用于已签署的签名,将不执行任何操作。
如果当前签名已签署,此函数无效。
| [in] | action | FieldMDP操作类型。请参考从FSDK.Signature.e_FieldMDPActionNone开始的值, 这应该是这些值之一。
|
| [in] | field_array | 用于FieldMDP操作的字段名数组。 |
| FSDK::Signature::SetFilter | ( | filter | ) |
设置过滤器。
过滤器和子过滤器用于指定将使用哪个已注册的签名回调对象来 签署/验证当前签名。用户可以设置过滤器和子过滤器以 在Foxit PDF SDK中使用默认签名回调,或使用其他过滤器和子过滤器,但请 确保在签署或验证当前签名之前,具有非默认过滤器和子过滤器的签名回调对象 已在Foxit PDF SDK中注册。 默认签名回调的过滤器和子过滤器为:
| [in] | filter | 过滤器字符串。不能为空字符串。 |
| FSDK::Signature::SetImage | ( | file_path | , |
| frame_index | |||
| ) |
为签名外观设置带有指定帧索引的图像。
建议在为未签署的签名调用函数FSDK.Signature.StartSign之前使用此函数。 如果已通过函数FSDK.Signature.SetAppearanceContent设置了自定义外观内容, 则图像将不会在已签名外观中使用。
输入图像可能包含多个帧,而只能将图像的一帧设置到当前签名。
如果当前签名是时间戳签名,此函数将不执行任何操作。
| [in] | file_path | 现有图像文件的完整路径。不应为空字符串。 |
| [in] | frame_index | 帧索引。有效范围:从0到(count-1)。 count由输入图像文件的函数FSDK.Image.GetFrameCount返回。 |
| FSDK::Signature::SetImage | ( | image | , |
| frame_index | |||
| ) |
为签名外观设置带有指定帧索引的图像。
建议在为未签署的签名调用函数FSDK.Signature.StartSign之前使用此函数。 如果已通过函数FSDK.Signature.SetAppearanceContent设置了自定义外观内容, 则图像将不会在已签名外观中使用。
输入图像可能包含多个帧,而只能将图像的一帧设置到当前签名。
如果当前签名是时间戳签名,此函数将不执行任何操作。
| [in] | image | 图像。其中一帧将被设置到当前签名。此图像至少包含 一帧,并且图像类型不应为FSDK.Image.e_Unknown。 |
| [in] | frame_index | 帧索引。有效范围:从0到(count-1)。 count由函数FSDK.Image.GetFrameCount返回。 |
| FSDK::Signature::SetKeyLabel | ( | label_name | , |
| label_value | |||
| ) |
设置指定键标签的字符串。
建议在为未签署的签名调用函数FSDK.Signature.StartSign之前使用此函数。
此函数用于设置签名字典中某些键的自定义标签的字符串值。 如果未设置自定义标签,Foxit PDF SDK将使用默认标签。有关更多详细信息,请参考 从FSDK.Signature.e_LabelNameSigner开始的值的注释。
如果当前签名是时间戳签名,此函数将不执行任何操作。
| [in] | label_name | 键标签。请参考从FSDK.Signature.e_LabelNameSigner开始的值, 这应该是这些值之一。 |
| [in] | label_value | 键标签的新字符串值。如果为空字符串,Foxit PDF SDK将使用默认标签。 有关更多详细信息,请参考从FSDK.Signature.e_LabelNameSigner开始的值的注释。 |
| FSDK::Signature::SetKeyValue | ( | key | , |
| value | |||
| ) |
设置指定键名的字符串值。
建议在为未签署的签名调用函数FSDK.Signature.StartSign之前使用此函数。
此函数用于设置签名字典中某些键的字符串值,例如签署者、原因、 位置等。
如果当前签名是时间戳签名,此函数将不执行任何操作。
| [in] | key | 键名。请参考从FSDK.Signature.e_KeyNameSigner开始的值, 这应该是这些值之一。 |
| [in] | value | 新的字符串值。 |
| FSDK::Signature::SetSignTime | ( | sign_time | ) |
| FSDK::Signature::SetSubFilter | ( | sub_filter | ) |
设置子过滤器。
过滤器和子过滤器用于指定将使用哪个已注册的签名回调对象来 签署/验证当前签名。用户可以设置过滤器和子过滤器以 在Foxit PDF SDK中使用默认签名回调,或使用其他过滤器和子过滤器,但请 确保在签署或验证当前签名之前,具有非默认过滤器和子过滤器的签名回调对象 已在Foxit PDF SDK中注册。 默认签名回调的过滤器和子过滤器为:
| [in] | sub_filter | 子过滤器字符串。 |
| FSDK::Signature::StartSign | ( | cert_file_stream | , |
| cert_password | , | ||
| digest_algorithm | , | ||
| save_path | , | ||
| client_data | , | ||
| pause | |||
| ) |
如果当前签名未签署,则开始签署当前签名。
此函数用于未签署的签名。当前签名的过滤器和子过滤器键指定 将用于签署当前签名的签名回调对象的名称。因此在签署之前, 请确保当前签名具有有效的过滤器和子过滤器字符串值。如果过滤器和子过滤器 是以下字符串之一,则表示使用Foxit PDF SDK中的默认签名回调:
对于子过滤器 "ETSI.CAdES.detached" 和子过滤器 "ETSI.RFC3161",如果要使用它们的默认签名回调进行签署, 请确保已向 FSDK.TimeStampServerMgr 设置了默认时间戳服务器。 对于其他过滤器和子过滤器,或者如果用户想要对上述过滤器和子过滤器使用自定义签名回调, 请确保自定义签名回调已通过函数 FSDK.Library.RegisterSignatureCallback 注册到Foxit PDF SDK。
对于符合PDF/A规范的PDF文档,建议在调用当前函数之前 调用 FSDK.Library.SetDefaultICCProfilesPath 并通过调用 FSDK.Signature.EnableEmbedFont 启用嵌入字体。 签署签名可能需要很长时间,因此Foxit PDF SDK使用渐进过程来执行此操作。
| [in] | cert_file_stream | 用户实现的FSDK.StreamCallback对象, 用于访问将用于签署的证书文件的内容。 如果在自定义签名回调中不需要,则可以为null。 如果要使用默认签名回调签署当前签名, 可以使用PFX证书文件。 |
| [in] | cert_password | 用于打开证书文件的密码字符串。如果这是空字符串, 则表示不需要密码。 |
| [in] | digest_algorithm | 已签署数据的消息摘要算法。请参考从FSDK.Signature.e_DigestSHA1开始的值, 这应该是这些值之一。 |
| [in] | save_path | 用于保存签署结果的完整PDF文件路径。已签署的文档将 保存到另一个PDF文件。 |
| [in] | client_data | 用户定义的对象,将传递给 FSDK.SignatureCallback中的回调函数。如果使用默认回调对象 签署当前签名,则此参数无用。默认值:null。 |
| [in] | pause | 决定签署过程是否需要暂停的暂停对象。这可以是 null,表示在签署过程中不暂停。如果这 不是null,则应该是用户实现的有效暂停对象。 默认值:null。 |
| FSDK::Signature::StartSign | ( | cert_path | , |
| cert_password | , | ||
| digest_algorithm | , | ||
| save_path | , | ||
| client_data | , | ||
| pause | |||
| ) |
如果当前签名未签署,则开始签署当前签名。
此函数用于未签署的签名。当前签名的过滤器和子过滤器键指定 将用于签署当前签名的签名回调对象的名称。因此在签署之前, 请确保当前签名具有有效的过滤器和子过滤器字符串值。如果过滤器和子过滤器 是以下字符串之一,则表示使用Foxit PDF SDK中的默认签名回调:
对于子过滤器 "ETSI.CAdES.detached" 和子过滤器 "ETSI.RFC3161",如果要使用它们的默认签名回调进行签署, 请确保已向 FSDK.TimeStampServerMgr 设置了默认时间戳服务器。 对于其他过滤器和子过滤器,或者如果用户想要对上述过滤器和子过滤器使用自定义签名回调, 请确保自定义签名回调已通过函数 FSDK.Library.RegisterSignatureCallback 注册到Foxit PDF SDK。
对于符合PDF/A规范的PDF文档,建议在调用当前函数之前 调用 FSDK.Library.SetDefaultICCProfilesPath 并通过调用 FSDK.Signature.EnableEmbedFont 启用嵌入字体。 签署签名可能需要很长时间,因此Foxit PDF SDK使用渐进过程来执行此操作。
| [in] | cert_path | 用于签署的证书文件的完整路径(包括文件名和扩展名)。 如果在自定义签名回调中不需要,则可以为空字符串。当此文件路径不为空时, 应为有效路径。 如果要使用默认签名回调签署当前签名, 这可以是PFX证书文件。 |
| [in] | cert_password | 用于打开证书文件的密码字符串。如果这是空字符串, 则表示不需要密码。 |
| [in] | digest_algorithm | 已签署数据的消息摘要算法。请参考从FSDK.Signature.e_DigestSHA1开始的值, 这应该是这些值之一。 |
| [in] | save_path | 用于保存签署结果的完整PDF文件路径。已签署的文档将 保存到另一个PDF文件。 |
| [in] | client_data | 用户定义的对象,将传递给 FSDK.SignatureCallback中的回调函数。如果使用默认回调对象 签署当前签名,则此参数无用。默认值:null。 |
| [in] | pause | 决定签署过程是否需要暂停的暂停对象。这可以是 null,表示在签署过程中不暂停。如果这 不是null,则应该是用户实现的有效暂停对象。 默认值:null。 |
| FSDK::Signature::StartSign | ( | cert_path | , |
| cert_password | , | ||
| digest_algorithm | , | ||
| stream_callback | , | ||
| client_data | , | ||
| pause | |||
| ) |
如果当前签名未签署,则开始签署当前签名。
此函数用于未签署的签名。当前签名的过滤器和子过滤器键指定 将用于签署当前签名的签名回调对象的名称。因此在签署之前, 请确保当前签名具有有效的过滤器和子过滤器字符串值。如果过滤器和子过滤器 是以下字符串之一,则表示使用Foxit PDF SDK中的默认签名回调:
对于子过滤器 "ETSI.CAdES.detached" 和子过滤器 "ETSI.RFC3161",如果要使用它们的默认签名回调进行签署, 请确保已向 FSDK.TimeStampServerMgr 设置了默认时间戳服务器。 对于其他过滤器和子过滤器,或者如果用户想要对上述过滤器和子过滤器使用自定义签名回调, 请确保自定义签名回调已通过函数 FSDK.Library.RegisterSignatureCallback 注册到Foxit PDF SDK。
对于符合PDF/A规范的PDF文档,建议在调用当前函数之前 调用 FSDK.Library.SetDefaultICCProfilesPath 并通过调用 FSDK.Signature.EnableEmbedFont 启用嵌入字体。 签署签名可能需要很长时间,因此Foxit PDF SDK使用渐进过程来执行此操作。
| [in] | cert_path | 用于签署的证书文件的完整路径(包括文件名和扩展名)。 如果在自定义签名回调中不需要,则可以为空字符串。当此文件路径不为空时, 应为有效路径。 如果要使用默认签名回调签署当前签名, 这可以是PFX证书文件。 |
| [in] | cert_password | 用于打开证书文件的密码字符串。如果这是空字符串, 则表示不需要密码。 |
| [in] | digest_algorithm | 已签署数据的消息摘要算法。请参考从FSDK.Signature.e_DigestSHA1开始的值, 这应该是这些值之一。 |
| [in] | stream_callback | 用户实现的FSDK.StreamCallback对象,用于保存签署结果。 已签署的文档将保存到另一个PDF文件。 |
| [in] | client_data | 用户定义的对象,将传递给 FSDK.SignatureCallback中的回调函数。如果使用默认回调对象 签署当前签名,则此参数无用。默认值:null。 |
| [in] | pause | 决定签署过程是否需要暂停的暂停对象。这可以是 null,表示在签署过程中不暂停。如果这 不是null,则应该是用户实现的有效暂停对象。 默认值:null。 |
| FSDK::Signature::StartVerify | ( | client_data | , |
| pause | |||
| ) |
如果当前签名已签署,则开始验证当前签名的完整性。
此函数用于已签署的签名。当前签名的过滤器和子过滤器键指定 将用于验证当前签名的签名回调对象的名称。因此在验证之前, 请确保:已通过函数 FSDK.Library.RegisterSignatureCallback注册了必要的签名回调对象。如果当前已签署签名的过滤器和子过滤器 是以下字符串之一,则表示使用Foxit PDF SDK中的默认签名回调, 用户无需为它们注册:
验证签名可能需要很长时间,因此Foxit PDF SDK使用渐进过程来执行此操作。
从7.0开始,此函数仅用于验证签名的完整性。要检查签名是否有效, 请参考类FSDK.LTVVerifier。
| [in] | client_data | 用户定义的对象,将传递给 FSDK.SignatureCallback中的回调函数。如果使用默认回调对象 验证当前签名,则此参数无用。默认值:null。 |
| [in] | pause | 决定验证过程是否需要暂停的暂停对象。 这可以是null,表示在验证过程中不暂停。 如果这不是null,则应该是用户实现的有效暂停对象。 默认值:null。 |
|
static |
签名外观标志的枚举。
此枚举的值可以单独使用或组合使用。
如果设置,在签名外观上显示Foxit标志。
|
static |
签名摘要算法的枚举。
此枚举的值应单独使用。
签名摘要算法:sha1算法。
|
static |
签名文档权限的枚举。
此枚举的值应单独使用。
无限制。
|
static |
表单字段(指定表单字段除外)的标志将被设置为只读。
|
static |
指定表单字段的标志将被设置为只读。
|
static |
签名FieldMDP("MDP"表示修改检测和防止)操作类型的枚举。
此枚举的值应单独使用。
无FieldMDP操作。
|
static |
签名键名的枚举。
此枚举的值应单独使用。
签名键名:签署者。
|
static |
可分辨名称的签名键名。
|
static |
位置的签名标签名。
|
static |
生产者名称的签名键名。
|
static |
原因的签名标签名。
|
static |
签名标签名的枚举。
此枚举的值应单独使用。
签署者的签名标签名。
|
static |
签署时间的签名标签名。
|
static |
PAdES级别的枚举。
此枚举的值应单独使用。
不是PAdES签名。
|
static |
签名类型的枚举。
此枚举的值应单独使用。
签名类型:普通签名。
|
static |
签名状态的枚举。
此枚举的值可以单独使用或组合使用。
这些值可以分为四个部分:
未知签名。