GroupDocs.Signature
                             
                            
                                25.6.0-alpha-20250630125324
                            
                        
                    See the version list below for details.
dotnet add package GroupDocs.Signature --version 25.6.0-alpha-20250630125324
NuGet\Install-Package GroupDocs.Signature -Version 25.6.0-alpha-20250630125324
<PackageReference Include="GroupDocs.Signature" Version="25.6.0-alpha-20250630125324" />
<PackageVersion Include="GroupDocs.Signature" Version="25.6.0-alpha-20250630125324" />
<PackageReference Include="GroupDocs.Signature" />
paket add GroupDocs.Signature --version 25.6.0-alpha-20250630125324
#r "nuget: GroupDocs.Signature, 25.6.0-alpha-20250630125324"
#:package GroupDocs.Signature@25.6.0-alpha-20250630125324
#addin nuget:?package=GroupDocs.Signature&version=25.6.0-alpha-20250630125324&prerelease
#tool nuget:?package=GroupDocs.Signature&version=25.6.0-alpha-20250630125324&prerelease
Sign Documents API
 
 
This on-premise .NET API lets your app end-users sign the electronic documents from a wide range of file formats. Supports several types of e-signing methods.
Content
- Features
- Signature Supported Formats
- Digital Signature Supported Formats
- FormField Signature Supported Formats
- Metadata Signature Supported Formats
- Signature Supported Formats
- Supported Signature Types
- Platform Independence
- Get Started
- Sign PDF with Digital Signature
- Sign with QR Code Signature
- Verify Digital Signatures
- Search Signatures in XLSX
- Remove Signature from Document
- Custom PDF Digital Signature
- Tags
Features
- Create and add signatures to documents of various file formats.
- Specify visual attributes of signatures, such as color, font, margins, etc.
- Search and fetch a list of signatures from a document.
- Determine if the document contains signatures meeting specified criteria.
- Extract basic information about the document.
- Generate image representation of document pages for preview.
- Distinguish created signatures from the actual document.
- Put encrypted text into the QR-code signature or embed custom data objects.
Signature Supported Formats
The following section lists the supported file formats for the barcode, image, QR-code, stamp, and text signature types:
Microsoft Word: DOC, DOCM, DOCX, DOT, DOTM, DOTX
Microsoft Excel: XLSX, XLS, XLSB, XLSM, XLTX, XLTM
Microsoft PowerPoint: PPTX, PPTM, PPT, PPSX, PPSM, PPS, POTX, POTM
OpenOffice: ODT, OTT, ODS, OTS, ODP, OTP
Image: BMP, DJVU, GIF, JPG, JPEG, PNG, SVG, TIF, TIFF, WEBP
CorelDraw: CDR, CMX
Photoshop: PSD
Metafile: WMF
Portable: PDF
Digital Signature Supported Formats
Microsoft Word: DOC, DOCM, DOCX, DOT, DOTM, DOTX
Microsoft Excel: XLSX, XLS, XLSB, XLSM, XLTX, XLTM
OpenOffice: ODS, OTS
Portable: PDF
FormField Signature Supported Formats
Microsoft Word: DOC, DOCM, DOCX, DOT, DOTM, DOTX
Microsoft Excel: XLSX, XLS, XLSB, XLSM, XLTX, XLTM
OpenOffice: ODS, OTS, ODP
Portable: PDF
Metadata Signature Supported Formats
Microsoft Word: DOC, DOCM, DOCX, DOT, DOTM, DOTX
Microsoft Excel: XLSX, XLS, XLSB, XLSM, XLTX, XLTM
Microsoft PowerPoint: PPTX, PPTM, PPT, PPSX, PPSM, PPS, POTX, POTM
OpenOffice: ODT, OTT, ODS, OTS, ODP, OTP
Image: JPG, JPEG, PNG, SVG, TIF, TIFF
Photoshop: PSD
Portable: PDF
Supported Signature Types
- Text stamps
- Text labels
- Text as an image signature
- Image signature
- Digital signature
- Barcode signature
- QR-code signature
- Metadata signature
- Form-field signature
Platform Independence
GroupDocs.Signature for .NET does not require any external software or third-party tool to be installed. GroupDocs.Signature for .NET supports any 32-bit or 64-bit operating system where .NET or Mono framework is installed. The other details are as follows:
Microsoft Windows: Microsoft Windows Desktop (x86, x64) (XP & up), Microsoft Windows Server (x86, x64) (2000 & up), Windows Azure
Mac OS: Mac OS X
Linux: Linux (Ubuntu, OpenSUSE, CentOS and others)
Development Environments: Microsoft Visual Studio (2010 & up), Xamarin.Android, Xamarin.IOS, Xamarin.Mac, MonoDevelop 2.4 and later.
Supported Frameworks: GroupDocs.Conversion for .NET  supports .NET and Mono frameworks.
Get Started
Are you ready to give GroupDocs.Signature for .NET a try? Simply execute Install-Package GroupDocs.Signature from Package Manager Console in Visual Studio to fetch & reference GroupDocs.Signature assembly in your project. If you already have GroupDocs.Signature for .Net and want to upgrade it, please execute Update-Package GroupDocs.Signature to get the latest version.
Please check the GitHub Repository for other common usage scenarios.
Sign PDF with Digital Signature
The example below shows how to sign a PDF document with a digital e-signature using C# language. We can sign any other supported document format in the same way
 using (Signature signature = new Signature("sample.pdf"))
 {
     // initialize digital option with certificate file path
     DigitalSignOptions options = new DigitalSignOptions("certificate.pfx")
     {
         // set signature position
         Left = 100,
         Top = 100,
         Password = "1234567890"
     };
     signature.Sign("signed.pdf", options);
 }
Sign with QR Code Signature
The code snippet below demonstrates how to sign a PDF document with the QR code signature
 using (Signature signature = new Signature("sample.pdf"))
 {
     // create QRCode option with predefined QRCode text
     QrCodeSignOptions options = new QrCodeSignOptions("JohnSmith")
     {
         // setup QRCode encoding type
         EncodeType = QrCodeTypes.QR,
         // set signature position
         Left = 100,
         Top = 100
     };
     signature.Sign("signed.pdf", options);
 }
Verify Digital Signatures
This example shows how to verify Digital signature in the document
 using (Signature signature = new Signature("sample.pdf"))
 {
     DigitalVerifyOptions options = new DigitalVerifyOptions("certificate.pfx")
     {
         Comments = "Test comment"
     };
     // verify document signatures
     VerificationResult result = signature.Verify(options);
     if (result.IsValid)
     {
         Console.WriteLine("\nDocument was verified successfully!");
     }
     else
     {
         Console.WriteLine("\nDocument failed verification process.");
     }
 }
Search Signatures in XLSX
This example shows how to search for Digital signature in the document and analyze digital signature certificate
 using (Signature signature = new Signature("spreadsheet.xlsx"))
 {
     // search for signatures in document
     List<DigitalSignature> signatures = signature.Search<DigitalSignature>(SignatureType.Digital);
     Console.WriteLine("\nSource document contains following signatures.");
     foreach (var digitalSignature in signatures)
     {
         Console.WriteLine("Digital signature found from {0} with validation flag {1}. Certificate SN {2}",
         digitalSignature.SignTime, digitalSignature.IsValid, digitalSignature.Certificate?.SerialNumber);
     }
 } 
Remove Signature from Document
This example shows how to delete Digital signature that was found using Search method
 using (Signature signature = new Signature("signed.pdf"))
 {
     List<DigitalSignature> signatures = 
         signature.Search<DigitalSignature>(SignatureType.Digital);
     if (signatures.Count > 0)
     {
         DigitalSignature digitalSignature = signatures[0];
         bool result = signature.Delete(digitalSignature);
         if (result)
         {
             Console.WriteLine(
                 $"Digital signature #{digitalSignature.Thumbprint} from " +
                 $"{digitalSignature.SignTime.ToShortDateString()} was deleted."
             );
         }
         else
         {
             Console.WriteLine(
                 $"Signature was not deleted from the document! " +
                 $"Signature# {digitalSignature.Thumbprint} was not found!"
             );
         }
     }
 }
Custom PDF Digital Signature
This example shows how to specify extra appearances
 using (Signature signature = new Signature("sample.docx"))
 {
     DigitalSignOptions options = new DigitalSignOptions("certificate.pfx")
     {
         // certifiate password
         Password = "1234567890",
         // digital certificate details
         Reason = "Sign",
         Contact = "JohnSmith",
         Location = "Office1",   
         // image as digital certificate appearance on document pages
         ImageFilePath = imagePath,
         //
         AllPages = true,
         Width = 80,
         Height = 60,
         VerticalAlignment = VerticalAlignment.Bottom,
         HorizontalAlignment = HorizontalAlignment.Right,
         Margin = new Padding() { Bottom = 10, Right = 10 },
         // Setup signature line appearance.
         // This appearance will add Signature Line on the first page.
         // Could be useful for .xlsx files.
         Appearance = new DigitalSignatureAppearance("John Smith", "Title", "jonny@test.com")    
     };
     signature.Sign("signed.docx", options);
 }
Tags
Document Singing | Digital Signature| Sign PDF | Sign DOCX | Sign XLSX | Sign Digitally| Digital Signature| esing| Cross Platform | Document Manipulation | High Performance | DotNet | API | Signature Verification | GroupDocs.Signature | Secure Signing | Document Security | Digital Certificate | X.509 Certificate | Batch Signing | Signature Management | Code Signing | Signature Workflow | Digital Signature API | Electronic Signature API | GroupDocs SDK | Document Integrity | Multi-format Signing
| Product | Versions Compatible and additional computed target framework versions. | 
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. | 
| .NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. | 
| .NET Standard | netstandard2.1 is compatible. | 
| .NET Framework | net462 is compatible. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. | 
| MonoAndroid | monoandroid was computed. | 
| MonoMac | monomac was computed. | 
| MonoTouch | monotouch was computed. | 
| Tizen | tizen60 was computed. | 
| Xamarin.iOS | xamarinios was computed. | 
| Xamarin.Mac | xamarinmac was computed. | 
| Xamarin.TVOS | xamarintvos was computed. | 
| Xamarin.WatchOS | xamarinwatchos was computed. | 
- 
                                                    .NETFramework 4.6.2- Newtonsoft.Json (>= 13.0.2)
 
- 
                                                    .NETStandard 2.1- Aspose.Drawing.Common (>= 25.2.0)
- Autofac (>= 7.1.0)
- Microsoft.Extensions.DependencyModel (>= 5.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 7.0.0)
- Microsoft.Win32.Registry (>= 5.0.0)
- Newtonsoft.Json (>= 13.0.3)
- SkiaSharp (>= 3.116.1)
- System.Buffers (>= 4.5.1)
- System.Diagnostics.DiagnosticSource (>= 8.0.1)
- System.Diagnostics.PerformanceCounter (>= 4.5.0)
- System.Drawing.Common (>= 6.0.0)
- System.Net.Http.Json (>= 8.0.0)
- System.Reflection.Emit (>= 4.7.0)
- System.Reflection.Emit.ILGeneration (>= 4.7.0)
- System.Security.Cryptography.Pkcs (>= 7.0.0)
- System.Security.Cryptography.Xml (>= 7.0.0)
- System.Security.Permissions (>= 5.0.0)
- System.Text.Encoding.CodePages (>= 9.0.2)
- System.Text.Json (>= 8.0.5)
 
- 
                                                    net6.0- Aspose.Drawing.Common (>= 25.2.0)
- Autofac (>= 7.1.0)
- Microsoft.Extensions.DependencyModel (>= 6.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 7.0.0)
- Microsoft.Win32.Registry (>= 5.0.0)
- Newtonsoft.Json (>= 13.0.3)
- SkiaSharp (>= 3.116.1)
- System.Diagnostics.DiagnosticSource (>= 8.0.1)
- System.Diagnostics.PerformanceCounter (>= 6.0.1)
- System.Drawing.Common (>= 6.0.0)
- System.Reflection.Emit (>= 4.7.0)
- System.Reflection.Emit.ILGeneration (>= 4.7.0)
- System.Security.Cryptography.Pkcs (>= 7.0.0)
- System.Security.Cryptography.Xml (>= 7.0.0)
- System.Security.Permissions (>= 6.0.0)
- System.Text.Encoding.CodePages (>= 9.0.2)
 
GitHub repositories
This package is not used by any popular GitHub repositories.
