summaryrefslogtreecommitdiff
path: root/picture.go
diff options
context:
space:
mode:
authorRi Xu <xuri.me@gmail.com>2017-10-20 14:40:57 +0800
committerRi Xu <xuri.me@gmail.com>2017-10-20 14:40:57 +0800
commitebafbdde73e3e0498e547a2bd862552d9e304701 (patch)
treec4727ab10fefb4030fb7e9727db9b7c96ce54fd3 /picture.go
parent8077732dff19367a83a222e098d801e21a7c9b56 (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.go19
1 files changed, 13 insertions, 6 deletions
diff --git a/picture.go b/picture.go
index 729bb4a..a7ff524 100644
--- a/picture.go
+++ b/picture.go
@@ -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) {