Markdown SVG 升级
摘要
Simon Willison 的 markdown-svg-renderer 工具已升级,新增功能可在浏览器端使用 ffmpeg.wasm 将嵌入 SVG 的 Markdown 渲染为 PNG、JPEG 和 MP4 等格式。
暂无内容
查看缓存全文
缓存时间: 2026/08/17 03:43
# Markdown SVG 升级
来源:https://simonwillison.net/2026/Aug/16/markdown-svg-upgrades/
2026年8月16日
我从今年五月开始构建我的markdown-svg-renderer(https://tools.simonwillison.net/markdown-svg-renderer)工具(相关说明:https://tools.simonwillison.net/colophon#markdown-svg-renderer.html),但随后我为它添加了足够多的新功能,值得在此再次介绍。
它已经演变成我理想的工具,专门用于分享包含SVG文档的Markdown文稿。鉴于我热衷于绘制骑自行车的鹈鹕(https://simonwillison.net/tags/pelican-riding-a-bicycle/),这确实是个需要解决的问题!
该工具非常简单。在浏览器中访问markdown-svg-renderer(https://tools.simonwillison.net/markdown-svg-renderer),粘贴一些Markdown即可查看渲染结果……或者将Markdown保存到支持CORS的URL或GitHub Gist,然后粘贴该文档的链接。
使用URL选项会为你生成一个可书签的页面,例如https://tools.simonwillison.net/markdown-svg-renderer#url=https%3A%2F%2Fgist.github.com%2Fsimonw%2F6f9e48293be5c916652d29f0dc0b0657——其中内嵌了这个Gist(https://gist.github.com/simonw/6f9e48293be5c916652d29f0dc0b0657)的URL。
如果你访问该Gist,会看到原始SVG代码:beautiful-circle.md。这是一个自包含的SVG——一个包含构造线、缓慢旋转刻度环和环绕亮点的圆形"罗盘研究":一段SVG代码块。
但在渲染工具中,它显示为https://tools.simonwillison.net/markdown-svg-renderer#url=https%3A%2F%2Fgist.github.com%2Fsimonw%2F6f9e48293be5c916652d29f0dc0b0657:
相同的文本,但代码块已被替换为带标签页的面板。选中的标签页显示"已渲染"并展示渲染后的PNG。其他标签页为PNG、JPEG、MP4和代码。
如你所见,Markdown中的SVG代码块已被转换为渲染后的SVG(此处为动画)及多个标签页。
标签页功能尤为有趣。PNG和JPEG标签页在浏览器中将SVG渲染为对应图像格式,支持复制或下载——这对分享至不支持SVG的平台非常有用。
MP4标签页是今天新增的功能(https://github.com/simonw/tools/commit/73e0327f6df9887ba2a9f9f16a2d06a45451d248)。它会检测SVG是否包含动画,尝试推断循环视频的时长,然后渲染大量动画帧,并加载超过30MB的ffmpeg.wasm(https://github.com/ffmpegwasm/ffmpeg.wasm),以便利用编译为WebAssembly并在浏览器中运行的完整FFMPEG功能,将这些帧合成为MP4视频。
能将动画SVG转换为MP4,使得在不支持SVG动画的平台上分享再次变得便捷。这是个绝妙的功能!
相似文章
markdown-svg-renderer
一个支持实时预览、表格和代码块格式化的 Markdown 渲染工具,并针对 SVG 代码块提供内联预览和标签式代码视图的特殊处理。
@kanewang_: 介绍 Takumi v2 beta,一个用 Rust 编写的引擎,能在无头浏览器的情况下将 JSX 渲染为图像。 - renderSvg() 用于 SV…
介绍 Takumi v2 beta,一个用 Rust 编写的引擎,无需无头浏览器即可将 JSX 渲染为图像,新增 SVG 输出、按需 Google Fonts、语言感知文本处理以及改进的字体缓存。
Satteri:为 JavaScript 世界打造的 Rust 驱动的 Markdown 处理管道
Satteri 是一个 Markdown 处理管道,结合了快速的 Rust 引擎和灵活的 JavaScript 插件,并可作为 WASM 在浏览器中使用。
面向 LLM 的 Markdown 浏览器
作者介绍了 TextWeb,这是一个开源工具,它将网页渲染为 Markdown 格式供 LLM 处理,而非使用昂贵的大视觉模型,该工具支持命令行界面 (CLI) 和 MCP 服务器。
Mermaid 转 Unicode 框线艺术 (grok-mermaid)
Simon Willison 使用 WebAssembly 构建了一个基于浏览器的工具,用于将 Mermaid 图表转换为 Unicode 框线艺术,灵感来自 Grok CLI 编码代理的开源 Rust 组件。