Gin agus Parsáil Comhaid .docx trí Leabharlann Go Saor
Leabharlann Próiseála Focal Go Foinse Oscailte chun Microsoft Word a léamh & a scríobh go clárúil. Cuir isteach Comhaid Meán, Íomhánna, Téacs, Ceanntásca/Buncoiriceáin, agus Táblaí i gcomhaid DOCX.
Cén Leabharlann Go-Docx Ann?
Sa domhan forbartha Golang, tá láimhseáil doiciméid Microsoft Word (.docx) i gcónaí ina dhúshlán. Tá go leor leabharlanna ann a bheith teoranta go feidhmiúlacht "scríobh amháin" nó a thagann le praghas tráchtála trom. Ceanglaíonn Go-Docx (a choimeádann fumiama) an bearna seo mar cheann de na leabharlanna foinse oscailte is feidhmiúla, deartha chun comhaid ECMA-376 Office Open XML a léamh agus a scríobh araon. Tá sé úsáideach mar go soláthraíonn sé API ardleibhéil a bhaintear na struchtúir XML casta atá faoi bhun na gcomhad Word.
Is é a chuireann Go-Docx ar a chumair ná a shraith iomlán gnéithe: formátiú téacs (dath, méid, ailíniú), ionsáí picture, láimhseáil táblaí, cruthanna, canbháis, agus grúpaí. Cibé an bhfuil tú ag cruthú sonrascanna, ag parsáil athchúrsaí, nó ag uathoibriú cruthú tuarascálacha, déileálann an leabharlann seo le struchtúir casta Office Open XML (ECMA-376) gan an t-ualach aníon de ghlaoch ar fheidhmchláir sheachtracha. Is é fork forbartha pobail é a d'fhorbair go suntasach óna réamhfhéichí. Níos mó ná na roghanna tráchtúla mar UniOffice (a theastaíonn íoc as na gnéithe go léir), fanann Go-Docx go hiomlán saor in aisce faoi cheadúnas AGPL-3.0.
Tús Á Chur Le Go-Docx
Is é an bealach a mholtar Go-Docx a chur le d’tionscadal ná trí GitHub. Úsáid an t-ordú seo a leanas le haghaidh suiteáil réidh.
Installaigh Go-Docx trí GitHub
go get -d github.com/fumiama/go-docx@latest Giniúint Chasta Cáipéisí le Go
Ceadaíonn Go-Docx duit cáipéisí casta a chruthú ónáil le cur chuige struchtúrtha. Déileálann sé le túsú timpeallachta an cháipéis, lena n-áirítear téamaí agus stíleanna réamhshocraithe, ag cinntiú go bhfuil do chomhaid ginte comhoiriúnach go hiomlán le Microsoft Word agus próiseálaithe nua-aimseartha eile. Seo sampla simplí a thaispeánann conas comhad Word Docx a ghiniúint i bhfeidhmchláir Go.
Conas go gcruthaíonn tú Comhaid Word Docx le Leabharlann 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()
}
Parsiú Cuimsitheach Cáipéisí le API Go
Níos mó ná go leor comórtais, iompraíonn leabharlann foinse oscailte Go-Docx go hiontach le heolas chomhaid atá ann cheana. Is féidir leis comhad .docx a pharsáil agus dul tríd a mhíreanna comhlach, mar shampla altanna agus táblaí. Sin é a fhágann go bhfuil an rogha seo oiriúnach don bhaint sonraí nó le haghaidh tascanna iniúchta cáipéisí a bhfuil gá le h-analú ábhar go clárúil. Taispeánann an sampla seo a leanas conas fhorbróirí bogearraí a d'fhéadfadh doca a pharsáil laistigh dá n-ainmneachtaí Go féin.
Conas a pharsáil tú Cáipéisí Word Docx le Leabharlann 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)
}
}
}
Tógáil Tábla Dinimiciúil i gCómhaid Docx le 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.
Conas Tábla Simplí a Chrúthú laistigh de Chomhad Word le Leabharlann 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
}
Tacaíocht d'Stíleáil agus Formáitiú Téacs Saibhir
Tá smacht mhínithe ar an tíipgraf una de na láidreachtaí lárnacha den leabharlann Go foinse oscailte seo. Is féidir leat dath téacs, méid cló, ailíniú agus fiú naisc nó stadanna táb a chur leis trí Go-Docx. Ligeann sé seo d'fhorbróirí doiciméid ghairmiúla branda a chruthú a bhfuil comhoiriúnach le riachtanais dearaíocha ar leith gan idirghabháil lámh.
Conas Stíleáil Téacs agus Formáitiú a chur i bhfeidhm ar Cháipéisí Word le Leabharlann 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")
}