public override LineNode[] GetNodes() { if (Content == null) { throw new LayoutException("Content property is null"); } return(LineNodeTransformer.Create(this).ToArray()); }
public override LineNode[] GetNodes() { var items = LineNodeTransformer.Create(this); if (Referenced.Page != null) { foreach (var item in items) { item.Link = Referenced.Page.Index; } } return(items.ToArray()); }
protected override Measurement MeasureOverride(Size availableSize) { //var doc = Document ?? throw new LayoutException("Document was not set"); var ms = new Measurement(this); lineNodes = new List <LineNode>(); foreach (var leaf in Leaves) { leaf.Measure(availableSize); var nodes = leaf.GetNodes(); if (nodes.Length > 0) { lineNodes.AddRange(nodes); } } LineNodeTransformer.Clean(lineNodes); if (lineNodes.Count > 0) { var indent = Style.Get(StyleKeys.ParagraphIndent); if (indent.Value > 0) { lineNodes.Insert(0, LineNode.Box(indent.Point, string.Empty)); } var linebreak = new Linebreak(); var breaks = linebreak.BreakLines(lineNodes, new double[] { availableSize.Width }, new LinebreakOptions()); var positionedItems = linebreak.PositionItems(lineNodes, new double[] { availableSize.Width }, breaks, false); lines = ProduceLines(positionedItems); double totalHeight = 0; for (int i = 0; i < lines.Length; i++) { var line = lines[i]; var height = 0.0; var lastElement = line[^ 1];
public override LineNode[] GetNodes() { Element.Parent = Parent; return(LineNodeTransformer.Create(this).ToArray()); }
public override LineNode[] GetNodes() { return(LineNodeTransformer.Create(this).ToArray()); }