mirror of
https://github.com/fumiama/go-docx.git
synced 2026-06-25 05:20:46 +08:00
Update README.md
This commit is contained in:
72
README.md
72
README.md
@@ -55,6 +55,7 @@ And you will see two files generated under `pwd` with the same contents as below
|
|||||||
```bash
|
```bash
|
||||||
go get -d github.com/fumiama/go-docx@latest
|
go get -d github.com/fumiama/go-docx@latest
|
||||||
```
|
```
|
||||||
|
### Generate Document
|
||||||
```go
|
```go
|
||||||
package main
|
package main
|
||||||
|
|
||||||
@@ -66,25 +67,60 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
w := docx.NewA4()
|
w := docx.NewA4()
|
||||||
// add new paragraph
|
// add new paragraph
|
||||||
para1 := w.AddParagraph()
|
para1 := w.AddParagraph()
|
||||||
// add text
|
// add text
|
||||||
para1.AddText("test").AddTab()
|
para1.AddText("test").AddTab()
|
||||||
para1.AddText("size").Size("44").AddTab()
|
para1.AddText("size").Size("44").AddTab()
|
||||||
f, err := os.Create("generated.docx")
|
f, err := os.Create("generated.docx")
|
||||||
// save to file
|
// save to file
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
_, err = w.WriteTo(f)
|
_, err = w.WriteTo(f)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
err = f.Close()
|
err = f.Close()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
### Parse Document
|
||||||
|
```go
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"os"
|
||||||
|
"strings"
|
||||||
|
|
||||||
|
"github.com/fumiama/go-docx"
|
||||||
|
)
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
readFile, err := os.Open("file2parse.docx")
|
||||||
|
if err != nil {
|
||||||
|
panic(err)
|
||||||
|
}
|
||||||
|
fileinfo, err := readFile.Stat()
|
||||||
|
if err != nil {
|
||||||
|
panic(err)
|
||||||
|
}
|
||||||
|
size := fileinfo.Size()
|
||||||
|
doc, err := docx.Parse(readFile, size)
|
||||||
|
if err != nil {
|
||||||
|
panic(err)
|
||||||
|
}
|
||||||
|
fmt.Println("Plain text:")
|
||||||
|
for _, it := range doc.Document.Body.Items {
|
||||||
|
switch it.(type) {
|
||||||
|
case *docx.Paragraph, *docx.WTable: // printable
|
||||||
|
fmt.Println(it)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user