private void RenderFrame() { var rect = new SvgRectangle(_svgRoot, 0.5, 0.5, _diagramSize.Width, _diagramSize.Height); rect.StrokeWidth = 1; rect.Stroke = "#979797"; rect.Fill = "#FFFFFF"; _svgGraphic.Add(rect); }
public SvgRoot RenderDiagram(ClassDiagram classDiagram) { _diagramWidth = CalculateDiagramWidth(classDiagram); _svgRoot = new SvgRoot(100, _diagramWidth); var rect = new SvgRectangle(_svgRoot, 0.5, 0.5, _diagramWidth - 1, 100); rect.StrokeWidth = 1; rect.Stroke = "#979797"; rect.Fill = "#FFFFFF"; _svgRoot.AppendChild(rect.XmlElement); double position = 20.5d; position = RenderHeader(classDiagram, position); position = RenderAllRowSections(classDiagram, position); rect.Height = position - 9.5; _svgRoot.Height = position - 5; return _svgRoot; }
private void DrawNode(SequenceDiagramNode node) { var textWidth = node.Text.GetWidth(12, Fonts.FontLight); var textPosition = new Point(_diagramSize.Width, 10); var textSize = new Size(textWidth + 20, 35); _diagramSize = new Size(_diagramSize.Width + textWidth + 40, _diagramSize.Height); var rectangle = new SvgRectangle(_svgRoot, textPosition.X, textPosition.Y, textSize.Width, textSize.Height); rectangle.StrokeWidth = 1; rectangle.Stroke = "#979797"; rectangle.Fill = "#FFFFFF"; var link = new SvgLink(_svgRoot, node.Text, string.Format("{{{{type-link:{0}}}}}", node.TypeIdentifier), textPosition.X + 15, textPosition.Y + 22); link.Text.FontSize = 12; _svgGraphic.Add(rectangle); _svgGraphic.Add(link); _nodeMiddlePoints.Add(node.ID, textSize.Width / 2 + textPosition.X); }