Latest release (June 2026)

GroupDocs.Signature for .NET 26.6 introduces OOXML compliance control for WordProcessing documents, a smoother trial-mode experience for archives and multilayer images, and a new multi-framework NuGet delivery model with dedicated per-TFM packages.

Full list of changes in this release

KeyCategorySummary
SIGNATURENET-5634FeatureSupport and respect OOXML compliance for WordProcessing documents
SIGNATURENET-5822EnhancementMulti-framework NuGet packaging and TFM-split packages
SIGNATURENET-5825EnhancementRefactor trial license limits
SIGNATURENET-5705EnhancementInternal improvements

Features

Support and respect OOXML compliance for WordProcessing documents

GroupDocs.Signature now preserves the original OOXML compliance level of WordProcessing documents and lets you override it at save time through the API.

What changed:

  • The original OoxmlCompliance value is detected when the document is loaded and preserved on save by default.
  • WordProcessingSaveOptions exposes a new nullable OoxmlCompliance property. When null (default), the loaded document’s compliance is kept; when set, it overrides the source value.
  • Only honoured for OOXML output formats: Docx, Docm, Dotx, Dotm and their FlatOpc variants.

New enum:

public enum OoxmlCompliance
{
    /// <summary>Specifies ECMA-376 compliance level.</summary>
    Ecma,
    /// <summary>Specifies ISO/IEC 29500:2008 Transitional compliance level.</summary>
    Transitional,
    /// <summary>Specifies ISO/IEC 29500:2008 Strict compliance level.</summary>
    Strict
}

Usage example — force ISO 29500:2008 Strict on save:

using (Signature signature = new Signature(filePath))
{
    TextSignOptions signOptions = new TextSignOptions("John Smith")
    {
        Left = 100,
        Top = 100,
        Width = 200,
        Height = 60
    };

    // Force ISO 29500:2008 Strict on save regardless of the source's compliance.
    // Other allowed values: OoxmlCompliance.Ecma, OoxmlCompliance.Transitional.
    WordProcessingSaveOptions saveOptions = new WordProcessingSaveOptions(WordProcessingSaveFileFormat.Docx)
    {
        OoxmlCompliance = OoxmlCompliance.Strict
    };

    SignResult result = signature.Sign(outputFilePath, signOptions, saveOptions);
}

Enhancements

Refactor trial license limits

In trial mode, GroupDocs.Signature limits how many inner documents an archive (ZIP, etc.) or multilayer image (TIFF, DICOM, WebP) can contain. Previously this limit was checked the moment the file was loaded, which meant a trial user could not even open a larger archive to inspect it.

Starting with this release, the trial limit is enforced only when an operation that requires it is executed — not when the file is loaded.

What this means for trial users:

  • Loading an archive or multilayer image always succeeds, regardless of how many entries it contains.
  • Signing works on containers of any size — you can sign an archive or multilayer image regardless of how many inner documents it holds (per-format page limits still apply to each inner document).
  • GetDocumentInfo, Verify, Search, and Preview still enforce the trial document-count limit, but now report it when the operation starts rather than when the file is loaded.

This makes evaluating GroupDocs.Signature on real-world files much smoother — larger archives can be opened, inspected, and signed without running into trial restrictions up front.

Licensed users are unaffected — these limits only apply in trial mode.


Multi-framework NuGet packaging and TFM-split packages

GroupDocs.Signature has transitioned to a more advanced NuGet package delivery model. The main package now targets netstandard2.1; net45; net6.0; net8.0, replacing the previous net45; netstandard2.1; net6 targets.

In addition, to reduce the download size, dedicated per-framework NuGet packages are now published alongside the main package. When installing a platform-specific package, only the binaries matching the target framework are downloaded — no unused platform assemblies are included.

PackageTarget framework
GroupDocs.Signaturenetstandard2.1; net45; net6.0; net8.0 (all frameworks)
GroupDocs.Signature.netstandard2.1.NET Standard 2.1
GroupDocs.Signature.net45.NET Framework 4.5
GroupDocs.Signature.net6.NET 6.0
GroupDocs.Signature.net8.NET 8.0