Biblioteca .NET gratuita para crear documentos de procesamiento de texto

Lea, escriba, manipule y convierta archivos de Word a través de la API .NET de código abierto.

NetOffice es una API de código abierto que permite a los desarrolladores de .NET automatizar Microsoft Office y desarrollar complementos de Microsoft Office. Con la API, el desarrollador puede usar todas las funciones incluidas en las versiones 2000, 2002, 2003, 2007, 2010, 2013 y 2016 de MS Office. La API se basa en la arquitectura COM donde recupera objetos proxy COM en su aplicación y tiene que liberar cada objeto proxy COM. La principal ventaja de utilizar NetOffice es la capacidad de trabajar con una versión diferente de Microsoft Office al mismo tiempo y ofrece un mecanismo de protección para la gestión de proxies COM.

Con la API, puede desarrollar una aplicación para sistemas operativos de 32 y 64 bits. Puede utilizar los ensamblados de NetOffice en todos los escenarios sin preocupaciones. La API proporciona un montón de bibliotecas para manipular documentos de oficina. Para trabajar con documentos de Microsoft Word, necesita WordApi.dll con OfficeApi.ddl, VBIDEApi.dll y NetOffice.dll como dependencias.

Previous Next

Primeros pasos con NetOffice

En primer lugar, debe tener .NET Framework 4.5 o superior. Después de eso, descargue el repositorio manualmente desde GitHub o instálelo desde NuGet.

Instalación de NetOffice desde NuGet

 Install-Package NetOfficeFw.Word

Cree un documento de Word usando la API gratuita de C#

NetOffice permite a los programadores de .NET crear archivos de Microsoft Word mediante programación. Para crear un archivo de Word, primero debe inicializar una aplicación de Word y desactivar los cuadros de mensaje. Después de iniciar su aplicación de Word, puede agregarle un nuevo documento utilizando el método WordApplicaiton.Documents.Add(). Puede insertar texto en su archivo de Word recién creado usando el método WrodApplication.Selection.TypeText() y establecer la fuente usando el método WordApplicaiton.Selection.Font(). Una vez que haya terminado con su documento, puede guardarlo usando el método Document.SaveAs().

Crear documento de Word a través de la biblioteca de 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);

Crear una tabla en Word usando C#

NetOffice permite a los programadores de .NET agregar tablas en archivos de Microsoft Word mediante programación. Para agregar tablas en un archivo de Word primero, debe inicializar una aplicación de Word y desactivar los cuadros de mensaje y agregar nuevos documentos usando el método WordApplicaiton.Documents.Add(). Puede insertar una tabla en su archivo de Word recién creado inicializando Word.Table y establecer el rango de la tabla usando el método Tables.Add(wordApplication.Selection.Range, 3, 2). Puede insertar texto en sus celdas seleccionando una celda específica usando table.Cell(1, 1).Select() e inserte texto en ella. Una vez que haya terminado con su documento, puede guardarlo usando el método Document.SaveAs().

Crear tabla en archivo de Word a través de .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);
 Español