Expand description
Mermaid 服务端渲染(merman,Mermaid 12.1 的 Rust 实现)。
每个 ```mermaid 块渲染成浅色、深色两份内联 SVG:
<div class="mermaid-light">…</div><div class="mermaid-dark">…</div>,由 CSS 按 html.dark
显示其一(styles/components/mermaid.css)。HTML 标签模式,字宽见 metrics。
渲染失败时降级为 <pre class="mermaid-error"> 显示源码,文章照常保存。
SVG 含 <style>、foreignObject 等 sanitizer 不放行的内容,所以 Markdown 管线先输出
占位符、sanitize 之后再换成 SVG(Diagrams);SVG 由 merman 生成,作者文本已被其转义。
Modules§
Structs§
- Diagrams 🔒
- 一次 Markdown 渲染中的全部图表:先写占位符,sanitize 之后再换成 SVG。
Constants§
- MAX_
SPACING_ 🔒STEPS - 子图框重叠时
nodeSpacing的最大加宽档数(每档 10px,起点 50)。
Functions§
- render_
diagram 🔒 - 渲染一张图的浅色与深色两份 SVG,返回两个
div。 - render_
one 🔒 - strip_
dark_ 🔒variants - 删掉深色版本,只留浅色 SVG(Feed 阅读器没有站点 CSS,不处理会同时显示两份)。