.NET-kirjasto tekstinkäsittelyasiakirjojen luomiseen
Lue, kirjoita, muokkaa ja muunna Word-tiedostoja, luo taulukoita DOCX:ssä avoimen lähdekoodin .NET-sovellusliittymän kautta.
Open XML SDK on avoimen lähdekoodin sovellusliittymä, jonka Microsoft on kehittänyt ja jaettu Microsoftin avoimen lähdekoodin käytännesääntöjen mukaisesti tekstinkäsittelydokumenttien, mukaan lukien DOCX, DOTX, DOCM, DOTM-tiedostomuodot
Sovellusliittymän avulla voit lisätä tekstiä, ylä-, alatunnistetta, loppuviitteitä, alaviitteitä, tyylejä, teemoja ja paljon muuta. Sen avulla voit luoda tehokkaita Word-asiakirjoja ja poimia niistä tietoja. API tukee useita .NET-alustoja, mukaan lukien .NET 3.5, .NET 4.0, .NET 4.6 ja .NET Standard 1.3.
Open XML SDK:n käytön aloittaminen
Ensinnäkin sinulla on oltava .NET Framework 3.5 tai uudempi. Lataa sen jälkeen arkisto manuaalisesti GitHubista tai asenna se osoitteesta NuGet.
Asennus Avaa XML SDK NuGetista
Install-Package DocumentFormat.OpenXml
Käsittele DOCX-tiedostoa C#:lla
Open XML SDK:n avulla .NET-ohjelmoijat voivat luoda ja muokata tekstinkäsittelyä omista .NET-sovelluksistaan. Jos haluat muokata olemassa olevaa tiedostoa, voit avata olemassa olevan tiedoston ja liittää siihen muutoksia, kuten tekstiä, kappaleita, taulukoita ja paljon muuta.
Lisää kappale DOCX:ään - 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"));
}
Luo taulukko DOCX:ssä C#:lla
Sovellusliittymän avulla kehittäjät voivat lisätä taulukon tekstinkäsittelyasiakirjoihin. Voit lisätä taulukon, asettaa taulukon ominaisuudet, asettaa taulukkoruudukon ja sarakeruudukon ominaisuuksia. Lisäksi voit hallita taulukon soluja ja rivejä käyttämällä TableCell- ja TableRow-luokkia.
Luo taulukko DOCX:ssä - 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);
}
Tekstinkäsittely-asiakirjan ylä- ja alatunnisteet
Asiakirjojen asianmukainen järjestäminen on erittäin tärkeää ja jokaisen organisaation tarve. Ylä- ja alatunnisteet ovat asiakirjojen tärkeimmät osat, jotka voivat auttaa järjestämään tekstinkäsittelyasiakirjoja oikein lisäämällä lisätietoja, kuten asiaankuuluvat päivämäärät, aiheet, kirjoittajan nimet, kuvat, sivunumerot ja niin edelleen. Se tukee myös useiden otsikoiden lisäämistä.
Hallitse otsikoita Word-asiakirjassa
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);
}
Hallitse alatunnisteita Word-asiakirjassa
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);
}