Hasilkan dan Urai File .docx melalui Perpustakaan Go Gratis

Perpustakaan Pemrosesan Word Go Open Source untuk Membaca & Menulis Microsoft Word secara Programatis. Sisipkan File Media, Gambar, Teks, Header/Footer, dan Tabel ke File DOCX.

Apa itu Perpustakaan Go-Docx?

Dalam dunia pengembangan Golang, menangani dokumen Microsoft Word (.docx) secara historis menjadi tantangan. Banyak perpustakaan yang ada terbatas pada fungsi \"hanya-tulis\" atau datang dengan harga komersial yang mahal. Go-Docx (dipelihara oleh fumiama) menjembatani kesenjangan ini sebagai salah satu perpustakaan open-source yang paling fungsional, dirancang untuk membaca dan menulis file Office Open XML ECMA-376. Ini berguna karena menyediakan API tingkat tinggi yang menyederhanakan struktur XML kompleks yang mendasari file Word.

Apa yang membuat Go-Docx menonjol adalah kumpulan fitur lengkapnya: pemformatan teks (warna, ukuran, perataan), penyisipan gambar, manipulasi tabel, bentuk, kanvas, dan grup. Apakah Anda menghasilkan faktur, mengurai resume, atau mengotomatisasi pembuatan laporan, perpustakaan ini menangani struktur Office Open XML (ECMA-376) yang kompleks tanpa beban memanggil aplikasi eksternal. Ini adalah fork yang didorong komunitas yang telah berkembang signifikan dari pendahulunya. Tidak seperti alternatif komersial seperti UniOffice (yang memerlukan pembayaran untuk semua fitur), Go-Docx tetap sepenuhnya gratis di bawah lisensi AGPL-3.0.

Previous Next

Memulai dengan Go-Docx

Cara yang disarankan untuk memasukkan Go-Docx ke dalam proyek Anda adalah dengan menggunakan GitHub. Silakan gunakan perintah berikut untuk instalasi yang lancar.

Instal Go-Docx melalui GitHub

go get -d github.com/fumiama/go-docx@latest 

Pembuatan Dokumen Lanjutan dengan Go

Go-Docx memungkinkan Anda membuat dokumen kompleks dari awal menggunakan pendekatan terstruktur. Ini menangani inisialisasi lingkungan dokumen, termasuk tema dan gaya default, memastikan bahwa file yang dihasilkan sepenuhnya kompatibel dengan Microsoft Word dan pemroses modern lainnya. Berikut contoh sederhana yang menunjukkan cara menghasilkan file Word Docx di dalam aplikasi Go.

Cara Menghasilkan File Word Docx melalui Perpustakaan Go?

package main
import (
	"os"
	"github.com/fumiama/go-docx"
)

func main() {
	// Initialize a new document with a default theme
	w := docx.New().WithDefaultTheme()
	
	// Add a paragraph and basic text
	para := w.AddParagraph()
	para.AddText("Hello, this is a generated document!")

	// Save to local file
	f, _ := os.Create("simple.docx")
	w.WriteTo(f)
	f.Close()
}

Penguraian Dokumen Komprehensif melalui API Go

Berbeda dengan banyak pesaing, perpustakaan open source Go-Docx unggul dalam membaca file yang ada. Ia dapat mengurai file .docx dan menelusuri item tubuhnya, seperti paragraf dan tabel. Hal ini menjadikannya pilihan ideal untuk tugas ekstraksi data atau audit dokumen di mana Anda perlu menganalisis konten secara programatis. Contoh berikut menunjukkan bagaimana pengembang perangkat lunak dapat mengurai dokumen word dalam aplikasi Go mereka sendiri.

Cara Mengurai Dokumen Word Docx melalui Perpustakaan Go?

package main
import (
	"fmt"
	"os"
	"github.com/fumiama/go-docx"
)

func main() {
	readFile, _ := os.Open("existing.docx")
	info, _ := readFile.Stat()
	
	// Parse the file using its reader and size
	doc, _ := docx.Parse(readFile, info.Size())
	
	for _, item := range doc.Document.Body.Items {
		if p, ok := item.(*docx.Paragraph); ok {
			fmt.Println("Paragraph found:", p)
		}
	}
}

Konstruksi Tabel Dinamis dalam File Docx melalui Go

Open source Go-Docx library has included support for the creation and manipulation of tables, including nested tables—a feature often missing in simpler libraries. You can define rows, cells, and specific border styles, making it highly effective for generating financial reports, invoices, or data-heavy technical documentation. Here is a very useful code example that shows how to create a table inside Word documents via Go commands.

Cara Membuat Tabel Sederhana dalam File Word melalui Perpustakaan Go?

func createTable(w *docx.Docx) {
	table := w.AddTable(2, 2) // Create a 2x2 table
	row := table.Rows[0]
	cell := row.Cells[0]
	
	p := cell.AddParagraph()
	p.AddText("Cell Content")
	
	// You can also adjust table properties here
}

Dukungan Gaya Teks Kaya dan Pemformatan

Kontrol detail atas tipografi adalah kekuatan utama perpustakaan Go open source ini. Anda dapat mengubah warna teks, ukuran font, perataan, bahkan menambahkan hyperlink atau tab stop melalui Go-Docx. Ini memungkinkan pengembang menghasilkan dokumen profesional dan bermerk yang sesuai dengan persyaratan desain spesifik tanpa intervensi manual.

Cara Menerapkan Gaya Teks dan Pemformatan ke Dokumen Word melalui Perpustakaan Go?

func styleText(w *docx.Docx) {
	para := w.AddParagraph()
	// Chain styling methods for concise code
	para.AddText("Important Header").Size("32").Color("FF0000")
	para.AddText("Subtext").Italic().Bold()
	
	// Add a link
	para.AddLink("Visit Website", "https://example.com")
}
 Italiano