Kami senang mengumumkan GroupDocs.Assembly for .NET 25.12 – rilis Natal yang tersedia sejak Desember 2025. Pembaruan ini menambahkan penanganan kepatuhan OOXML penuh, meningkatkan pembuatan barcode di Linux, dan menyelesaikan masalah kritis pemrosesan templat.
Apa yang baru di rilis ini
| Kategori | Isu | Ringkasan |
|---|---|---|
| Fitur | ASSEMBLYNET‑70 | Menerapkan spesifikasi kepatuhan OOXML eksplisit untuk dokumen Word. |
| Peningkatan | ASSEMBLYNET‑68 | Menambahkan dukungan kepatuhan OOXML (Ecma, Transitional, Strict) untuk dokumen Word. |
| Peningkatan | ASSEMBLYNET‑69 | Mengawetkan tingkat kepatuhan dokumen asli secara otomatis bila memungkinkan. |
| Peningkatan | ASSEMBLYNET‑75 | Menerapkan dimensi X minimum untuk barcode Codabar (pembuatan lebih dapat diandalkan). |
| Peningkatan | ASSEMBLYNET‑76 | Mencegah warna transparan digunakan selama pembuatan barcode di Linux. |
| Perbaikan | ASSEMBLYNET‑73 | Ekspresi templat di dalam kontrol konten inline (SdtRun) kini diproses dengan benar. |
| Perbaikan | ASSEMBLYNET‑60 | Barcode tidak lagi menghasilkan tampilan kosong di assembly Linux (.NET 8). |
Dukungan Kepatuhan OOXML
Anda sekarang dapat memilih tingkat kepatuhan OOXML yang tepat saat menyimpan dokumen Word (DOCX, DOCM, DOTX, dll.). Perpustakaan juga secara otomatis mempertahankan kepatuhan dokumen sumber ketika aslinya Transitional.
Enumerasi publik baru: OoxmlCompliance
namespace GroupDocs.Assembly
{
/// <summary>
/// Menentukan tingkat kepatuhan OOXML yang akan digunakan saat menyimpan dokumen Word ke format OOXML.
/// </summary>
public enum OoxmlCompliance
{
/// <summary>Kepatuhan ECMA‑376.</summary>
Ecma,
/// <summary>Kepatuhan ISO/IEC 29500:2008 Transitional.</summary>
Transitional,
/// <summary>Kepatuhan ISO/IEC 29500:2008 Strict.</summary>
Strict
}
}
Properti baru dalam LoadSaveOptions: OoxmlCompliance
public class LoadSaveOptions
{
/// <summary>
/// Mendapatkan atau mengatur tingkat kepatuhan OOXML yang akan digunakan saat menyimpan dokumen Word ke format OOXML.
/// Nilai default adalah null, yang berarti tingkat kepatuhan akan ditentukan secara otomatis.
/// </summary>
public OoxmlCompliance? OoxmlCompliance { get; set; }
}
Cara menentukan tingkat kepatuhan OOXML yang eksplisit
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);
Cara mempertahankan kepatuhan dokumen asli secara otomatis
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
Memproses ekspresi templat dalam kontrol konten inline (SdtRun)
var source = "template_with_sdtrun.docx";
var target = "output.docx";
var data = "data.json";
// Dokumen template berisi:
// - SdtBlock: <<[field1]>>
// - SdtRun (inline): <<[field2]>> // Sekarang diproses dengan benar
// - Teks biasa: <<[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.
Perbaikan dan peningkatan
- [Enhancement] Pembuatan barcode Codabar kini menerapkan dimensi X minimum (ASSEMBLYNET‑75).
- [Enhancement] Rendering barcode di Linux menghindari warna transparan (ASSEMBLYNET‑76).
- [Fix] Ekspresi templat di dalam kontrol
SdtRundiproses (ASSEMBLYNET‑73). - [Fix] Barcode tidak lagi muncul kosong di Linux (.NET 8) (ASSEMBLYNET‑60).
Cara mendapatkan pembaruan
-
NuGet – Tingkatkan ke paket GroupDocs.Assembly terbaru:
dotnet add package GroupDocs.Assembly --version 25.12(Paket yang sama berfungsi untuk .NET 6+, .NET 5, dan .NET Framework 4.6.2.)
-
Direct download – Unduh assembly yang telah dikompilasi untuk .NET dari halaman rilis resmi: