GroupDocs.Signature for .NET 24.12 Release Notes

The release of GroupDocs.Signature version 24.12 includes features and bug fix.

Full list of changes in this release

KeyCategorySummary
SIGNATURENET-5314★ FeatureEnhance signature verification with LINQ query support
SIGNATURENET-5314★ FeatureImplement LINQ query support for signature search method
SIGNATURENET-5314🔧 FixImage-loading-failed-during-search-or-verification-in-pdf-files-on-.net-6

Major Features

Enhanced signature verification with LINQ query support

🌐 We have improved the signature verification process by integrating LINQ query support, allowing for more flexible and efficient searches within your verification processes.

// Define the path to the PDF file.
string filePath = Constants.SAMPLE_PDF;
string fileName = Path.GetFileName(filePath);

// Use the 'using' statement for automatic resource management.
using (var signature = new Signature(filePath))
{
    // Perform a varify to validate signatures of type Barcode with a specific SignatureId.
    var signatures = signature.Verify(signatureItem => 
        signatureItem.SignatureType == SignatureType.Barcode && 
        signatureItem.SignatureId.Equals("123", StringComparison.Ordinal)
    );
   // Optionally, process the verified signatures here.
}

Implement LINQ query support for signature search method

🌐 We have implemented LINQ query support for the signature search method, enhancing the ability to perform complex queries and streamlining the search experience.

// Define the path to the documents directory.
string filePath = Constants.SAMPLE_PDF;
string fileName = Path.GetFileName(filePath);

// Create a new Signature instance using the specified file.
using (var signature = new Signature(filePath))
{
    // Perform a search for signatures of type Text that match the specified name.
    var signatures = signature.Search(signatureItem => 
        signatureItem.SignatureType == SignatureType.Text && 
        (signatureItem as TextSignature)?.Text.Equals("John Smith", StringComparison.OrdinalIgnoreCase) == true
    );

    // Optionally, process the found signatures here.
}