因为经常要把 LaTeX 公式放进 PPT,我做了一个纯浏览器端的 LaTeX 转图片工具

TellHim 2026-09-19 11:55 1

前段时间做了一个比较小的工具,主要解决一个自己经常遇到的问题:怎么快速把 LaTeX 公式转换成图片。


平时写 Markdown 或者论文的时候,LaTeX 公式当然很好用,但一旦要把公式放到 PPT 、图片、博客封面或者一些不支持 LaTeX 的编辑器里,就有点麻烦了。


最常见的做法可能是:



  • 找一个在线 LaTeX 编辑器

  • 输入公式

  • 截图

  • 再裁剪

  • 如果背景或者清晰度不合适,再重新处理一次


偶尔用一次没什么问题,但如果一天需要处理很多公式,这个流程还是挺重复的。


所以之前就顺手做了一个 LaTeX 转图片的小工具。


最开始其实只有一个功能


第一版非常简单:



输入 LaTeX → 渲染公式 → 导出 PNG



后来自己用的过程中,又陆续加了一些功能,现在支持:



  • LaTeX 转 PNG

  • LaTeX 转 SVG

  • LaTeX 转 JPG / JPEG

  • 透明背景

  • 自定义公式颜色和背景

  • 调整图片缩放比例

  • 1x / 2x / 3x / 4x 高清导出

  • 直接复制 SVG

  • 复制图片

  • 复制 LaTeX

  • 通过 URL 保存当前公式


最后整理成了这个网站:


https://latextoimg.com/



目前整个公式渲染过程主要是在浏览器里完成的,不需要先把公式提交到服务器再生成图片。


做的时候发现,“LaTeX 转图片”其实没有想象中那么简单


一开始我以为就是:


LaTeX

MathJax

SVG

PNG

但真正做起来还是碰到了一些小问题。


1. SVG 很适合公式,但不是所有地方都方便使用


MathJax 本身生成 SVG 很合适,公式放大之后也不会模糊。


所以如果是做网页、论文插图或者后续还要编辑,SVG 基本是最好的格式。


但实际使用时,很多场景还是更需要 PNG 。


比如:



  • PowerPoint

  • Notion

  • 一些富文本编辑器

  • 社交媒体图片

  • 视频剪辑软件


所以最后还是需要把 SVG 再正确地转换成位图。


2. 普通 PNG 在 Retina 屏幕上很容易糊


这个问题之前没有特别注意。


同一个公式,在网页里看很清楚,但导出成 1x PNG 放进 PPT ,再稍微放大一点之后,就可能明显感觉到边缘发虚。


所以后面加了 2x 、3x 、4x 导出。


现在如果是 PPT 或者文章插图,我自己一般直接用 2x 或 3x 。


如果不在乎文件大小,4x 基本就比较稳。


3. 透明背景比我想象中实用


最开始其实没准备专门做透明背景。


但后来发现,如果公式要放进 PPT ,透明 PNG 反而是非常常见的需求。


尤其是:


E = mc^2

这种公式直接导出透明背景,然后拖到 PPT 里,比截图方便很多。


而且深色 PPT 、浅色 PPT 都能自己控制公式颜色。


4. JPG 和透明背景其实是冲突的


PNG 和 SVG 都可以支持透明背景,但 JPG 本身不支持透明。


所以如果用户选择 JPG ,就必须考虑透明区域最后应该填什么背景色。


这种细节单独看都很小,但在线工具真正做完整之后,会发现其实有不少这种边界情况。


为什么没有直接做成完整 LaTeX 编译器


目前这个工具的定位还是:



LaTeX Formula → Image



而不是:



.tex Document → Image



也就是说,更适合处理数学公式,而不是完整 LaTeX 文档。


比如下面这种就是它比较擅长的:


\frac{-b \pm \sqrt{b^2 - 4ac}}{2a}

或者:


\int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi}

但如果是复杂的 TikZ 、完整 LaTeX package 、自定义宏环境,目前并不是主要目标。


之前也考虑过直接在服务器跑完整 TeX Live ,但那样整个产品复杂度会高很多。


而我自己真正高频使用的,其实就是:


“我这里有一段公式,赶紧帮我变成一张能用的图片。”


所以最后还是保持了现在这种比较轻量的方式。


现在自己用得最多的是 SVG 和透明 PNG


如果是网页,我通常直接用 SVG 。


如果是 PPT ,则基本是:


Transparent PNG + 2x / 3x

这样基本不需要后续再处理。


做完之后才发现,这类非常小的工具其实挺适合解决一些重复性的工作流问题。


不一定需要很多复杂功能,只要能把原本:


打开编辑器
→ 输入公式
→ 截图
→ 裁剪
→ 调整背景
→ 保存

变成:


输入公式
→ Download

对我来说就已经够用了。


目前还在考虑后面要不要继续加一些功能,例如:



  • 本地公式历史记录

  • 常用公式收藏

  • 更多预设尺寸

  • Markdown 公式直接粘贴

  • 批量 LaTeX 转图片

  • 更完整的 LaTeX 语法支持


不知道 V2EX 上平时用 LaTeX 的人多不多。


如果是你们的话,LaTeX 转图片这个场景里,最希望补的功能是什么?


也欢迎帮忙看看目前还有哪些体验比较别扭的地方。

最新回复 (6)
  • NotNEO 09-19 12:11
    1
    你这个网页 UI 配色和界面展示 都做的挺好的 方便问下 怎么设计的吗
  • tomchen 09-19 13:51
    2
    新版 ms office 支持 svg ,旧版则支持 emf 格式,所以你可以支持下载
    PNG
    SVG
    JPG
    EMF
    BMP
    WEBP

    按钮乱七八糟地堆在那里没分个类

    话说 JPG 和 JPEG 是一种格式,你网站上居然并列都列出来了好像两种不同格式一样😂

    编辑器行号也没对齐

    公式颜色那栏赘余

    缩放不缩放预览的吗?

    话说你也是厉害,能找出 5 个工具集合站提交上去,虽然每个都超级野鸡😂

    ----

    @NotNEO 绿的,高概率是 Codex😂
  • bao626 09-19 15:24
    3
    👍
  • TellHim 楼主 09-19 15:44
    4
    @NotNEO codex
  • TellHim 楼主 09-19 15:44
    5
    @tomchen 感谢建议~,我研究优化下!
  • Weixiao0725 09-20 08:27
    6
    之前一直用这个网站 https://www.latexlive.com/

    你可以参考他们的优化一下自己的
* 帖子来源V2EX
返回