← 文章 / 开源项目
Simon Willison 1小时前 · 2026-10-19 04:52:12 · 0 阅读

LaTeX 在线渲染工具:公式与文档实时预览

Tool LaTeX renderer — LaTeX renderer 负责将 LaTeX 源码渲染成可视化结果,既可以用 MathJax 排版单个显示公式,也可以用 faster-latex 排版完整文档或文本片段,编辑器旁配有实时预览,并可通过工具栏切换编辑视图和渲染视图。源码既可以手动输入,也可以从 URL 或 GitHub Gist 加载,还能从内置示例中选择;页面会将 LaTeX 内容保存在 URL 片段里,方便以可读或压缩链接的形式分享。

灵感来自 Paul Ford 和 Aboard Foundary 的新 Web 应用 Tiny Little Office,它提供了一整套 Web 应用内容编辑器,包括文字处理、大纲、演示文稿制作、电子表格、计算器、绘图工具、流程图制作、动画、日历和行程规划。

Tiny Little Office 的招牌玩法是把所有文档数据存在 URL 的 #fragment 部分,这样用它创建的每个文档都能生成可收藏、可分享的链接。

它还提供一个 llms.txt 文件,告诉 agent 如何构造能渲染成文档的 URL。Claude 就借助这个文件生成了这个链接,打开后是一份演示文稿,讲解 URL 格式的工作原理:

网页应用中的幻灯片编辑器截图,展示了一个深色主题演示文稿。文档标题栏显示"一个微型办公链接是如何工作的",右上角带有进度环、分享图标和菜单图标。下方是格式工具栏,包含"插入"下拉菜单,以及播放、加粗、斜体、下划线、删除线、高亮、代码、链接、上标、表情符号、减少缩进、增加缩进、布局和调色板等图标按钮。主画布显示第 1 张幻灯片,配有蓝色链接图标及文字:"整个文档就是链接"、"无服务器、无数据库、无账户"、"# 号后的所有内容都保留在你的浏览器中",底部有幻灯片计数器"1 / 9"。画布下方是"演讲者备注"标题。右侧边栏显示幻灯片缩略图。第 1 张(选中):内容同上。第 2 张:"链接的结构",列表包括 "tinylittleoffice.com/#/v1/deck/y7Vj..."、"v1:格式版本"、"deck:打开该文件的应用"、"y:模式字母"、"7Vj...:压缩并编码后的文档"。第 3 张:"第 1 步:以文本形式编写",列表包括 "每个文档都是 TLO,一种 Markdown 变体"、"幻灯片以 --- 行分割"、"图表、绘图和动画是围栏代码块"、"这份文稿约为 1 KB 的纯文本"。第 4 张:"第 2 步:压缩它",列表包括 "原始 DEFLATE,与 zip 和 gzip 相同算法"、"z:纯 DEFLATE"、"y:带有预设字典的 DEFLATE"、"r:完全不压缩"

Tiny Little Office 启发了我,我让 Claude Code(Opus 5.5 Extra)构建了一个类似支持 LaTeX 的工具。这是我使用的提示词序列:

我想要一个工具,可以通过 #code-here 形式的片段哈希链接访问,它将这段代码作为 LaTeX 处理并高效渲染。它还应支持一个前缀,表示 LaTeX 使用为 LaTeX 优化的自定义压缩字典进行压缩。使用 CDN 上可用的最佳 LaTeX 渲染库(也要考虑 WebAssembly)。如果没有通过片段哈希加载,则显示一个编辑器,可以粘贴 LaTeX 代码,然后切换到"渲染"视图。该渲染视图应可被收藏(bookmarkable)。#fragment 视图应允许切换回编辑源代码。

既然它在我的 tools 仓库中运行正常,我让它参考我现有的SVG in Markdown 工具中使用的 <iframe sandbox="..."> 机制,以防范 XSS 风险:

能防 XSS 吗?我们可以像 SVG markdown render 项目那样,在 iframe 沙盒中运行

我还让它从那个工具中复制了 Gist/URL 加载功能:

我们应该有一个选项,可以从 URL(或 Gist)加载 latex,类似于 markdown SVG 工具

这里是一个示例链接。该工具使用了 Pako 2.1.0、MathJax 4.1.3、faster-latex 0.3.1 和 DOMPurify 3.4.16。

一张名为 "LaTeX renderer" 的 web 应用截图,采用分屏布局。顶部栏有 Edit/Rendered 切换按钮、蓝色 Copy link 按钮和 Share 按钮。左侧栏标有 LaTeX source,带有 "Document · faster-latex (WASM)" 徽标,包含 URL/GitHub Gist 输入框和 Load 按钮、一个包含 LaTeX 文档的代码编辑器,以及多行示例按钮(Quadratic formula, Gaussian integral, Maxwell, Attention, Matrix, Chemistry, Prose, TikZ, Document)。右侧栏显示排版输出:一篇标题为 "Sums of Odd Numbers" 的论文,作者为 A. Student,包含一个定理(前 n 个奇数之和为 n 的平方)、一个带编号公式的 Proof 部分,以及一个小案例的项目符号列表。

原始来源: Simon Willison

评论 (0)