Skip to main content

Search OfficeIMO

Enter a topic, API type, or PowerShell command.

Documentation Search all OfficeIMO/

API Reference

Class

MarkdownRenderer

Namespace OfficeIMO.MarkdownRenderer
Assembly OfficeIMO.MarkdownRenderer
Modifiers static

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) #
Returns: String

Builds 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 optionalposition: 0
options OfficeIMO.MarkdownRenderer.MarkdownRendererOptions = null optionalposition: 1
public static String BuildUpdateScript(String bodyHtml) #
Returns: String

Returns a JavaScript snippet that calls updateContent(...) with a properly escaped string literal.

Parameters

bodyHtml System.String requiredposition: 0
public static MarkdownDoc ParseDocument(String markdown, MarkdownRendererOptions options = null, ICollection<MarkdownDocumentTransformDiagnostic> diagnostics = null, ICollection<MarkdownRendererPreProcessorDiagnostic> preProcessorDiagnostics = null) #
Returns: MarkdownDoc

Parses Markdown using renderer preprocessing and renderer-owned AST transforms, returning the final MarkdownDoc that would be rendered to HTML.

Parameters

markdown System.String requiredposition: 0
options OfficeIMO.MarkdownRenderer.MarkdownRendererOptions = null optionalposition: 1
diagnostics System.Collections.Generic.ICollection{OfficeIMO.Markdown.MarkdownDocumentTransformDiagnostic} = null optionalposition: 2
preProcessorDiagnostics System.Collections.Generic.ICollection{OfficeIMO.MarkdownRenderer.MarkdownRendererPreProcessorDiagnostic} = null optionalposition: 3
public static MarkdownRendererParseResult ParseDocumentResult(String markdown, MarkdownRendererOptions options = null) #
Returns: MarkdownRendererParseResult

Parses Markdown using renderer preprocessing and renderer-owned AST transforms, returning the final document, original syntax tree, and diagnostics together.

Parameters

markdown System.String requiredposition: 0
options OfficeIMO.MarkdownRenderer.MarkdownRendererOptions = null optionalposition: 1
public static MarkdownNativeDocument ParseNativeDocument(String markdown, MarkdownRendererOptions options = null) #
Returns: MarkdownNativeDocument

Parses Markdown using the renderer-owned pipeline and returns the AST-backed native projection.

Parameters

markdown System.String requiredposition: 0
options OfficeIMO.MarkdownRenderer.MarkdownRendererOptions = null optionalposition: 1
public static String RenderBodyHtml(String markdown, MarkdownRendererOptions options = null) #
Returns: String

Parses 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 requiredposition: 0
options OfficeIMO.MarkdownRenderer.MarkdownRendererOptions = null optionalposition: 1
public static String RenderChatBubbleBodyHtml(String markdown, ChatMessageRole role = Assistant, MarkdownRendererOptions options = null) #
Returns: String

Convenience helper: renders Markdown then wraps the result in a chat bubble.

Parameters

markdown System.String requiredposition: 0
role OfficeIMO.MarkdownRenderer.ChatMessageRole = Assistant optionalposition: 1
options OfficeIMO.MarkdownRenderer.MarkdownRendererOptions = null optionalposition: 2
public static String RenderChatBubbleUpdateScript(String markdown, ChatMessageRole role = Assistant, MarkdownRendererOptions options = null) #
Returns: String

Convenience helper: renders Markdown as a chat bubble and returns an update script snippet.

Parameters

markdown System.String requiredposition: 0
role OfficeIMO.MarkdownRenderer.ChatMessageRole = Assistant optionalposition: 1
options OfficeIMO.MarkdownRenderer.MarkdownRendererOptions = null optionalposition: 2
public static String RenderUpdateScript(String markdown, MarkdownRendererOptions options = null) #
Returns: String

Convenience helper for hosts: renders Markdown to an HTML fragment and returns the JavaScript snippet that updates the shell (calls updateContent(...)).

Parameters

markdown System.String requiredposition: 0
options OfficeIMO.MarkdownRenderer.MarkdownRendererOptions = null optionalposition: 1
public static String WrapAsChatBubble(String bodyHtml, ChatMessageRole role = Assistant) #
Returns: String

Wraps 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 requiredposition: 0
role OfficeIMO.MarkdownRenderer.ChatMessageRole = Assistant optionalposition: 1