Set Signature Position in Cells using GroupDocs.Signature for .NET 18.7

GroupDocs.Signature

We are pleased to announce another monthly release of GroupDocs.Signature for .NET 18.7 with multitude new features like ability for cancellation of signing process and additional search criteria for Digital Signatures of Words and Cells Documents. Furthermore, this monthly release also covers some improvements and fixes, we therefore, recommend you to download the new version of API and evaluate the exciting features to enhance document e-signing experience.

Features

Additional Search Criteria

Now users of this API can search Digital Signatures in Cells and Words with additional search criteria
Following example demonstrates how to search Digital Signatures in Words:

// setup options with text of signature
WordsSearchDigitalOptions searchOptions = new WordsSearchDigitalOptions();
// setup additional search criteria
searchOptions.Comments = "test comments";
searchOptions.SignDateTimeFrom = new DateTime(DateTime.Now.Year, 1, 1);
searchOptions.IssuerName = "John";
// Search Document for Signatures
SearchResult searchResult = handler.Search(fileName, searchOptions);

Support of Measure Type Units for Cells Positioning

Users can set position of Signatures in Cells with some predefined measure units for following signature types:

  • Text Signatures
  • Image Signatures
  • Digital Signatures
  • QR-Code Signatures
  • Barcode Signatures
  • Stamp Signatures

Following example demonstrates using Measure Type properties to set a position of QR-Code Signatures:

CellsQRCodeSignOptions signOptions = new CellsQRCodeSignOptions("12345678AbcdefghKLMNOPqrst");
// size
signOptions.SizeMeasureType = MeasureType.Percents;
signOptions.Width = 10;
signOptions.Height = 10;
// position
// alignment
signOptions.HorizontalAlignment = HorizontalAlignment.Center;
signOptions.VerticalAlignment = VerticalAlignment.Top;
// margin
signOptions.MarginMeasureType = MeasureType.Percents;
signOptions.Margin.Top = 25;

Ability for Cancellation

Now API provides ability for cancellation of following processes:

  • Search
  • Verification
  • Signing

Following example demonstrates how to cancel signing process:

// setup signature option
PdfSignTextOptions signOptions = new PdfSignTextOptions("John Smith", 10, 10, 100, 100);
signOptions.SignAllPages = true;
SaveOptions saveOptions = new SaveOptions { OutputType = OutputType.String, OutputFileName = "PDF_Process_Events" };
handler.SignatureStarted += delegate (object sender, ProcessStartEventArgs args)
{
    Console.WriteLine("Processing of {0} signatures for {1} started at {2}", args.TotalSignatures, args.Guid, args.Started.ToString("f"));
};
handler.SignatureProgress += delegate (object sender, ProcessProgressEventArgs args)
{
    Console.WriteLine("Singing of {0} progress: {1} %. Processed {2} signatures.", args.Guid, args.Progress, args.ProcessedSignatures);
    if (args.Progress > 10)
    {
        args.Cancel = true;
        Console.WriteLine("Cancellation of process");
    }
};
handler.SignatureCompleted += delegate (object sender, ProcessCompleteEventArgs args)
{
    if (args.Canceled)
    {
        Console.WriteLine("Singing process was canceled");
    }
    else
    {
        Console.WriteLine("Singing of {0} completed at {1}. Processing of {2}", args.Guid, args.Completed.ToString("f"), args.TotalSignatures);
    }
};

Improvements

  • Global Exception handler to catch all unhandled exceptions
  • Support of several Words Digital Search Options and Cells Digital Search Options

Bug Fixes

  • Wrong border appearance for PDF Text as Image signatures
  • QR-Code positioning when Signature area is more than generated QR-Code
  • Freezing of signature process on Images for QR-Code Signature

Available Channels and Resources

Here are a few channels and resources for you to learn, try and get technical support on GroupDocs.Signature API for .NET:

Feedback

As always, you are welcome to share your feedback to improve this product. We will be happy to know your thoughts. Just create a forum thread and our dedicated support team will be there to respond.

Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn

To keep up with our news, you can follow us on Twitter or follow our Facebook page.