private InlineObjectElementWithText ConstructElements4Printing(int offset, InlineObjectElement mainUIElement) { Debug.Assert(mainUIElement != null); InlineObjectElementWithText inlineObject = new InlineObjectElementWithText(mainUIElement.DocumentLength, mainUIElement.Element); var line = Document.GetLineByOffset(offset); inlineObject.LeadingText = GetLeadingText(Document, line, offset); inlineObject.TrailingText = GetTrailingText(Document, line, offset, mainUIElement.DocumentLength); return(inlineObject); }
/// <summary> /// Add Run elements, if available, to paragrapsh /// Added by: [email protected] /// </summary> /// <param name="visualLineElementGenerators"></param> /// <param name="p"></param> /// <param name="line"></param> /// <returns>true if Run elements added</returns> private static bool AddVisualLineElements(List <VisualLineElementGenerator> visualLineElementGenerators, Paragraph p, IDocumentLine line) { InlineObjectElementWithText inlineObject = GetVisualLineElement(visualLineElementGenerators, line); if (inlineObject == null) { return(false); } // Leading text if (inlineObject.LeadingText != null) { p.Inlines.Add(inlineObject.LeadingText); } // UIElement p.Inlines.Add(inlineObject.Element); // Trailing text if (inlineObject.TrailingText != null) { p.Inlines.Add(inlineObject.TrailingText); } return(true); }