public void Write(HtmlRenderer renderer, string script) { if (string.IsNullOrWhiteSpace(script)) { return; } else if (!renderer.EnableHtmlForInline) { renderer.Write(script); return; } //image //Details var svg = _render.Render(script, OutputFormat.Svg); var xml = XElement.Parse(Encoding.UTF8.GetString(svg)); renderer.Write(xml.ToString() + Environment.NewLine + Environment.NewLine); renderer.Write("<details>" + Environment.NewLine); renderer.Write("\t<summary>PlantUML - Details</summary>" + Environment.NewLine + Environment.NewLine); renderer.Write("<pre><code type=\"plantuml\">" + Environment.NewLine); renderer.Write(script); renderer.Write("</code></pre></details>" + Environment.NewLine + Environment.NewLine); }
public override StringBuffer Render(IMarkdownRenderer markdownRenderer, MarkdownCodeBlockToken token, MarkdownBlockContext context) { IPlantUmlRenderer plantUmlRenderer = rendererFactory.CreateRenderer(settings); IOutputFormatter outputFormatter = formatterFactory.CreateOutputFormatter(markdownRenderer.Options); byte[] output = plantUmlRenderer.Render(token.Code, settings.OutputFormat); return(outputFormatter.FormatOutput(token, output)); }