核心用法
latex-compiler 是一套基于容器化 LaTeX 编译服务器的文档生成工具,支持将 LaTeX 源码实时编译为 PDF。使用时,先通过 latex_templates 与 latex_get_template 获取 starter 模板(如 IEEE、中文 article、beamer 等),然后调用 latex_compile 或 latex_preview 发送源码至本地 8080 端口的 Prismer 容器服务。支持 pdflatex、xelatex、lualatex 三种引擎,可自动处理 bib 参考文献(biber)、多轮编译以解析交叉引用,并提供 base64 内联预览。
显著优点
- 零本地依赖:无需安装庞大 TeX Live 发行版,编译在隔离容器内完成。
- 多引擎与国际化:原生支持 xelatex/lualatex,满足中文、Unicode 及现代字体需求。
- 模板化工作流:内置 IEEE、中文文章、Beamer 等模板,降低学术写作门槛。
- 安全隔离:源码通过 HTTP POST 传输,PDF 生成于容器内部
/home/user/output/reports/,不挂载宿主机目录,避免路径遍历与本地文件污染。
潜在局限与风险
- 网络依赖:编译服务必须运行在 localhost:8080,若容器未启动或端口被占,调用将直接失败,无降级机制。
- 超时限制:单次编译限 120 秒,复杂文档或大型 bib 可能触发超时。
- 无持久化出口:默认仅返回 base64 或容器内路径,用户需自行处理 PDF 导出流程。
- 容器供应链:依赖 Prismer 提供的 Docker 镜像,需审查 Dockerfile 以确认非 root 运行及端口暴露策略。
适合人群
学术研究人员、需要批量生成技术文档的开发者、以及希望避免本地 LaTeX 环境配置复杂度的轻量级用户。
常规风险
- 若用户不慎在
content中注入恶意 LaTeX(如\write18系统调用),容器内非 root 用户可部分缓解,但仍需确保编译服务器镜像及时更新。 - 8080 端口若被其他服务占用或暴露至公网,可能面临未授权编译滥用。