Nous sommes heureux d’annoncer GroupDocs.Assembly for .NET 25.12 – la version de Noël disponible depuis décembre 2025. Cette mise à jour ajoute une prise en charge complète de la conformité OOXML, améliore la génération de codes‑barres sous Linux et résout des problèmes critiques de traitement des modèles.
Nouveautés de cette version
| Catégorie | Problème | Résumé |
|---|---|---|
| Fonctionnalité | ASSEMBLYNET‑70 | Implémenter une spécification explicite de conformité OOXML pour les documents Word. |
| Amélioration | ASSEMBLYNET‑68 | Ajouter la prise en charge de la conformité OOXML (Ecma, Transitional, Strict) pour les documents Word. |
| Amélioration | ASSEMBLYNET‑69 | Conserver automatiquement le niveau de conformité du document original lorsqu’il est possible. |
| Amélioration | ASSEMBLYNET‑75 | Imposer une dimension X minimale pour les codes‑barres Codabar (génération plus fiable). |
| Amélioration | ASSEMBLYNET‑76 | Empêcher l’utilisation de couleurs transparentes lors de la génération de codes‑barres sous Linux. |
| Correction | ASSEMBLYNET‑73 | Les expressions de modèle à l’intérieur des contrôles de contenu en ligne (SdtRun) sont maintenant traitées correctement. |
| Correction | ASSEMBLYNET‑60 | Les codes‑barres ne s’affichent plus vides sur les assemblages Linux (.NET 8). |
Prise en charge de la conformité OOXML
Vous pouvez désormais choisir le niveau exact de conformité OOXML lors de l’enregistrement d’un document Word (DOCX, DOCM, DOTX, etc.). La bibliothèque préserve également automatiquement la conformité du document source lorsque l’original est Transitional.
Nouvelle énumération publique : 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
}
}
Nouvelle propriété dans 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; }
}
Comment spécifier un niveau de conformité OOXML explicite
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);
Comment préserver automatiquement la conformité du document original
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
Traitement des expressions de modèle dans les contrôles de contenu en ligne (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.
Corrections et améliorations
- [Amélioration] La génération de code‑barres Codabar impose désormais une dimension X minimale (ASSEMBLYNET‑75).
- [Amélioration] Le rendu des code‑barres sous Linux évite les couleurs transparentes (ASSEMBLYNET‑76).
- [Correction] Les expressions de modèle à l’intérieur des contrôles
SdtRunsont traitées (ASSEMBLYNET‑73). - [Correction] Les codes‑barres n’apparaissent plus vides sous Linux (.NET 8) (ASSEMBLYNET‑60).
Comment obtenir la mise à jour
-
NuGet – Mettez à jour vers le dernier package GroupDocs.Assembly :
dotnet add package GroupDocs.Assembly --version 25.12(Le même package fonctionne pour .NET 6+, .NET 5 et .NET Framework 4.6.2.)
-
Téléchargement direct – Téléchargez les assemblages compilés pour .NET depuis la page officielle de diffusion :