diff options
author | xuri <xuri.me@gmail.com> | 2022-10-28 00:31:55 +0800 |
---|---|---|
committer | xuri <xuri.me@gmail.com> | 2022-10-28 00:31:55 +0800 |
commit | a410b22bdd50e9f212b0b454e5aed798e3476394 (patch) | |
tree | d8b234f1171f4c0222d09182dc9ed8e7e3ace658 /styles.go | |
parent | adf9d37d82edd3dbc365fece76a031a92e2220d6 (diff) |
Fix the error on getting the range of merged cells on the worksheet which contains one cell merged cell range
- Parse workbook default theme for custom theme color support in the feature
- Variables name typo fix
- Add system foreground and background color as RGB in the IndexedColorMapping list
Diffstat (limited to 'styles.go')
-rw-r--r-- | styles.go | 19 |
1 files changed, 14 insertions, 5 deletions
@@ -1057,6 +1057,15 @@ func (f *File) styleSheetWriter() { } } +// themeWriter provides a function to save xl/theme/theme1.xml after serialize +// structure. +func (f *File) themeWriter() { + if f.Theme != nil { + output, _ := xml.Marshal(f.Theme) + f.saveFileList(defaultXMLPathTheme, f.replaceNameSpaceBytes(defaultXMLPathTheme, output)) + } +} + // sharedStringsWriter provides a function to save xl/sharedStrings.xml after // serialize structure. func (f *File) sharedStringsWriter() { @@ -3311,11 +3320,11 @@ func getPaletteColor(color string) string { // themeReader provides a function to get the pointer to the xl/theme/theme1.xml // structure after deserialization. func (f *File) themeReader() *xlsxTheme { - var ( - err error - theme xlsxTheme - ) - if err = f.xmlNewDecoder(bytes.NewReader(namespaceStrictToTransitional(f.readXML("xl/theme/theme1.xml")))). + if _, ok := f.Pkg.Load(defaultXMLPathTheme); !ok { + return nil + } + theme := xlsxTheme{XMLNSa: NameSpaceDrawingML.Value, XMLNSr: SourceRelationship.Value} + if err := f.xmlNewDecoder(bytes.NewReader(namespaceStrictToTransitional(f.readXML(defaultXMLPathTheme)))). Decode(&theme); err != nil && err != io.EOF { log.Printf("xml decoder error: %s", err) } |