We’re happy to announce GroupDocs.Assembly for .NET 25.12 – the Christmas release that’s available as of December 2025. This update adds full OOXML compliance handling, improves barcode generation on Linux, and resolves critical template‑processing issues.

Co je nového v tomto vydání

Kategorie Problém Shrnutí
Funkce ASSEMBLYNET‑70 Implementovat explicitní specifikaci souladu s OOXML pro dokumenty Word.
Vylepšení ASSEMBLYNET‑68 Přidat podporu souladu s OOXML (Ecma, Transitional, Strict) pro dokumenty Word.
Vylepšení ASSEMBLYNET‑69 Automaticky zachovat úroveň souladu původního dokumentu, pokud je to možné.
Vylepšení ASSEMBLYNET‑75 Vynutit minimální X‑rozměr pro čárové kódy Codabar (spolehlivější generování).
Vylepšení ASSEMBLYNET‑76 Zabránit použití průhledných barev při generování čárových kódů na Linuxu.
Oprava ASSEMBLYNET‑73 Výrazy šablon uvnitř inline ovládacích prvků (SdtRun) jsou nyní zpracovány správně.
Oprava ASSEMBLYNET‑60 Čárové kódy už se na Linuxu (.NET 8) nezobrazují prázdně.

Podpora souladu s OOXML

Nyní můžete při ukládání dokumentu Word (DOCX, DOCM, DOTX apod.) zvolit konkrétní úroveň souladu s OOXML. Knihovna také automaticky zachovává soulad zdrojového dokumentu, pokud je původní Transitional.

Nová veřejná výčtová hodnota: OoxmlCompliance

namespace GroupDocs.Assembly
{
    /// <summary>
    /// Specifies the OOXML compliance level to use when saving Word documents to OOXML formats.
    /// </summary>
    public enum OoxmlCompliance
    {
        /// <summary>ECMA‑376 compliance.</summary>
        Ecma,

        /// <summary>ISO/IEC 29500:2008 Transitional compliance.</summary>
        Transitional,

        /// <summary>ISO/IEC 29500:2008 Strict compliance.</summary>
        Strict
    }
}

Nová vlastnost v LoadSaveOptions: OoxmlCompliance

public class LoadSaveOptions
{
    /// <summary>
    /// Gets or sets the OOXML compliance level to use when saving Word documents to OOXML formats.
    /// The default value is null, which means the compliance level will be determined automatically.
    /// </summary>
    public OoxmlCompliance? OoxmlCompliance { get; set; }
}

Jak zadat explicitní úroveň souladu s OOXML

var source = "template.docx";
var target = "output.docx";
var data   = "data.json";

// Create LoadSaveOptions with explicit OOXML compliance
var options = new LoadSaveOptions(FileFormat.Docx);
options.OoxmlCompliance = OoxmlCompliance.Strict; // or Ecma, Transitional

var dataSourceInfo = new DataSourceInfo(new JsonDataSource(data));
var assembler      = new DocumentAssembler();
assembler.AssembleDocument(source, target, options, dataSourceInfo);

Jak automaticky zachovat soulad původního dokumentu

var source = "template_transitional.docx"; // Document with Transitional compliance
var target = "output.docx";
var data   = "data.json";

// OoxmlCompliance is null by default – original compliance will be preserved
var options = new LoadSaveOptions(FileFormat.Docx);
// options.OoxmlCompliance remains null

var dataSourceInfo = new DataSourceInfo(new JsonDataSource(data));
var assembler      = new DocumentAssembler();
assembler.AssembleDocument(source, target, options, dataSourceInfo);
// Output document keeps Transitional compliance

Zpracování výrazů šablon v inline ovládacích prvcích (SdtRun)

var source = "template_with_sdtrun.docx";
var target = "output.docx";
var data   = "data.json";

// Template document contains:
// - SdtBlock: <<[field1]>>
// - SdtRun (inline): <<[field2]>>   // Now correctly processed
// - Regular text: <<[field3]>>

var options = new LoadSaveOptions(FileFormat.Docx);
var dataSourceInfo = new DataSourceInfo(new JsonDataSource(data));
var assembler = new DocumentAssembler();
assembler.AssembleDocument(source, target, options, dataSourceInfo);
// All template expressions, including those in SdtRun, are replaced.

Opravy a vylepšení

  • [Vylepšení] Generování čárových kódů Codabar nyní vynucuje minimální X‑rozměr (ASSEMBLYNET‑75).
  • [Vylepšení] Vykreslování čárových kódů na Linuxu se vyhýbá průhledným barvám (ASSEMBLYNET‑76).
  • [Oprava] Výrazy šablon uvnitř ovládacích prvků SdtRun jsou zpracovány (ASSEMBLYNET‑73).
  • [Oprava] Čárové kódy se již na Linuxu (.NET 8) nezobrazují prázdně (ASSEMBLYNET‑60).

Jak získat aktualizaci

  • NuGet – Aktualizujte na nejnovější balíček GroupDocs.Assembly:

    dotnet add package GroupDocs.Assembly --version 25.12
    

    (Stejný balíček funguje pro .NET 6+, .NET 5 a .NET Framework 4.6.2.)

  • Direct download – Stáhněte zkompilované assembly pro .NET z oficiální stránky vydání:

    GroupDocs.Assembly for .NET 25.12 DLLs only

Zdroje