public SlideRenderer() { var pipelineBuilder = new MarkdownPipelineBuilder(); pipelineBuilder.Use <HtmlSanitizerExtension>(); _pipeline = pipelineBuilder.Build(); }
/// <summary> /// 解析Markdown源代码,并且返回HTML字符串。 /// </summary> /// <param name="source">Markdown源代码。</param> /// <param name="extensions">Markdown配置实例。</param> /// <returns>返回解析后的HTML字符串。</returns> public static string ToHtml(string source, MarkdownPipelineBuilder pipeline) { pipeline.Use <QuoteSectionNoteExtension>(); var build = pipeline.Build(); return(Markdig.Markdown.ToHtml(source, build)); }
public static void Convert(TextReader input, TextWriter output, MarkdownToHtmlConverterOptions options) { var markdownText = input.ReadToEnd(); var pipelineBulder = new MarkdownPipelineBuilder() .UseAdvancedExtensions(); if (options.EmbedImage) { pipelineBulder.Use(new EmbeddedImageExtension(options.BaseDirectory)); } var pipeline = pipelineBulder.Build(); var htmlBodyText = Markdown.ToHtml(markdownText, pipeline); var styleText = GetDefaultStyleText(); output.WriteLine("<!DOCTYPE html>"); output.WriteLine("<html>"); output.WriteLine("<head>"); output.WriteLine("<style>"); output.WriteLine(styleText); output.WriteLine("</style>"); output.WriteLine("</head>"); output.WriteLine("<body class=\"markdown-body\">"); output.WriteLine(htmlBodyText); output.WriteLine("</body>"); output.WriteLine("</html>"); output.Flush(); }
private Task <DocsMarkdownService> BuildMarkdownService(Section section, DocsSiteRouter router) { var context = new DocsMarkdownRenderingContext(_site, section, router); var builder = new MarkdownPipelineBuilder(); builder.Use(new DisplayLinkExtension(context)); return(Task.FromResult(new DocsMarkdownService(builder))); }
public DocsMarkdownService(DocsMarkdownRenderingContext section) { var builder = new MarkdownPipelineBuilder(); builder.UseYamlFrontMatter(); builder.Use(new DisplayLinkExtension(section)); builder.UseAdvancedExtensions(); builder.UseBootstrap(); _pipeline = builder.Build(); }
public MarkdownPipeline GetMarkdownPipeline() { var builder = new MarkdownPipelineBuilder(); var extensions = extensionsProvider.GetExtensions(); foreach (var extension in extensions) { builder.Use(extension); } return(builder.Build()); }
private static MarkdownPipeline CreateMarkdownPipeline(bool embedImages, bool usePrism, string sourceDirectory) { var builder = new MarkdownPipelineBuilder(); builder.UseAdvancedExtensions(); builder.DebugLog = Console.Out; if (embedImages) { builder.Use(new EmbedLocalImagesExtension(sourceDirectory)); } if (usePrism) { builder.UsePrism(); } return(builder.Build()); }
/// <summary> /// 使用Markdig扩展。 /// </summary> /// <typeparam name="TExtension">扩展类型。</typeparam> /// <param name="builder">当前管道构建实例。</param> /// <returns>返回管道构建实例。</returns> public static MarkdownPipelineBuilder Use <TExtension>(this MarkdownPipelineBuilder builder) where TExtension : IMarkdownExtension, new() { return(builder.Use(new TExtension())); }
public static MarkdownPipelineBuilder UseConfluenceFootnotes(this MarkdownPipelineBuilder pipeline) => pipeline.Use <ConfluenceFootnoteExtension>();
public static MarkdownPipelineBuilder UseConfluenceMacros(this MarkdownPipelineBuilder pipeline) => pipeline.Use <ConfluenceMacroExtension>();