Siamo felici di annunciare GroupDocs.Assembly per .NET 25.12 – la versione natalizia disponibile a partire da dicembre 2025. Questo aggiornamento aggiunge la gestione completa della conformità OOXML, migliora la generazione di codici a barre su Linux e risolve problemi critici di elaborazione dei modelli.
Novità di questa versione
| Categoria | Problema | Riepilogo |
|---|---|---|
| Funzionalità | ASSEMBLYNET‑70 | Implementare la specifica esplicita di conformità OOXML per i documenti Word. |
| Miglioramento | ASSEMBLYNET‑68 | Aggiungere il supporto alla conformità OOXML (Ecma, Transitional, Strict) per i documenti Word. |
| Miglioramento | ASSEMBLYNET‑69 | Preservare automaticamente il livello di conformità del documento originale quando possibile. |
| Miglioramento | ASSEMBLYNET‑75 | Applicare una dimensione X minima per i codici a barre Codabar (generazione più affidabile). |
| Miglioramento | ASSEMBLYNET‑76 | Impedire l’uso di colori trasparenti durante la generazione dei codici a barre su Linux. |
| Correzione | ASSEMBLYNET‑73 | Le espressioni di modello all’interno dei controlli di contenuto inline (SdtRun) sono ora elaborate correttamente. |
| Correzione | ASSEMBLYNET‑60 | I codici a barre non vengono più renderizzati vuoti nelle assembly Linux (.NET 8). |
Supporto alla conformità OOXML
Ora puoi scegliere il livello esatto di conformità OOXML durante il salvataggio di un documento Word (DOCX, DOCM, DOTX, ecc.). La libreria preserva anche automaticamente la conformità del documento sorgente quando l’originale è Transitional.
Nuova enumerazione pubblica: OoxmlCompliance
namespace GroupDocs.Assembly
{
/// <summary>
/// Specifica il livello di conformità OOXML da utilizzare durante il salvataggio dei documenti Word in formati OOXML.
/// </summary>
public enum OoxmlCompliance
{
/// <summary>Conformità ECMA‑376.</summary>
Ecma,
/// <summary>Conformità ISO/IEC 29500:2008 Transitional.</summary>
Transitional,
/// <summary>Conformità ISO/IEC 29500:2008 Strict.</summary>
Strict
}
}
Nuova proprietà in LoadSaveOptions: OoxmlCompliance
public class LoadSaveOptions
{
/// <summary>
/// Ottiene o imposta il livello di conformità OOXML da utilizzare durante il salvataggio dei documenti Word in formati OOXML.
/// Il valore predefinito è null, il che significa che il livello di conformità verrà determinato automaticamente.
/// </summary>
public OoxmlCompliance? OoxmlCompliance { get; set; }
}
Come specificare un livello di conformità OOXML esplicito
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);
Come preservare automaticamente la conformità del documento originale
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
Elaborazione delle espressioni di modello nei controlli di contenuto inline (SdtRun)
var source = "template_with_sdtrun.docx";
var target = "output.docx";
var data = "data.json";
// Il documento modello contiene:
// - SdtBlock: <<[field1]>>
// - SdtRun (inline): <<[field2]>> // Ora correttamente elaborato
// - Testo regolare: <<[field3]>>
var options = new LoadSaveOptions(FileFormat.Docx);
var dataSourceInfo = new DataSourceInfo(new JsonDataSource(data));
var assembler = new DocumentAssembler();
assembler.AssembleDocument(source, target, options, dataSourceInfo);
// Tutte le espressioni di modello, incluse quelle in SdtRun, sono sostituite.
Correzioni e miglioramenti
- [Miglioramento] La generazione di codici a barre Codabar ora impone una dimensione X minima (ASSEMBLYNET‑75).
- [Miglioramento] Il rendering dei codici a barre su Linux evita i colori trasparenti (ASSEMBLYNET‑76).
- [Correzione] Le espressioni di modello all’interno dei controlli
SdtRunsono elaborate (ASSEMBLYNET‑73). - [Correzione] I codici a barre non appaiono più vuoti su Linux (.NET 8) (ASSEMBLYNET‑60).
Come ottenere l’aggiornamento
-
NuGet – Aggiorna al più recente pacchetto GroupDocs.Assembly:
dotnet add package GroupDocs.Assembly --version 25.12(Lo stesso pacchetto funziona per .NET 6+, .NET 5 e .NET Framework 4.6.2.)
-
Download diretto – Scarica le assembly compilate per .NET dalla pagina di rilascio ufficiale: