问答、学习、报告编辑里会混合 Markdown、LaTeX、化学式和物理单位。移动端需要像展示普通文本一样稳定展示它们。
RaTeX / AI-native Engineering
用 AI 推进一个跨平台 LaTeX 原生渲染引擎。
这个项目想说明一件事:AI 不只是写业务页面,也可以参与底层引擎。关键是把复杂问题拆小,并且让每次修改都有测试和视觉结果来验证。
RaTeX 用 Rust 负责解析和排版,输出一份绘图指令;iOS、Android、Flutter、React Native 只负责原生绘制。
我把失败公式拆成小任务,让 AI 修改 parser、layout 或绘制逻辑,再用测试和视觉 diff 判断有没有真的变好。
Current Landscape
先看现状:几种方案都不完全合适。
- WebView能力完整,但移动端要加载 WebView 和 JavaScript。
- 原生子集更轻,但复杂公式覆盖不足。
- 服务端图片接入简单,但公式会退化成图片。
- 自研解析体验接近原生,但需要长期维护和验证。
AI Collaboration Loop
我怎样让 AI 参与这个引擎。
不是让 AI 一次性写完整套渲染器,而是把一个失败公式变成小任务、小改动和可验证结果。
发现一个失败公式
例如某个化学式、单位、复杂分式在移动端渲染不对。
拆成明确任务
判断它属于解析、排版、字体度量还是绘制问题。
交给 AI 修改
让 AI 在小范围代码里补语法、修布局或生成测试样例。
用图片差异验收
和参考图逐像素对比,失败样例再回到下一轮。
Proof Materials
怎么证明 AI 的修改真的有效。
我不会只看代码是否能跑,而是把 RaTeX 输出和参考图对比。差异图会直接告诉 AI 下一轮该修哪里。
One Core, Many Outputs
最后交付的不是一张图片,而是一套跨端能力。
RaTeX 的核心思路是:公式解析和排版只做一次,然后把绘图指令交给不同平台原生绘制。这样 AI 修出的能力可以同时服务多个端。
输入公式解析结构计算排版生成绘图指令各端原生绘制对比参考图
iOSAndroidFlutterReact NativeServer PNG / SVG / PDF