summaryrefslogtreecommitdiff
path: root/file.go
diff options
context:
space:
mode:
authorBluesJhao <BluesJhao.Li@gmail.com>2019-02-25 00:29:58 +0800
committerxuri <xuri.me@gmail.com>2019-02-25 00:29:58 +0800
commit1427027e38d6db46d441243f00d6989c2f53e7ce (patch)
treeef9985b4ac157700b0f60e9da8aac928012fe0c0 /file.go
parentc223815cfe88e2cdfe3631860a6936e94229f779 (diff)
Resolve #235, performance optimization for add comments (#347)
Diffstat (limited to 'file.go')
-rw-r--r--file.go9
1 files changed, 8 insertions, 1 deletions
diff --git a/file.go b/file.go
index 66b46c5..b6bf57d 100644
--- a/file.go
+++ b/file.go
@@ -39,8 +39,12 @@ func NewFile() *File {
SheetCount: 1,
XLSX: file,
}
+ f.CalcChain = f.calcChainReader()
+ f.Comments = make(map[string]*xlsxComments)
f.ContentTypes = f.contentTypesReader()
f.Styles = f.stylesReader()
+ f.DecodeVMLDrawing = make(map[string]*decodeVmlDrawing)
+ f.VMLDrawing = make(map[string]*vmlDrawing)
f.WorkBook = f.workbookReader()
f.WorkBookRels = f.workbookRelsReader()
f.Sheet["xl/worksheets/sheet1.xml"] = f.workSheetReader("Sheet1")
@@ -87,12 +91,15 @@ func (f *File) WriteTo(w io.Writer) (int64, error) {
func (f *File) WriteToBuffer() (*bytes.Buffer, error) {
buf := new(bytes.Buffer)
zw := zip.NewWriter(buf)
+ f.calcChainWriter()
+ f.commentsWriter()
f.contentTypesWriter()
+ f.vmlDrawingWriter()
f.workbookWriter()
f.workbookRelsWriter()
f.worksheetWriter()
f.styleSheetWriter()
- f.calcChainWriter()
+
for path, content := range f.XLSX {
fi, err := zw.Create(path)
if err != nil {