Ми раді оголосити 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, MarginRightMarginSettingsPageSize, PageWidth, PageHeightSizeSettings MarginSettings (PageMarginOptions), SizeSettings (PageSizeOptions)
WordProcessingConvertOptions (7) Same as PDF Same as PDF
EBookConvertOptions (3) PageSize, PageWidth, PageHeightSizeSettings SizeSettings
CadConvertOptions (3) PageSize, PageWidth, PageHeightSizeSettings 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/

Ресурси