---
title: "iOS PDF Viewer with Signatures | Nutrient SDK"
canonical_url: "https://www.nutrient.io/guides/ios/signatures/digital-signatures/built-in-ui/"
md_url: "https://www.nutrient.io/guides/ios/signatures/digital-signatures/built-in-ui.md"
last_updated: "2026-05-18T15:55:46.054Z"
description: "This section only applies if you licensed the Annotations and Digital Signatures components before 1 May 2021. In this case."
---

# Signatures in iOS Viewer

This section only applies if you licensed the Annotations and Digital Signatures components before 1 May 2021. In this case, Nutrient comes with a ready-to-use user interface that allows you to provide digital signing capabilities inside your apps. In all other cases, digital signatures can be created programmatically.

When creating a signature in the UI, you can provide a certificate or draw an ink signature, or both. The document is only digitally signed if a certificate has been provided. If, in addition to selecting the certificate, an ink signature was drawn, it will be embedded in the appearance of the signature form element. If no certificate has been provided, only the ink signature is added to the document, and the document won't be digitally signed.

> By default, the user is able to select a certificate if there are [`registeredSigners`](https://www.nutrient.io/api/ios/documentation/pspdfkit/pdfsignaturemanager/registeredsigners) available. This behavior can be customized via [`PDFConfiguration.signatureCertificateSelectionMode`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfconfiguration/signaturecertificateselectionmode).

## Signing with a form element

If there are no stored signatures in the shared [`SignatureStore`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/signaturestore), then tapping an empty signature form element shows a [`SignatureViewController`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/signatureviewcontroller), which is where you can both sign a document with an ink signature and assign a certificate to your signature.

If there are already stored signatures, a [`SignatureSelectorViewController`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/signatureselectorviewcontroller) is shown instead, allowing you to either choose an existing signature or create a new one.

## Signing without a form element

If a document doesn’t have a signature form element, you can still digitally sign it. The way to initiate this flow is to tap on the signature toolbar button and then select or create a signature, as shown above. If you added a certificate to the signature, you’ll be asked to select the signature placement on the page; otherwise, the signature is placed into the document and you can move and resize it to your liking. After making the selection, you’ll be asked for the password of the certificate. Finally, after entering the password, the document will be signed.

## Ink signature behavior

There’s a difference between signature form elements that have been signed with an ink signature only and form elements signed with a digital signature (which might also contain an ink signature). You can only add one or the other to a single signature form element. A signature form element is considered signed whenever there’s an overlapping ink signature on it, or if it contains a digital signature. If there’s an existing ink signature in a signature form element, you’ll first need to delete it before you can add a digital signature to the element.

## Only allow digital signing

By default, users can create both an ink signature without a signer and a digital signature by selecting a signer in [`SignatureViewController`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/signatureviewcontroller). There might be use cases where you don’t want users to create an ink signature at all and only allow digitally signing via a predefined signer, without users being able to change it. This can be done by subclassing [`SignatureViewController`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/signatureviewcontroller) and overriding the [`signer`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/signatureviewcontroller/signer) property to return the predefined signer that needs to be used. Additionally, you should set [`certificateSelectionMode`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/signatureviewcontroller/certificateselectionmode) to [`.never`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/signaturecertificateselectionmode/never) — either on the signature view controller directly, or on [`PDFConfiguration.signatureCertificateSelectionMode`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfconfiguration/signaturecertificateselectionmode) — to disable the user choosing another signer.

To allow the user to select a different certificate but still prevent the creation of a normal ink signature, you can subclass [`CertificatePickerViewController`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/certificatepickerviewcontroller) and only show the signers you want to allow the user to select by overriding the default [`CertificatePickerViewController`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/certificatepickerviewcontroller) via [`overrideClass(_:with:)`](https://www.nutrient.io/api/ios/documentation/pspdfkitui/pdfconfigurationbuilder/overrideclass(_:with:)).
---

## Related pages

- [Biometric Signatures on iOS](/guides/ios/signatures/digital-signatures/biometric.md)
- [Adding a Digital Signature to a PDF on iOS](/guides/ios/features/digital-signatures.md)
- [Sign PDFs and Add Custom Encryption on iOS](/guides/ios/signatures/digital-signatures/custom-signers.md)
- [Generate a Self-Signed Certificate for Signing on iOS](/guides/ios/signatures/digital-signatures/generate-certificate.md)
- [Secure digital signatures for iOS PDF libraries](/guides/ios/signatures/digital-signatures/supported-methods.md)
- [Validating a Digital Signature on iOS](/guides/ios/signatures/digital-signatures/validation.md)
- [Customizing Digital Signatures on iOS](/guides/ios/signatures/digital-signatures/customization.md)
- [Troubleshooting](/guides/ios/signatures/digital-signatures/troubleshooting.md)
- [Contained Digital Signatures on iOS](/guides/ios/signatures/digital-signatures/contained-signatures.md)
- [Digital Signature Standards: CAdES and PAdES](/guides/ios/signatures/digital-signatures/standards.md)

