Libreria .NET gratuita per la creazione di documenti di elaborazione testi
Leggi, scrivi, manipola e converti file di Word tramite l'API .NET open source.
NetOffice è un'API open source che consente agli sviluppatori .NET di automatizzare Microsoft Office e sviluppare componenti aggiuntivi di Microsoft Office. Utilizzando l'API, lo sviluppatore può utilizzare tutte le funzionalità incluse nelle versioni di MS Office 2000, 2002, 2003, 2007, 2010, 2013 e 2016. L'API si basa sull'architettura COM in cui si recuperano oggetti proxy COM nell'applicazione e si devono liberare ogni oggetto proxy COM. Il principale vantaggio dell'utilizzo di NetOffice è la possibilità di lavorare con una versione diversa di Microsoft Office contemporaneamente e offre un meccanismo di protezione per la gestione dei proxy COM.
Utilizzando l'API, puoi sviluppare un'applicazione per sistemi operativi sia a 32 bit che a 64 bit. È possibile utilizzare gli assiemi di NetOffice in tutti gli scenari senza alcuna preoccupazione. L'API fornisce una serie di librerie per manipolare i documenti d'ufficio. Per lavorare con i documenti di Microsoft Word, è necessario WordApi.dll con OfficeApi.ddl, VBIDEApi.dll e NetOffice.dll come dipendenze.
Introduzione a NetOffice
Prima di tutto, devi avere .NET Framework 4.5 o versioni successive. Successivamente, scarica il repository manualmente da GitHub o installalo da NuGet.
Installazione NetOffice da NuGet
Install-Package NetOfficeFw.Word
Crea un documento Word utilizzando l'API C# gratuita
NetOffice consente ai programmatori .NET di creare file di Microsoft Word a livello di codice. Per creare un file Word, in primo luogo, è necessario inizializzare un'applicazione Word e disattivare le finestre di messaggio. Dopo aver avviato l'applicazione Word, puoi aggiungervi un nuovo documento utilizzando il metodo WordApplicaiton.Documents.Add(). È possibile inserire del testo nel file di parole appena creato utilizzando il metodo WrodApplication.Selection.TypeText() e impostare il carattere utilizzando il metodo WordApplicaiton.Selection.Font(). Una volta che hai finito con il tuo documento, puoi salvarlo usando il metodo Document.SaveAs().
Crea un documento Word tramite la libreria di NetOffice
// start word and turn off msg boxes
Word.Application wordApplication = new Word.Application();
wordApplication.DisplayAlerts = WdAlertLevel.wdAlertsNone;
// create a utils instance, no need for but helpful to keep the lines of code low
CommonUtils utils = new CommonUtils(wordApplication);
// add a new document
Word.Document newDocument = wordApplication.Documents.Add();
// insert some text
wordApplication.Selection.TypeText("This text is written by automation");
wordApplication.Selection.HomeKey(WdUnits.wdLine, WdMovementType.wdExtend);
wordApplication.Selection.Font.Color = WdColor.wdColorSeaGreen;
wordApplication.Selection.Font.Bold = 1;
wordApplication.Selection.Font.Size = 18;
// save the document
string documentFile = utils.File.Combine(HostApplication.RootDirectory, "Example01", DocumentFormat.Normal);
newDocument.SaveAs(documentFile);
// close word and dispose reference
wordApplication.Quit();
wordApplication.Dispose();
// show end dialog
HostApplication.ShowFinishDialog(null, documentFile);
Crea una tabella in Word usando C#
NetOffice consente ai programmatori .NET di aggiungere tabelle in file di Microsoft Word a livello di codice. Per aggiungere prima le tabelle in un file Word, è necessario inizializzare un'applicazione Word, disattivare le finestre di messaggio e aggiungere nuovi documenti utilizzando il metodo WordApplicaiton.Documents.Add(). È possibile inserire una tabella nel file di parole appena creato inizializzando Word.Table e impostando l'intervallo di tabelle utilizzando il metodo Tables.Add(wordApplication.Selection.Range, 3, 2). Puoi inserire del testo nelle tue celle selezionando una cella specifica usando table.Cell(1, 1).Select() e inserisci il testo al suo interno. Una volta che hai finito con il tuo documento, puoi salvarlo usando il metodo Document.SaveAs().
Crea una tabella in un file di Word tramite .NET
Word.Application wordApplication = new Word.Application();
wordApplication.DisplayAlerts = WdAlertLevel.wdAlertsNone;
// create a utils instance, not need for but helpful to keep the lines of code low
CommonUtils utils = new CommonUtils(wordApplication);
// add a new document
Word.Document newDocument = wordApplication.Documents.Add();
// add a table
Word.Table table = newDocument.Tables.Add(wordApplication.Selection.Range, 3, 2);
// insert some text into the cells
table.Cell(1, 1).Select();
wordApplication.Selection.TypeText("This");
table.Cell(1, 2).Select();
wordApplication.Selection.TypeText("table");
table.Cell(2, 1).Select();
wordApplication.Selection.TypeText("was");
table.Cell(2, 2).Select();
wordApplication.Selection.TypeText("created");
table.Cell(3, 1).Select();
wordApplication.Selection.TypeText("by");
table.Cell(3, 2).Select();
wordApplication.Selection.TypeText("NetOffice");
// save the document
string documentFile = utils.File.Combine(HostApplication.RootDirectory, "Example02", DocumentFormat.Normal);
newDocument.SaveAs(documentFile);
// close word and dispose reference
wordApplication.Quit();
wordApplication.Dispose();
// show end dialog
HostApplication.ShowFinishDialog(null, documentFile);