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.

สิ่งใหม่ในเวอร์ชันนี้

Category Issue Summary
ฟีเจอร์ ASSEMBLYNET‑70 ดำเนินการระบุการปฏิบัติตามมาตรฐาน OOXML อย่างชัดเจนสำหรับเอกสาร Word.
การปรับปรุง ASSEMBLYNET‑68 เพิ่มการสนับสนุนการปฏิบัติตามมาตรฐาน OOXML (Ecma, Transitional, Strict) สำหรับเอกสาร Word.
การปรับปรุง ASSEMBLYNET‑69 รักษาระดับการปฏิบัติตามของเอกสารต้นฉบับโดยอัตโนมัติเมื่อเป็นไปได้.
การปรับปรุง ASSEMBLYNET‑75 บังคับขนาดมิติ X ขั้นต่ำสำหรับบาร์โค้ด Codabar (การสร้างที่น่าเชื่อถือมากขึ้น).
การปรับปรุง ASSEMBLYNET‑76 ป้องกันไม่ให้สีโปร่งใสถูกใช้ระหว่างการสร้างบาร์โค้ดบน Linux.
แก้ไข ASSEMBLYNET‑73 แบบแสดงผลเทมเพลตภายในคอนเทนต์คอนโทรลแบบอินไลน์ (SdtRun) ตอนนี้จะถูกประมวลผลอย่างถูกต้อง.
แก้ไข ASSEMBLYNET‑60 บาร์โค้ดจะไม่แสดงเป็นค่าว่างบนการประกอบ Linux (.NET 8) อีกต่อไป.

การสนับสนุนการปฏิบัติตามมาตรฐาน OOXML

You can now choose the exact OOXML compliance level when saving a Word document (DOCX, DOCM, DOTX, etc.). The library also automatically preserves the source document’s compliance when the original is Transitional.

การกำหนดค่า enum สาธารณะใหม่: 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
    }
}

คุณสมบัติใหม่ใน 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; }
}

วิธีระบุระดับการปฏิบัติตาม 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);

วิธีรักษาการปฏิบัติตามของเอกสารต้นฉบับโดยอัตโนมัติ

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

การประมวลผลแบบแสดงผลเทมเพลตในคอนเทนต์คอนโทรลแบบอินไลน์ (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.

การแก้ไขและการปรับปรุง

  • [Enhancement] การสร้างบาร์โค้ด Codabar ตอนนี้บังคับขนาด X ขั้นต่ำ (ASSEMBLYNET‑75).
  • [Enhancement] การแสดงผลบาร์โค้ดบน Linux ป้องกันสีโปร่งใส (ASSEMBLYNET‑76).
  • [Fix] แบบแสดงผลเทมเพลตภายในคอนโทรล SdtRun ถูกประมวลผล (ASSEMBLYNET‑73).
  • [Fix] บาร์โค้ดจะไม่ปรากฏเป็นค่าว่างบน Linux (.NET 8) อีกต่อไป (ASSEMBLYNET‑60).

วิธีรับอัปเดต

  • NuGet – อัปเกรดเป็นแพคเกจ GroupDocs.Assembly เวอร์ชันล่าสุด:

    dotnet add package GroupDocs.Assembly --version 25.12
    

    (แพคเกจเดียวกันใช้งานได้กับ .NET 6+, .NET 5, และ .NET Framework 4.6.2.)

  • Direct download – ดาวน์โหลดไฟล์ Assembly ที่คอมไพล์แล้วสำหรับ .NET จากหน้าปล่อยอย่างเป็นทางการ:

    GroupDocs.Assembly for .NET 25.12 DLLs only

แหล่งข้อมูล