GroupDocs.Signature для .NET 26.6 теперь доступен. Этот выпуск добавляет управление соответствием OOXML для документов WordProcessing, улучшает работу в пробном режиме для архивов и многослойных изображений, а также вводит модель поставки NuGet с несколькими целевыми платформами и отдельными пакетами для каждого TFM.

Что нового в этом выпуске

Ключ Категория Сводка
SIGNATURENET-5634 Функция Поддержка и соблюдение соответствия OOXML для документов WordProcessing
SIGNATURENET-5822 Улучшение Пакетирование NuGet для нескольких платформ и разделение пакетов по TFM
SIGNATURENET-5825 Улучшение Рефакторинг ограничений пробной лицензии
SIGNATURENET-5705 Улучшение Внутренние улучшения

Новые функции

Поддержка и соблюдение соответствия OOXML для документов WordProcessing

GroupDocs.Signature теперь сохраняет исходный уровень соответствия OOXML документов WordProcessing и позволяет переопределить его при сохранении через API.

Что изменилось:

  • Исходное значение OoxmlCompliance определяется при загрузке документа и по умолчанию сохраняется при сохранении.
  • WordProcessingSaveOptions раскрывает новое nullable‑свойство OoxmlCompliance. Когда оно null (по умолчанию), сохраняется соответствие загруженного документа; при установке значения оно переопределяет исходное.
  • Учитывается только для форматов вывода OOXML: Docx, Docm, Dotx, Dotm и их варианты FlatOpc.

Новый 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
}

Пример кода

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);
}

Как получить обновление

NuGet

Пакет Целевая(ые) платформа(ы)
GroupDocs.Signature netstandard2.1; net45; net6.0; net8.0 (все платформы)
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

Обновите до последней версии пакета через NuGet. Выберите пакет, соответствующий вашей целевой платформе, чтобы загрузить только необходимые бинарные файлы.