public void SetText(XSSFRichTextString str) { XSSFWorkbook wb = (XSSFWorkbook)GetDrawing().GetParent().GetParent(); str.SetStylesTableReference(wb.GetStylesSource()); CT_TextParagraph p = new CT_TextParagraph(); if (str.NumFormattingRuns == 0) { CT_RegularTextRun r = p.AddNewR(); CT_TextCharacterProperties rPr = r.AddNewRPr(); rPr.lang = ("en-US"); rPr.sz = (1100); r.t = str.String; } else { for (int i = 0; i < str.GetCTRst().sizeOfRArray(); i++) { CT_RElt lt = str.GetCTRst().GetRArray(i); CT_RPrElt ltPr = lt.rPr; if (ltPr == null) ltPr = lt.AddNewRPr(); CT_RegularTextRun r = p.AddNewR(); CT_TextCharacterProperties rPr = r.AddNewRPr(); rPr.lang = ("en-US"); ApplyAttributes(ltPr, rPr); r.t = (lt.t); } } ctShape.txBody.SetPArray(new CT_TextParagraph[] { p }); }