From 88de2f8d510b0959bbb672b80656d207bd0bc927 Mon Sep 17 00:00:00 2001 From: xuri Date: Sat, 22 Aug 2020 18:58:43 +0800 Subject: Default row height compatibility with Apache OpenOffice and Kingsoft WPS, unit test update and typo fixed --- rows.go | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'rows.go') diff --git a/rows.go b/rows.go index 66dd16b..c6098e6 100644 --- a/rows.go +++ b/rows.go @@ -262,21 +262,24 @@ func (f *File) GetRowHeight(sheet string, row int) (float64, error) { if row < 1 { return defaultRowHeightPixels, newInvalidRowNumberError(row) } - - xlsx, err := f.workSheetReader(sheet) + var ht = defaultRowHeight + ws, err := f.workSheetReader(sheet) if err != nil { - return defaultRowHeightPixels, err + return ht, err } - if row > len(xlsx.SheetData.Row) { - return defaultRowHeightPixels, nil // it will be better to use 0, but we take care with BC + if ws.SheetFormatPr != nil { + ht = ws.SheetFormatPr.DefaultRowHeight + } + if row > len(ws.SheetData.Row) { + return ht, nil // it will be better to use 0, but we take care with BC } - for _, v := range xlsx.SheetData.Row { + for _, v := range ws.SheetData.Row { if v.R == row && v.Ht != 0 { return v.Ht, nil } } // Optimisation for when the row heights haven't changed. - return defaultRowHeightPixels, nil + return ht, nil } // sharedStringsReader provides a function to get the pointer to the structure -- cgit v1.2.1