核心用法
tex-render 是一个基于 Node.js 的 LaTeX 公式渲染工具,核心流程为:TeX → MathJax → SVG → 目标格式图片。支持 PNG、JPEG、WebP、AVIF 四种输出格式,默认输出高质量 PNG。调用方式为 node <skill_folder>/scripts/render.js 并传入 LaTeX 表达式,支持命令行参数控制格式、质量、尺寸等。
显著优点
1. 学术级排版质量:基于 MathJax 引擎,支持完整 TeX 数学语法,包括分数、积分、矩阵、希腊字母等复杂符号
2. 多格式输出:除常见 PNG/JPEG 外,支持现代压缩格式 WebP/AVIF,可优化存储与传输
3. 灵活尺寸控制:提供 --width、--height、--zoom、--inline 等参数,适应内联公式与独立公式场景
4. stdin 输入支持:解决 shell 引号转义难题,支持含单引号的导数表达式如 y'
5. 自动化集成:通过 TOOLS.md 配置可实现「含 LaTeX 即自动渲染」的智能响应流程
潜在缺点与局限性
- 仅支持数学模式:基于 MathJax,无法渲染完整 LaTeX 文档结构(如章节、表格环境)
- 依赖 Node.js 生态:需安装 mathjax、@svg-fns/svg2img、sharp 三个 npm 包,环境较重
- 无实时预览:每次渲染需完整启动 Node 进程,高频调用存在性能开销
- 字体嵌入限制:输出图片为栅格化结果,无法保留可编辑文本或矢量字体信息
适合人群
- AI 助手开发者:需让 Agent 在对话中自动渲染并发送公式图片
- 教育工作者:制作含数学公式的课件、讲义材料
- 科研人员:快速生成论文插图中的标准公式图像
- 技术写作者:为 Markdown 文档、博客准备公式图片素材
常规风险
- 路径遍历风险:若未校验输出路径参数,可能被利用写入非预期目录
- 资源消耗:大尺寸或批量渲染时,sharp 图像处理可能占用较高内存
- 依赖供应链:@svg-fns/svg2img 为社区包,需关注维护状态与安全更新
- 编码问题:LaTeX 复杂符号可能触发 MathJax 解析异常,建议对输入做长度与字符集限制