/// <summary> /// Writes the content of this RtfListItem. /// </summary> public override void WriteContent(Stream result) { byte[] t; if (ParagraphStyle.GetSpacingBefore() > 0) { result.Write(RtfParagraphStyle.SpacingBefore, 0, RtfParagraphStyle.SpacingBefore.Length); result.Write(t = IntToByteArray(ParagraphStyle.GetSpacingBefore()), 0, t.Length); } if (ParagraphStyle.GetSpacingAfter() > 0) { result.Write(RtfParagraphStyle.SpacingAfter, 0, RtfParagraphStyle.SpacingAfter.Length); result.Write(t = IntToByteArray(ParagraphStyle.GetSpacingAfter()), 0, t.Length); } if (ParagraphStyle.GetLineLeading() > 0) { result.Write(LineSpacing, 0, LineSpacing.Length); result.Write(t = IntToByteArray(ParagraphStyle.GetLineLeading()), 0, t.Length); } for (var i = 0; i < Chunks.Count; i++) { var rtfElement = (IRtfBasicElement)Chunks[i]; if (rtfElement is RtfChunk) { ((RtfChunk)rtfElement).SetSoftLineBreaks(true); } else if (rtfElement is RtfList) { result.Write(Paragraph, 0, Paragraph.Length); _containsInnerList = true; } rtfElement.WriteContent(result); if (rtfElement is RtfList) { switch (_parentList.GetLevelFollowValue()) { case RtfListLevel.LIST_LEVEL_FOLLOW_NOTHING: break; case RtfListLevel.LIST_LEVEL_FOLLOW_TAB: _parentList.WriteListBeginning(result); result.Write(RtfList.Tab, 0, RtfList.Tab.Length); break; case RtfListLevel.LIST_LEVEL_FOLLOW_SPACE: _parentList.WriteListBeginning(result); result.Write(t = DocWriter.GetIsoBytes(" "), 0, t.Length); break; } } } }