Gratis .NET-bibliotheek voor het maken van tekstverwerkingsdocumenten

Lees, schrijf, manipuleer en converteer Word-bestanden via Open Source .NET API.

NetOffice is een open source API waarmee .NET-ontwikkelaars Microsoft Office kunnen automatiseren en Microsoft Office-invoegtoepassingen kunnen ontwikkelen. Met behulp van de API kan de ontwikkelaar alle functies gebruiken die zijn opgenomen in MS Office-versies 2000, 2002, 2003, 2007, 2010, 2013 en 2016. De API is gebaseerd op COM-architectuur waarbij u COM-proxy-objecten in uw applicatie ophaalt en u moet elk COM-proxyobject vrijmaken. Het belangrijkste voordeel van het gebruik van NetOffice is de mogelijkheid om in één keer met een andere versie van Microsoft Office te werken en het biedt een beschermingsmechanisme voor het beheer van COM-proxy's.

Met behulp van de API kunt u een applicatie ontwikkelen voor zowel 32-bits als 64-bits besturingssystemen. U kunt de NetOffice-assemblies in alle scenario's zonder zorgen gebruiken. De API biedt een aantal bibliotheken om kantoordocumenten te manipuleren. Om met Microsoft Word-documenten te kunnen werken, moet u WordApi.dll gebruiken met OfficeApi.ddl, VBIDEApi.dll en NetOffice.dll als afhankelijkheden.

Previous Next

Aan de slag met NetOffice

Allereerst moet u .NET Framework 4.5 of hoger hebben. Download daarna de repository handmatig van GitHub of installeer het vanuit NuGet.

Installatie NetOffice van NuGet

 Install-Package NetOfficeFw.Word

Maak een Word-document met behulp van de gratis C# API

Met NetOffice kunnen .NET-programmeurs programmatisch Microsoft Word-bestanden maken. Om een Word-bestand te maken, moet u eerst een Word-toepassing initialiseren en berichtvensters uitschakelen. Nadat uw woordtoepassing is gestart, kunt u er een nieuw document aan toevoegen met de methode WordApplication.Documents.Add() . U kunt tekst invoegen in uw nieuw gemaakte Word-bestand met behulp van de methode WrodApplication.Selection.TypeText() en het lettertype instellen met de methode WordApplicaiton.Selection.Font(). Als u klaar bent met uw document, kunt u het opslaan met de methode Document.SaveAs().

Maak een Word-document via NetOffice Library

 
  // 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);

Maak een tabel in Word met C#

Met NetOffice kunnen .NET-programmeurs programmatisch tabellen in Microsoft Word-bestanden toevoegen. Om eerst tabellen in een Word-bestand toe te voegen, moet u een Word-toepassing initialiseren en berichtvensters uitschakelen en nieuwe documenten toevoegen met de methode WordApplication.Documents.Add() . U kunt een tabel in uw nieuw gemaakte Word-bestand invoegen door Word.Table te initialiseren en het tabelbereik in te stellen met behulp van de methode Tables.Add(wordApplication.Selection.Range, 3, 2). U kunt tekst in uw cellen invoegen door een specifieke cel te selecteren met table.Cell(1, 1).Select() en er tekst in in te voegen. Als u klaar bent met uw document, kunt u het opslaan met de methode Document.SaveAs().

Tabel maken in Word-bestand via .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);
 Dutch