当前位置: 首页 > 工具软件 > PoDoFo > 使用案例 >

PoDoFo签章操作

孟泽宇
2023-12-01

PoDoFo签章操作

PdfSignatureField

继承: PdfField

构造函数

  • PdfSignatureField( PdfPage* pPage, const PdfRect & rRect, PdfDocument* pDoc );

    指定页面创建一个签名字段
    pPage:签名字段的注释对象,用来存放印章或者文字的
    rRect:指定的区域
    pDoc:需要创建签名字段的PdfDocument类型,存放的是所要创建签名字段的pdf

  • PdfSignatureField( PdfAnnotation* pWidget, PdfAcroForm* pParent, PdfDocument* pDoc, bool bInit = true);

    创建一个带有秘钥的签名字段
    pWidget:签名字段的注释对象,用来存放印章或者文字的
    pParent:是通过pDoc创建的PdfAcroForm交互表单的类型
    pDoc:需要创建签名字段的PdfDocument类型,存放的是所要创建签名字段的pdf

  • PdfSignatureField( PdfAnnotation* pWidget );

    创建一个签名字段
    pWidget:签名字段的注释对象,用来存放印章或者文字的

成员函数

  • SetAppearanceStream(
    PdfXObject *pObject,
    EPdfAnnotationAppearance eAppearance = ePdfAnnotationAppearance_Normal,
    const PdfName & state = “” );

    设置字段外观类型
    pObject:包含绘图命令和数据的内容流
    eAppearance :外观类型
    state :状态设置

    • EPdfAnnotationAppearance可选类型

      ePdfAnnotationAppearance_Normal = 0, /< Normal appearance */
      ePdfAnnotationAppearance_Rollover, /
      < Rollover appearance; the default is ePdfAnnotationAppearance_Normal */
      ePdfAnnotationAppearance_Down /**< Down appearance; the default is ePdfAnnotationAppearance_Normal */

  • SetSignature(const PdfData &signatureData);

    创建签名空间
    用于定位签名预留空间。最终会被签名替换

  • SetSignatureReason(const PdfString & rsText);

    设置签名原因

  • SetSignatureLocation(const PdfString & rsText);

    设置签名位置

  • SetSignatureCreator( const PdfName & creator );

    设置签名创建者

  • AddCertificationReference(PdfObject *pDocumentCatalog, EPdfCertPermission perm = ePdfCertPermission_NoPerms);

    向catalog字典中添加 认证字典 和 引用表
    Add certification dictionaries and references to document catalog
    pDocumentCatalog:当前文档的引用表
    perm :文档修改权限

    • EPdfCertPermission可选类型

      ePdfCertPermission_NoPerms = 1,
      ePdfCertPermission_FormFill = 2,
      ePdfCertPermission_Annotations = 3,

  • PdfObject* GetSignatureObject( void ) const;

    返回此签名字段的签名对象

  • EnsureSignatureObject( void );

    确认签名字段已设置签名对象。
    如果签名对象已经设置,则该函数不执行任何操作。这对于从现有注释创建签名字段而没有设置签名字段的情况非常有用。

代码示例

 类似资料: