1
0
mirror of https://github.com/fumiama/go-docx.git synced 2026-06-04 23:30:25 +08:00

add w:kern

This commit is contained in:
源文雨
2023-02-27 21:41:04 +08:00
parent d19032acad
commit 1b84ef3cf2
3 changed files with 32 additions and 0 deletions

View File

@@ -49,6 +49,12 @@ type Highlight struct {
Val string `xml:"w:val,attr,omitempty"`
}
// Kern ...
type Kern struct {
XMLName xml.Name `xml:"w:kern,omitempty"`
Val int64 `xml:"w:val,attr,omitempty"`
}
// Justification contains the way of the horizonal alignment
//
// w:jc 属性的取值可以是以下之一:

View File

@@ -25,6 +25,7 @@ import (
"encoding/hex"
"encoding/xml"
"io"
"strconv"
"strings"
)
@@ -33,6 +34,7 @@ type ParagraphProperties struct {
XMLName xml.Name `xml:"w:pPr,omitempty"`
Justification *Justification
Shade *Shade
Kern *Kern
}
// UnmarshalXML ...
@@ -56,6 +58,17 @@ func (p *ParagraphProperties) UnmarshalXML(d *xml.Decoder, start xml.StartElemen
return err
}
p.Shade = &value
case "kern":
var value Kern
v := getAtt(tt.Attr, "val")
if v == "" {
continue
}
value.Val, err = strconv.ParseInt(v, 10, 64)
if err != nil {
return err
}
p.Kern = &value
default:
err = d.Skip() // skip unsupported tags
if err != nil {

View File

@@ -23,6 +23,7 @@ package docx
import (
"encoding/xml"
"io"
"strconv"
"strings"
)
@@ -148,6 +149,7 @@ type RunProperties struct {
RunStyle *RunStyle
Style *Style
Shade *Shade
Kern *Kern
}
// UnmarshalXML ...
@@ -205,6 +207,17 @@ func (r *RunProperties) UnmarshalXML(d *xml.Decoder, start xml.StartElement) err
return err
}
r.Shade = &value
case "kern":
var value Kern
v := getAtt(tt.Attr, "val")
if v == "" {
continue
}
value.Val, err = strconv.ParseInt(v, 10, 64)
if err != nil {
return err
}
r.Kern = &value
default:
err = d.Skip() // skip unsupported tags
if err != nil {