A Text electronic signature is an arbitrary text that is added to a document in a native way depending on the type of the document. GroupDocs.Signature provides the text signature feature and allows customizing a wide range of text settings - from font name, size and color to alignment, borders, shadow effects etc. This is how a text signature may look like:
How to eSign document with Text signature
Let’s try to add a text signature to a PDF programmatically.
To manipulate text signatures programmatically, GroupDocs.Signature provides the TextSignOptions class, and the whole workflow is as easy as follows:
Create a new instance of the Signature class and pass the source document path as a constructor parameter.
Instantiate the TextSignOptions object according to your requirements and specify the signature options.
This example shows how to add a text signature to a document.
// The path to the documents directory.
constfilePath=Constants.SAMPLE_PDF;constfileName=path.basename(filePath);constoutputFilePath=path.join(Constants.OutputPath,'SignWithText',fileName);constsignature=newsignatureLib.Signature(filePath);// Create text sign options
constoptions=newsignatureLib.TextSignOptions('John Smith');// Set signature position
options.setLeft(100);options.setTop(100);// Set signature rectangle
options.setWidth(100);options.setHeight(30);// Set text color and font
//options.setForeColor(new Color(255, 0, 0)); // Red color
constsignatureFont=newsignatureLib.SignatureFont();signatureFont.setSize(12);signatureFont.setFamilyName('Comic Sans MS');options.setFont(signatureFont);// Sign document to file
signature.sign(outputFilePath,options);console.log(`\nSource document signed successfully.\nFile saved at ${outputFilePath}`);
Summary
This guide explains how to add text-based signatures to documents with GroupDocs.Signature . It covers configuring text properties such as font, color, size, and position, and applying the text signature to a document. The signed document is then saved with the added text signature.
More resources
GitHub Examples
You may easily run the code above and see the feature in action in our GitHub examples: