private static IRtParagraph CreatePara(IRtParagraphStyle paraStyleProto, IRtSpanStyle spanStyleProto) { var para = AmFactory.Create <RtParagraph>(); para.Style = paraStyleProto.CloneTyped(); para.Spans.Add(CreatePureSpan(spanStyleProto)); return(para); }
public RichTextHeadlessEditor(IRichText text) { this.text = text; defaultParaStyle = AmFactory.Create <RtParagraphStyle>(); defaultSpanStyle = AmFactory.Create <RtSpanStyle>(); inputSpanStyle = AmFactory.Create <RtSpanStyle>(); NormalizeText(text, defaultParaStyle, defaultSpanStyle); MoveCursor(0, false); }
private static void NormalizeText(IRichText text, IRtParagraphStyle defaultParaStyle, IRtSpanStyle defaultSpanStyle) { if (text.Paragraphs.IsEmptyL()) { text.Paragraphs.Add(CreatePara(defaultParaStyle, defaultSpanStyle)); } NormalizePara(text.Paragraphs[0], defaultSpanStyle); for (var i = 1; i < text.Paragraphs.Count; i++) { NormalizePara(text.Paragraphs[i], text.Paragraphs[i - 1].Spans.Last().Style); } }