.NET-könyvtár szövegszerkesztő dokumentumok létrehozásához

Word-fájlok olvasása, írása, manipulálása és konvertálása, táblázatok létrehozása a DOCX-ben a nyílt forráskódú .NET API-n keresztül.

Az Open XML SDK egy nyílt forráskódú API, amelyet a Microsoft fejlesztett ki, és amelyet a Microsoft nyílt forráskódú magatartási kódexének megfelelően terjesztenek a szövegszerkesztő dokumentumok manipulálására, beleértve a DOCXDOTXDOCMDOTM fájlformátumok

Az API használatával szöveget, fejlécet, láblécet, végjegyzeteket, lábjegyzeteket, stílusokat, témákat és egyebeket adhat hozzá. Lehetővé teszi nagy teljesítményű Word dokumentumok létrehozását és adatok kinyerését azokból. Az API különféle .NET platformokat támogat, beleértve a .NET 3.5-öt, a .NET 4.0-t, a .NET 4.6-ot és a .NET Standard 1.3-at.

Previous Next

Kezdő lépések az Open XML SDK-val

Először is rendelkeznie kell a .NET-keretrendszer 3.5-ös vagy újabb verziójával. Ezt követően, kérjük, töltse le manuálisan az adattárat a GitHub webhelyről, vagy telepítse a NuGet.

Telepítés Nyissa meg az XML SDK-t a NuGetből

 Install-Package DocumentFormat.OpenXml

DOCX fájl kezelése C# használatával

Az Open XML SDK lehetővé teszi a .NET programozók számára, hogy saját .NET-alkalmazásaikból szövegszerkesztést hozzanak létre és módosítsanak. Meglévő fájl módosításához megnyithat egy meglévő fájlt, és hozzáfűzheti a módosításokat, például szöveget, bekezdéseket, táblázatokat stb.

Bekezdés hozzáadása a DOCX-ben - C#

// Open an existing word processing document
using (WordprocessingDocument wordprocessingDocument = WordprocessingDocument.Open("fileformat.docx", true))
{
  Body body = wordprocessingDocument.MainDocumentPart.Document.Body;
  // Add paragraph
  Paragraph para = body.AppendChild(new Paragraph());
  Run run = para.AppendChild(new Run());
  run.AppendChild(new Text("File Format Developer Guide"));
}

Hozzon létre egy táblázatot DOCX-ben a C# használatával

Az API lehetővé teszi a fejlesztők számára, hogy táblázatot adjanak hozzá a szövegszerkesztő dokumentumokhoz. Hozzáadhat táblázatot, beállíthatja a táblázat tulajdonságait, beállíthat táblázatrácsot és oszloprács tulajdonságait. Ezenkívül kezelheti a táblázat celláit és sorait a TableCell és TableRow osztályok használatával.

Táblázat létrehozása DOCX-ben - C#

// Open an existing word processing document
using (WordprocessingDocument wordprocessingDocument = WordprocessingDocument.Open("fileformat.docx", true))
{
  Body body = wordprocessingDocument.MainDocumentPart.Document.Body;
  // Create a table.
  Table table = new Table();
  // Set the style and width for the table.
  TableProperties tableProperties = new TableProperties();
  TableStyle tableStyle = new TableStyle() { Val = "TableGrid" };
  // Make the table width 100% of the page width.
  TableWidth tableWidth = new TableWidth() { Width = "5000", Type = TableWidthUnitValues.Pct };
  // Apply
  tableProperties.Append(tableStyle, tableWidth);
  table.AppendChild(tableProperties);
  // Add columns
  TableGrid tableGrid = new TableGrid(new GridColumn(), new GridColumn(), new GridColumn());
  table.AppendChild(tableGrid);
  // Create 1 row to the table.
  TableRow tableRow = new TableRow();
  // Add a cell to each column in the row.
  TableCell tableCell = new TableCell(new Paragraph(new Run(new Text("Column 1"))));
  TableCell tableCell1 = new TableCell(new Paragraph(new Run(new Text("Column 2"))));
  //Append data
  tableRow.Append(tableCell, tableCell1);
  // Add row to the table.
  table.AppendChild(tableRow);
  // Add the table to the document
  body.AppendChild(table);
}

Fejlécek és láblécek a szövegszerkesztő dokumentumban

A dokumentumok megfelelő rendszerezése nagyon fontos, és minden szervezetnek szüksége van rá. A fejlécek és a láblécek a dokumentumok kulcsfontosságú részei, amelyek segíthetnek a szövegszerkesztő dokumentumok megfelelő rendszerezésében azáltal, hogy további információkat, például releváns dátumokat, témákat, a szerző nevét, képeket, oldalszámokat és így tovább helyeznek el. Több fejléc hozzáadását is támogatja.

Fejlécek kezelése Word dokumentumban

 
public static void ApplyHeader(WordprocessingDocument doc)
{
  // Get the main document part.
  MainDocumentPart mainDocPart = doc.MainDocumentPart;
  HeaderPart headerPart1 = mainDocPart.AddNewPart("r97");
  Header header1 = new Header();
  Paragraph paragraph1 = new Paragraph(){ };
  Run run1 = new Run();
  Text text1 = new Text();
  text1.Text = "Header stuff";
  run1.Append(text1);
  paragraph1.Append(run1);
  header1.Append(paragraph1);
  headerPart1.Header = header1;
  SectionProperties sectionProperties1 = mainDocPart.Document.Body.Descendants().FirstOrDefault();
  if (sectionProperties1 == null)
  {
  sectionProperties1 = new SectionProperties() { };
  mainDocPart.Document.Body.Append(sectionProperties1);
  }
  HeaderReference headerReference1 = new HeaderReference() { Type = HeaderFooterValues.Default, Id = "r97" };
  sectionProperties1.InsertAt(headerReference1,0);
}

Láblécek kezelése Word dokumentumban

 
public static void ApplyFooter(WordprocessingDocument doc)
{
  // Get the main document part.
  MainDocumentPart mainDocPart = doc.MainDocumentPart;
  FooterPart footerPart1 = mainDocPart.AddNewPart("r98");
  Footer footer1 = new Footer();
  Paragraph paragraph1 = new Paragraph() { };
  Run run1 = new Run();
  Text text1 = new Text();
  text1.Text = "Footer stuff";
  run1.Append(text1);
  paragraph1.Append(run1);
  footer1.Append(paragraph1);
  footerPart1.Footer = footer1;
  SectionProperties sectionProperties1 = mainDocPart.Document.Body.Descendants().FirstOrDefault();
  if (sectionProperties1 == null)
  {
    sectionProperties1 = new SectionProperties() { };
    mainDocPart.Document.Body.Append(sectionProperties1);
  }
  FooterReference footerReference1 = new FooterReference() { Type = DocumentFormat.OpenXml.Wordprocessing.HeaderFooterValues.Default, Id = "r98" };
  sectionProperties1.InsertAt(footerReference1, 0);
}
 Magyar