diff options
author | Ri Xu <xuri.me@gmail.com> | 2017-10-20 14:40:57 +0800 |
---|---|---|
committer | Ri Xu <xuri.me@gmail.com> | 2017-10-20 14:40:57 +0800 |
commit | ebafbdde73e3e0498e547a2bd862552d9e304701 (patch) | |
tree | c4727ab10fefb4030fb7e9727db9b7c96ce54fd3 /picture.go | |
parent | 8077732dff19367a83a222e098d801e21a7c9b56 (diff) |
Bugfix: use sheet name in func `AddChat`, relate issue #138
Signed-off-by: Ri Xu <xuri.me@gmail.com>
Diffstat (limited to 'picture.go')
-rw-r--r-- | picture.go | 19 |
1 files changed, 13 insertions, 6 deletions
@@ -100,13 +100,17 @@ func (f *File) AddPicture(sheet, cell, picture, format string) error { // xl/worksheets/_rels/sheet%d.xml.rels by given worksheet name, relationship // type and target. func (f *File) addSheetRelationships(sheet, relType, target, targetMode string) int { - var rels = "xl/worksheets/_rels/" + strings.ToLower(sheet) + ".xml.rels" + name, ok := f.sheetMap[trimSheetName(sheet)] + if !ok { + name = strings.ToLower(sheet) + ".xml" + } + var rels = "xl/worksheets/_rels/" + strings.TrimPrefix(name, "xl/worksheets/") + ".rels" var sheetRels xlsxWorkbookRels var rID = 1 var ID bytes.Buffer ID.WriteString("rId") ID.WriteString(strconv.Itoa(rID)) - _, ok := f.XLSX[rels] + _, ok = f.XLSX[rels] if ok { ID.Reset() xml.Unmarshal([]byte(f.readXML(rels)), &sheetRels) @@ -129,7 +133,11 @@ func (f *File) addSheetRelationships(sheet, relType, target, targetMode string) // xl/worksheets/_rels/sheet%d.xml.rels by given worksheet name and relationship // index. func (f *File) deleteSheetRelationships(sheet, rID string) { - var rels = "xl/worksheets/_rels/" + strings.ToLower(sheet) + ".xml.rels" + name, ok := f.sheetMap[trimSheetName(sheet)] + if !ok { + name = strings.ToLower(sheet) + ".xml" + } + var rels = "xl/worksheets/_rels/" + strings.TrimPrefix(name, "xl/worksheets/") + ".rels" var sheetRels xlsxWorkbookRels xml.Unmarshal([]byte(f.readXML(rels)), &sheetRels) for k, v := range sheetRels.Relationships { @@ -374,16 +382,15 @@ func (f *File) getSheetRelationshipsTargetByID(sheet, rID string) string { // xlsx, err := excelize.OpenFile("./Workbook.xlsx") // if err != nil { // fmt.Println(err) -// os.Exit(1) +// return // } // file, raw := xlsx.GetPicture("Sheet1", "A2") // if file == "" { -// os.Exit(1) +// return // } // err := ioutil.WriteFile(file, raw, 0644) // if err != nil { // fmt.Println(err) -// os.Exit(1) // } // func (f *File) GetPicture(sheet, cell string) (string, []byte) { |