allow XSSF RTS

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1902674 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
PJ Fanning 2022-07-12 09:40:29 +00:00
parent 7ab3352712
commit 8fbe3966dd
1 changed files with 20 additions and 11 deletions

View File

@ -495,20 +495,29 @@ public class HSSFCell extends CellBase {
// so handle things as a normal rich text cell
if (_cellType != CellType.STRING) {
int row=_record.getRow();
short col=_record.getColumn();
short styleIndex=_record.getXFIndex();
int row = _record.getRow();
short col = _record.getColumn();
short styleIndex = _record.getXFIndex();
setCellType(CellType.STRING, false, row, col, styleIndex);
}
int index;
HSSFRichTextString hvalue = (HSSFRichTextString) value;
UnicodeString str = hvalue.getUnicodeString();
index = _book.getWorkbook().addSSTString(str);
(( LabelSSTRecord ) _record).setSSTIndex(index);
_stringValue = hvalue;
_stringValue.setWorkbookReferences(_book.getWorkbook(), (( LabelSSTRecord ) _record));
_stringValue.setUnicodeString(_book.getWorkbook().getSSTString(index));
if (value instanceof HSSFRichTextString) {
HSSFRichTextString hvalue = (HSSFRichTextString) value;
UnicodeString str = hvalue.getUnicodeString();
int index = _book.getWorkbook().addSSTString(str);
(( LabelSSTRecord ) _record).setSSTIndex(index);
_stringValue = hvalue;
_stringValue.setWorkbookReferences(_book.getWorkbook(), (( LabelSSTRecord ) _record));
_stringValue.setUnicodeString(_book.getWorkbook().getSSTString(index));
} else {
HSSFRichTextString hvalue = new HSSFRichTextString(value.getString());
UnicodeString str = hvalue.getUnicodeString();
int index = _book.getWorkbook().addSSTString(str);
(( LabelSSTRecord ) _record).setSSTIndex(index);
_stringValue = hvalue;
_stringValue.setWorkbookReferences(_book.getWorkbook(), (( LabelSSTRecord ) _record));
_stringValue.setUnicodeString(_book.getWorkbook().getSSTString(index));
}
}
@Override