public static OpenXmlElement GetFormattedElement(Model.Paragraph paragraph) { Paragraph para = new Paragraph(); para.Append(GetParagraphProperties(paragraph)); foreach (Model.Element element in paragraph.SubElements) { if (element is Model.Text) { Model.Text text = (Model.Text)element; if (paragraph.Font != null && text.Font == null) text.Font = paragraph.Font; para.Append(TextFormatter.GetFormattedElement(text)); } else { throw new InvalidSubFeatureException(paragraph.GetElementType().ToString(), element.GetElementType().ToString()); } } return para; }
/// <summary> /// Returns formatted OpenXmlElement[] representing given List instance /// </summary> /// <param name="list">List object</param> /// <returns></returns> public static IEnumerable<OpenXmlElement> GetFormattedElement(Model.List list) { List<OpenXmlElement> result = new List<OpenXmlElement>(); int numStyleId = StyleCreator.AddNumberingStyle(list.Ordered, list.Label); foreach (Model.Element element in list.SubElements) { if (element.GetElementType() == Model.ElementType.ListItem) { result.Add( GetListItem((Model.ListItem)element, numStyleId) ); } else { throw new InvalidSubFeatureException( list.GetElementType().ToString(), element.GetElementType().ToString()); } } result.Add(new Paragraph()); return result.AsEnumerable(); }