1. Produk
  2.   Pemrosesan Kata
  3.   .NET
  4.   Open XML SDK
 
  

Pustaka .NET untuk Membuat Dokumen Pemrosesan Kata

Membaca, Menulis, Memanipulasi & Mengonversi file Word, Membuat Tabel di DOCX melalui Open Source .NET API.

Open XML SDK adalah API sumber terbuka, dikembangkan oleh Microsoft dan didistribusikan di bawah kode etik sumber terbuka Microsoft untuk memanipulasi Dokumen Pemrosesan Kata termasuk DOCXDOTXDOCM,  format file DOTM

Dengan menggunakan API, Anda dapat menambahkan teks, header, footer, catatan akhir, catatan kaki, gaya, tema, dan banyak lagi. Ini memungkinkan Anda untuk menghasilkan dokumen kata berkinerja tinggi dan mengekstrak data darinya. API mendukung berbagai platform .NET termasuk, .NET 3.5, .NET 4.0, .NET 4.6, dan .NET Standard 1.3.

Previous Next

Memulai dengan Open XML SDK

Pertama-tama, Anda harus memiliki .NET Framework 3.5 atau lebih tinggi. Setelah itu, unduh repositori secara manual dari GitHub atau instal dari NuGet.

Pemasangan  Buka XML SDK dari NuGet

 Install-Package DocumentFormat.OpenXml

Memanipulasi file DOCX menggunakan C#

Open XML SDK memungkinkan pemrogram .NET untuk membuat serta memodifikasi pengolah kata dari aplikasi .NET mereka sendiri. Untuk memodifikasi file yang sudah ada, Anda dapat membuka file yang sudah ada dan menambahkan perubahan seperti teks, paragraf, tabel, dan lainnya.

Tambahkan Paragraf di DOCX - 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"));
}

Buat Tabel di DOCX menggunakan C#

API memungkinkan pengembang untuk menambahkan tabel dalam dokumen Pemrosesan Kata. Anda dapat menambahkan tabel, mengatur properti tabel, mengatur kisi tabel, dan properti kisi kolom. Selanjutnya, Anda dapat mengelola sel dan baris tabel masing-masing menggunakan kelas TableCell dan TableRow.

Buat Tabel di DOCX - 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);
}

Header & Footer dalam Dokumen Pemrosesan Kata

Organisasi dokumen yang tepat sangat penting dan merupakan kebutuhan setiap organisasi. Header dan footer adalah bagian penting dari dokumen yang dapat membantu untuk mengatur dokumen pengolah kata dengan benar dengan menempatkan beberapa informasi tambahan seperti tanggal yang relevan, topik, nama penulis, gambar, nomor halaman, dan sebagainya. Ini juga mendukung penambahan beberapa header.

Kelola Header di Dokumen Word

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

Kelola Footer di Dokumen Word

 
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);
}
 Indonesia