Skip to content
ComPDF
Guides

Digital Signature

ComPDFKit_Tools provides a complete digital signature workflow, including signature field creation, digital certificate management, signature application, and signature verification.

Signature Toolbar

The signature mode toolbar visibility can be controlled via ToolbarConfig:

json
{
  "toolbarConfig": {
    "signatureToolbarVisible": true
  }
}

CSignatureToolBar is located in the com.compdfkit.tools.signature package and is the core toolbar component for signature mode.

Signature Workflow

1. Create a Signature Field

You can create a signature field (signaturesFields) through form mode, or use existing signature fields in the PDF.

2. Tap a Signature Field

After tapping a signature field, a signature type selection dialog appears:

  • Electronic Signature: Handwritten signature or image signature
  • Digital Signature: Sign using a digital certificate

3. Digital Certificate Signing

Signing with a digital certificate requires:

  1. Import or create a certificate
  2. Enter certificate password
  3. Apply the signature

Digital Certificate Management

Create a Certificate

CertDigitalDatas provides the ability to create PKCS12 (.p12/.pfx) format certificates:

java
// Certificate save path
String certFilePath = context.getFilesDir() + "/certificates/my_cert.pfx";
// Certificate information
CertDigitalDatas certData = new CertDigitalDatas();
certData.setGrantor("John Doe");
certData.setOrganization("My Company");
certData.setOrganizationUnit("Dev");
certData.setCountry("US");
certData.setEmail("[email protected]");
certData.setPassword("123456");
certData.setCertUsage(CertUsage.CERT_USAGE_ALL);

// Create certificate
boolean success = certData.createCert(certFilePath);
kotlin
val certFilePath = "${context.filesDir}/certificates/my_cert.pfx"
val certData = CertDigitalDatas().apply {
    grantor = "John Doe"
    organization = "My Company"
    organizationUnit = "Dev"
    country = "US"
    email = "[email protected]"
    password = "123456"
    certUsage = CertUsage.CERT_USAGE_ALL
}
val success = certData.createCert(certFilePath)

Import a Certificate

Supports importing .p12 and .pfx format digital certificate files.

Signature Verification

After signing, you can verify whether the digital signatures in the document are valid:

ComponentDescription
CSignatureToolBarSignature mode toolbar
CPDFDigitalSignatureEditFragmentDigital signature edit Fragment
CPDFDigitalSignatureVerifyFragmentDigital signature verify Fragment
CertDigitalDatasCertificate data model and creation tool
CertificateDigitalDatasDialogCertificate info view dialog