API Reference
MarkdownRenderer
Renders Markdown to HTML suitable for WebView2/browser hosts, and provides a reusable shell page + an incremental update mechanism.
Inheritance
- Object
- MarkdownRenderer
Methods
public static String BuildShellHtml(String title = null, MarkdownRendererOptions options = null) #StringBuilds a self-contained HTML document that preloads CSS and scripts once (Prism/Mermaid), and exposes a global updateContent(newBodyHtml) function for incremental updates.
Parameters
- title System.String = null
- options OfficeIMO.MarkdownRenderer.MarkdownRendererOptions = null
public static String BuildUpdateScript(String bodyHtml) #StringReturns a JavaScript snippet that calls updateContent(...) with a properly escaped string literal.
Parameters
- bodyHtml System.String
public static MarkdownDoc ParseDocument(String markdown, MarkdownRendererOptions options = null, ICollection<MarkdownDocumentTransformDiagnostic> diagnostics = null, ICollection<MarkdownRendererPreProcessorDiagnostic> preProcessorDiagnostics = null) #MarkdownDocParses Markdown using renderer preprocessing and renderer-owned AST transforms, returning the final MarkdownDoc that would be rendered to HTML.
Parameters
- markdown System.String
- options OfficeIMO.MarkdownRenderer.MarkdownRendererOptions = null
- diagnostics System.Collections.Generic.ICollection{OfficeIMO.Markdown.MarkdownDocumentTransformDiagnostic} = null
- preProcessorDiagnostics System.Collections.Generic.ICollection{OfficeIMO.MarkdownRenderer.MarkdownRendererPreProcessorDiagnostic} = null
public static MarkdownRendererParseResult ParseDocumentResult(String markdown, MarkdownRendererOptions options = null) #MarkdownRendererParseResultParses Markdown using renderer preprocessing and renderer-owned AST transforms, returning the final document, original syntax tree, and diagnostics together.
Parameters
- markdown System.String
- options OfficeIMO.MarkdownRenderer.MarkdownRendererOptions = null
public static MarkdownNativeDocument ParseNativeDocument(String markdown, MarkdownRendererOptions options = null) #MarkdownNativeDocumentParses Markdown using the renderer-owned pipeline and returns the AST-backed native projection.
Parameters
- markdown System.String
- options OfficeIMO.MarkdownRenderer.MarkdownRendererOptions = null
public static String RenderBodyHtml(String markdown, MarkdownRendererOptions options = null) #StringParses Markdown using OfficeIMO.Markdown and returns an HTML fragment (typically an <article class="markdown-body"> wrapper). When Mermaid is enabled, Mermaid code blocks are annotated with hashes for incremental rendering.
Parameters
- markdown System.String
- options OfficeIMO.MarkdownRenderer.MarkdownRendererOptions = null
public static String RenderChatBubbleBodyHtml(String markdown, ChatMessageRole role = Assistant, MarkdownRendererOptions options = null) #StringConvenience helper: renders Markdown then wraps the result in a chat bubble.
Parameters
- markdown System.String
- role OfficeIMO.MarkdownRenderer.ChatMessageRole = Assistant
- options OfficeIMO.MarkdownRenderer.MarkdownRendererOptions = null
public static String RenderChatBubbleUpdateScript(String markdown, ChatMessageRole role = Assistant, MarkdownRendererOptions options = null) #StringConvenience helper: renders Markdown as a chat bubble and returns an update script snippet.
Parameters
- markdown System.String
- role OfficeIMO.MarkdownRenderer.ChatMessageRole = Assistant
- options OfficeIMO.MarkdownRenderer.MarkdownRendererOptions = null
public static String RenderUpdateScript(String markdown, MarkdownRendererOptions options = null) #StringConvenience helper for hosts: renders Markdown to an HTML fragment and returns the JavaScript snippet that updates the shell (calls updateContent(...)).
Parameters
- markdown System.String
- options OfficeIMO.MarkdownRenderer.MarkdownRendererOptions = null
public static String WrapAsChatBubble(String bodyHtml, ChatMessageRole role = Assistant) #StringWraps an existing HTML fragment in a chat "bubble" container (optional). This is purely a formatting helper: it does not change Markdown parsing rules.
Parameters
- bodyHtml System.String
- role OfficeIMO.MarkdownRenderer.ChatMessageRole = Assistant
Inherited Methods
public override Boolean Equals(Object obj) #BooleanParameters
- obj Object