Ми раді оголосити GroupDocs.Conversion for .NET 25.10, доступний з жовтня 2025.
Цей мінорний випуск приносить набір покращень макету сторінки, нові можливості параметрів завантаження та кілька критичних виправлень помилок. Найбільш помітна зміна — рефакторинг публічного API, який групує налаштування полів і розмірів у спеціальні об’єкти, підвищуючи послідовність у всіх параметрах конвертації.

Що нового у цьому випуску

ID Функція
CONVERSIONNET‑8032 Додати підтримку встановлення розміру сторінки, полів та орієнтації в EmailLoadOptions перед конвертацією.
CONVERSIONNET‑8013 Додати підтримку встановлення полів сторінки в SpreadsheetOptions перед конвертацією.
CONVERSIONNET‑8012 Додати підтримку встановлення розміру сторінки в SpreadsheetOptions перед конвертацією.
CONVERSIONNET‑8009 Додати підтримку встановлення розміру сторінки в TxtLoadOptions та WordProcessingLoadOptions перед конвертацією.
CONVERSIONNET‑8008 Додати підтримку встановлення полів сторінки в TxtLoadOptions та WordProcessingLoadOptions перед конвертацією.

Ці доповнення дозволяють точно налаштувати макет вихідного документа до кроку конвертації, даючи вам більш жорсткий контроль над виглядом отриманих файлів.

Переписування API – Налаштування макету сторінки (Змінює сумісність)

⚠️ ЗМІНЮЄ СУМІСНІСТЬ (вступає в силу з v26.1) – Двадцять окремих властивостей полів/розмірів застаріли і будуть видалені у наступній великій версії.
Новий модель вводить два допоміжних об’єкти, які замінюють старі скалярні властивості:

Затронутий клас Застарілі властивості Замінник
PdfConvertOptions (7) MarginTop, MarginBottom, MarginLeft, MarginRight → MarginSettingsPageSize, PageWidth, PageHeight → SizeSettings MarginSettings (PageMarginOptions), SizeSettings (PageSizeOptions)
WordProcessingConvertOptions (7) Same as PDF Same as PDF
EBookConvertOptions (3) PageSize, PageWidth, PageHeight → SizeSettings SizeSettings
CadConvertOptions (3) PageSize, PageWidth, PageHeight → SizeSettings SizeSettings

Нові допоміжні класи

public class PageMarginOptions
{
    public float? Top { get; set; }
    public float? Bottom { get; set; }
    public float? Left { get; set; }
    public float? Right { get; set; }
}
public sealed class PageSizeOptions
{
    public PageSize PageSize { get; set; }
    public float PageWidth { get; set; }   // Setting this forces PageSize = PageSize.Custom
    public float PageHeight { get; set; }  // Setting this forces PageSize = PageSize.Custom
}

Посібник з міграції

Міграція полів сторінки

Старий підхід (застарілий)

var options = new PdfConvertOptions
{
    MarginTop    = 10,
    MarginBottom = 10,
    MarginLeft   = 20,
    MarginRight  = 20
};

Новий підхід (рекомендовано)

var options = new PdfConvertOptions
{
    MarginSettings = new PageMarginOptions
    {
        Top    = 10,
        Bottom = 10,
        Left   = 20,
        Right  = 20
    }
};

Міграція налаштувань розміру сторінки

Старий підхід (застарілий)

// Predefined size
var pdfOptions = new PdfConvertOptions
{
    PageSize = PageSize.A4
};

// Custom dimensions
var wpOptions = new WordProcessingConvertOptions
{
    PageWidth  = 612, // points (Letter width)
    PageHeight = 792  // points (Letter height)
};

Новий підхід (рекомендовано)

// Predefined size
var pdfOptions = new PdfConvertOptions
{
    SizeSettings = new PageSizeOptions
    {
        PageSize = PageSize.A4
    }
};

// Custom dimensions
var wpOptions = new WordProcessingConvertOptions
{
    SizeSettings = new PageSizeOptions
    {
        PageWidth  = 612,   // points
        PageHeight = 792    // points
        // PageSize automatically becomes PageSize.Custom
    }
};

Впровадження нових об’єктів усуває неоднозначність (попереднє API змішувало пункти та пікселі) і уніфікує всі параметри конвертації під спільною, легко виявляємою моделлю.

Виправлення та покращення

ID Тип проблеми Опис
CONVERSIONNET‑8031 Помилка PreserveOriginalDate, встановлене в false, раніше ігнорувалося у .NET.
CONVERSIONNET‑8023 Помилка Конвертації у Fluent‑синтаксисі завершувалися помилкою, коли не були вказані явні параметри конвертації.
CONVERSIONNET‑8020 Помилка Конвертація WordProcessing викинула необроблене виключення через відсутність Microsoft.Extensions.DependencyInjection (v8.0.0.0).
CONVERSIONNET‑8006 Помилка WordProcessingConvertOptions розглядала PageWidth/PageHeight як пікселі замість пунктів.
CONVERSIONNET‑8005 Помилка Властивості PdfConvertOptions.Margin* не враховувалися під час конвертації PDF.

Ці виправлення підвищують надійність у найпоширеніших сценаріях конвертації та приводять бібліотеку у відповідність до очікуваної поведінки .NET.

Як отримати оновлення

  • NuGet – Оновіть до останнього пакету GroupDocs.Conversion:

    dotnet add package GroupDocs.Conversion --version 25.10
    

    (Той самий пакет працює з .NET 6+, .NET Framework 4.6.2 та .NET Core.)

  • Пряме завантаження – Збірки для .NET та .NET Framework доступні на сторінці випуску:
    https://releases.groupdocs.com/conversion/net/25-10/

Ресурси